Age | Commit message (Collapse) | Author |
|
|
|
# Conflicts:
# autobuild.xml
# indra/llimage/llimage.cpp
# indra/llui/llsearcheditor.cpp
# indra/llui/llview.cpp
# indra/newview/llagent.cpp
# indra/newview/llappviewer.cpp
# indra/newview/llfloatercamera.cpp
# indra/newview/llfloatereditsky.cpp
# indra/newview/llfloatereditwater.cpp
# indra/newview/llinventoryfunctions.cpp
# indra/newview/lloutfitgallery.cpp
# indra/newview/lloutfitslist.cpp
# indra/newview/llpanelgroupbulkban.cpp
# indra/newview/llsidepanelappearance.cpp
# indra/newview/llvovolume.cpp
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Removed unused buttons, moved some UI elements to be more in line with each other
|
|
Menus
|
|
|
|
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.
|
|
|
|
|
|
|
|
created before the viewer window initialization had created the menu holder. Also, added llasserts in other cases when referencing the menu holder to ensure the holder is non-null.
|
|
for today and yesterday.
|
|
|
|
|
|
replace llinfos, lldebugs, etc with new LL_INFOS(), LL_DEBUGS(), etc.
|
|
consolidated most indra-specific constants in llcommon under indra_constants.h
fixed issues with operations on mixed unit types (implicit and explicit)
made LL_INFOS() style macros variadic in order to subsume other logging methods
such as ll_infos
added optional tag output to error recorders
|
|
|
|
|
|
|
|
like a normal clipboard.
|
|
up for toolbar and never used)
|
|
|
|
management. Note to dev: some use of boost trckable are being deprecated for thread safety so disconnect established connections in destructors. Also beware of singleton depending on each other as they are lazily instantiated.
|
|
naive about its past state
|
|
- Removed all sidetray dependencies and the sidetray itself.
- Also removed LLFloaterSidetrayTab and LLSidetrayListener as unused.
|
|
sergeylproductengine/viewer-experience-fui/
|
|
deprecated pointless LLView::deleteViewByHandle
|
|
- Added xml for a new floater and registred it in the floaterreg
- Removed side tray dependencies
- Added static helper method: LLFloaterSidePanelContainer::showPanel
|
|
Landmarks and Inventory items color.
|
|
displayed by another control.
- LLMenuGL in menu button replaced by LLToggleableMenu that handles visibility change upon clicks inside specific button rect.
- Added visibility change signal to LLToggleableMenu to update menu button pressed state.
- Added using menu handle in LLMenuButton.
|
|
closing on second click
- Changed type of gear menu buttons from LLButton to LLMenuButton in all sidebar panels where gear menu button is used.
- Added setMenuPosition(), setMenu() and updateMenuOrigin() to the LLMenuButton.
- Moved actions common for displaying a context menu to LLMenuButton::toggleMenu().
- In all sidebar panels where LLButton was replaced with LLMenuButton the following steps were taken:
1. setting gearMenu and its position relative to the menuButton with LLMenuButton::setMenu()
2. setting mouse down callback for the menuButton if needed.
3. calculating the menu origin point with LLMenuButton::updateMenuOrigin() in mouse down callback
|
|
|
|
streamlined LLUICtrlFactory's interface
|
|
removed redundant functionality
moved buildPanel to LLPanel
|
|
back-out the back-out for this branch. yay.
|
|
Backing out this merge that I pushed (prematurely) to the wrong place.
|
|
|
|
|
|
|
|
no_matched_tabs in panel or no_visible_tabs in panel.
Added "no_matched" and "no_visible" text for TeleportHistory.
+ Added "no_visible" text for My Outfit list.
+ Fixed filtering in TeleportHistory.
Reviewed by Mike Antipov at https://codereview.productengine.com/secondlife/r/591/
--HG--
branch : product-engine
|
|
"Map" bottom according to Design Spec.
reviewed by Vadim Savchuk at https://codereview.productengine.com/secondlife/r/546/
--HG--
branch : product-engine
|
|
Reviewed by Richard Nelson and Mike Antipov at https://codereview.productengine.com/secondlife/r/363/
--HG--
branch : product-engine
|
|
- Added accordion tab title highlighting setter and title getter.
- Added filtered tabs title highlighting.
- Tabs which don't pass filter are hidden.
- Added applying filter on list refresh event to avoid refreshing list on every filter change.
- Moved part of LLTextUtil to llui/lluitextutil to reuse code in llaccordionctrltab.
- Fixed passing list size to mRefreshCompleteSignal.
- Added list refresh callback to LLInventoryItemsList for checking tab visibility without re-applying filter sub-string.
Committed to proceed with dependent tasks.
If there are any comments/suggestions related to text utils this part of code may be changed without requiring much effort.
Reviewed by Mike Antipov at https://codereview.productengine.com/secondlife/r/363/
--HG--
branch : product-engine
|
|
location if no other item is selected
- Added new pure virtual member function isSingleItemSelected() to the LLPanelPlacesTab. It is used in the LLPanelPlaces class inside onShowOnMapButtonClicked() to check if something was selected on the active panel. If so then selection is shown on the world map. Otherwise current agent position is shown on the world map.
- Implemented isSingleItemSelected() in the both LLPanelPlacesTab derived classes: LLLandmarksPanel and LLTeleportHistoryPanel
- Removed functionality which disables Map button if no selection is made
Reviewed by Sergey Litovchuk at https://codereview.productengine.com/secondlife/r/355/
--HG--
branch : product-engine
|
|
- Added functionality of showing place profile to the LLPanelPlacesTab hierarchy. Use this functionality from LLPanelPlaces as callback for profile button click.
Reviewed my Mike Antipov at https://codereview.productengine.com/secondlife/r/191/
--HG--
branch : product-engine
|