merge
commit
41c51a07eb
|
|
@ -96,11 +96,7 @@ LLGestureComboList::LLGestureComboList(const LLGestureComboList::Params& p)
|
|||
params.commit_on_keyboard_movement(false);
|
||||
|
||||
mList = LLUICtrlFactory::create<LLScrollListCtrl>(params);
|
||||
|
||||
// *HACK: adding list as a child to FloaterViewHolder to make it fully visible without
|
||||
// making it top control (because it would cause problems).
|
||||
gViewerWindow->getFloaterViewHolder()->addChild(mList);
|
||||
mList->setVisible(FALSE);
|
||||
addChild(mList);
|
||||
|
||||
//****************************Gesture Part********************************/
|
||||
|
||||
|
|
@ -115,7 +111,7 @@ LLGestureComboList::LLGestureComboList(const LLGestureComboList::Params& p)
|
|||
setFocusLostCallback(boost::bind(&LLGestureComboList::hideList, this));
|
||||
}
|
||||
|
||||
BOOL LLGestureComboList::handleKey(KEY key, MASK mask, BOOL called_from_parent)
|
||||
BOOL LLGestureComboList::handleKeyHere(KEY key, MASK mask)
|
||||
{
|
||||
BOOL handled = FALSE;
|
||||
|
||||
|
|
@ -126,7 +122,7 @@ BOOL LLGestureComboList::handleKey(KEY key, MASK mask, BOOL called_from_parent)
|
|||
}
|
||||
else
|
||||
{
|
||||
handled = mList->handleKey(key, mask, called_from_parent);
|
||||
handled = mList->handleKeyHere(key, mask);
|
||||
}
|
||||
|
||||
return handled;
|
||||
|
|
@ -135,18 +131,17 @@ BOOL LLGestureComboList::handleKey(KEY key, MASK mask, BOOL called_from_parent)
|
|||
void LLGestureComboList::showList()
|
||||
{
|
||||
LLRect rect = mList->getRect();
|
||||
LLRect screen;
|
||||
mButton->localRectToScreen(getRect(), &screen);
|
||||
LLRect button_rect = mButton->getRect();
|
||||
|
||||
// Calculating amount of space between the navigation bar and gestures combo
|
||||
LLNavigationBar* nb = LLNavigationBar::getInstance();
|
||||
|
||||
S32 x, nb_bottom;
|
||||
nb->localPointToScreen(0, 0, &x, &nb_bottom);
|
||||
nb->localPointToOtherView(0, 0, &x, &nb_bottom, this);
|
||||
|
||||
S32 max_height = nb_bottom - screen.mTop;
|
||||
S32 max_height = nb_bottom - button_rect.mTop;
|
||||
mList->calcColumnWidths();
|
||||
rect.setOriginAndSize(screen.mLeft, screen.mTop, llmax(mList->getMaxContentWidth(),mButton->getRect().getWidth()), max_height);
|
||||
rect.setOriginAndSize(button_rect.mLeft, button_rect.mTop, llmax(mList->getMaxContentWidth(),mButton->getRect().getWidth()), max_height);
|
||||
|
||||
mList->setRect(rect);
|
||||
mList->fitContents( llmax(mList->getMaxContentWidth(),mButton->getRect().getWidth()), max_height);
|
||||
|
|
@ -156,6 +151,7 @@ void LLGestureComboList::showList()
|
|||
// Show the list and push the button down
|
||||
mButton->setToggleState(TRUE);
|
||||
mList->setVisible(TRUE);
|
||||
LLUI::addPopup(mList);
|
||||
}
|
||||
|
||||
void LLGestureComboList::onButtonCommit()
|
||||
|
|
@ -188,6 +184,7 @@ void LLGestureComboList::hideList()
|
|||
mButton->setToggleState(FALSE);
|
||||
mList->setVisible(FALSE);
|
||||
mList->mouseOverHighlightNthItem(-1);
|
||||
LLUI::removePopup(mList);
|
||||
gFocusMgr.setKeyboardFocus(NULL);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -70,7 +70,7 @@ public:
|
|||
LLCtrlListInterface* getListInterface() { return (LLCtrlListInterface*)mList; };
|
||||
virtual void showList();
|
||||
virtual void hideList();
|
||||
virtual BOOL handleKey(KEY key, MASK mask, BOOL called_from_parent);
|
||||
virtual BOOL handleKeyHere(KEY key, MASK mask);
|
||||
|
||||
S32 getCurrentIndex() const;
|
||||
void onItemSelected(const LLSD& data);
|
||||
|
|
|
|||
|
|
@ -283,7 +283,7 @@
|
|||
layout="topleft"
|
||||
left_delta="0"
|
||||
name="external"
|
||||
value="true"
|
||||
value="1"
|
||||
tool_tip="Use the default system web browser for help, web links, etc. Not recommended if running full screen."
|
||||
top_delta="20"
|
||||
width="480" />
|
||||
|
|
|
|||
Loading…
Reference in New Issue