Commit graph

7 commits

Author SHA1 Message Date
Fernando Nasser
834b120907 gnu_java_awt_peer_gtk_GtkEvents.c (awt_event_handler): Most coded moved to pre_event_handler, with the modifications mentioned below.
2003-12-08  Fernando Nasser  <fnasser@redhat.com>

        * 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.

From-SVN: r74536
2003-12-11 13:50:51 +00:00
Thomas Fitzsimmons
d0b8b6fbf6 GtkComponentPeer.java (postKeyEvent): Add keyLocation parameter.
2003-08-05  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* gnu/java/awt/peer/gtk/GtkComponentPeer.java (postKeyEvent):
	Add keyLocation parameter.
	* java/awt/event/KeyEvent.java (getKeyText): Fix "NumPad-"
	string.
	(paramString): Generate keyChar string according to keyChar, not
	keyCode.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkEvents.c
	(state_to_awt_mods): Handle ALT key.
	(keyevent_state_to_awt_mods): New function.
	(get_first_keyval_from_keymap): New function.
	(keysym_to_awt_keycode): Get virtual key code from keymap.
	Handle missing VK_ values.
	(keysym_to_awt_keylocation): New function.
	(keyevent_to_awt_keychar): New function.
	(generates_key_typed_event): Handle non-text-component case.
	Handle GDK_KP_Delete and GDK_KP_Enter.
	(awt_event_handler): Call new functions to get postKeyEvent
	parameters.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMainThread.c (gtkInit):
	Update postKeyEvent method signature.
	* jni/gtk-peer/gtkpeer.h: Add KEY_LOCATION defines.  Add missing
	VK_ defines.

From-SVN: r70178
2003-08-05 18:04:09 +00:00
Thomas Fitzsimmons
434566e7e2 * gnu/java/awt/peer/gtk/GtkTextComponentPeer.java
(connectHooks): New method.
	(handleEvent): Remove.
	* gnu/java/awt/peer/gtk/GtkTextFieldPeer.java
	(createHooks): Remove declaration.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkEvents.c
	(generates_key_typed_event): Change to handle only certain
	keyvals.
	(awt_event_handler): Add special handling for GtkTextView.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextComponentPeer.c
	(textcomponent_commit_cb): New function.
	(textcomponent_changed_cb): Likewise.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextFieldPeer.c
	(connectHooks): Remove.

From-SVN: r69728
2003-07-23 22:26:35 +00:00
Michael Koch
5245ad0cf7 2003-07-13 Michael Koch <konqueror@gmx.de>
* gnu/java/awt/peer/gtk/GdkFontMetrics.java
	* gnu/java/awt/peer/gtk/GdkGraphics.java
	* gnu/java/awt/peer/gtk/GtkButtonPeer.java
	* gnu/java/awt/peer/gtk/GtkCanvasPeer.java
	* gnu/java/awt/peer/gtk/GtkCheckboxGroupPeer.java
	* gnu/java/awt/peer/gtk/GtkCheckboxMenuItemPeer.java
	* gnu/java/awt/peer/gtk/GtkCheckboxPeer.java
	* gnu/java/awt/peer/gtk/GtkChoicePeer.java
	* gnu/java/awt/peer/gtk/GtkClipboard.java
	* gnu/java/awt/peer/gtk/GtkDialogPeer.java
	* gnu/java/awt/peer/gtk/GtkFileDialogPeer.java
	* gnu/java/awt/peer/gtk/GtkFramePeer.java
	* gnu/java/awt/peer/gtk/GtkGenericPeer.java
	* gnu/java/awt/peer/gtk/GtkImage.java
	* gnu/java/awt/peer/gtk/GtkImagePainter.java
	* gnu/java/awt/peer/gtk/GtkLabelPeer.java
	* gnu/java/awt/peer/gtk/GtkListPeer.java
	* gnu/java/awt/peer/gtk/GtkMenuBarPeer.java
	* gnu/java/awt/peer/gtk/GtkMenuComponentPeer.java
	* gnu/java/awt/peer/gtk/GtkMenuItemPeer.java
	* gnu/java/awt/peer/gtk/GtkMenuPeer.java
	* gnu/java/awt/peer/gtk/GtkOffScreenImage.java
	* gnu/java/awt/peer/gtk/GtkPanelPeer.java
	* gnu/java/awt/peer/gtk/GtkPopupMenuPeer.java
	* gnu/java/awt/peer/gtk/GtkScrollPanePeer.java
	* gnu/java/awt/peer/gtk/GtkScrollbarPeer.java
	* gnu/java/awt/peer/gtk/GtkTextAreaPeer.java
	* gnu/java/awt/peer/gtk/GtkTextComponentPeer.java
	* gnu/java/awt/peer/gtk/GtkTextFieldPeer.java

