diff --git a/src/cocoa_init.m b/src/cocoa_init.m index 3c92fb4f0..da3b96633 100644 --- a/src/cocoa_init.m +++ b/src/cocoa_init.m @@ -247,9 +247,6 @@ static GLFWbool initializeTIS(void) CFStringRef* kPropertyUnicodeKeyLayoutData = CFBundleGetDataPointerForName(_glfw.ns.tis.bundle, CFSTR("kTISPropertyUnicodeKeyLayoutData")); - CFStringRef* kNotifySelectedKeyboardInputSourceChanged = - CFBundleGetDataPointerForName(_glfw.ns.tis.bundle, - CFSTR("kTISNotifySelectedKeyboardInputSourceChanged")); _glfw.ns.tis.CopyCurrentKeyboardLayoutInputSource = CFBundleGetFunctionPointerForName(_glfw.ns.tis.bundle, CFSTR("TISCopyCurrentKeyboardLayoutInputSource")); @@ -261,7 +258,6 @@ static GLFWbool initializeTIS(void) CFSTR("LMGetKbdType")); if (!kPropertyUnicodeKeyLayoutData || - !kNotifySelectedKeyboardInputSourceChanged || !TISCopyCurrentKeyboardLayoutInputSource || !TISGetInputSourceProperty || !LMGetKbdType) @@ -273,8 +269,6 @@ static GLFWbool initializeTIS(void) _glfw.ns.tis.kPropertyUnicodeKeyLayoutData = *kPropertyUnicodeKeyLayoutData; - _glfw.ns.tis.kNotifySelectedKeyboardInputSourceChanged = - *kNotifySelectedKeyboardInputSourceChanged; return updateUnicodeDataNS(); } @@ -301,10 +295,10 @@ int _glfwPlatformInit(void) _glfw.ns.autoreleasePool = [[NSAutoreleasePool alloc] init]; _glfw.ns.listener = [[GLFWLayoutListener alloc] init]; - [[NSDistributedNotificationCenter defaultCenter] + [[NSNotificationCenter defaultCenter] addObserver:_glfw.ns.listener selector:@selector(selectedKeyboardInputSourceChanged:) - name:(__bridge NSString*)kTISNotifySelectedKeyboardInputSourceChanged + name:NSTextInputContextKeyboardSelectionDidChangeNotification object:nil]; #if defined(_GLFW_USE_CHDIR) @@ -355,11 +349,11 @@ void _glfwPlatformTerminate(void) if (_glfw.ns.listener) { - [[NSDistributedNotificationCenter defaultCenter] + [[NSNotificationCenter defaultCenter] removeObserver:_glfw.ns.listener - name:(__bridge NSString*)kTISNotifySelectedKeyboardInputSourceChanged + name:NSTextInputContextKeyboardSelectionDidChangeNotification object:nil]; - [[NSDistributedNotificationCenter defaultCenter] + [[NSNotificationCenter defaultCenter] removeObserver:_glfw.ns.listener]; [_glfw.ns.listener release]; _glfw.ns.listener = nil; diff --git a/src/cocoa_platform.h b/src/cocoa_platform.h index d76d7de74..2e47e0457 100644 --- a/src/cocoa_platform.h +++ b/src/cocoa_platform.h @@ -58,7 +58,6 @@ typedef void* id; // HIToolbox.framework pointer typedefs #define kTISPropertyUnicodeKeyLayoutData _glfw.ns.tis.kPropertyUnicodeKeyLayoutData -#define kTISNotifySelectedKeyboardInputSourceChanged _glfw.ns.tis.kNotifySelectedKeyboardInputSourceChanged typedef TISInputSourceRef (*PFN_TISCopyCurrentKeyboardLayoutInputSource)(void); #define TISCopyCurrentKeyboardLayoutInputSource _glfw.ns.tis.CopyCurrentKeyboardLayoutInputSource typedef void* (*PFN_TISGetInputSourceProperty)(TISInputSourceRef,CFStringRef); @@ -112,7 +111,6 @@ typedef struct _GLFWlibraryNS PFN_TISGetInputSourceProperty GetInputSourceProperty; PFN_LMGetKbdType GetKbdType; CFStringRef kPropertyUnicodeKeyLayoutData; - CFStringRef kNotifySelectedKeyboardInputSourceChanged; } tis; } _GLFWlibraryNS;