Windows: Fixed spurious mouse button events after a Mouse.setGrabbed(true)

This commit is contained in:
Elias Naur 2006-06-18 08:51:03 +00:00
parent c77c8069d6
commit d7542e3a71
1 changed files with 7 additions and 8 deletions

View File

@ -300,6 +300,7 @@ static void readDXBuffer(JNIEnv *env) {
0);
if (ret == DI_OK) {
if (mouse_grabbed)
copyDXEvents(num_di_events, rgdod);
} else if (ret == DI_BUFFEROVERFLOW) {
printfDebugJava(env, "Buffer overflowed");
@ -314,7 +315,7 @@ static void readDXBuffer(JNIEnv *env) {
} else if (ret == DIERR_NOTINITIALIZED) {
printfDebugJava(env, "not inited");
} else {
printfDebugJava(env, "unknown keyboard error");
printfDebugJava(env, "unknown mouse error (%d)", ret);
}
}
@ -323,9 +324,7 @@ JNIEXPORT jint JNICALL Java_org_lwjgl_opengl_Win32Display_nReadMouse
{
jint* buffer_ptr = (jint *)(*env)->GetDirectBufferAddress(env, buffer_obj) + buffer_position;
int buffer_size = ((*env)->GetDirectBufferCapacity(env, buffer_obj))/sizeof(jint) - buffer_position;
if (mouse_grabbed) {
readDXBuffer(env);
}
return copyEvents(&event_queue, buffer_ptr, buffer_size);
}