Patch: Embedded Window Support

Michael Koch konqueror@gmx.de
Fri Jul 18 12:37:00 GMT 2003


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Am Freitag, 18. Juli 2003 08:43 schrieb Thomas Fitzsimmons:
> Hello,
>
> This patch reworks Michael Koch's initial patch for embedded window
> support.  The changes are:
>
> - EmbeddedWindow is derived from Window
>
> - a new class: GtkEmbeddedWindowPeer
>
> - the construction process is the same as for other widgets --
> specifically, addNotify is called to instantiate the peer.
>
> Please review and comment.
>
> Thanks,
> Tom
>
> 2003-07-18  Thomas Fitzsimmons  <fitzsim@redhat.com>
>
> 	* Makefile.am (gtk_c_source_files): Add
> 	jni/gtk-peer/gnu_java_awt_peer_gtk_GtkEmbeddedWindowPeer.c.
> 	(gtk_awt_peer_sources): Add
> 	gnu/java/awt/peer/gtk/GtkEmbeddedWindowPeer.java.
> 	(nat_source_files): Remove gnu/java/awt/natEmbeddedWindow.cc.
> 	* gnu/java/awt/EmbeddedWindow.java: New implementation.
> 	* gnu/java/awt/EmbeddedWindowSupport.java (createEmbeddedWindow):
> 	Replace window_id, width and height parameters with EmbeddedWindow
> 	parameter.
> 	* gnu/java/awt/peer/gtk/GtkEmbeddedWindowPeer.java: New file.
> 	* gnu/java/awt/peer/gtk/GtkToolkit.java (createEmbeddedWindow):
> 	New method.
> 	* java/awt/Window.java (Window(III)): Remove method.
> 	* jni/gtk-peer/gnu_java_awt_peer_gtk_GtkEmbeddedWindowPeer.c: New
> 	file.

This patch will not work because the constructor of 
gnu.java.awt.EmbeddedWindow tries to access the package private 
constructor java.awt.Window.Window(). This would depend on a bug in 
gcj and would not work with jikes or others (and I know Ranjit has a 
patch for this bug in gcj).

I introduced the native method in EmbeddedWindow to circumvent the 
package privateness.


Michael

Michael
- -- 
Homepage: http://www.worldforge.org/
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.1 (GNU/Linux)

iD8DBQE/F+sZWSOgCCdjSDsRAqLSAJ48fW0IJQtOSUjkYg5YoroM0eHRVQCfZ756
5eeshsVsg5pZtggyfUvyAOM=
=d6SP
-----END PGP SIGNATURE-----



More information about the Java-patches mailing list