* Modified badges to be parented to their owners if their owners have no parents
* Modified side tray tab panels to create badges on side tab buttons when the
xml specifies a badge.
* Modified inbox to drive the badge value of the sidebar_inventory button.
* Updated inbox and outbox sizes so scroll bars function as expected
* Updated inventory_panel.xml to allow scroll tag to specify scroll bar
properties, instead of just having them hardcoded.
Reviewed by Richard
Reason:
When an undocked side tray tab floater got closed with Ctrl+Shift+W,
LLSideTray::setTabDocked() was called. It docked the floater but didn't update
the dock/undock icon.
Fix:
Made setTabDocked() a general purpose method, not a hack suitable for using
only as a floater close callback in the basic viewer mode.
It now updates the dock/undock icon.
Other changes:
* Replaced numerous calls to toggleTabDocked with setDocked(),
that is safer because does exactly what you want.
* Got rid of a duplicated floater close callback.
EXP-640 FIX -- [PUBLIC] Ctrl+I doesn't close side tray
LLSideTray::hidePanel now checks if the parent is the side tray or if it is a child to a detached tab to
determine what panel to attempt to close.
Reviewed by Leyla
Reason: The shortcut closes all floaters, including those wrapping undocked sidepanels.
The sidepanels get destroyed as well, while they are still referenced by the side tray.
Fix: Dock (i.e. move to side tray) the sidepanel before its floater gets destroyed.
ShowSideTrayPanel action can now toggle undocked panels
OpenSidePanelsInFloaters works now
Clossing a sidepanel floater will not return contents to side tray
close button enabled in minimal skin for side panel floaters
Expand XUI-visible LLUICtrl::CommitCallbackRegistry operations to include
"SideTray.Toggle" and "SideTray.Collapse".
Give LLSideTrayListener friend access to LLSideTray so it can query the
attached and detached tabs. Introduce tab_cast template to deal with the
unavailability of the LLSideTrayTab class outside of llsidetray.cpp.
Toasts were positioned as if side tray was expanded.
The fix is to reshape the so-called toasts screen channel (an area where toasts are drawn)
on entering/leaving mouse-look mode, so that the screen channel can notice that side tray get in/visible.
- Before docking the tab back to the sidetray, set floater's children to non-transparent state
- After detaching tab from the sidetray there is no need to set manually floater's children transparency. It happens automatically when floater gets focus.
The floater on minimization behaved the way consistent with Appearance panel in sidetray on visibility change.
- To let LLSidepanelAppearance::updateToVisibility() determine whether to reset state or not, "reset_accordion" field was added to LLSD that it passed to it. It's value is
different depending on where updateToVisibility() was called from. "visible" field was added to store boolean value that was passed before fix without name, but now can't be used that way.
- Added signal to LLFloater that is emitted on minimize.
- Set minimize callback for appearance tab floater in LLSideTrayTab::undock. Method from LLSidePanelAppearance that handles camera issues
is called on minimization of floater.
The settings are now stored to settings_per_account.xml.
This change affects all floaters having save_rect/save_visibility/save_dock_state params set to "true",
not just detached sidebar tabs as the ticket requests.
I couldn't repro situation when select was disabled, but problem with wrong items reproduced for me all the time.
It happened because all detached tab floaters were getting name "floater", so couldn't be found by sidetray's getPanel(),
and even if inventory could be found is_inventorysp_active() in LLInventoryPanel::getActiveInventoryPanel() would not let us
reach point of getting it.
- Added setting name of floater to sidebar tab's name on it's detach.
- Added search of detached inventory tab to LLInventoryPanel::getActiveInventoryPanel() and if it is detached, inventory panel
is found there, and z-order of floater is stored and later compared with z-orders of "inventory" floaters(the ones that are opened
via Ctrl+Shift+I).
It is now possible to detach some sidebar tabs, exit the viewer, login again and see those tabs still detached.
Also fixed incorrect saving of tabs dimensions implemented in the previous commit (766d6e749836).
Reviewed by Sergey Litovchuk