Merge branch 'DRTVWR-580-maint-T' of https://github.com/secondlife/viewer
commit
d80a1dee15
|
|
@ -39,11 +39,6 @@ void LL::ThreadPool::start()
|
|||
run(tname);
|
||||
});
|
||||
}
|
||||
|
||||
// Special workflow for LLWindowWin32Thread - it's close() should be called explicitly
|
||||
if (mExplicitShutdown)
|
||||
return;
|
||||
|
||||
// Listen on "LLApp", and when the app is shutting down, close the queue
|
||||
// and join the workers.
|
||||
LLEventPumps::instance().obtain("LLApp").listen(
|
||||
|
|
|
|||
|
|
@ -59,10 +59,6 @@ namespace LL
|
|||
*/
|
||||
virtual void run();
|
||||
|
||||
protected:
|
||||
// LLWindowWin32Thread should set this flag to true
|
||||
bool mExplicitShutdown { false };
|
||||
|
||||
private:
|
||||
void run(const std::string& name);
|
||||
|
||||
|
|
|
|||
|
|
@ -4719,9 +4719,6 @@ void LLWindowWin32::getWindowChrome( U32 &aChromeW, U32 &aChromeH )
|
|||
inline LLWindowWin32::LLWindowWin32Thread::LLWindowWin32Thread()
|
||||
: ThreadPool("Window Thread", 1, MAX_QUEUE_SIZE)
|
||||
{
|
||||
// Set this flag to true to avoid of implicit call of close() from start()
|
||||
mExplicitShutdown = true;
|
||||
|
||||
ThreadPool::start();
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1690,7 +1690,8 @@ bool LLViewerInput::scanKey(KEY key, BOOL key_down, BOOL key_up, BOOL key_level)
|
|||
|
||||
BOOL LLViewerInput::handleMouse(LLWindow *window_impl, LLCoordGL pos, MASK mask, EMouseClickType clicktype, BOOL down)
|
||||
{
|
||||
BOOL handled = gViewerWindow->handleAnyMouseClick(window_impl, pos, mask, clicktype, down);
|
||||
bool is_toolmgr_action = false;
|
||||
BOOL handled = gViewerWindow->handleAnyMouseClick(window_impl, pos, mask, clicktype, down, is_toolmgr_action);
|
||||
|
||||
if (clicktype != CLICK_NONE)
|
||||
{
|
||||
|
|
@ -1709,7 +1710,7 @@ BOOL LLViewerInput::handleMouse(LLWindow *window_impl, LLCoordGL pos, MASK mask,
|
|||
|
||||
// If the first LMB click is handled by the menu, skip the following double click
|
||||
static bool skip_double_click = false;
|
||||
if (clicktype == CLICK_LEFT && down )
|
||||
if (clicktype == CLICK_LEFT && down && !is_toolmgr_action)
|
||||
{
|
||||
skip_double_click = handled;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1150,7 +1150,7 @@ void LLViewerWindow::handlePieMenu(S32 x, S32 y, MASK mask)
|
|||
}
|
||||
}
|
||||
|
||||
BOOL LLViewerWindow::handleAnyMouseClick(LLWindow *window, LLCoordGL pos, MASK mask, EMouseClickType clicktype, BOOL down)
|
||||
BOOL LLViewerWindow::handleAnyMouseClick(LLWindow *window, LLCoordGL pos, MASK mask, EMouseClickType clicktype, BOOL down, bool& is_toolmgr_action)
|
||||
{
|
||||
const char* buttonname = "";
|
||||
const char* buttonstatestr = "";
|
||||
|
|
@ -1299,6 +1299,7 @@ BOOL LLViewerWindow::handleAnyMouseClick(LLWindow *window, LLCoordGL pos, MASK m
|
|||
if(!gDisconnected && LLToolMgr::getInstance()->getCurrentTool()->handleAnyMouseClick( x, y, mask, clicktype, down ) )
|
||||
{
|
||||
LLViewerEventRecorder::instance().clear_xui();
|
||||
is_toolmgr_action = true;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -180,7 +180,7 @@ public:
|
|||
|
||||
void reshapeStatusBarContainer();
|
||||
|
||||
BOOL handleAnyMouseClick(LLWindow *window, LLCoordGL pos, MASK mask, EMouseClickType clicktype, BOOL down);
|
||||
BOOL handleAnyMouseClick(LLWindow *window, LLCoordGL pos, MASK mask, EMouseClickType clicktype, BOOL down, bool &is_toolmgr_action);
|
||||
|
||||
//
|
||||
// LLWindowCallback interface implementation
|
||||
|
|
|
|||
Loading…
Reference in New Issue