summaryrefslogtreecommitdiff
path: root/indra/llui
AgeCommit message (Collapse)Author
2010-08-24merge heads. whew.Tofu Linden
2010-08-23VWR-20899 FIXED Minor potential memory leak in LLFlatListView::addItemAimee Linden
2010-08-18VWR-20768 (SNOW-507) FIXED Missing LL_TEST conditions in cmake filesAimee Linden
2010-08-17EXT-8357 FIXED ESC key sometimes failing to de-focus the sidebar.Vadim Savchuk
I've found out that the only case when pressing ESC doesn't transfer focus from side tray to game area is when a flat list view (people, groups, teleport history, etc) is focused. So, I fixed LLFlatListView to handle pressing ESC as expected. Reviewed by Sergey Litovchuk at https://codereview.productengine.com/secondlife/r/862/ --HG-- branch : product-engine
2010-08-13EXT-8536 FIXED Fixed wrong behaviour of slidercontrol's lineeditor revert on ↵Andrew Dyukov
escape. Though bug description mentioned only appearance, bug reproduced for all slidercontrols. The cause of returning on escape to old value instead of last commited one was that on commit slidercontrol set text for it's lineeditor which was the same as the one currently typed into lineeditor(and it seems logical). But LLLineEditor::setText() has check at it's beginning which compares text which is being set to the one which is already there. If this check succeeds, we exit the method and thus saving of value for revert is not reached. That's why when revert happened on escape older value then the last commited was set in lineeditor. - Added additional call of setText() in sliderctrl to force changes in currently set text so that on next call with "real" text saving of reverted value was reached. Reviewed by Vadim Savchuk at https://codereview.productengine.com/secondlife/r/856/ --HG-- branch : product-engine
2010-08-13Change license from GPL to LGPL (version 2.1)Oz Linden
2010-08-12EXT-7951 FIXED (Mini-Location panel appearance design issues)Paul Guslisty
- Added callback on show\hide Mini Location Panel event. This callback sets proper initial minimized position depending on state (shown or hidded) Mini Location Panel. Also callback shifts vertically already minimized floaters so that they don't overlap Mini Location Panel Reviewed by Vadim Savchuk at https://codereview.productengine.com/secondlife/r/851/ --HG-- branch : product-engine
2010-08-09EXT-7593 FIXED Added passing focus to the selected outfit tab when My ↵Sergei Litovchuk
Outfits tab is open. - Removed "tab_stop" from outfit tabs to prevent passing focus to a tab chosen by default from LLUICtrl::focusFirstItem(). Besides the order of passing focus between outfit tabs by pressing "Tab" was undetermined. - Had to remove const from the return of LLAccordionCtrl::getSelectedTab() to use the returned pointer for setting focus. Reviewed by Neal Orman at https://codereview.productengine.com/secondlife/r/846/. --HG-- branch : product-engine
2010-08-09EXT-8010 ADDITIONAL FIX Fixed problems with avatar links underlining.Andrew Dyukov
There were two problems: 1. Underlining broke when avatar's first and second name were on different lines. 2. There was no underline on hover for avatar miniinspector links in plaintext IM. - First problem was caused by calling LLOnHoverChangeableTextSegment::draw() for the same segment twice- for first and second name that were on different lines, while handleHover() was called only once. So handleHover() was called -> text was underlined -> first part of segment was drawn underlined -> its draw set style back to normal -> second part of segment was drawn without underlining. Fixed this by setting style back to normal only when drawing the last part of the segment. - Second problem was caused by unusual way of appending link to text in chat history. Changed it so that LLTextBase::appendText() now receives link not inside style params, but directly. Also added "/inspect" ending to check in LLUrlEntryAgent::underlineOnHoverOnly(). Reviewed by Richard Nelson at https://codereview.productengine.com/secondlife/r/833/ --HG-- branch : product-engine
2010-08-06EXT-4379 FIXED tab_stop parameter initialization that prevented inventory ↵Sergei Litovchuk
panel from passing focus to folder view's scroll container. Reviewed by Vadim Savchuk at https://codereview.productengine.com/secondlife/r/823/. --HG-- branch : product-engine
2010-08-06EXT-8207 FIXED (Unexpected camera zoom occures if scroll location history ↵Paul Guslisty
drop-down list by mouse wheel) Added parameter for scroll list control that determines opaque of mouse scroll wheel event. Set this parameter to \"true\" in combobox of navigation panel. Reviewed by Vadim Savchuk at https://codereview.productengine.com/secondlife/r/829/ --HG-- branch : product-engine
2010-08-04EXT-8424 FIXED ([HARD CODED] ALL LANGS: \"More\" menu option is untranslated ↵Paul Guslisty
under Advanced menu (French viewer) > Shortcuts) Set translated label from strings.xml Reviewed by Vadim Savchuk at https://codereview.productengine.com/secondlife/r/831/ --HG-- branch : product-engine
2010-08-03Merge from default branchVadim Savchuk
--HG-- branch : product-engine
2010-08-02EXT-8545 FIX Button art and other images are positioned incorrectly when UI ↵Richard Nelson
scale != 1.0
2010-08-02Redo the same merge as in changeset "2026f824953f", but this time with ↵Christian Goetze (CG)
feeeeling.
2010-08-02EXT-5609 FIXED Avoided showing script floater undocked if it was created in ↵Andrew Dyukov
mouselook mode. Commiting on behalf of Alex Productengine. - Added check if floater is constructed in mouselook mode and added forcing dock state when floater is shown after constructing in mouselook mode. Reviewed by Vadim Savchuk at https://codereview.productengine.com/secondlife/r/830/ --HG-- branch : product-engine
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-30MergeKent Quirk
2010-07-30Merge from q/viewer-release to dessie/viewer-release for 2.1.1 beta 1Kent Quirk
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-27Backed out changeset: 58571b4e704bRichard 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