From-SVN: r69290
2003-07-13 15:09:20 +00:00
Thomas Fitzsimmons
b6fa901bc9 * gnu/java/awt/peer/gtk/GtkTextComponentPeer.java
(setCaretPosition, setEditable): Rely entirely on native
	implementation.
	(getArgs): Remove.
	(postTextEvent): New method.
	(handleEvent): New method.
	* gnu/java/awt/peer/gtk/GtkTextFieldPeer.java (handleEvent): New
	method.
	* java/awt/event/ActionEvent.java (paramString): Fix formatting.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkEvents.c
	(keysym_to_awt_keycode): Fix range checks.
	(generates_key_typed_event): New function.
	(awt_event_handler): Post AWT_KEY_RELEASED events to event
	queue.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMainThread.c
	(gtkInit): Store TextComponent's postTextEvent method ID.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextComponentPeer.c
	(setText): Post TEXT_VALUE_CHANGED event to event queue.

From-SVN: r69054
2003-07-07 19:56:04 +00:00
Tom Tromey
2759b2605e XPanelPeer.java (beginLayout, [...]): New methods.
* gnu/awt/xlib/XPanelPeer.java (beginLayout, endLayout,
	isPaintPending): New methods.
	* gnu/awt/xlib/XFramePeer.java (getState, setState,
	setMaximizedBounds): New methods.
	(beginLayout, endLayout, isPaintPending): Likewise.
	* gnu/awt/xlib/XCanvasPeer.java (isFocusable): New method.
	(requestFocus): Likewise.
	(isObscured): Likewise.
	(canDetermineObscurity): Likewise.
	(coalescePaintEvent): Likewise.
	(updateCursorImmediately): Likewise.
	(createVolatileImage): Likewise.
	(handlesWheelScrolling): Likewise.
	(createBuffers): Likewise.
	(getBackBuffer): Likewise.
	(flip): Likewise.
	(destroyBuffers): Likewise.

	* Makefile.in: Rebuilt.
	* Makefile.am (awt_java_source_files): Added DropTargetPeer.java,
	RobotPeer.java.
	* gnu/java/awt/GLightweightPeer.java,
	gnu/java/awt/peer/gtk/GtkChoicePeer.java,
	gnu/java/awt/peer/gtk/GtkComponentPeer.java,
	gnu/java/awt/peer/gtk/GtkContainerPeer.java,
	gnu/java/awt/peer/gtk/GtkFramePeer.java,
	gnu/java/awt/peer/gtk/GtkPopupMenuPeer.java,
	gnu/java/awt/peer/gtk/GtkTextComponentPeer.java,
	java/awt/dnd/peer/DragSourceContextPeer.java,
	java/awt/dnd/peer/DropTargetContextPeer.java,
	java/awt/peer/ButtonPeer.java,
	java/awt/peer/CheckboxMenuItemPeer.java,
	java/awt/peer/CheckboxPeer.java, java/awt/peer/ChoicePeer.java,
	java/awt/peer/ComponentPeer.java,
	java/awt/peer/ContainerPeer.java, java/awt/peer/DialogPeer.java,
	java/awt/peer/FileDialogPeer.java, java/awt/peer/FramePeer.java,
	java/awt/peer/LabelPeer.java, java/awt/peer/ListPeer.java,
	java/awt/peer/MenuBarPeer.java,
	java/awt/peer/MenuComponentPeer.java,
	java/awt/peer/MenuItemPeer.java, java/awt/peer/MenuPeer.java,
	java/awt/peer/PopupMenuPeer.java,
	java/awt/peer/ScrollPanePeer.java,
	java/awt/peer/ScrollbarPeer.java, java/awt/peer/TextAreaPeer.java,
	java/awt/peer/TextComponentPeer.java,
	java/awt/peer/TextFieldPeer.java, java/awt/peer/WindowPeer.java:
	New versions from Classpath.
	* java/awt/dnd/peer/DropTargetPeer.java: New file from Classpath.
	* java/awt/peer/RobotPeer.java: Likewise.

