summaryrefslogtreecommitdiff
path: root/indra/llui
diff options
context:
space:
mode:
Diffstat (limited to 'indra/llui')
-rw-r--r--indra/llui/llcombobox.cpp6
-rw-r--r--indra/llui/llfloater.cpp3
-rw-r--r--indra/llui/llfloaterreg.cpp2
3 files changed, 7 insertions, 4 deletions
diff --git a/indra/llui/llcombobox.cpp b/indra/llui/llcombobox.cpp
index a4d1854bc8..cddda03faf 100644
--- a/indra/llui/llcombobox.cpp
+++ b/indra/llui/llcombobox.cpp
@@ -791,8 +791,10 @@ BOOL LLComboBox::handleKeyHere(KEY key, MASK mask)
return FALSE;
}
// if selection has changed, pop open list
- else if (mList->getLastSelectedItem() != last_selected_item ||
- (key == KEY_DOWN || key == KEY_UP) && !mList->isEmpty())
+ else if (mList->getLastSelectedItem() != last_selected_item
+ || ((key == KEY_DOWN || key == KEY_UP)
+ && mList->getCanSelect()
+ && !mList->isEmpty()))
{
showList();
}
diff --git a/indra/llui/llfloater.cpp b/indra/llui/llfloater.cpp
index 43a37d6dff..8917d5490c 100644
--- a/indra/llui/llfloater.cpp
+++ b/indra/llui/llfloater.cpp
@@ -3107,4 +3107,5 @@ void LLFloater::stackWith(LLFloater& other)
mRectControl.clear(); // don't save rect of stacked floaters
setShape(next_rect);
-} \ No newline at end of file
+}
+
diff --git a/indra/llui/llfloaterreg.cpp b/indra/llui/llfloaterreg.cpp
index 1463d0bfbb..fc7dcfcc4e 100644
--- a/indra/llui/llfloaterreg.cpp
+++ b/indra/llui/llfloaterreg.cpp
@@ -214,7 +214,7 @@ LLFloater* LLFloaterReg::showInstance(const std::string& name, const LLSD& key,
LLFloater* instance = getInstance(name, key);
if (instance)
{
- instance->openFloater(instance->mKey);
+ instance->openFloater(key);
if (focus)
instance->setFocus(TRUE);
}