Support 'button up' when losing focus
When releasing button far out of view or by refocusing something, button was not commiting. LLPanelObject last call was sendPosition(btn_down) with btn_down true which resulted in missed update. Now it will get one more call with btn_down==false.
Observations and broken stuff so far:
- LLSideTray is gone.
- LLBottomTray is gone.
- LLFloaterSnapshot was changed and gave lots of merge conflicts. Flickr upload will be broken.
- LLNearbyChat is derived from LLPanel now. That broke quite some stuff rearding autohiding and docking of chatbar.
- Profile floaters are gone and all web based now.
- Russian translation gave huge mere conflicts with the new russian xml files from LL. Unmergeable. I took the LL files.
- XUI files in general will need some love and testing.
* Toolbar buttons now display green when its corresponding floater is open or
minimized.
* Made changes to buttons so flash time and rate is configurable
* Removed unused "highlight_color" attribute from LLButton
* Implemented "isVisible" function for toolbar button floaters. It returns true
when the floater is visible or minimized.
* Toolbar floater unminimize now also puts focus to the floater
* All commands now specify their "is_running_function" for toolbar button state
* ButtonFlashCount and ButtonFlashRate have been moved to button.xml settings
and are now configurable on the button. Toolbar buttons are set to never
flash and this functionality is used to show which buttons have windows open.
* All toybox buttons show hover glow even when disabled
Reviewed by Richard.
Moved LLBadge use from LLButton into a separate LLBadgeOwner class.
LLButton now derives from LLBadgeOwner which handles the bulk of the
badge management.
Added the following for increased LLBadge functionality:
* Panels now choose whether or not they accept buttons as children, which they
do by default.
* UI controls now shuffle controls with "requests_front" to the front of their
children list at postBuild time.
* Badges are set to "requests_front" by default
* Badges now accept border image and color attributes
Reviewed by Callum
- Added parameter to the button that defines which transparency value should be used: value of drawing context or transparency value of a its parent (in our case this parent is floater)
Issues: Graphics preferences tab, lighting, depth of field
Issues: Color preferences tab, new direct chat
Issues: Build floater Mesh build tab
Issues: German translations of build, viewer menus
Issues: pipeline issues with mac, possibly other things
Issues: uploading content / temp content
Issues: Windlight quickprefs, parcel windlight, RLVa windlight
Implemented behavior:
* Normally Back button appears narrow without label
* When wearable is changed - "Save" label is set and button gets wide. Left Border of Title is moved to the right.
Note: "Save" label is shown without truncation in all languages, Title can be truncated with dots.
* When changes are saved/reverted - label is removed, button shrinks, Title left border is moved to the its default place.
* Added consistent tooltip for title (the same as a title).
* Added tooltip for button: "Save changes if necessary and return back"
Details:
* added getter for button's font
* implemented derived from LLButton class for Back button to enable setting necessary label's padding in xml
Reviewed by Neal Orman at https://codereview.productengine.com/secondlife/r/636/
--HG--
branch : product-engine
Removed default "FlashIconAbsent" value of image_flash button attribute. Changed check for presence of thic icon in code accordingly.
--HG--
branch : product-engine
Added new attribute image_flash to button.xml which sets an image used for button icon when button is flashing.
Pointer to this image is stored in member mImageFlash from LLButton and is used in LLButton::draw(). There are two
ways an image can flash now - by making changes in color according to flash_color attribute or by changing icon from
current to the one specified in image_flash. Second way is used only if the name of flash icon is different from
"FlashIconAbsent" which is there by default. First way is used otherwise. Used new selfmade orange icons for
flashing tabs.
--HG--
branch : product-engine