summaryrefslogtreecommitdiff
path: root/indra/llui
AgeCommit message (Collapse)Author
2010-07-30optimizations in button renderingRichard Nelson
2010-07-30further UI rendering performance improvementsRichard Nelson
2010-07-30mergeRichard Nelson
2010-07-30added LLPanel::childSetAction() that does not take a void* argumentRichard Nelson
implemented childGetVisibleTab/PanelWithHelp using breadth-first-search iterator moved tentative state from llview to lluictrl changes llcallbackmap to use boost::function
2010-07-30merge from viewer-releaseTofu Linden
2010-07-30merge from PE's viewer-trunkTofu Linden
2010-07-29mergeRichard Linden
2010-07-29fix for vertical truncation of sidebar headersRichard Linden
2010-07-29EXT-8043 FIXED Fixed wrong position of notifications when 'Move' or 'View' ↵Andrew Dyukov
floaters are open and docked. Bug was caused by LLDockableFloater's mOverlapsScreenChannel to false only in one of it's constructors. So some floaters got initial value of mOverlapsScreenChannel depending on system- that's why bug reproduced on Windows and didn't reproduce on Linux. - Moved setting mOverlapsScreenChannel to false into LLDockableFloater's init() which is called by all of it's constructors. Reviewed by Alexei Arabadji at https://codereview.productengine.com/secondlife/r/818 --HG-- branch : product-engine
2010-07-29EXT-8501 FIXED Check menu items always looked as checked.Vadim Savchuk
Reason: Check menu items (instances of LLMenuItemCheckGL) had used LLUICtrl::getValue() to know whether they should draw the checkmark. Recently this was broken when getValue() was overriden in LLMenuItemCallGL to return a string. Fix: Overriden getValue() in LLMenuItemCheckGL to return a boolean value, not a string. Reviewed by Mike Antipov at https://codereview.productengine.com/secondlife/r/821/ --HG-- branch : product-engine
2010-07-28merge from viewer-releaseTofu Linden
2010-07-28EXT-8285 FIXED prevented wrong handling in accordion of the ↵Mike Antipov
"scrollToShowRect" event from the child accordion tab's scroll container. This problem begins from expanding accordion_tab: 1. adjustToFitScreen - calls adjustContainerPanel with "fit screen" rectangle (calls reshape() and resize()). Enter adjustContainerPanel("fit screen") 2. reshape calls ensureSelectedVisible -> scrollToShowRect... scrollToShowRect notifyParent about "scrollToShowRect" (notifiParent is sync call) Enter LLAccordionCtrl::notifyParent("scrollToShowRect") 4. AccordionCtrl handles "scrollToShowRect" notification and perform adjustContainerPanel with "another" rectangle. Perform adjustContainerPanel("another") // At least I have not seen 3rd recursive call of adjustContainerPanel 5. Exit LLAccordionCtrl::notifyParent("scrollToShowRect") 6. Exit reshape("fit screen"). 7. setRect("fit screen"). 8. Exit adjustContainerPanel("fit screen"). ... As result we get AccordionTab that reshaped to "another" rectangle and resized to "fit screen" rectangle. + Fixed by handling "scrollToShowRect" message in LLAccordionCtrlTab from "LLScrollContainer". + Removed the workaround comment. Reviewed by Neal Orman at https://codereview.productengine.com/secondlife/r/727/ --HG-- branch : product-engine
2010-07-27Merge from dessie/viewer-releaseRichard Linden
2010-07-27mergeRichard Linden
2010-07-27slightly-hairy merge from viewer-releaseTofu Linden
2010-07-27merge from PE's viewer-trunkTofu Linden
2010-07-26EXT-8010 FIXED Implemented special behaviour of avatar links.Andrew Dyukov
Avatar links are now underlined only on hover. Also they have the same color as other links. - Underlining text and getting it back to normal are done in handleHover() and draw() of new LLOnHoverChangeableTextSegment class derived from LLNormalTextSegment. This class has two pointers to styles- one for style which will be used for text on hover, and another otherwise. This special type of text segment is used if link's boolean member mUnderlineOnHoverOnly is true. So it is URL's flag depending on which textbase adds new text segment(like it currently happens with mDisabledLink). - Changed avatar link color in colors.xml to emphasis (because it was white before and was inconsistent with other links). Reviewed by Richard Nelson at https://codereview.productengine.com/secondlife/r/749/ --HG-- branch : product-engine
2010-07-26EXT-7963 FIXED (Edit Outfit > Add More > Do not switch to next item type ↵Paul Guslisty
after add/replace) - Added selected item type (in flat list view) as criterion when determining filter type in 'Add More' panel - Fixed LLAccordionCtrl::getSelectedTab() method. When 'selection_enabled = false' for LLAccordionCtrlTab, LLAccordionCtrl::getSelectedTab() returned NULL, even if some accordion tab was selected. Now it's OK. Method returns currently selected LLAccordionCtrlTab. Reviewed by Mike Antipov, Neal Orman and Richard Nelson at https://codereview.productengine.com/secondlife/r/790/ --HG-- branch : product-engine
2010-07-26(hairy) merge from viewer-releaseTofu Linden
2010-07-23first pass ui rendering performance improvementsRichard Linden
2010-07-23EXT-6739 FIXED Provided updating of object inspector gear menu 'Touch' and ↵Alexei Arabadji
'Sit' entries. Details: 1 Provided using Object.EnableSit and Object.EnableTouch callbacks for both object menu and inspector gear menu. Now default menu item label stores in hash map and since callback receives triggered control no need to hardcode updating menu item labels from callback. 2 Removed redundant attribute 'parameter' from menu xml's since now handler callbacks receives triggered menu item as function parameter. 3 Replaced LLObjectEnableTouch class with enable_object_touch function, since there no need on triggering callback on menu commit event. 4 Added symmetric method LLMenuItemGL::getValue(). 5 Removed unused "Object.EnableGearSit" callback. reviewed by Vadim Savchuk at https://codereview.productengine.com/secondlife/r/774/ --HG-- branch : product-engine
2010-07-23merge from PE's viewer-releaseTofu Linden
2010-07-23EXT-8318 ADDITIONAL FIXED ensure that thousands separator is in utf8 format ↵Mike Antipov
(on Windows) before converting it to LLWString. Problem on Windows: ================== LLPanelMainInventory::updateItemcountText() formats number using viewer locale. non-break space is detected as unknown symbols while converting utf8str_to_wstring when formatted text is set to LLTextBox. FIX: === Added converting of string to multi-byte string and then to utf8 string while formatting on Windows. created opposite to "ll_convert_wide_to_string" function "ll_convert_string_to_wide" and helper function to call both of them. It is used now to convert result of formatted string while formatting integer number in locale. Fix affects Windows only. Reviewed by Richard Nelson at https://codereview.productengine.com/secondlife/r/775/ --HG-- branch : product-engine
2010-07-22fix for checkbox truncationRichard Linden
2010-07-21EXT-8401 FIXED Added new text prevalidation callback to allow ascii ↵Sergei Litovchuk
characters and new line in text editor. Reviewed by Vadim Savchuk at https://codereview.productengine.com/secondlife/r/786/. --HG-- branch : product-engine
2010-07-21EXT-8164 FIXED (Accordions should be reset to default state after Edit ↵Andrew Polunin
Outfit panel reopening) Now accordion on panels 'Edit Outfit', 'Editing Shape', 'Editing Hair', 'Editing Eyes', 'Editing Skin', 'Group Profile' and 'Place Profile' are reset when the panels are closed and then opened again. Reviewed by Vadim Savchuk at https://codereview.productengine.com/secondlife/r/782/ --HG-- branch : product-engine
2010-07-21mergeTofu Linden
2010-07-20EXT-7654 FIX About Land Floater> Icons missingRichard Nelson
2010-07-20mergeRichard Nelson
2010-07-20EXT-8458 FIXED ensure that static pointer to instance of ↵Mike Antipov
LLPanelStandStopFlying is always valid to prevent crash. Consequences of root cause: Static pointer to LLPanelStandStopFlying in LLPanelStandStopFlying::getInstance() becomes invalid when the instance of the LLPanelStandStopFlying is a child of floater while it is destroying. Next usage of that pointed cause a crash. Root Cause: 1. LLFloater::closeFloater sets floater invisible and marks floater as "dead" but does not destroy it. 2. But that instance was still in LLFloaterReg map. It is removed in LLFloater's destructor. 3. So it was possible on low fps to get "dead" floater with LLFloaterReg, LLFloaterMove in this case. 4. Then LLMortician deleted floater instance shown on previous step. Call of setVisible(false) from the LLFloater's destructor does not call overridden LLFloaterMove's method (which is expected behavior.) So, child panel LLPanelStandStopFlying was not re-parented to Main View and was destroyed with LLFloaterMove. That leaded to the "Top Reason" described above. FIX: 1. Ensure that LLPanelStandStopFlying is not a child of LLFloaterMove on its destroying. 2. Synchronized removing of a floater instance from the LLFloaterReg when it is marked as "dead". Note: both changes fixes this bug independently, but I included both of them into result patch to avoid similar but in the future. Reviewed by Vadim Savchuk at https://codereview.productengine.com/secondlife/r/781/ --HG-- branch : product-engine
2010-07-19merge from PE's viewer-publicTofu Linden
2010-07-16mergeRichard Linden
2010-07-16EXT-8465 FIX Text selection is often unreadableRichard Linden
2010-07-16EXT-8188 FIXED Added SelectionEnabled flag to fix accordion tab header ↵Sergei Litovchuk
highlighting. Reviewed by Neal Orman at https://codereview.productengine.com/secondlife/r/735/. --HG-- branch : product-engine
2010-07-15Changes to allow disabling an LLTextBox (or LLTextBox subclass) to gray out ↵Monroe Linden
the text. Due to some legacy issues, text boxes will not gray out on disable unless they have their text_readonly_color property in xui set to "LabelDisabledColor" (or some other color distinct from their text color). Reviewed by Richard.
2010-07-15Automated merge with ssh://richard@hg.lindenlab.com/dessie/viewer-publicRichard Linden
2010-07-15changed allow_html to parse_urls to be clearer about its meaningRichard Linden
allow_html still supported as alternate
2010-07-15EXT-8303 FIXED [crashhunters] Crash in inventory_offer_mute_callbackAlexei Arabadji
Details: Instead of copying shared pointer, raw pointer was used, that cause crash, since notification responder object was accessed after it was destroyed. Replaced usage copying of raw pointer instead of copying shared pointer of notification responder object, that should live after notification destroyed. --HG-- branch : product-engine
2010-07-15EXT-7511 FIXED Fixed disappearance of selected item's border in flatlistviews.Andrew Dyukov
- This issue was a regression caused by EXT-8052. Bug was caused by setting visibility of border to FALSE without respect to boolean argument passed to setNoItemsCommentVisible(). setNoItemsCommentVisible() is called on every rearrange, so border disappeared quite often. Fixed it by setting border's visibility depending on passed argument. Reviewed by Mike Antipov at https://codereview.productengine.com/secondlife/r/764/ --HG-- branch : product-engine
2010-07-15merge from PE's viewer-trunk (viewer-public)Tofu Linden
2010-07-14mergeRichard Linden
2010-07-14EXT-8300 FIX Creator's icon overlaps description text on object's mini-inspectorRichard Linden
reviewed by Leyla
2010-07-13Automated merge with https://hg.productengine.com/secondlife/viewer-release/Alexei Arabadji
--HG-- branch : product-engine
2010-07-13EXT-8341 FIXED Avoided assertion on receiving object auto return notification.Alexei Arabadji
Details: 1 Provided passing necessary is_group parameter to LLPostponedNotification::add<LLPostponedServerObjectNotification> method call; 3 Corrected handling group name in LLPostponedNotification::onCachedNameReceived; 2 Added check on retrieved name from cache name and replacement with fallback value. reviewed by Vadim Savchuk at https://codereview.productengine.com/secondlife/r/743/ --HG-- branch : product-engine
2010-07-13mergeVadim Savchuk
--HG-- branch : product-engine
2010-07-13Manual merge from default branchVadim Savchuk
Resolved conflicts in llpaneloutfitedit.cpp --HG-- branch : product-engine
2010-07-13EXT-7668 FIXED prohibited deselecting a single selected item w/o using CTRLIgor Borovkov
Reviewed by Vadim Savchuk at https://codereview.productengine.com/secondlife/r/746/ --HG-- branch : product-engine
2010-07-13merge from PE's viewer-releaseTofu Linden
2010-07-12Fix for reopened EXT-8025Monroe Linden
Fixed an issue in LLFlatListView where calling setCommitOnSelectionChange(true) wasn't always causing the commit signal to be sent when the selection changed. Reviewed by Richard at http://codereview.lindenlab.com/2579010
2010-07-12Changing "typename const T" to "const typename T" makes gcc much happier. cool.Tofu Linden