summaryrefslogtreecommitdiff
path: root/indra/llui
AgeCommit message (Collapse)Author
2016-10-11MAINT-5232: Merge up to VLC viewer from viewer-releaseNat Goodspeed
2016-09-16MergeRider Linden
2016-09-16Automated merge with ssh://bitbucket.org/lindenlab/viewer-releaseNat Goodspeed
2016-09-15MAINT-5232: Normalize LLSingleton subclasses.Nat Goodspeed
A shocking number of LLSingleton subclasses had public constructors -- and in several instances, were being explicitly instantiated independently of the LLSingleton machinery. This breaks the new LLSingleton dependency-tracking machinery. It seems only fair that if you say you want an LLSingleton, there should only be ONE INSTANCE! Introduce LLSINGLETON() and LLSINGLETON_EMPTY_CTOR() macros. These handle the friend class LLSingleton<whatevah>; and explicitly declare a private nullary constructor. To try to enforce the LLSINGLETON() convention, introduce a new pure virtual LLSingleton method you_must_use_LLSINGLETON_macro() which is, as you might suspect, defined by the macro. If you declare an LLSingleton subclass without using LLSINGLETON() or LLSINGLETON_EMPTY_CTOR() in the class body, you can't instantiate the subclass for lack of a you_must_use_LLSINGLETON_macro() implementation -- which will hopefully remind the coder. Trawl through ALL LLSingleton subclass definitions, sprinkling in LLSINGLETON() or LLSINGLETON_EMPTY_CTOR() as appropriate. Remove all explicit constructor declarations, public or private, along with relevant 'friend class LLSingleton<myself>' declarations. Where destructors are declared, move them into private section as well. Where the constructor was inline but nontrivial, move out of class body. Fix several LLSingleton abuses revealed by making ctors/dtors private: LLGlobalEconomy was both an LLSingleton and the base class for LLRegionEconomy, a non-LLSingleton. (Therefore every LLRegionEconomy instance contained another instance of the LLGlobalEconomy "singleton.") Extract LLBaseEconomy; LLGlobalEconomy is now a trivial subclass of that. LLRegionEconomy, as you might suspect, now derives from LLBaseEconomy. LLToolGrab, an LLSingleton, was also explicitly instantiated by LLToolCompGun's constructor. Extract LLToolGrabBase, explicitly instantiated, with trivial subclass LLToolGrab, the LLSingleton instance. (WARNING: LLToolGrabBase methods have an unnerving tendency to go after LLToolGrab::getInstance(). I DO NOT KNOW what should be the relationship between the instance in LLToolCompGun and the LLToolGrab singleton instance.) LLGridManager declared a variant constructor accepting (const std::string&), with the comment: // initialize with an explicity grid file for testing. As there is no evidence of this being called from anywhere, delete it. LLChicletBar's constructor accepted an optional (const LLSD&). As the LLSD parameter wasn't used, and as there is no evidence of it being passed from anywhere, delete the parameter. LLViewerWindow::shutdownViews() was checking LLNavigationBar:: instanceExists(), then deleting its getInstance() pointer -- leaving a dangling LLSingleton instance pointer, a land mine if any subsequent code should attempt to reference it. Use deleteSingleton() instead. ~LLAppViewer() was calling LLViewerEventRecorder::instance() and then explicitly calling ~LLViewerEventRecorder() on that instance -- leaving the LLSingleton instance pointer pointing to an allocated-but-destroyed instance. Use deleteSingleton() instead.
2016-09-02MAINT-6461 crash due to invalid menu pointer during visibility changeandreykproductengine
2016-08-30Automated merge with ssh://bitbucket.org/lindenlab/viewer-releaseNat Goodspeed
2016-08-23MAINT-6511 Crash in LLFloaterView::restoreAll - exception handlingAndreyL ProductEngine
2016-08-16Merge VOB with 4.0.8-releasepavelkproductengine
2016-08-11merge changes for 4.0.7-releaseOz Linden
2016-08-09Reverted change to lllayoutstack.cpp which could possibly cause memory leakpavelkproductengine
2016-07-28MAINT-6511 Replaced c-style casts with dynamic_cast in llfloater.cppAndreyL ProductEngine
2016-06-16MAINT-6511 Added a null check in LLFloaterView::restoreAllAndreyL ProductEngine
2016-06-01GCC compile fix (function returns a pointer, not a bool).Nicky
2016-06-01MAINT-6446 Correct password length handlingandreykproductengine
2016-06-08MAINT-6461 Added a null checkAndreyL ProductEngine
2016-05-24Merge VOB with release 4.0.6pavelkproductengine
2016-05-25MAINT-2583 Minimized floaters cannot brought back to foreground anymoreMnikolenko Productengine
2016-05-23MAINT-2129 signuls cleanupandreykproductengine
2016-05-18MAINT-2129 "Block" button doesn't become disabledandreykproductengine
2016-05-23MAINT-2583 Minimized floaters cannot brought back to foreground anymoreMnikolenko Productengine
2016-05-19Merged in lindenlab/viewer-releaseAndreyL ProductEngine
2016-05-10Merged in oz_linden/maint-5974Mnikolenko Productengine
2016-05-06merge 4.0.4-release and MAINT-5974Oz Linden
2016-05-04MAINT-1513 FIXED Label of new folder doesn't disappear while closing ↵Mnikolenko Productengine
Inventory by hot hey
2016-05-04MAINT-6220 enable searching of the friend list with the classic username of ↵Mnikolenko Productengine
the avatar.
2016-04-27MAINT-204 Fixed Top folder is expanded when my inventory filter is changedandreykproductengine
2016-04-14MAINT-6302 FIXED Inventory tree indention displays incorrectly when dragging ↵Mnikolenko Productengine
an open folder into another folder
2016-04-04merge with 4.0.3-releaseOz Linden
2016-04-01Merged in lindenlab/viewer-bearAndreyL ProductEngine
2016-04-01Merged in lindenlab/viewer-releaseAndreyL ProductEngine
2016-03-29MAINT-6257 Textures loading issues.andreykproductengine
2016-03-24MAINT-6214 Unable to add a space before closing curly brace in chatbar, ↵andreykproductengine
notecards & scripts.
2016-03-21Mergepavelkproductengine
2016-03-17MergeRider Linden
2016-03-16merge changes for DRTVWR-417Oz Linden
2016-03-11MAINT-6097 FIXED On required update, clicking link to release notes opens ↵andreykproductengine
browser behind menu
2016-03-07merge DRTVWR-398 build cleanup fixesOz Linden
2016-02-02MAINT-1632 FIXED Both radio-buttons are not selected Advanced tab of Preferenceandreykproductengine
2016-01-28Merge MAINT-5194 Visual Outfit Browser with Releasepavelkproductengine
2016-01-15merge changes for 4.0.1-releaseOz Linden
2016-01-15Merge VRRider Linden
2016-01-11MAINT-6018 Open URL dialog spamAndreyL ProductEngine
Added the ability to close all notifications from one owner at once
2016-01-11MAINT-6018 Open URL dialog spamAndreyL ProductEngine
Added the ability to close all notifications from one owner at once
2015-12-29MAINT-5984 FIXED Incorrect cursor position with UI scale >1.0andreykproductengine
2015-12-22MergeAndreyL ProductEngine
2015-12-22Merge downstream, version 4.0.1AndreyL ProductEngine
2015-12-18MergeRider Linden
2015-12-15MAINT-5498 LLUrlEntry regex refactoringAndreyL ProductEngine
Improved LLUrlEntryHTTP, extended a test
2015-12-11Initial version of Visual Outfit Browserpavelkproductengine
2015-12-09MAINT-4018 Improvements to icon fetching.andreykproductengine