This is the mail archive of the
java-patches@gcc.gnu.org
mailing list for the Java project.
[gui][PATCH] fix peer references to system event queue
- From: Thomas Fitzsimmons <fitzsim at redhat dot com>
- To: java-patches at gcc dot gnu dot org
- Date: Tue, 04 Jan 2005 19:53:01 -0500
- Subject: [gui][PATCH] fix peer references to system event queue
Hi,
In many places in the peers we were referring directly to the
GtkGenericPeer's q field. This patch replaces these references with a
method call, to guarantee that q is initialized before it is used.
Committed to java-gui-branch.
Tom
2005-01-04 Thomas Fitzsimmons <fitzsim@redhat.com>
* gnu/java/awt/peer/gtk/GtkComponentPeer.java: Replace direct
references to event queue q with method call q().
* gnu/java/awt/peer/gtk/GtkDialogPeer.java: Likewise.
* gnu/java/awt/peer/gtk/GtkFramePeer.java: Likewise.
* gnu/java/awt/peer/gtk/GtkScrollbarPeer.java: Likewise.
* gnu/java/awt/peer/gtk/GtkTextComponentPeer.java: Likewise.
* gnu/java/awt/peer/gtk/GtkWindowPeer.java: Likewise.
* gnu/java/awt/peer/gtk/GtkGenericPeer.java: Likewise.
(q): New method.
Index: gnu/java/awt/peer/gtk/GtkComponentPeer.java
===================================================================
RCS file: /cvs/gcc/gcc/libjava/gnu/java/awt/peer/gtk/GtkComponentPeer.java,v
retrieving revision 1.16.2.26
diff -u -r1.16.2.26 GtkComponentPeer.java
--- gnu/java/awt/peer/gtk/GtkComponentPeer.java 26 Dec 2004 14:09:44 -0000 1.16.2.26
+++ gnu/java/awt/peer/gtk/GtkComponentPeer.java 5 Jan 2005 00:49:01 -0000
@@ -386,7 +386,7 @@
if (x == 0 && y == 0 && width == 0 && height == 0)
return;
- q.postEvent (new PaintEvent (awtComponent, PaintEvent.UPDATE,
+ q().postEvent (new PaintEvent (awtComponent, PaintEvent.UPDATE,
new Rectangle (x, y, width, height)));
}
@@ -508,14 +508,14 @@
protected void postMouseEvent(int id, long when, int mods, int x, int y,
int clickCount, boolean popupTrigger)
{
- q.postEvent(new MouseEvent(awtComponent, id, when, mods, x, y,
+ q().postEvent(new MouseEvent(awtComponent, id, when, mods, x, y,
clickCount, popupTrigger));
}
protected void postExposeEvent (int x, int y, int width, int height)
{
if (!isInRepaint)
- q.postEvent (new PaintEvent (awtComponent, PaintEvent.PAINT,
+ q().postEvent (new PaintEvent (awtComponent, PaintEvent.PAINT,
new Rectangle (x, y, width, height)));
}
@@ -535,23 +535,23 @@
{
synchronized (q)
{
- q.postEvent (keyEvent);
- q.postEvent (new KeyEvent (awtComponent, KeyEvent.KEY_TYPED, when, mods,
+ q().postEvent (keyEvent);
+ q().postEvent (new KeyEvent (awtComponent, KeyEvent.KEY_TYPED, when, mods,
KeyEvent.VK_UNDEFINED, keyChar, keyLocation));
}
}
else
- q.postEvent (keyEvent);
+ q().postEvent (keyEvent);
}
protected void postFocusEvent (int id, boolean temporary)
{
- q.postEvent (new FocusEvent (awtComponent, id, temporary));
+ q().postEvent (new FocusEvent (awtComponent, id, temporary));
}
protected void postItemEvent (Object item, int stateChange)
{
- q.postEvent (new ItemEvent ((ItemSelectable)awtComponent,
+ q().postEvent (new ItemEvent ((ItemSelectable)awtComponent,
ItemEvent.ITEM_STATE_CHANGED,
item, stateChange));
}
Index: gnu/java/awt/peer/gtk/GtkDialogPeer.java
===================================================================
RCS file: /cvs/gcc/gcc/libjava/gnu/java/awt/peer/gtk/GtkDialogPeer.java,v
retrieving revision 1.9.8.4
diff -u -r1.9.8.4 GtkDialogPeer.java
--- gnu/java/awt/peer/gtk/GtkDialogPeer.java 7 Oct 2004 07:20:31 -0000 1.9.8.4
+++ gnu/java/awt/peer/gtk/GtkDialogPeer.java 5 Jan 2005 00:49:01 -0000
@@ -76,7 +76,7 @@
protected void postExposeEvent (int x, int y, int width, int height)
{
if (!isInRepaint)
- q.postEvent (new PaintEvent (awtComponent, PaintEvent.PAINT,
+ q().postEvent (new PaintEvent (awtComponent, PaintEvent.PAINT,
new Rectangle (x + insets.left,
y + insets.top,
width, height)));
Index: gnu/java/awt/peer/gtk/GtkFramePeer.java
===================================================================
RCS file: /cvs/gcc/gcc/libjava/gnu/java/awt/peer/gtk/GtkFramePeer.java,v
retrieving revision 1.17.2.12
diff -u -r1.17.2.12 GtkFramePeer.java
--- gnu/java/awt/peer/gtk/GtkFramePeer.java 9 Dec 2004 21:36:46 -0000 1.17.2.12
+++ gnu/java/awt/peer/gtk/GtkFramePeer.java 5 Jan 2005 00:49:01 -0000
@@ -253,7 +253,7 @@
protected void postExposeEvent (int x, int y, int width, int height)
{
if (!isInRepaint)
- q.postEvent (new PaintEvent (awtComponent, PaintEvent.PAINT,
+ q().postEvent (new PaintEvent (awtComponent, PaintEvent.PAINT,
new Rectangle (x + insets.left,
y + insets.top,
width, height)));
Index: gnu/java/awt/peer/gtk/GtkGenericPeer.java
===================================================================
RCS file: /cvs/gcc/gcc/libjava/gnu/java/awt/peer/gtk/GtkGenericPeer.java,v
retrieving revision 1.2.18.1
diff -u -r1.2.18.1 GtkGenericPeer.java
--- gnu/java/awt/peer/gtk/GtkGenericPeer.java 2 Sep 2004 21:26:21 -0000 1.2.18.1
+++ gnu/java/awt/peer/gtk/GtkGenericPeer.java 5 Jan 2005 00:49:01 -0000
@@ -39,6 +39,7 @@
package gnu.java.awt.peer.gtk;
import java.awt.EventQueue;
+import java.awt.Toolkit;
import java.awt.event.ActionEvent;
public class GtkGenericPeer
@@ -57,6 +58,11 @@
// Dispose of our native state.
public native void dispose ();
+ static EventQueue q ()
+ {
+ return Toolkit.getDefaultToolkit ().getSystemEventQueue ();
+ }
+
protected GtkGenericPeer (Object awtWidget)
{
this.awtWidget = awtWidget;
@@ -70,7 +76,7 @@
protected void postActionEvent (String command, int mods)
{
- q.postEvent (new ActionEvent (awtWidget, ActionEvent.ACTION_PERFORMED,
+ q().postEvent (new ActionEvent (awtWidget, ActionEvent.ACTION_PERFORMED,
command, mods));
}
Index: gnu/java/awt/peer/gtk/GtkScrollbarPeer.java
===================================================================
RCS file: /cvs/gcc/gcc/libjava/gnu/java/awt/peer/gtk/GtkScrollbarPeer.java,v
retrieving revision 1.3.8.1
diff -u -r1.3.8.1 GtkScrollbarPeer.java
--- gnu/java/awt/peer/gtk/GtkScrollbarPeer.java 7 Oct 2004 22:11:57 -0000 1.3.8.1
+++ gnu/java/awt/peer/gtk/GtkScrollbarPeer.java 5 Jan 2005 00:49:01 -0000
@@ -73,7 +73,7 @@
protected void postAdjustmentEvent (int type, int value)
{
- q.postEvent (new AdjustmentEvent ((Adjustable)awtComponent,
+ q().postEvent (new AdjustmentEvent ((Adjustable)awtComponent,
AdjustmentEvent.ADJUSTMENT_VALUE_CHANGED,
type, value));
}
Index: gnu/java/awt/peer/gtk/GtkTextComponentPeer.java
===================================================================
RCS file: /cvs/gcc/gcc/libjava/gnu/java/awt/peer/gtk/GtkTextComponentPeer.java,v
retrieving revision 1.7.8.1
diff -u -r1.7.8.1 GtkTextComponentPeer.java
--- gnu/java/awt/peer/gtk/GtkTextComponentPeer.java 9 Jun 2004 21:02:35 -0000 1.7.8.1
+++ gnu/java/awt/peer/gtk/GtkTextComponentPeer.java 5 Jan 2005 00:49:01 -0000
@@ -85,6 +85,6 @@
protected void postTextEvent ()
{
- q.postEvent (new TextEvent (awtComponent, TextEvent.TEXT_VALUE_CHANGED));
+ q().postEvent (new TextEvent (awtComponent, TextEvent.TEXT_VALUE_CHANGED));
}
}
Index: gnu/java/awt/peer/gtk/GtkWindowPeer.java
===================================================================
RCS file: /cvs/gcc/gcc/libjava/gnu/java/awt/peer/gtk/GtkWindowPeer.java,v
retrieving revision 1.10.8.4
diff -u -r1.10.8.4 GtkWindowPeer.java
--- gnu/java/awt/peer/gtk/GtkWindowPeer.java 9 Dec 2004 21:36:46 -0000 1.10.8.4
+++ gnu/java/awt/peer/gtk/GtkWindowPeer.java 5 Jan 2005 00:49:01 -0000
@@ -194,7 +194,7 @@
// Post a WINDOW_OPENED event the first time this window is shown.
if (!hasBeenShown)
{
- q.postEvent (new WindowEvent ((Window) awtComponent, id,
+ q().postEvent (new WindowEvent ((Window) awtComponent, id,
opposite));
hasBeenShown = true;
}
@@ -203,12 +203,12 @@
{
if (oldState != newState)
{
- q.postEvent (new WindowEvent ((Window) awtComponent, id, opposite,
+ q().postEvent (new WindowEvent ((Window) awtComponent, id, opposite,
oldState, newState));
oldState = newState;
}
}
else
- q.postEvent (new WindowEvent ((Window) awtComponent, id, opposite));
+ q().postEvent (new WindowEvent ((Window) awtComponent, id, opposite));
}
}