summaryrefslogtreecommitdiff
path: root/indra/newview
AgeCommit message (Collapse)Author
2025-06-01Update openSUSE Tumbleweed readme & cmakelistssecretfoxtail
Update libboost package names.
2025-05-31DisableLookAtAnimation persistencesecretfoxtail
Make DisableLookAtAnimation setting persistent across restarts.
2025-05-31Squeeze 1 more person into the teamErik Kundiman
2025-05-29first_login_image placeholdersecretfoxtail
Use original, if somewhat generic landscape screenshot inplace of edited stock screenshot.
2025-05-29RenderMinFreeMainMemoryThreshold decrease & persistencesecretfoxtail
Decrease to 256 to reduce aggressive culling & make user changes to this value persistent across restarts.
2025-05-29MP_Logo.png adjustmentsecretfoxtail
Better match style of default SL_Logo.png
2025-05-29Merge branch '2025.04'Erik Kundiman
2025-05-28Clean up old linux workaroundsRye Cogtail
2025-05-28Post merge cleanup of Linux codeNicky
2025-05-27Icons adjustmentsecretfoxtail
Restore default SL_logo.png and hand.png, change MP_Logo.png to downscale of app icon.
2025-05-27res-sdl cursor tweakssecretfoxtail
misc adjustments to some of the red-sdl cursors
2025-05-27Pass configuration phase with vcpkg replacing MSYS2Erik Kundiman
I happen to be using just Git Bash for convenience for running the commands on the Windows build instructions, hence the build folder pattern to be ignored from the result of running `uname -s` there. The instructions omit the part where you install vcpkg and set the VCPKG_ROOT environment variable, cause it depends on where you install vcpkg to your liking, but the next commands will rely on that variable being set correctly. The CMake used here is MS VS 2022 Community Edition's one, since it will know where the C++ compiler is. $VCPKG_ROOT/downloads/tools/msys2/21caed2f81ec917b/mingw64/bin is where pkg-config.exe can be found. $VCPKG_ROOT/installed/`uname -m|sed 's/86_//'`-windows/tools/libxml2 is where xmllint.exe can be found (from libxml2[tools]). PKG_CONFIG_LIBDIR and PYTHON environment settings are pretty self-explanatory. The flags set on LL_BUILD are now for Visual C++ and not MinGW(64)'s GCC or Clang any more, and copied from most of the flags in the variables file from LL's build-variables repo. vcpkg's apr & apr-util packages don't seem to install their .pc files, hence the manual target_include/link_directories/libraries settings, relying on some automatically generated INTERNAL CMake variable called prefix_result. vcpkg's Boost needs the same treatment, plus some suffix. We still use LL's prebuilt libs for OpenSSL, libcurl and WebRTC. Actually too for ColladaDOM for now, but we prepare Windows ColladaDOM self-building for later. For GLM and Meshoptimizer too, it's just the checking that's skipped otherwise it would fail (but the vcpkg packages can be used). Visual C++ doesn't recognise the no-deprecated-declarations compile option. On Visual C++, the macro to denote x86-64 seems to be _M_X64 (if not added there, it would try to find sse2neon :)) We still aren't using Autobuild here for Windows either, hence the FALSE-d viewer_manifest.py based file bundling.
2025-05-27Add missing FBSD building steps & fix its depsErik Kundiman
Even though the windlight file names containing %20 & %21 isn't liked by either CPack or FBSD packaging problem will eventually have to be solved, the hack steps are small that they should just be documented, in case (more) others would like to build the FBSD package. Use custom PYTHON environment setting instead of relying on creating links named python and/or python 3 to the system Python executable. Reorder build requirements, add missing dependencies that can be set to automatically installed. The absences of some were leftovers from dependency on system ColladaDOM and GTK2 (or my failure to add some package names to the CPack dependencies, caused by the gtk2 vs. gtk20, apr vs. apr1, sdl2 vs. sdl20, etc. FBSD package/port naming confusion).
2025-05-26Make appdelegate-objc compilable again on MontereyErik Kundiman
where the Xcode version is 14.2 and the SDK version is MacOSX13.1, by specifically excluding llappdelegate-objc.mm from being compiled using the C++20 standard. In this case, the standard is reverted to C++17 but specifically only for that file. The errors didn't happen on newer SDK versions such as the one in Sonoma or Sequoia, and the errors looked completely unrelatable: /Users/erik/Documents/Megapahit/viewer/indra/llwindow/llopenglview-objc.h:36:41: warning: cannot find protocol definition for 'NSTextInputClient' @interface LLOpenGLView : NSOpenGLView <NSTextInputClient> ^ /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSTextInputClient.h:20:11: note: protocol 'NSTextInputClient' has no definition @protocol NSTextInputClient ^ In file included from /Users/erik/Documents/Megapahit/viewer/indra/newview/llappdelegate-objc.mm:27: /Users/erik/Documents/Megapahit/viewer/indra/llwindow/llappdelegate-objc.h:30:38: warning: cannot find protocol definition for 'NSApplicationDelegate' @interface LLAppDelegate : NSObject <NSApplicationDelegate> { ^ /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSApplication.h:318:11: note: protocol 'NSApplicationDelegate' has no definition @protocol NSApplicationDelegate <NSObject> ^ /Users/erik/Documents/Megapahit/viewer/indra/newview/llappdelegate-objc.mm:49:27: warning: instance method '-release' not found (return type defaults to 'id') [-Wobjc-method-access] [currentInputLanguage release]; ^~~~~~~ /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSString.h:99:12: note: receiver is instance of class declared here @interface NSString : NSObject <NSCopying, NSMutableCopying, NSSecureCoding> ^ /Users/erik/Documents/Megapahit/viewer/indra/newview/llappdelegate-objc.mm:107:33: warning: instance method '-UTF8String' not found (return type defaults to 'id') [-Wobjc-method-access] const char* url_utf8 = [url UTF8String]; ^~~~~~~~~~ /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSString.h:99:12: note: receiver is instance of class declared here @interface NSString : NSObject <NSCopying, NSMutableCopying, NSSecureCoding> ^ /Users/erik/Documents/Megapahit/viewer/indra/newview/llappdelegate-objc.mm:107:17: error: cannot initialize a variable of type 'const char *' with an rvalue of type 'id' const char* url_utf8 = [url UTF8String]; ^ ~~~~~~~~~~~~~~~~ /Users/erik/Documents/Megapahit/viewer/indra/newview/llappdelegate-objc.mm:140:38: warning: instance method '-stopModal' not found (return type defaults to 'id') [-Wobjc-method-access] [[NSApplication sharedApplication] stopModal]; ^~~~~~~~~ /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSApplication.h:158:12: note: receiver is instance of class declared here @interface NSApplication : NSResponder <NSUserInterfaceValidations, NSMenuItemValidation, NSAccessibilityElement, NSAccessibility> ^ /Users/erik/Documents/Megapahit/viewer/indra/newview/llappdelegate-objc.mm:144:15: warning: instance method '-release' not found (return type defaults to 'id') [-Wobjc-method-access] [frameTimer release]; ^~~~~~~ /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSTimer.h:10:12: note: receiver is instance of class declared here @interface NSTimer : NSObject ^ /Users/erik/Documents/Megapahit/viewer/indra/newview/llappdelegate-objc.mm:157:15: warning: instance method '-release' not found (return type defaults to 'id') [-Wobjc-method-access] [frameTimer release]; ^~~~~~~ /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSTimer.h:10:12: note: receiver is instance of class declared here @interface NSTimer : NSObject ^ /Users/erik/Documents/Megapahit/viewer/indra/newview/llappdelegate-objc.mm:158:38: warning: instance method '-terminate:' not found (return type defaults to 'id') [-Wobjc-method-access] [[NSApplication sharedApplication] terminate:self]; ^~~~~~~~~ /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSApplication.h:158:12: note: receiver is instance of class declared here @interface NSApplication : NSResponder <NSUserInterfaceValidations, NSMenuItemValidation, NSAccessibilityElement, NSAccessibility> ^ /Users/erik/Documents/Megapahit/viewer/indra/newview/llappdelegate-objc.mm:206:35: error: declaration of 'arrayWithObjects:count:' is missing in NSArray class NSArray* nonRomanScript = @[@"ja", @"ko", @"zh-Hant", @"zh-Hans"]; ^ /Users/erik/Documents/Megapahit/viewer/indra/newview/llappdelegate-objc.mm:207:29: warning: instance method '-containsObject:' not found (return type defaults to 'id') [-Wobjc-method-access] if ([nonRomanScript containsObject:currentInputLanguage]) ^~~~~~~~~~~~~~ /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSArray.h:17:12: note: receiver is instance of class declared here @interface NSArray<__covariant ObjectType> : NSObject <NSCopying, NSMutableCopying, NSSecureCoding, NSFastEnumeration> ^ /Users/erik/Documents/Megapahit/viewer/indra/newview/llappdelegate-objc.mm:40:17: warning: method 'isEqual:' in protocol 'NSObject' not implemented [-Wprotocol] @implementation LLAppDelegate ^ /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/objc/NSObject.h:17:1: note: method 'isEqual:' declared here - (BOOL)isEqual:(id)object; ^ /Users/erik/Documents/Megapahit/viewer/indra/newview/llappdelegate-objc.mm:40:17: warning: method 'class' in protocol 'NSObject' not implemented [-Wprotocol] @implementation LLAppDelegate ^ /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/objc/NSObject.h:21:1: note: method 'class' declared here - (Class)class OBJC_SWIFT_UNAVAILABLE("use 'type(of: anObject)' instead"); ^ /Users/erik/Documents/Megapahit/viewer/indra/newview/llappdelegate-objc.mm:40:17: warning: method 'self' in protocol 'NSObject' not implemented [-Wprotocol] @implementation LLAppDelegate ^ /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/objc/NSObject.h:22:1: note: method 'self' declared here - (instancetype)self; ^ /Users/erik/Documents/Megapahit/viewer/indra/newview/llappdelegate-objc.mm:40:17: warning: method 'performSelector:' in protocol 'NSObject' not implemented [-Wprotocol] @implementation LLAppDelegate ^ /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/objc/NSObject.h:24:1: note: method 'performSelector:' declared here - (id)performSelector:(SEL)aSelector; ^ /Users/erik/Documents/Megapahit/viewer/indra/newview/llappdelegate-objc.mm:40:17: warning: method 'performSelector:withObject:' in protocol 'NSObject' not implemented [-Wprotocol] @implementation LLAppDelegate ^ /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/objc/NSObject.h:25:1: note: method 'performSelector:withObject:' declared here - (id)performSelector:(SEL)aSelector withObject:(id)object; ^ /Users/erik/Documents/Megapahit/viewer/indra/newview/llappdelegate-objc.mm:40:17: warning: method 'performSelector:withObject:withObject:' in protocol 'NSObject' not implemented [-Wprotocol] @implementation LLAppDelegate ^ /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/objc/NSObject.h:26:1: note: method 'performSelector:withObject:withObject:' declared here - (id)performSelector:(SEL)aSelector withObject:(id)object1 withObject:(id)object2; ^ /Users/erik/Documents/Megapahit/viewer/indra/newview/llappdelegate-objc.mm:40:17: warning: method 'isProxy' in protocol 'NSObject' not implemented [-Wprotocol] @implementation LLAppDelegate ^ /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/objc/NSObject.h:28:1: note: method 'isProxy' declared here - (BOOL)isProxy; ^ /Users/erik/Documents/Megapahit/viewer/indra/newview/llappdelegate-objc.mm:40:17: warning: method 'isKindOfClass:' in protocol 'NSObject' not implemented [-Wprotocol] @implementation LLAppDelegate ^ /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/objc/NSObject.h:30:1: note: method 'isKindOfClass:' declared here - (BOOL)isKindOfClass:(Class)aClass; ^ /Users/erik/Documents/Megapahit/viewer/indra/newview/llappdelegate-objc.mm:40:17: warning: method 'isMemberOfClass:' in protocol 'NSObject' not implemented [-Wprotocol] @implementation LLAppDelegate ^ /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/objc/NSObject.h:31:1: note: method 'isMemberOfClass:' declared here - (BOOL)isMemberOfClass:(Class)aClass; ^ /Users/erik/Documents/Megapahit/viewer/indra/newview/llappdelegate-objc.mm:40:17: warning: method 'conformsToProtocol:' in protocol 'NSObject' not implemented [-Wprotocol] @implementation LLAppDelegate ^ /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/objc/NSObject.h:32:1: note: method 'conformsToProtocol:' declared here - (BOOL)conformsToProtocol:(Protocol *)aProtocol; ^ /Users/erik/Documents/Megapahit/viewer/indra/newview/llappdelegate-objc.mm:40:17: warning: method 'respondsToSelector:' in protocol 'NSObject' not implemented [-Wprotocol] @implementation LLAppDelegate ^ /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/objc/NSObject.h:34:1: note: method 'respondsToSelector:' declared here - (BOOL)respondsToSelector:(SEL)aSelector; ^ /Users/erik/Documents/Megapahit/viewer/indra/newview/llappdelegate-objc.mm:40:17: warning: method 'retain' in protocol 'NSObject' not implemented [-Wprotocol] @implementation LLAppDelegate ^ /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/objc/NSObject.h:36:1: note: method 'retain' declared here - (instancetype)retain OBJC_ARC_UNAVAILABLE; ^ /Users/erik/Documents/Megapahit/viewer/indra/newview/llappdelegate-objc.mm:40:17: warning: method 'release' in protocol 'NSObject' not implemented [-Wprotocol] @implementation LLAppDelegate ^ /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/objc/NSObject.h:37:1: note: method 'release' declared here - (oneway void)release OBJC_ARC_UNAVAILABLE; ^ /Users/erik/Documents/Megapahit/viewer/indra/newview/llappdelegate-objc.mm:40:17: warning: method 'autorelease' in protocol 'NSObject' not implemented [-Wprotocol] @implementation LLAppDelegate ^ /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/objc/NSObject.h:38:1: note: method 'autorelease' declared here - (instancetype)autorelease OBJC_ARC_UNAVAILABLE; ^ /Users/erik/Documents/Megapahit/viewer/indra/newview/llappdelegate-objc.mm:40:17: warning: method 'retainCount' in protocol 'NSObject' not implemented [-Wprotocol] @implementation LLAppDelegate ^ /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/objc/NSObject.h:39:1: note: method 'retainCount' declared here - (NSUInteger)retainCount OBJC_ARC_UNAVAILABLE; ^ /Users/erik/Documents/Megapahit/viewer/indra/newview/llappdelegate-objc.mm:40:17: warning: method 'zone' in protocol 'NSObject' not implemented [-Wprotocol] @implementation LLAppDelegate ^ /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/objc/NSObject.h:41:1: note: method 'zone' declared here - (struct _NSZone *)zone OBJC_ARC_UNAVAILABLE; ^ /Users/erik/Documents/Megapahit/viewer/indra/newview/llappdelegate-objc.mm:374:12: warning: 'NSApplication' may not respond to 'sendEvent:' [super sendEvent:event]; ~~~~~ ^ /Users/erik/Documents/Megapahit/viewer/indra/newview/llappdelegate-objc.mm:377:27: warning: 'NSWindow' may not respond to 'sendEvent:' [[self keyWindow] sendEvent:event]; ~~~~~~~~~~~~~~~~ ^
2025-05-24Fix mouselook attachment offsetsecretfoxtail
Disable shortening avatar skeleton in mouselook like other TPVs
2025-05-24Slightly faster avatar zoom insecretfoxtail
bump ANIM_METERS_PER_SECOND to 20.0
2025-05-23Merge tag 'Second_Life_Release#fe55c781-2025.04' into 2025.04Erik Kundiman
2025-05-22Merge pull request #4135 from secondlife/geenz/mac-outfit-gallery-crash-fixJonathan "Geenz" Goodman
Fix null outfit gallery observer pointer
2025-05-22Remove mOutfitsObserver, use mCategoriesObserver from our base.Jonathan "Geenz" Goodman
2025-05-22Merge pull request #4100 from secondlife/viewer-1865-for-2025.04sethalvesLL
Viewer 1865 for 2025.04
2025-05-22Fix null outfit gallery observer pointerJonathan "Geenz" Goodman
2025-05-22Merge tag 'Second_Life_Release#a31b7ae2-Second_Life_Release#a31b7ae-2025.04' ↵Erik Kundiman
into 2025.04
2025-05-22Merge branch 'main' into 2025.04Erik Kundiman
2025-05-21Merge pull request #4126 from secondlife/maxim/2025.04-p430Maxim Nikolenko
#p430 don't show MFA dialog twice
2025-05-21fix test for lllogininstance.cppMaxim Nikolenko
2025-05-21#p430 don't show MFA dialog twiceMnikolenko Productengine
2025-05-20Update macos icons (#4042, #4112)Andrey Lihatskiy
according to https://developer.apple.com/design/human-interface-guidelines/app-icons
2025-05-19reuse region variable instead of multiple calls to gAgent.getRegion()Seth Alves
2025-05-19adjust which webrtc tracks are enabled when the avatar crosses a region borderSeth Alves
2025-05-16#4091 fix speaker icon is showing all users speaking when anyone is talkingMaxim Nikolenko
2025-05-16#4088 Fix Outfit folders changing to normal foldersAndrey Kleshchev
when parent copied and pasted
2025-05-14#4081 Meshes missing after teleportAndrey Kleshchev
2025-05-14Revert "Revert to LL's OpenJPEG fork"Erik Kundiman
This reverts commit 3a36cdf6ebd9d2795bdcd14162f38df568d51796.
2025-05-14#4072 Fix Appearance floater not updatingAndrey Kleshchev
2025-05-13#4071 Permit pasting links into outfitsAndrey Kleshchev
Like it's permitted to drop them
2025-05-13#4069 Fix crash at handleToolTipAndrey Kleshchev
2025-05-13#2279 fix for View Angle settingMaxim Nikolenko
2025-05-13#4060 Fix subfolders use through ctrl-vAndrey Kleshchev
2025-05-13#4055 Fix subfolder draggingAndrey Kleshchev
2025-05-13GNU sed editing in place syntax without repetitionErik Kundiman
2025-05-13Reduce 2-line CPack settings clutter to 1-linesErik Kundiman
2025-05-13Lose the not really required double quotesErik Kundiman
on the CMake string match tests.
2025-05-13Like the previous commit, except the oppositeErik Kundiman
cause this one spans a bit far, that we need to set some value in the parentheses as a reminder.
2025-05-13Empty CMake elses & endifs parenthesesErik Kundiman
to make it more flexible the next time a value in the if's parentheses gets changed again, and also to reduce duplicate pattern matches when grepping those CMake files with certain keywords.
2025-05-13Not rely on (LL_)USESYSTEMLIBS macro & CMake settingErik Kundiman
but the fact that we keep on using as many system libraries as we can (and only resort to other sources in certain cases), hasn't changed, of course. Also stop having to set USE_AUTOBUILD_3P to OFF. Lines are reindented, and when a system library can be found for a dependency, then that should be the way. If later we find out that using some other way is better, than stick to that. So, one option at a time, whichever is best for the situation. GLEXT hasn't been used, and in order to be not having to hack its .cmake file, we bypass it and refer to GLH (which is still used) right away in LLWindow. CMake commands that need to be bypassed, if it's a one-liner then it's just commented out, but if it's multiple lines, then scope them with if (FALSE) to minimise difference.
2025-05-12#4010 play only audio mention ping for new conversationMaxim Nikolenko
2025-05-12Revert "#4008 Fix media scale adjustments with pbr applied"Andrey Kleshchev
This reverts commit b084d842c9900e532cba11e1e5a4e85299a0e184.
2025-05-12Not rely on LL_USESYSTEMLIBS for choosing zlib implErik Kundiman
with the effect of choosing zlib over zlib-ng in any condition, which has been the case so far. But this opens the way to relying on some other condition, such as which platform, for deciding whether we can use zlib-ng or not, instead of zlib. So we can freely use, for example LL's prebuilt, zlib-ng while still using system libraries for others.
2025-05-12Unencapsulated Meshoptimizer headers in any conditionErik Kundiman
Pretty much similar to the previous commit (especially that the the encapsulating directory, in cases where LL's prebuilt is used, is already a searched directory by the last line in its .cmake file), except there had never been any use of LL_USESYSTEMLIBS for this one, so just replacing the single upstream lines would be the minimal difference.
2025-05-12Have unencapsulated Expat headers in any conditionErik Kundiman
The only condition where Expat headers would be encapsulated is when using LL's Autobuild-based prebuilt libraries, and we're never using any of LL's prebuilt binary for Expat on desktop, since Expat is practically available on any supported desktop platform. The system Expat headers are never encapsulated in any of those platforms. This is the beginning of not relying on the LL_USESYSTEMLIBS macro any more (eventually not relying on the custom USESYSTEMLIBS CMake setting either). Keeping the build system still flexible to have the option to use LL's prebuilt libraries *fully* (we still use some of them in cases where the platform may not have the related system library or for convenience, so the term USESYSTEMLIBS may not always be consistent), is getting harder to maintain. The way it's done is using #if 1, in order to minimise difference from upstream.