summaryrefslogtreecommitdiff
path: root/gnu/java/awt/peer/x
diff options
context:
space:
mode:
authorRobert Schuster <theBohemian@gmx.net>2007-05-22 17:54:42 +0000
committerRobert Schuster <theBohemian@gmx.net>2007-05-22 17:54:42 +0000
commit0cc91b9601602591a44a749a983e3442e24d2445 (patch)
treec4b86c2a6d8c8a340ba085f99738f78e3448198b /gnu/java/awt/peer/x
parent219879c7bb5d58b05dd2edf2a30ef9123b0332a3 (diff)
downloadclasspath-0cc91b9601602591a44a749a983e3442e24d2445.tar.gz
Makes mouse events working for the X peers.
2007-05-22 Robert Schuster <robertschuster@fsfe.org> * gnu/java/awt/peer/x/XEventQueue.java: (handleEvent): Use Input.event_window_id instead of Input.child_window_id for mouse & key presses/releases.
Diffstat (limited to 'gnu/java/awt/peer/x')
-rw-r--r--gnu/java/awt/peer/x/XEventPump.java14
1 files changed, 9 insertions, 5 deletions
diff --git a/gnu/java/awt/peer/x/XEventPump.java b/gnu/java/awt/peer/x/XEventPump.java
index bfbd08728..9b59cc2ba 100644
--- a/gnu/java/awt/peer/x/XEventPump.java
+++ b/gnu/java/awt/peer/x/XEventPump.java
@@ -151,20 +151,19 @@ public class XEventPump
Integer key = null;
Window awtWindow = null;
- if (xEvent instanceof Input)
- {
- key= new Integer(((Input) xEvent).child_window_id);
- awtWindow = (Window) windows.get(key);
- }
+
if (XToolkit.DEBUG)
System.err.println("fetched event: " + xEvent);
switch (xEvent.code())
{
case ButtonPress.CODE:
ButtonPress bp = (ButtonPress) xEvent;
+ key= new Integer(bp.event_window_id);
+ awtWindow = (Window) windows.get(key);
// Create and post the mouse event.
int button = bp.detail();
drag = button;
+
MouseEvent mp = new MouseEvent(awtWindow, MouseEvent.MOUSE_PRESSED,
System.currentTimeMillis(), 0,
bp.event_x(), bp.event_y(),
@@ -173,6 +172,8 @@ public class XEventPump
break;
case ButtonRelease.CODE:
ButtonRelease br = (ButtonRelease) xEvent;
+ key= new Integer(br.event_window_id);
+ awtWindow = (Window) windows.get(key);
drag = -1;
MouseEvent mr = new MouseEvent(awtWindow, MouseEvent.MOUSE_RELEASED,
System.currentTimeMillis(), 0,
@@ -182,6 +183,9 @@ public class XEventPump
break;
case MotionNotify.CODE:
MotionNotify mn = (MotionNotify) xEvent;
+ key= new Integer(mn.event_window_id);
+ awtWindow = (Window) windows.get(key);
+
MouseEvent mm;
if (drag == -1)
{