diff options
| author | Andrey Kleshchev <117672381+akleshchev@users.noreply.github.com> | 2026-09-07 20:17:26 +0300 |
|---|---|---|
| committer | Andrey Kleshchev <117672381+akleshchev@users.noreply.github.com> | 2026-09-08 21:05:06 +0300 |
| commit | c37498bb4017e89654c0687a3f84792ecb445c47 (patch) | |
| tree | ebf9228a8df5a590f0df1090b854a9b8418ac4b1 /indra/llwindow/llwindowmacosx.cpp | |
| parent | d5d5fd815f2833bdc968d35a213a12380ac0dec6 (diff) | |
#6243 Double RMB support
Diffstat (limited to 'indra/llwindow/llwindowmacosx.cpp')
| -rw-r--r-- | indra/llwindow/llwindowmacosx.cpp | 38 |
1 files changed, 36 insertions, 2 deletions
diff --git a/indra/llwindow/llwindowmacosx.cpp b/indra/llwindow/llwindowmacosx.cpp index 7cb681aefe..4562488fa6 100644 --- a/indra/llwindow/llwindowmacosx.cpp +++ b/indra/llwindow/llwindowmacosx.cpp @@ -387,7 +387,7 @@ void callLeftMouseUp(float *pos, MASK mask) } -void callDoubleClick(float *pos, MASK mask) +void callLeftDoubleClick(float* pos, MASK mask) { if (!gWindowImplementation) { @@ -401,7 +401,41 @@ void callDoubleClick(float *pos, MASK mask) LLCoordGL outCoords; outCoords.mX = ll_round(pos[0]); outCoords.mY = ll_round(pos[1]); - gWindowImplementation->getCallbacks()->handleDoubleClick(gWindowImplementation, outCoords, gKeyboard->currentMask(true)); + gWindowImplementation->getCallbacks()->handleLeftMouseDoubleClick(gWindowImplementation, outCoords, gKeyboard->currentMask(true)); +} + +void callRightDoubleClick(float* pos, MASK mask) +{ + if (!gWindowImplementation) + { + return; + } + if (gWindowImplementation->allowsLanguageInput()) + { + gWindowImplementation->interruptLanguageTextInput(); + } + + LLCoordGL outCoords; + outCoords.mX = ll_round(pos[0]); + outCoords.mY = ll_round(pos[1]); + gWindowImplementation->getCallbacks()->handleRightMouseDoubleClick(gWindowImplementation, outCoords, gKeyboard->currentMask(true)); +} + +void callMiddleDoubleClick(float* pos, MASK mask) +{ + if (!gWindowImplementation) + { + return; + } + if (gWindowImplementation->allowsLanguageInput()) + { + gWindowImplementation->interruptLanguageTextInput(); + } + + LLCoordGL outCoords; + outCoords.mX = ll_round(pos[0]); + outCoords.mY = ll_round(pos[1]); + gWindowImplementation->getCallbacks()->handleMiddleMouseDoubleClick(gWindowImplementation, outCoords, gKeyboard->currentMask(true)); } void callResize(unsigned int width, unsigned int height) |