From-SVN: r63627
2003-03-01 22:14:21 +00:00
Tom Tromey
5aac1dac62 Window.java (Window(Window,GraphicsConfiguration)): Don't try to find graphics configuration.
* java/awt/Window.java (Window(Window,GraphicsConfiguration)):
	Don't try to find graphics configuration.
	* java/awt/Toolkit.java (default_toolkit_name): Use new
	Configuration entry.
	* gnu/classpath/Configuration.java.in (default_awt_peer_toolkit):
	New global.
	* configure: Rebuilt.
	* configure.in (TOOLKIT): New subst.
	(--enable-java-awt) [xlib, gtk]: Set TOOLKIT if required.
	Do AWT tests much earlier.  Run Gtk tests.  Make jniinclude
	directory.  Make output directories for .c files.
	* Makefile.in: Rebuilt.
	* Makefile.am (lib_gnu_java_awt_peer_gtk_la_SOURCES): New macro.
	(toolexeclib_LTLIBRARIES): Added cond_gtk_ltlibrary.
	(all_java_source_files): Added new sources.
	($(lib_gnu_java_awt_peer_gtk_la_OBJECTS)): New target.
	(gtk_c_files): New macro.
	(gtk_c_source_files): New macro.
	(cond_gtk_ltlibrary): New macro.
	($(gtk_c_files)): New target.
	(lib_gnu_java_awt_peer_gtk_la_LIBADD): New macro.
	(gtk_awt_peer_sources): New macro.
	(gtk_c_headers): New macro.
	($(gtk_c_headers)): New target.
	(ACLOCAL_AMFLAGS): New macro.
	* gtk.m4, glib.m4, libart.m4: New files.
	* gnu/java/awt/peer/gtk/GdkFontMetrics.java,
	gnu/java/awt/peer/gtk/GdkGraphics.java,
	gnu/java/awt/peer/gtk/GtkArg.java,
	gnu/java/awt/peer/gtk/GtkArgList.java,
	gnu/java/awt/peer/gtk/GtkButtonPeer.java,
	gnu/java/awt/peer/gtk/GtkCanvasPeer.java,
	gnu/java/awt/peer/gtk/GtkCheckboxGroupPeer.java,
	gnu/java/awt/peer/gtk/GtkCheckboxMenuItemPeer.java,
	gnu/java/awt/peer/gtk/GtkCheckboxPeer.java,
	gnu/java/awt/peer/gtk/GtkChoicePeer.java,
	gnu/java/awt/peer/gtk/GtkClipboard.java,
	gnu/java/awt/peer/gtk/GtkComponentPeer.java,
	gnu/java/awt/peer/gtk/GtkContainerPeer.java,
	gnu/java/awt/peer/gtk/GtkDialogPeer.java,
	gnu/java/awt/peer/gtk/GtkFileDialogPeer.java,
	gnu/java/awt/peer/gtk/GtkFontPeer.java,
	gnu/java/awt/peer/gtk/GtkFramePeer.java,
	gnu/java/awt/peer/gtk/GtkGenericPeer.java,
	gnu/java/awt/peer/gtk/GtkImage.java,
	gnu/java/awt/peer/gtk/GtkImagePainter.java,
	gnu/java/awt/peer/gtk/GtkLabelPeer.java,
	gnu/java/awt/peer/gtk/GtkListPeer.java,
	gnu/java/awt/peer/gtk/GtkMainThread.java,
	gnu/java/awt/peer/gtk/GtkMenuBarPeer.java,
	gnu/java/awt/peer/gtk/GtkMenuComponentPeer.java,
	gnu/java/awt/peer/gtk/GtkMenuItemPeer.java,
	gnu/java/awt/peer/gtk/GtkMenuPeer.java,
	gnu/java/awt/peer/gtk/GtkOffScreenImage.java,
	gnu/java/awt/peer/gtk/GtkPanelPeer.java,
	gnu/java/awt/peer/gtk/GtkPopupMenuPeer.java,
	gnu/java/awt/peer/gtk/GtkScrollbarPeer.java,
	gnu/java/awt/peer/gtk/GtkScrollPanePeer.java,
	gnu/java/awt/peer/gtk/GtkTextAreaPeer.java,
	gnu/java/awt/peer/gtk/GtkTextComponentPeer.java,
	gnu/java/awt/peer/gtk/GtkTextFieldPeer.java,
	gnu/java/awt/peer/gtk/GtkToolkit.java,
	gnu/java/awt/peer/gtk/GtkWindowPeer.java,
	gnu/java/awt/peer/gtk/TestAWT.java,
	gnu/java/awt/peer/gtk/Test.java: New files from Classpath.
	* jni/gtk-peer/gnu_java_awt_peer_gtk_GdkFontMetrics.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GdkGraphics.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkButtonPeer.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkCanvasPeer.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkCheckboxMenuItemPeer.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkCheckboxPeer.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkChoicePeer.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkClipboard.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkComponentPeer.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkEvents.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkFileDialogPeer.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkImagePainter.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkLabelPeer.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkListPeer.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMainThread.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuBarPeer.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuItemPeer.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkMenuPeer.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkPanelPeer.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkPopupMenuPeer.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkScrollBarPeer.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkScrollPanePeer.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextAreaPeer.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextComponentPeer.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkTextFieldPeer.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkToolkit.c,
	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkWindowPeer.c,
	jni/gtk-peer/gthread-jni.c, jni/gtk-peer/gthread-jni.h,
	jni/gtk-peer/gtkpeer.h, jni/classpath/jcl.c, jni/classpath/jcl.h,
	jni/classpath/jnilink.c, jni/classpath/jnilink.h,
	jni/classpath/native_state.c, jni/classpath/native_state.h,
	jni/classpath/primlib.c, jni/classpath/primlib.h: Likewise.

From-SVN: r62187
2003-01-31 17:54:14 +00:00