diff options
author | Mnikolenko ProductEngine <mnikolenko@productengine.com> | 2019-06-20 15:41:27 +0300 |
---|---|---|
committer | Mnikolenko ProductEngine <mnikolenko@productengine.com> | 2019-06-20 15:41:27 +0300 |
commit | b813814202d0c3c011df9f514b73afe7b1758b3c (patch) | |
tree | 8a9865746b3bd30ca61774489d894f188a0d7148 /indra | |
parent | 16437e771b0cd420e46d723117bb3b9c8cdd618b (diff) |
SL-11432 FIXED [OSX] Avatar is spinning when pressing Alt+D+Command and then releasing D key
Diffstat (limited to 'indra')
-rw-r--r-- | indra/llwindow/llappdelegate-objc.h | 3 | ||||
-rw-r--r-- | indra/llwindow/llopenglview-objc.mm | 9 | ||||
-rw-r--r-- | indra/newview/CMakeLists.txt | 2 | ||||
-rw-r--r-- | indra/newview/llappdelegate-objc.mm | 13 |
4 files changed, 17 insertions, 10 deletions
diff --git a/indra/llwindow/llappdelegate-objc.h b/indra/llwindow/llappdelegate-objc.h index 6daf1ac55b..0b38647b4a 100644 --- a/indra/llwindow/llappdelegate-objc.h +++ b/indra/llwindow/llappdelegate-objc.h @@ -46,3 +46,6 @@ - (void) languageUpdated; - (bool) romanScript; @end + +@interface LLApplication : NSApplication +@end diff --git a/indra/llwindow/llopenglview-objc.mm b/indra/llwindow/llopenglview-objc.mm index 33eed7227a..1990499459 100644 --- a/indra/llwindow/llopenglview-objc.mm +++ b/indra/llwindow/llopenglview-objc.mm @@ -509,15 +509,6 @@ attributedStringInfo getSegments(NSAttributedString *str) { [[self inputContext] handleEvent:theEvent]; } - - // OS X intentionally does not send us key-up information on cmd-key combinations. - // This behaviour is not a bug, and only applies to cmd-combinations (no others). - // Since SL assumes we receive those, we fake it here. - if (mModifiers & NSCommandKeyMask && !mHasMarkedText) - { - eventData.mKeyEvent = NativeKeyEventData::KEYUP; - callKeyUp(&eventData, [theEvent keyCode], mModifiers); - } } - (void)flagsChanged:(NSEvent *)theEvent diff --git a/indra/newview/CMakeLists.txt b/indra/newview/CMakeLists.txt index 46fd0f3fd1..b8789da66b 100644 --- a/indra/newview/CMakeLists.txt +++ b/indra/newview/CMakeLists.txt @@ -2117,7 +2117,7 @@ if (DARWIN) set(MACOSX_BUNDLE_BUNDLE_VERSION "${VIEWER_SHORT_VERSION}${VIEWER_MACOSX_PHASE}${VIEWER_REVISION}") set(MACOSX_BUNDLE_COPYRIGHT "Copyright © Linden Research, Inc. 2018") set(MACOSX_BUNDLE_NSMAIN_NIB_FILE "SecondLife.nib") - set(MACOSX_BUNDLE_NSPRINCIPAL_CLASS "NSApplication") + set(MACOSX_BUNDLE_NSPRINCIPAL_CLASS "LLApplication") # https://blog.kitware.com/upcoming-in-cmake-2-8-12-osx-rpath-support/ set(CMAKE_MACOSX_RPATH 1) diff --git a/indra/newview/llappdelegate-objc.mm b/indra/newview/llappdelegate-objc.mm index 1d55537427..47fde299c7 100644 --- a/indra/newview/llappdelegate-objc.mm +++ b/indra/newview/llappdelegate-objc.mm @@ -342,3 +342,16 @@ struct AttachmentInfo #endif // LL_BUGSPLAT @end + +@implementation LLApplication + +- (void)sendEvent:(NSEvent *)event +{ + [super sendEvent:event]; + if ([event type] == NSKeyUp && ([event modifierFlags] & NSCommandKeyMask)) + { + [[self keyWindow] sendEvent:event]; + } +} + +@end |