Fix OS X modifier flags cache getting out of date

Fixes #566.
Closes #567.
This commit is contained in:
Camilla Berglund 2016-02-26 08:37:30 +01:00
parent baf574494d
commit d3f5d036f8
2 changed files with 4 additions and 0 deletions

View File

@ -104,6 +104,7 @@ does not find Doxygen, the documentation will not be generated.
- [Cocoa] Removed support for OS X 10.6 - [Cocoa] Removed support for OS X 10.6
- [Cocoa] Bugfix: Full screen windows on secondary monitors were mispositioned - [Cocoa] Bugfix: Full screen windows on secondary monitors were mispositioned
- [Cocoa] Bugfix: Connecting a joystick that reports no name would segfault - [Cocoa] Bugfix: Connecting a joystick that reports no name would segfault
- [Cocoa] Bugfix: Modifier flags cache was not updated when window became key
- [X11] Bugfix: Monitor connection and disconnection events were not reported - [X11] Bugfix: Monitor connection and disconnection events were not reported
- [X11] Bugfix: Decoding of UTF-8 text from XIM could continue past the end - [X11] Bugfix: Decoding of UTF-8 text from XIM could continue past the end
- [X11] Bugfix: An XKB structure was leaked during `glfwInit` - [X11] Bugfix: An XKB structure was leaked during `glfwInit`

View File

@ -206,6 +206,9 @@ static int translateKey(unsigned int key)
- (void)windowDidBecomeKey:(NSNotification *)notification - (void)windowDidBecomeKey:(NSNotification *)notification
{ {
window->ns.modifierFlags =
[NSEvent modifierFlags] & NSDeviceIndependentModifierFlagsMask;
if (_glfw.cursorWindow == window && if (_glfw.cursorWindow == window &&
window->cursorMode == GLFW_CURSOR_DISABLED) window->cursorMode == GLFW_CURSOR_DISABLED)
{ {