summaryrefslogtreecommitdiff
path: root/indra/newview/llviewermedia.cpp
AgeCommit message (Collapse)Author
2022-02-23Fix for media textures failing to update (and eating lots of memory) on ↵Dave Parks
Mac/Intel
2022-02-22SL-16815 Cleanup -- disable multithreaded bumpmap generation while tracking ↵Dave Parks
down loading issues, fix sync issue in single threaded mode in media textures, restore LL_IMAGEGL_THREAD_CHECK functionality
2022-02-17SL-16815 Remove frame stalls from occlusion queries, bumpmap updates, and ↵Dave Parks
querying for available video memory.
2022-02-14SL-16418 Media texture update stall fix. Make media texture updates use ↵Dave Parks
LLImageGL thread to update, fix AMD sync issue on ImageGL thread and install debug callbacks on LLImageGL thread when debug gl enabled.
2022-02-01Revert "Merged in euclid-16418 (pull request #846)"Dave Houlton
This reverts commit 40fe5277e1390c975d9a3184ff8fc46d69dfb450, reversing changes made to af830e5fc5840194be95140f644a27011b9b7e06.
2022-02-01Revert "Merged in euclid-16418-a (pull request #852)"Dave Houlton
This reverts commit dcf8f695367a1bcc9c495ea93a89927dd83802af, reversing changes made to 594910a8408f67f1af7c66d5a4dfde3626669245.
2022-01-31SL-16418 add tear-down lockDave Houlton
2022-01-27SL-16418 restore tracy macros stomped in mergeDave Houlton
2022-01-27SL-16418 rename media tex image per-update to avoid contention stallDave Houlton
2022-01-27SL-16418 bg thread for media texture updatesDave Houlton
2022-01-27SL-16418 optimize imageraw clearDave Houlton
2022-01-14SL-16606: Add profiler category MEDIAPtolemy
2021-12-15DRTVWR-546 merge up to 6.5.2Dave Houlton
2021-11-16DRTVWR-546 merge in master v6.5.1Dave Houlton
2021-11-16Merge branch 'master' into DRTVWR-534Andrey Lihatskiy
# Conflicts: # indra/newview/VIEWER_VERSION.txt
2021-09-29SL-15999 - don't create floaters in noninteractive modeBrad Payne (Vir Linden)
2021-09-20SL-15999 - track --noninteractive state with gNonInteractive flagBrad Payne (Vir Linden)
2021-09-16SL-15999 - skip plugins in NonInteractive modeBrad Payne (Vir Linden)
2021-09-01SL-15867 User not logged in - very much the MVS (minimum viable solution) ↵Callum Linden
but by storing the OpenID cookie when it arrives then injecting it forcefully into each new media instance, it appears that the 'not logged in' problem is solved - at least in my testing, 20+ times logging in without a cache and profiles, dashboard etc. were all logged in - QA will confirm. The full solution involves providing a separate cache for each media instance and tightening up the CEF cookie calling code - that is a large project and this is sufficient for now
2021-08-20DRTVWR-534: Batch of modifications to 360 capture project after moving from ↵Callum Prentice
internal repo to public one.
2021-07-19Merge with Master after Viewer Release (also fixed some glaring automerge ↵Callum Prentice
screw ups)
2021-07-12Fix for SL-15559 PDF files do not load in CEF v91Callum Prentice
2021-05-14Fixes SL-14897 Disable Flash support in the embedded browserCallum Prentice
2021-03-18SL-13910 Failed to upload image to your Profile FeedAndrey Kleshchev
Looks like viewer is missing some certs in the bundle or doesn't know how to handle web page's certs. For now disabling verification to not block DRTVWR-516. Verification was originally turned on in DRTVWR-516's SL-13927
2020-12-07SL-14484 'Stop All' media button sometomes is not avaliable for videoAndrey Kleshchev
2020-08-18Merge branch 'master' into DRTVWR-507-maintAndrey Lihatskiy
2020-07-21Merge branch 'master' into DRTVWR-507-maintAndrey Lihatskiy
# Conflicts: # autobuild.xml
2020-07-20Merge branch 'master' into DRTVWR-501-maintAndrey Lihatskiy
# Conflicts: # autobuild.xml # indra/newview/llimprocessing.cpp
2020-07-17SL-13567 Users should have separate CEF contextsAndrey Kleshchev
2020-06-23DRTVWR-476: Merge branch 'master' of lindenlab/viewer into d476Nat Goodspeed
following release of D512.
2020-06-23Merge branch 'master' into DRTVWR-501-maintAndrey Lihatskiy
2020-05-27SL-13148 Implemented wheel support for inworld mediaAndrey Kleshchev
2020-03-25SL-11216: Convert LLVersionInfo to an LLSingleton.Nat Goodspeed
This changeset is meant to exemplify how to convert a "namespace" class whose methods are static -- and whose data are module-static -- to an LLSingleton. LLVersionInfo has no initClass() or cleanupClass() methods, but the general idea is the same. * Derive the class from LLSingleton<T>: class LLSomeSingleton: public LLSingleton<LLSomeSingleton> { ... }; * Add LLSINGLETON(LLSomeSingleton); in the private section of the class. This usage implies a separate LLSomeSingleton::LLSomeSingleton() definition, as described in indra/llcommon/llsingleton.h. * Move module-scope data in the .cpp file to non-static class members. Change any sVariableName to mVariableName to avoid being outright misleading. * Make static class methods non-static. Remove '//static' comments from method definitions as needed. * For LLVersionInfo specifically, the 'const std::string&' return type was replaced with 'std::string'. Returning a reference to a static or a member, const or otherwise, is an anti-pattern: the interface constrains the implementation, prohibiting possibly later returning a temporary (an expression). * For LLVersionInfo specifically, 'const S32' return type was replaced with simple 'S32'. 'const' is just noise in that usage. * Simple member initialization (e.g. the original initializer expressions for static variables) can be done with member{ value } initializers (no examples here though). * Delete initClass() method. * LLSingleton's forté is of course lazy initialization. It might work to simply delete any calls to initClass(). But if there are side effects that must happen at that moment, replace LLSomeSingleton::initClass() with (void)LLSomeSingleton::instance(); * Most initClass() initialization can be done in the constructor, as would normally be the case. * Initialization that might cause a circular LLSingleton reference should be moved to initSingleton(). Override 'void initSingleton();' should be private. * For LLVersionInfo specifically, certain initialization that used to be lazily performed was made unconditional, due to its low cost. * For LLVersionInfo specifically, certain initialization involved calling methods that have become non-static. This was moved to initSingleton() because, in a constructor body, 'this' does not yet point to the enclosing class. * Delete cleanupClass() method. * There is already a generic LLSingletonBase::deleteAll() call in LLAppViewer::cleanup(). It might work to let this new LLSingleton be cleaned up with all the rest. But if there are side effects that must happen at that moment, replace LLSomeSingleton::cleanupClass() with LLSomeSingleton::deleteSingleton(). That said, much of the benefit of converting to LLSingleton is deleteAll()'s guarantee that cross-LLSingleton dependencies will be properly honored: we're trying to migrate the code base away from the present fragile manual cleanup sequence. * Most cleanupClass() cleanup can be done in the destructor, as would normally be the case. * Cleanup that might throw an exception should be moved to cleanupSingleton(). Override 'void cleanupSingleton();' should be private. * Within LLSomeSingleton methods, remove any existing LLSomeSingleton::methodName() qualification: simple methodName() is better. * In the rest of the code base, convert most LLSomeSingleton::methodName() references to LLSomeSingleton::instance().methodName(). (Prefer instance() to getInstance() because a reference does not admit the possibility of NULL.) * Of course, LLSomeSingleton::ENUM_VALUE can remain unchanged. In general, for many successive references to an LLSingleton instance, it can be useful to capture the instance() as in: auto& versionInfo{LLVersionInfo::instance()}; // ... versionInfo.getVersion() ... We did not do that here only to simplify the code review. The STRINGIZE(expression) macro encapsulates: std::ostringstream out; out << expression; return out.str(); We used that in a couple places. For LLVersionInfo specifically, lllogininstance_test.cpp used to dummy out a couple specific static methods. It's harder to dummy out LLSingleton::instance() references, so we add the real class to that test.
2019-11-27Upstream merge from viewer-nekoAndreyL ProductEngine
2019-11-12Downstream merge from 494-maint-wassailAndreyL ProductEngine
2019-10-16Brought back the changes from @andreyk for improved mouse scroll wheel ↵AndreyL ProductEngine
performance (previously 8e228364f324)
2019-10-15Downstream merge from lindenlab/viewer-manulAndreyL ProductEngine
2019-09-14Backed out changeset: 8e228364f324AndreyL ProductEngine
2019-09-14Backed out changeset: a6398f90389aAndreyL ProductEngine
2019-09-10Merged in lindenlab/viewer-releaseandreykproductengine
2019-09-05SL-11315 Viewer asks to play media and retains selected choiceandreykproductengine
2019-06-21DRTVWR-493 LLViewerParcelMedia to singletonandreykproductengine
2019-06-21DRTVWR-493 LLViewerMedia to singletonandreykproductengine
2019-06-20Merged in DRTVWR-492AndreyL ProductEngine
2019-06-11Pull in CEF 75.0.1+gb5e74dd+chromium-75.0.3770.80 and Dullahan 1.2.x along ↵callum_linden
with some minor compatibility changes
2019-06-10Changes from @andreyk for improved mouse scroll wheel performance and pull ↵callum_linden
in new Dullahan with CEF 74.1.19_gb62bacf_chromium-74.0.3729.157
2019-02-14SL-1005 Changed media event is not firing when the URL is amended by a '#' ↵andreykproductengine
since Alex-Ivy
2018-11-26SL-10101 Remade most frequent setting calls to cached variantsandreykproductengine
2019-04-24SL-10994 Removed Facebook In-world SharingAndreyL ProductEngine
SL-11024 Fixed Twitter connect failure
2019-04-11SL-10924 Fix data escaping to accomodate CEF updateandreykproductengine