diff options
author | Richard Linden <none@none> | 2010-09-09 19:07:07 -0700 |
---|---|---|
committer | Richard Linden <none@none> | 2010-09-09 19:07:07 -0700 |
commit | d0bc4fc5e656b07308fe5fe0dc99ed78c00efd78 (patch) | |
tree | 028d49deca763b7313ba31a421962712cb537539 /indra | |
parent | 2ffd7aad9fa04b910e5079e59b75330fcfa8beab (diff) |
DEV-53015 FIX Volume slider disappears when sliding on panel_prim_media_controls.xml
Diffstat (limited to 'indra')
-rw-r--r-- | indra/llui/llbutton.cpp | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/indra/llui/llbutton.cpp b/indra/llui/llbutton.cpp index f014a2a98d..65ef3e5f8f 100644 --- a/indra/llui/llbutton.cpp +++ b/indra/llui/llbutton.cpp @@ -558,15 +558,19 @@ void LLButton::draw() pressed_by_keyboard = gKeyboard->getKeyDown(' ') || (mCommitOnReturn && gKeyboard->getKeyDown(KEY_RETURN)); } - // Unselected image assignments - S32 local_mouse_x; - S32 local_mouse_y; - LLUI::getMousePositionLocal(this, &local_mouse_x, &local_mouse_y); + bool mouse_pressed_and_over = false; + if (hasMouseCapture()) + { + S32 local_mouse_x ; + S32 local_mouse_y; + LLUI::getMousePositionLocal(this, &local_mouse_x, &local_mouse_y); + mouse_pressed_and_over = pointInView(local_mouse_x, local_mouse_y); + } bool enabled = isInEnabledChain(); bool pressed = pressed_by_keyboard - || (hasMouseCapture() && pointInView(local_mouse_x, local_mouse_y)) + || mouse_pressed_and_over || mForcePressedState; bool selected = getToggleState(); |