diff options
Diffstat (limited to '')
-rw-r--r-- | linden/indra/newview/llfolderview.cpp | 19 |
1 files changed, 14 insertions, 5 deletions
diff --git a/linden/indra/newview/llfolderview.cpp b/linden/indra/newview/llfolderview.cpp index 3a58be9..a68b937 100644 --- a/linden/indra/newview/llfolderview.cpp +++ b/linden/indra/newview/llfolderview.cpp | |||
@@ -2,6 +2,8 @@ | |||
2 | * @file llfolderview.cpp | 2 | * @file llfolderview.cpp |
3 | * @brief Implementation of the folder view collection of classes. | 3 | * @brief Implementation of the folder view collection of classes. |
4 | * | 4 | * |
5 | * $LicenseInfo:firstyear=2001&license=viewergpl$ | ||
6 | * | ||
5 | * Copyright (c) 2001-2007, Linden Research, Inc. | 7 | * Copyright (c) 2001-2007, Linden Research, Inc. |
6 | * | 8 | * |
7 | * Second Life Viewer Source Code | 9 | * Second Life Viewer Source Code |
@@ -24,6 +26,7 @@ | |||
24 | * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO | 26 | * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO |
25 | * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, | 27 | * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, |
26 | * COMPLETENESS OR PERFORMANCE. | 28 | * COMPLETENESS OR PERFORMANCE. |
29 | * $/LicenseInfo$ | ||
27 | */ | 30 | */ |
28 | 31 | ||
29 | #include "llviewerprecompiledheaders.h" | 32 | #include "llviewerprecompiledheaders.h" |
@@ -2944,12 +2947,10 @@ BOOL LLFolderView::changeSelection(LLFolderViewItem* selection, BOOL selected) | |||
2944 | 2947 | ||
2945 | if(selected && !on_list) | 2948 | if(selected && !on_list) |
2946 | { | 2949 | { |
2947 | mNumDescendantsSelected++; | ||
2948 | addToSelectionList(selection); | 2950 | addToSelectionList(selection); |
2949 | } | 2951 | } |
2950 | if(!selected && on_list) | 2952 | if(!selected && on_list) |
2951 | { | 2953 | { |
2952 | mNumDescendantsSelected--; | ||
2953 | removeFromSelectionList(selection); | 2954 | removeFromSelectionList(selection); |
2954 | } | 2955 | } |
2955 | 2956 | ||
@@ -3192,18 +3193,18 @@ void LLFolderView::draw() | |||
3192 | 3193 | ||
3193 | if (hasVisibleChildren() || getShowFolderState() == LLInventoryFilter::SHOW_ALL_FOLDERS) | 3194 | if (hasVisibleChildren() || getShowFolderState() == LLInventoryFilter::SHOW_ALL_FOLDERS) |
3194 | { | 3195 | { |
3195 | setStatusText(""); | 3196 | mStatusText.clear(); |
3196 | } | 3197 | } |
3197 | else | 3198 | else |
3198 | { | 3199 | { |
3199 | if (gInventory.backgroundFetchActive() || mCompletedFilterGeneration < mFilter.getMinRequiredGeneration()) | 3200 | if (gInventory.backgroundFetchActive() || mCompletedFilterGeneration < mFilter.getMinRequiredGeneration()) |
3200 | { | 3201 | { |
3201 | setStatusText("Searching..."); | 3202 | mStatusText = "Searching..."; // *TODO:translate |
3202 | sFont->renderUTF8(mStatusText, 0, 2, 1, LLColor4::white, LLFontGL::LEFT, LLFontGL::TOP, LLFontGL::NORMAL, S32_MAX, S32_MAX, NULL, FALSE ); | 3203 | sFont->renderUTF8(mStatusText, 0, 2, 1, LLColor4::white, LLFontGL::LEFT, LLFontGL::TOP, LLFontGL::NORMAL, S32_MAX, S32_MAX, NULL, FALSE ); |
3203 | } | 3204 | } |
3204 | else | 3205 | else |
3205 | { | 3206 | { |
3206 | setStatusText("No matching items found in inventory."); | 3207 | mStatusText = "No matching items found in inventory."; // *TODO:translate |
3207 | sFont->renderUTF8(mStatusText, 0, 2, 1, LLColor4::white, LLFontGL::LEFT, LLFontGL::TOP, LLFontGL::NORMAL, S32_MAX, S32_MAX, NULL, FALSE ); | 3208 | sFont->renderUTF8(mStatusText, 0, 2, 1, LLColor4::white, LLFontGL::LEFT, LLFontGL::TOP, LLFontGL::NORMAL, S32_MAX, S32_MAX, NULL, FALSE ); |
3208 | } | 3209 | } |
3209 | } | 3210 | } |
@@ -3677,6 +3678,14 @@ BOOL LLFolderView::handleKeyHere( KEY key, MASK mask, BOOL called_from_parent ) | |||
3677 | { | 3678 | { |
3678 | BOOL handled = FALSE; | 3679 | BOOL handled = FALSE; |
3679 | 3680 | ||
3681 | // SL-51858: Key presses are not being passed to the Popup menu. | ||
3682 | // A proper fix is non-trivial so instead just close the menu. | ||
3683 | LLMenuGL* menu = (LLMenuGL*)LLView::getViewByHandle(mPopupMenuHandle); | ||
3684 | if (menu->isOpen()) | ||
3685 | { | ||
3686 | LLMenuGL::sMenuContainer->hideMenus(); | ||
3687 | } | ||
3688 | |||
3680 | LLView *item = NULL; | 3689 | LLView *item = NULL; |
3681 | if (getChildCount() > 0) | 3690 | if (getChildCount() > 0) |
3682 | { | 3691 | { |