From 9e1ba84adae1fb9b8f7447c6ac589ac2caf9bdf6 Mon Sep 17 00:00:00 2001 From: fnasser Date: Thu, 11 Dec 2003 13:50:51 +0000 Subject: 2003-12-08 Fernando Nasser * jni/gtk-peer/gnu_java_awt_peer_gtk_GtkEvents.c (awt_event_handler): Most coded moved to pre_event_handler, with the modifications mentioned below. (pre_event_handler): New function. Called on the Gtk "event" signal. Do not retrieve the jobject from the window property as it is already available as user data in the signal. Do not try and find the grab widget as it is already done by Gtk at this point. Do not search for Window ancestor as Gtk already sends the signal to it. Do not meddle with the activation state of peer widgets on each key press or release. Add CList to the special handling when looking for the focused widget. * jni/gtk-peer/gtkpeer.h: Add declaration for pre_event_handler. * jni/gtk-peer/gnu_java_awt_peer_gtk_GtkButtonPeer.c (connectJObject): New function. (connectSignals): New function. * jni/gtk-peer/gnu_java_awt_peer_gtk_GtkCheckboxPeer.c (connectHooks): Rename to... (connectSignals): New name. Get rid of NewGlobalRef call. Use g_signal_connect instead of deprecated gtk_signal_connect. * jni/gtk-peer/gnu_java_awt_peer_gtk_GtkChoicePeer.c (connect_choice_item_selectable_hook): Use g_signal_connect instead of deprecated gtk_signal_connect. * jni/gtk-peer/gnu_java_awt_peer_gtk_GtkClipboard.c * jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuItemPeer.c * jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuPeer.c (Java_gnu_java_awt_peer_gtk_GtkClipboard_initNativeState): Ditto. * jni/gtk-peer/gnu_java_awt_peer_gtk_GtkComponentPeer.c (Java_gnu_java_awt_peer_gtk_GtkComponentPeer_connectHooks): Remove function. (Java_gnu_java_awt_peer_gtk_GtkComponentPeer_connectJObject): New function. (Java_gnu_java_awt_peer_gtk_GtkComponentPeer_connectSignals): New function. * jni/gtk-peer/gnu_java_awt_peer_gtk_GtkFileDialogPeer.c (Java_gnu_java_awt_peer_gtk_GtkComponentPeer_connectHooks): Remove function. (Java_gnu_java_awt_peer_gtk_GtkComponentPeer_connectJObject): New function. * jni/gtk-peer/gnu_java_awt_peer_gtk_GtkListPeer.c (Java_gnu_java_awt_peer_gtk_GtkComponentPeer_connectHooks): Remove function. (Java_gnu_java_awt_peer_gtk_GtkComponentPeer_connectJObject): New function. (Java_gnu_java_awt_peer_gtk_GtkComponentPeer_connectSignals): New function. (Java_gnu_java_awt_peer_gtk_GtkComponentPeer_old_create): Remove dead code. (item_select): Remove indirection. (item_unselect): Ditto. (connect_selectable_hook): Folded into connectSignals. * jni/gtk-peer/gnu_java_awt_peer_gtk_GtkPanelPeer.c (Java_gnu_java_awt_peer_gtk_GtkComponentPeer_connectHooks): Remove function. (Java_gnu_java_awt_peer_gtk_GtkComponentPeer_connectJObject): New function. (Java_gnu_java_awt_peer_gtk_GtkComponentPeer_connectSignals): New function. * jni/gtk-peer/gnu_java_awt_peer_gtk_GtkScrollBarPeer.c: Ditto. * jni/gtk-peer/gnu_java_awt_peer_gtk_GtkWindowPeer.c * jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextComponentPeer.c (Java_gnu_java_awt_peer_gtk_GtkComponentPeer_connectHooks): Remove function. (Java_gnu_java_awt_peer_gtk_GtkComponentPeer_connectSignals): New function. * gnu/java/awt/peer/gtk/GtkComponentPeer.java: Declare and call connectJObject and connectSignals instead of connectHooks. * gnu/java/awt/peer/gtk/GtkButtonPeer.java: Declare connectJObject and connectSignals. * gnu/java/awt/peer/gtk/GtkCheckboxPeer.java: Declare connectSignals and not connectHooks. * gnu/java/awt/peer/gtk/GtkTextComponentPeer.java: Ditto. * gnu/java/awt/peer/gtk/GtkFileDialogPeer.java: Declare connectJObject and not connectHooks. * gnu/java/awt/peer/gtk/GtkListPeer.java: Declare connectJObject and connectSignals instead of connectHooks. * gnu/java/awt/peer/gtk/GtkPanelPeer.java: Ditto. * gnu/java/awt/peer/gtk/GtkScrollbarPeer.java: Ditto. * gnu/java/awt/peer/gtk/GtkWindowPeer.java: Ditto. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@74536 138bc75d-0d04-0410-961f-82ee72b054a4 --- libjava/gnu/java/awt/peer/gtk/GtkButtonPeer.java | 2 ++ libjava/gnu/java/awt/peer/gtk/GtkCheckboxPeer.java | 2 +- libjava/gnu/java/awt/peer/gtk/GtkComponentPeer.java | 6 ++++-- libjava/gnu/java/awt/peer/gtk/GtkFileDialogPeer.java | 2 +- libjava/gnu/java/awt/peer/gtk/GtkListPeer.java | 3 ++- libjava/gnu/java/awt/peer/gtk/GtkPanelPeer.java | 3 ++- libjava/gnu/java/awt/peer/gtk/GtkScrollbarPeer.java | 3 ++- libjava/gnu/java/awt/peer/gtk/GtkTextComponentPeer.java | 2 +- libjava/gnu/java/awt/peer/gtk/GtkWindowPeer.java | 3 ++- 9 files changed, 17 insertions(+), 9 deletions(-) (limited to 'libjava/gnu/java') diff --git a/libjava/gnu/java/awt/peer/gtk/GtkButtonPeer.java b/libjava/gnu/java/awt/peer/gtk/GtkButtonPeer.java index 0801f9c6ec0..9a832265b34 100644 --- a/libjava/gnu/java/awt/peer/gtk/GtkButtonPeer.java +++ b/libjava/gnu/java/awt/peer/gtk/GtkButtonPeer.java @@ -50,6 +50,8 @@ public class GtkButtonPeer extends GtkComponentPeer implements ButtonPeer { native void create (); + public native void connectJObject (); + public native void connectSignals (); native void gtkSetFont(String name, int style, int size); native void gtkWidgetSetForeground (int red, int green, int blue); diff --git a/libjava/gnu/java/awt/peer/gtk/GtkCheckboxPeer.java b/libjava/gnu/java/awt/peer/gtk/GtkCheckboxPeer.java index 174a16923de..fba8c8ff8f9 100644 --- a/libjava/gnu/java/awt/peer/gtk/GtkCheckboxPeer.java +++ b/libjava/gnu/java/awt/peer/gtk/GtkCheckboxPeer.java @@ -54,7 +54,7 @@ public class GtkCheckboxPeer extends GtkComponentPeer public native void nativeCreate (GtkCheckboxGroupPeer group, boolean state); public native void nativeSetCheckboxGroup (GtkCheckboxGroupPeer group); - public native void connectHooks (); + public native void connectSignals (); public GtkCheckboxPeer (Checkbox c) { diff --git a/libjava/gnu/java/awt/peer/gtk/GtkComponentPeer.java b/libjava/gnu/java/awt/peer/gtk/GtkComponentPeer.java index 80feebdcabb..4e216f8770e 100644 --- a/libjava/gnu/java/awt/peer/gtk/GtkComponentPeer.java +++ b/libjava/gnu/java/awt/peer/gtk/GtkComponentPeer.java @@ -99,7 +99,8 @@ public class GtkComponentPeer extends GtkGenericPeer insets = new Insets (0, 0, 0, 0); } - native void connectHooks (); + native void connectJObject (); + native void connectSignals (); protected GtkComponentPeer (Component awtComponent) { @@ -114,7 +115,8 @@ public class GtkComponentPeer extends GtkGenericPeer getArgs (awtComponent, args); args.setArgs (this); - connectHooks (); + connectJObject (); + connectSignals (); if (awtComponent.getForeground () != null) setForeground (awtComponent.getForeground ()); diff --git a/libjava/gnu/java/awt/peer/gtk/GtkFileDialogPeer.java b/libjava/gnu/java/awt/peer/gtk/GtkFileDialogPeer.java index 64e73c68a86..07422ace79b 100644 --- a/libjava/gnu/java/awt/peer/gtk/GtkFileDialogPeer.java +++ b/libjava/gnu/java/awt/peer/gtk/GtkFileDialogPeer.java @@ -58,7 +58,7 @@ public class GtkFileDialogPeer extends GtkDialogPeer implements FileDialogPeer } public native void setFile (String file); - public native void connectHooks (); + public native void connectJObject (); public void setFilenameFilter (FilenameFilter filter) { diff --git a/libjava/gnu/java/awt/peer/gtk/GtkListPeer.java b/libjava/gnu/java/awt/peer/gtk/GtkListPeer.java index 31f98525f23..e06e079ae0b 100644 --- a/libjava/gnu/java/awt/peer/gtk/GtkListPeer.java +++ b/libjava/gnu/java/awt/peer/gtk/GtkListPeer.java @@ -51,7 +51,8 @@ public class GtkListPeer extends GtkComponentPeer // native void create (ComponentPeer parent, String [] items, boolean mode); native void create (); - native void connectHooks (); + native void connectJObject (); + native void connectSignals (); native void getSize (int rows, int dims[]); diff --git a/libjava/gnu/java/awt/peer/gtk/GtkPanelPeer.java b/libjava/gnu/java/awt/peer/gtk/GtkPanelPeer.java index cf7a9e1bade..4f77994931d 100644 --- a/libjava/gnu/java/awt/peer/gtk/GtkPanelPeer.java +++ b/libjava/gnu/java/awt/peer/gtk/GtkPanelPeer.java @@ -45,7 +45,8 @@ public class GtkPanelPeer extends GtkContainerPeer implements PanelPeer { native void create (); - native void connectHooks (); + native void connectJObject (); + native void connectSignals (); public GtkPanelPeer (Panel p) { diff --git a/libjava/gnu/java/awt/peer/gtk/GtkScrollbarPeer.java b/libjava/gnu/java/awt/peer/gtk/GtkScrollbarPeer.java index d13e34edfe8..0e1b65137d7 100644 --- a/libjava/gnu/java/awt/peer/gtk/GtkScrollbarPeer.java +++ b/libjava/gnu/java/awt/peer/gtk/GtkScrollbarPeer.java @@ -60,7 +60,8 @@ public class GtkScrollbarPeer extends GtkComponentPeer int min, int max, int stepIncr, int pageIncr, int visibleAmount); - native void connectHooks (); + native void connectJObject (); + native void connectSignals (); public GtkScrollbarPeer (Scrollbar s) { diff --git a/libjava/gnu/java/awt/peer/gtk/GtkTextComponentPeer.java b/libjava/gnu/java/awt/peer/gtk/GtkTextComponentPeer.java index b3199d87c9a..8bc4bdf3eee 100644 --- a/libjava/gnu/java/awt/peer/gtk/GtkTextComponentPeer.java +++ b/libjava/gnu/java/awt/peer/gtk/GtkTextComponentPeer.java @@ -56,7 +56,7 @@ public class GtkTextComponentPeer extends GtkComponentPeer setText (tc.getText ()); } - public native void connectHooks (); + public native void connectSignals (); public native int getCaretPosition (); public native void setCaretPosition (int pos); diff --git a/libjava/gnu/java/awt/peer/gtk/GtkWindowPeer.java b/libjava/gnu/java/awt/peer/gtk/GtkWindowPeer.java index 821afa929f1..4a2d50805a1 100644 --- a/libjava/gnu/java/awt/peer/gtk/GtkWindowPeer.java +++ b/libjava/gnu/java/awt/peer/gtk/GtkWindowPeer.java @@ -93,7 +93,8 @@ public class GtkWindowPeer extends GtkContainerPeer create (GDK_WINDOW_TYPE_HINT_NORMAL, false); } - native void connectHooks (); + native void connectJObject (); + native void connectSignals (); public GtkWindowPeer (Window window) { -- cgit v1.2.3