From 92676f978f335cc0e6cf9575eaae174c6f421a3a Mon Sep 17 00:00:00 2001 From: ArtDev <45949002+artdeell@users.noreply.github.com> Date: Sun, 17 Jan 2021 11:51:59 +0300 Subject: [PATCH] Disable grab compute on direct calls to avoid jumps in LWJGL2 versions --- app_pojavlauncher/src/main/assets/components/lwjgl3/version | 2 +- app_pojavlauncher/src/main/jni/input_bridge_v3.c | 6 +++--- .../main/java/org/lwjgl/input/GLFWInputImplementation.java | 6 ++---- 3 files changed, 6 insertions(+), 8 deletions(-) diff --git a/app_pojavlauncher/src/main/assets/components/lwjgl3/version b/app_pojavlauncher/src/main/assets/components/lwjgl3/version index 405a8dd95..48b66dfb1 100644 --- a/app_pojavlauncher/src/main/assets/components/lwjgl3/version +++ b/app_pojavlauncher/src/main/assets/components/lwjgl3/version @@ -1 +1 @@ -20210116 +20210117 diff --git a/app_pojavlauncher/src/main/jni/input_bridge_v3.c b/app_pojavlauncher/src/main/jni/input_bridge_v3.c index aa6b4f8bb..d5b399e23 100644 --- a/app_pojavlauncher/src/main/jni/input_bridge_v3.c +++ b/app_pojavlauncher/src/main/jni/input_bridge_v3.c @@ -261,7 +261,7 @@ JNIEXPORT void JNICALL Java_org_lwjgl_glfw_CallbackBridge_nativeSendCursorPos(JN isCursorEntered = true; } } - + if (isGrabbing) { if (!isPrepareGrabPos) { grabCursorX += x - lastCursorX; @@ -276,9 +276,9 @@ JNIEXPORT void JNICALL Java_org_lwjgl_glfw_CallbackBridge_nativeSendCursorPos(JN return; } } - + if (!isUseStackQueueCall) { - GLFW_invoke_CursorPos(showingWindow, (double) (isGrabbing ? grabCursorX : x), (double) (isGrabbing ? grabCursorY : y)); + GLFW_invoke_CursorPos(showingWindow, (double) (x), (double) (y)); } else { sendData(EVENT_TYPE_CURSOR_POS, (isGrabbing ? grabCursorX : x), (isGrabbing ? grabCursorY : y), 0, 0); } diff --git a/jre_lwjgl3glfw/src/main/java/org/lwjgl/input/GLFWInputImplementation.java b/jre_lwjgl3glfw/src/main/java/org/lwjgl/input/GLFWInputImplementation.java index 82ec265a2..21ae6495e 100644 --- a/jre_lwjgl3glfw/src/main/java/org/lwjgl/input/GLFWInputImplementation.java +++ b/jre_lwjgl3glfw/src/main/java/org/lwjgl/input/GLFWInputImplementation.java @@ -144,11 +144,9 @@ public class GLFWInputImplementation implements InputImplementation { int acoord1=0; int acoord2=0; if(coord1 == -1 && coord2 == -1) { - acoord1 = mouseComparatorX; - acoord2 = mouseComparatorY; + acoord1 = mouseX; + acoord2 = mouseY; }else{ - mouseComparatorX = coord1; - mouseComparatorY = coord2; acoord1 = coord1; acoord2= coord2; }