From cc0faa34243047303c5cc066525e93c49bc5920d Mon Sep 17 00:00:00 2001 From: Callum Prentice Date: Mon, 23 Nov 2015 12:01:32 -0800 Subject: Refrain from sending right mouse button events - crashes OS X - and we don't need them --- indra/media_plugins/cef/media_plugin_cef.cpp | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) (limited to 'indra/media_plugins/cef') diff --git a/indra/media_plugins/cef/media_plugin_cef.cpp b/indra/media_plugins/cef/media_plugin_cef.cpp index c8a52ff5fe..77e6d35b11 100644 --- a/indra/media_plugins/cef/media_plugin_cef.cpp +++ b/indra/media_plugins/cef/media_plugin_cef.cpp @@ -526,15 +526,13 @@ void MediaPluginCEF::receiveMessage(const char* message_string) S32 x = message_in.getValueS32("x"); S32 y = message_in.getValueS32("y"); - //std::string modifiers = message_in.getValue("modifiers"); - + // only even send left mouse button events to LLCEFLib + // (partially prompted by crash in OS X CEF when sending right button events) + // we catch the right click in viewer and display our own context menu anyway S32 button = message_in.getValueS32("button"); LLCEFLib::EMouseButton btn = LLCEFLib::MB_MOUSE_BUTTON_LEFT; - if (button == 0) btn = LLCEFLib::MB_MOUSE_BUTTON_LEFT; - if (button == 1) btn = LLCEFLib::MB_MOUSE_BUTTON_RIGHT; - if (button == 2) btn = LLCEFLib::MB_MOUSE_BUTTON_MIDDLE; - if (event == "down") + if (event == "down" && button == 0) { mLLCEFLib->mouseButton(btn, LLCEFLib::ME_MOUSE_DOWN, x, y); mLLCEFLib->setFocus(true); @@ -543,7 +541,7 @@ void MediaPluginCEF::receiveMessage(const char* message_string) str << "Mouse down at = " << x << ", " << y; postDebugMessage(str.str()); } - else if (event == "up") + else if (event == "up" && button == 0) { mLLCEFLib->mouseButton(btn, LLCEFLib::ME_MOUSE_UP, x, y); -- cgit v1.2.3