summaryrefslogtreecommitdiff
path: root/indra/newview/llviewermedia.cpp
AgeCommit message (Collapse)Author
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
2019-04-12Backed out changeset: ce892720a893 (SL-10924)andreykproductengine
2019-04-10SL-10924 CEF update broke many visitor trackersandreykproductengine
2018-06-25MAINT-8457 FIXED "Mute" switching cancels the volume settings of Nearby Mediamaxim_productengine
2018-04-17MAINT-8325 Fixed The Save Local dialog disconnects the viewer if you do not ↵andreykproductengine
choose the save directory files within the first minute
2018-04-12Merged in lindenlab/viewer-releaseAndreyL ProductEngine
2018-03-01Automated merge with tip of viewer-releasecallum_linden
2018-02-14Automated merge with tip of viewer-releasecallum_linden
2018-03-02MAINT-8297 path fix #2andreykproductengine
2018-02-21MAINT-8297 Removing old ca bundleAndrey Kleshchev
2018-02-15MAINT-8297 Fixed "Missing CA File" message when running under debugger on ↵andreykproductengine
windows
2018-02-12Merged in lindenlab/viewer-releaseAndreyL ProductEngine
2018-01-26Fixes for: MAINT-8244 Text in CEF cannot be selected with the mouse. ↵callum_linden
MAINT-8245 Expose CEF log file and logging severity to viewer and MAINT-8246 Expose the CEF remote debugging system to the viewer
2018-01-17Fixes for 'MAINT-8196 Remove LLPluginCookieStore from the viewer' and ↵callum_linden
'MAINT-8194 Remove per-frame calls to updateJavascriptObject()'
2018-01-17merge 5.1.0-releaseOz Linden
2018-01-17Merged in lindenlab/viewer-releaseAndreyL ProductEngine
2018-01-05MAINT-8143 viewer doen't respect allow media to autoplay uncheckedMnikolenko Productengine
2017-12-14Pull in Dullahan 1.1.929 (multiple file picking support) and update plugin ↵callum_linden
code accordingly
2017-11-21MAINT-8007 Music do not start playing after disablingMnikolenko Productengine
2017-08-23merge changes for 5.0.7-releaseOz Linden
2017-08-16merge changes for DRTVWR-439Oz Linden