From 3a12b4bdd2432f01e9810aa4b40d655c35a9ebc2 Mon Sep 17 00:00:00 2001 From: Elias Naur Date: Fri, 10 Nov 2006 13:52:18 +0000 Subject: [PATCH] Remove AWTInputAdapter.update() and let users poll() Mouse and Keyboard directly --- .../opengl/AWTCanvasInputImplementation.java | 1 - .../org/lwjgl/opengl/AWTInputAdapter.java | 7 ------ src/java/org/lwjgl/opengl/LinuxAWTInput.java | 22 ++++++++----------- src/java/org/lwjgl/opengl/MacOSXAWTInput.java | 3 --- .../org/lwjgl/opengl/WindowsAWTInput.java | 3 --- .../test/opengl/awt/AWTInputAdapterTest.java | 3 ++- 6 files changed, 11 insertions(+), 28 deletions(-) diff --git a/src/java/org/lwjgl/opengl/AWTCanvasInputImplementation.java b/src/java/org/lwjgl/opengl/AWTCanvasInputImplementation.java index 3f2353fe..5215c46a 100644 --- a/src/java/org/lwjgl/opengl/AWTCanvasInputImplementation.java +++ b/src/java/org/lwjgl/opengl/AWTCanvasInputImplementation.java @@ -41,7 +41,6 @@ import org.lwjgl.LWJGLException; */ interface AWTCanvasInputImplementation extends InputImplementation { void processInput(PeerInfo peer_info); - void update(); void init(); void destroy(); } diff --git a/src/java/org/lwjgl/opengl/AWTInputAdapter.java b/src/java/org/lwjgl/opengl/AWTInputAdapter.java index 1433d1fb..752b80ad 100644 --- a/src/java/org/lwjgl/opengl/AWTInputAdapter.java +++ b/src/java/org/lwjgl/opengl/AWTInputAdapter.java @@ -94,11 +94,4 @@ public final class AWTInputAdapter { awt_input = null; } } - - public static synchronized void update() { - if (awt_input == null) - throw new IllegalStateException("You need to create() the adapter."); - awt_input.update(); - Display.pollDevices(); - } } diff --git a/src/java/org/lwjgl/opengl/LinuxAWTInput.java b/src/java/org/lwjgl/opengl/LinuxAWTInput.java index aad3b1df..450e94ef 100644 --- a/src/java/org/lwjgl/opengl/LinuxAWTInput.java +++ b/src/java/org/lwjgl/opengl/LinuxAWTInput.java @@ -132,6 +132,7 @@ final class LinuxAWTInput extends AbstractAWTInput { checkFocus(); if (!input_grabbed && shouldGrab()) grabInput(new_window); + update(); } finally { LinuxDisplay.unlockAWT(); } @@ -150,20 +151,15 @@ final class LinuxAWTInput extends AbstractAWTInput { return !input_released && isGrabbed(); } - public synchronized void update() { - LinuxDisplay.lockAWT(); - try { - while (LinuxEvent.getPending(display) > 0) { - event.nextEvent(display); - if (shouldGrab()) { - long event_window = event.getWindow(); - boolean processed = event.filterEvent(event_window) || - cached_mouse.filterEvent(isGrabbed(), shouldGrab(), event)/* || - cached_keyboard.filterEvent(event)*/; - } + private void update() { + while (LinuxEvent.getPending(display) > 0) { + event.nextEvent(display); + if (shouldGrab()) { + long event_window = event.getWindow(); + boolean processed = event.filterEvent(event_window) || + cached_mouse.filterEvent(isGrabbed(), shouldGrab(), event);/* || + cached_keyboard.filterEvent(event) */ } - } finally { - LinuxDisplay.unlockAWT(); } } diff --git a/src/java/org/lwjgl/opengl/MacOSXAWTInput.java b/src/java/org/lwjgl/opengl/MacOSXAWTInput.java index 794bf765..14f2518b 100644 --- a/src/java/org/lwjgl/opengl/MacOSXAWTInput.java +++ b/src/java/org/lwjgl/opengl/MacOSXAWTInput.java @@ -63,7 +63,4 @@ final class MacOSXAWTInput extends AbstractAWTInput { public void destroy() { } - - public void update() { - } } diff --git a/src/java/org/lwjgl/opengl/WindowsAWTInput.java b/src/java/org/lwjgl/opengl/WindowsAWTInput.java index 0e4ea0a4..2933729f 100644 --- a/src/java/org/lwjgl/opengl/WindowsAWTInput.java +++ b/src/java/org/lwjgl/opengl/WindowsAWTInput.java @@ -129,9 +129,6 @@ final class WindowsAWTInput extends AbstractAWTInput { } } - public void update() { - } - public synchronized void pollMouse(IntBuffer coord_buffer, ByteBuffer buttons) { if (isGrabbed()) { if (cached_mouse != null) diff --git a/src/java/org/lwjgl/test/opengl/awt/AWTInputAdapterTest.java b/src/java/org/lwjgl/test/opengl/awt/AWTInputAdapterTest.java index 82f3b937..efdb3f25 100644 --- a/src/java/org/lwjgl/test/opengl/awt/AWTInputAdapterTest.java +++ b/src/java/org/lwjgl/test/opengl/awt/AWTInputAdapterTest.java @@ -140,11 +140,12 @@ public class AWTInputAdapterTest extends Frame { + (fps / (timeUsed / 1000f))); fps = 0; } - AWTInputAdapter.update(); + Mouse.poll(); while (Mouse.next()) { view_roty += Mouse.getEventDX()*.1; view_rotx -= Mouse.getEventDY()*.1; } + Keyboard.poll(); while (Keyboard.next()) { if (Keyboard.getEventKeyState()) { switch (Keyboard.getEventKey()) {