Mac OS X: Don't use global is_grabbed variable in MacOSXMouseEventQueue.nWarpCursor

This commit is contained in:
Elias Naur 2007-05-31 21:00:13 +00:00
parent 2d436e3231
commit bea9667f8b
1 changed files with 5 additions and 11 deletions

View File

@ -44,18 +44,12 @@
#include "org_lwjgl_opengl_MacOSXMouseEventQueue.h"
#include "common_tools.h"
static bool is_grabbed;
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_MacOSXMouseEventQueue_nGrabMouse(JNIEnv *env, jclass unused, jboolean grab) {
bool new_grabbed = grab == JNI_TRUE;
if (is_grabbed != new_grabbed) {
is_grabbed = new_grabbed;
CGAssociateMouseAndMouseCursorPosition(is_grabbed ? FALSE : TRUE);
if (is_grabbed)
CGDisplayHideCursor(kCGDirectMainDisplay);
else
CGDisplayShowCursor(kCGDirectMainDisplay);
}
CGAssociateMouseAndMouseCursorPosition(grab == JNI_TRUE ? FALSE : TRUE);
if (grab)
CGDisplayHideCursor(kCGDirectMainDisplay);
else
CGDisplayShowCursor(kCGDirectMainDisplay);
}
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_MacOSXMouseEventQueue_nWarpCursor(JNIEnv *env, jclass unused, jint x, jint y) {