From 154b5e3af6e944f8a6019c0037738d798dd39cd1 Mon Sep 17 00:00:00 2001 From: fitzsim Date: Thu, 21 Aug 2003 18:39:56 +0000 Subject: 2003-08-21 Scott Gilbertson Thomas Fitzsimmons * Makefile.am (gtk_awt_peer_sources): Add gnu/java/awt/peer/GLightweightPeer.java. Remove gnu/java/awt/GLightweightPeer.java. * gnu/java/awt/GLightweightPeer.java: Remove file. * gnu/java/awt/peer/GLightweightPeer.java: New file. * java/awt/Component.java (getToolkit): Add comment about lightweight components. * java/awt/Toolkit.java (createComponent): Return gnu.java.awt.peer.GLightweightPeer. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@70657 138bc75d-0d04-0410-961f-82ee72b054a4 --- libjava/ChangeLog | 13 ++ libjava/Makefile.am | 2 +- libjava/Makefile.in | 91 ++------ libjava/gcj/Makefile.in | 1 + libjava/gnu/java/awt/GLightweightPeer.java | 199 ---------------- libjava/gnu/java/awt/peer/GLightweightPeer.java | 298 ++++++++++++++++++++++++ libjava/include/Makefile.in | 1 + libjava/java/awt/Component.java | 1 + libjava/java/awt/Toolkit.java | 4 +- libjava/testsuite/Makefile.in | 1 + 10 files changed, 337 insertions(+), 274 deletions(-) delete mode 100644 libjava/gnu/java/awt/GLightweightPeer.java create mode 100644 libjava/gnu/java/awt/peer/GLightweightPeer.java (limited to 'libjava') diff --git a/libjava/ChangeLog b/libjava/ChangeLog index 1333cb4f971..06595e00db7 100644 --- a/libjava/ChangeLog +++ b/libjava/ChangeLog @@ -1,3 +1,16 @@ +2003-08-21 Scott Gilbertson + Thomas Fitzsimmons + + * Makefile.am (gtk_awt_peer_sources): Add + gnu/java/awt/peer/GLightweightPeer.java. Remove + gnu/java/awt/GLightweightPeer.java. + * gnu/java/awt/GLightweightPeer.java: Remove file. + * gnu/java/awt/peer/GLightweightPeer.java: New file. + * java/awt/Component.java (getToolkit): Add comment about + lightweight components. + * java/awt/Toolkit.java (createComponent): Return + gnu.java.awt.peer.GLightweightPeer. + 2003-08-21 Richard Earnshaw * configure.in: Fix detection of gcj when building with newlib. diff --git a/libjava/Makefile.am b/libjava/Makefile.am index cfbdbd80783..7869df021f3 100644 --- a/libjava/Makefile.am +++ b/libjava/Makefile.am @@ -758,10 +758,10 @@ gnu/java/awt/ComponentDataBlitOp.java \ gnu/java/awt/EmbeddedWindow.java \ gnu/java/awt/EmbeddedWindowSupport.java \ gnu/java/awt/EventModifier.java \ -gnu/java/awt/GLightweightPeer.java \ gnu/java/awt/image/ImageDecoder.java \ gnu/java/awt/image/XBMDecoder.java \ gnu/java/awt/peer/EmbeddedWindowPeer.java \ +gnu/java/awt/peer/GLightweightPeer.java \ gnu/java/beans/editors/ColorEditor.java \ gnu/java/beans/editors/FontEditor.java \ gnu/java/beans/editors/NativeBooleanEditor.java \ diff --git a/libjava/Makefile.in b/libjava/Makefile.in index 6ba2a979605..b98f5208d99 100644 --- a/libjava/Makefile.in +++ b/libjava/Makefile.in @@ -530,10 +530,10 @@ gnu/java/awt/ComponentDataBlitOp.java \ gnu/java/awt/EmbeddedWindow.java \ gnu/java/awt/EmbeddedWindowSupport.java \ gnu/java/awt/EventModifier.java \ -gnu/java/awt/GLightweightPeer.java \ gnu/java/awt/image/ImageDecoder.java \ gnu/java/awt/image/XBMDecoder.java \ gnu/java/awt/peer/EmbeddedWindowPeer.java \ +gnu/java/awt/peer/GLightweightPeer.java \ gnu/java/beans/editors/ColorEditor.java \ gnu/java/beans/editors/FontEditor.java \ gnu/java/beans/editors/NativeBooleanEditor.java \ @@ -2688,14 +2688,13 @@ LINK = $(LIBTOOL) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@ DATA = $(jar_DATA) $(pkgconfig_DATA) $(toolexecmainlib_DATA) DIST_COMMON = README COPYING ChangeLog Makefile.am Makefile.in NEWS \ -THANKS acconfig.h acinclude.m4 aclocal.m4 configure configure.in \ -gcj/libgcj-config.h.in gcj/stamp-h2.in include/config.h.in \ -include/stamp-h1.in libgcj-test.spec.in libgcj.pc.in libgcj.spec.in +THANKS acinclude.m4 aclocal.m4 configure configure.in \ +libgcj-test.spec.in libgcj.pc.in libgcj.spec.in DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) -TAR = tar +TAR = gtar GZIP_ENV = --best DIST_SUBDIRS = @DIRLTDL@ testsuite gcj include @DIRLTDL@ gcj include DEP_FILES = .deps/$(srcdir)/$(CONVERT_DIR)/gen-from-JIS.P \ @@ -2789,11 +2788,11 @@ DEP_FILES = .deps/$(srcdir)/$(CONVERT_DIR)/gen-from-JIS.P \ .deps/gnu/java/awt/EmbeddedWindow.P \ .deps/gnu/java/awt/EmbeddedWindowSupport.P \ .deps/gnu/java/awt/EventModifier.P \ -.deps/gnu/java/awt/GLightweightPeer.P \ .deps/gnu/java/awt/image/ImageDecoder.P \ .deps/gnu/java/awt/image/XBMDecoder.P \ .deps/gnu/java/awt/natEmbeddedWindow.P \ .deps/gnu/java/awt/peer/EmbeddedWindowPeer.P \ +.deps/gnu/java/awt/peer/GLightweightPeer.P \ .deps/gnu/java/awt/peer/gtk/GdkFontMetrics.P \ .deps/gnu/java/awt/peer/gtk/GdkGraphics.P \ .deps/gnu/java/awt/peer/gtk/GtkArg.P \ @@ -4318,53 +4317,6 @@ config.status: $(srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) $(SHELL) ./config.status --recheck $(srcdir)/configure: @MAINTAINER_MODE_TRUE@$(srcdir)/configure.in $(ACLOCAL_M4) $(CONFIGURE_DEPENDENCIES) cd $(srcdir) && $(AUTOCONF) - -include/config.h: include/stamp-h1 - @if test ! -f $@; then \ - rm -f include/stamp-h1; \ - $(MAKE) include/stamp-h1; \ - else :; fi -include/stamp-h1: $(srcdir)/include/config.h.in $(top_builddir)/config.status - cd $(top_builddir) \ - && CONFIG_FILES= CONFIG_HEADERS=include/config.h \ - $(SHELL) ./config.status - @echo timestamp > include/stamp-h1 2> /dev/null -$(srcdir)/include/config.h.in: @MAINTAINER_MODE_TRUE@$(srcdir)/include/stamp-h1.in - @if test ! -f $@; then \ - rm -f $(srcdir)/include/stamp-h1.in; \ - $(MAKE) $(srcdir)/include/stamp-h1.in; \ - else :; fi -$(srcdir)/include/stamp-h1.in: $(top_srcdir)/configure.in $(ACLOCAL_M4) acconfig.h - cd $(top_srcdir) && $(AUTOHEADER) - @echo timestamp > $(srcdir)/include/stamp-h1.in 2> /dev/null - -gcj/libgcj-config.h: gcj/stamp-h2 - @if test ! -f $@; then \ - rm -f gcj/stamp-h2; \ - $(MAKE) gcj/stamp-h2; \ - else :; fi -gcj/stamp-h2: $(srcdir)/gcj/libgcj-config.h.in $(top_builddir)/config.status - cd $(top_builddir) \ - && CONFIG_FILES= CONFIG_HEADERS=gcj/libgcj-config.h \ - $(SHELL) ./config.status - @echo timestamp > gcj/stamp-h2 2> /dev/null -$(srcdir)/gcj/libgcj-config.h.in: @MAINTAINER_MODE_TRUE@$(srcdir)/gcj/stamp-h2.in - @if test ! -f $@; then \ - rm -f $(srcdir)/gcj/stamp-h2.in; \ - $(MAKE) $(srcdir)/gcj/stamp-h2.in; \ - else :; fi -$(srcdir)/gcj/stamp-h2.in: $(top_srcdir)/configure.in $(ACLOCAL_M4) acconfig.h - cd $(top_srcdir) && $(AUTOHEADER) - @echo timestamp > $(srcdir)/gcj/stamp-h2.in 2> /dev/null - -mostlyclean-hdr: - -clean-hdr: - -distclean-hdr: - -rm -f include/config.h gcj/libgcj-config.h - -maintainer-clean-hdr: libgcj.pc: $(top_builddir)/config.status libgcj.pc.in cd $(top_builddir) && CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status libgcj.spec: $(top_builddir)/config.status libgcj.spec.in @@ -4829,32 +4781,29 @@ distclean-generic: -rm -f config.cache config.log stamp-h stamp-h[0-9]* maintainer-clean-generic: -mostlyclean-am: mostlyclean-hdr mostlyclean-toolexeclibLTLIBRARIES \ - mostlyclean-compile mostlyclean-libtool \ - mostlyclean-binPROGRAMS mostlyclean-noinstPROGRAMS \ - mostlyclean-tags mostlyclean-depend mostlyclean-generic +mostlyclean-am: mostlyclean-toolexeclibLTLIBRARIES mostlyclean-compile \ + mostlyclean-libtool mostlyclean-binPROGRAMS \ + mostlyclean-noinstPROGRAMS mostlyclean-tags \ + mostlyclean-depend mostlyclean-generic mostlyclean: mostlyclean-recursive -clean-am: clean-hdr clean-toolexeclibLTLIBRARIES clean-compile \ - clean-libtool clean-binPROGRAMS clean-noinstPROGRAMS \ - clean-tags clean-depend clean-generic mostlyclean-am \ - clean-local +clean-am: clean-toolexeclibLTLIBRARIES clean-compile clean-libtool \ + clean-binPROGRAMS clean-noinstPROGRAMS clean-tags \ + clean-depend clean-generic mostlyclean-am clean-local clean: clean-recursive -distclean-am: distclean-hdr distclean-toolexeclibLTLIBRARIES \ - distclean-compile distclean-libtool \ - distclean-binPROGRAMS distclean-noinstPROGRAMS \ - distclean-tags distclean-depend distclean-generic \ - clean-am +distclean-am: distclean-toolexeclibLTLIBRARIES distclean-compile \ + distclean-libtool distclean-binPROGRAMS \ + distclean-noinstPROGRAMS distclean-tags \ + distclean-depend distclean-generic clean-am -rm -f libtool distclean: distclean-recursive -rm -f config.status -maintainer-clean-am: maintainer-clean-hdr \ - maintainer-clean-toolexeclibLTLIBRARIES \ +maintainer-clean-am: maintainer-clean-toolexeclibLTLIBRARIES \ maintainer-clean-compile maintainer-clean-libtool \ maintainer-clean-binPROGRAMS \ maintainer-clean-noinstPROGRAMS maintainer-clean-tags \ @@ -4866,9 +4815,9 @@ maintainer-clean-am: maintainer-clean-hdr \ maintainer-clean: maintainer-clean-recursive -rm -f config.status -.PHONY: mostlyclean-hdr distclean-hdr clean-hdr maintainer-clean-hdr \ -mostlyclean-toolexeclibLTLIBRARIES distclean-toolexeclibLTLIBRARIES \ -clean-toolexeclibLTLIBRARIES maintainer-clean-toolexeclibLTLIBRARIES \ +.PHONY: mostlyclean-toolexeclibLTLIBRARIES \ +distclean-toolexeclibLTLIBRARIES clean-toolexeclibLTLIBRARIES \ +maintainer-clean-toolexeclibLTLIBRARIES \ uninstall-toolexeclibLTLIBRARIES install-toolexeclibLTLIBRARIES \ mostlyclean-compile distclean-compile clean-compile \ maintainer-clean-compile mostlyclean-libtool distclean-libtool \ diff --git a/libjava/gcj/Makefile.in b/libjava/gcj/Makefile.in index fa140875acd..064b5227625 100644 --- a/libjava/gcj/Makefile.in +++ b/libjava/gcj/Makefile.in @@ -125,6 +125,7 @@ STRIP = @STRIP@ SYSDEP_SOURCES = @SYSDEP_SOURCES@ SYSTEMSPEC = @SYSTEMSPEC@ SYS_ZLIBS = @SYS_ZLIBS@ +THREADCXXFLAGS = @THREADCXXFLAGS@ THREADDEPS = @THREADDEPS@ THREADINCS = @THREADINCS@ THREADLDFLAGS = @THREADLDFLAGS@ diff --git a/libjava/gnu/java/awt/GLightweightPeer.java b/libjava/gnu/java/awt/GLightweightPeer.java deleted file mode 100644 index cb1aac544f3..00000000000 --- a/libjava/gnu/java/awt/GLightweightPeer.java +++ /dev/null @@ -1,199 +0,0 @@ -/* Copyright (C) 2000, 2002 Free Software Foundation - -This file is part of GNU Classpath. - -GNU Classpath is free software; you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation; either version 2, or (at your option) -any later version. - -GNU Classpath is distributed in the hope that it will be useful, but -WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -General Public License for more details. - -You should have received a copy of the GNU General Public License -along with GNU Classpath; see the file COPYING. If not, write to the -Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -02111-1307 USA. - -Linking this library statically or dynamically with other modules is -making a combined work based on this library. Thus, the terms and -conditions of the GNU General Public License cover the whole -combination. - -As a special exception, the copyright holders of this library give you -permission to link this library with independent modules to produce an -executable, regardless of the license terms of these independent -modules, and to copy and distribute the resulting executable under -terms of your choice, provided that you also meet, for each linked -independent module, the terms and conditions of the license of that -module. An independent module is a module which is not derived from -or based on this library. If you modify this library, you may extend -this exception to your version of the library, but you are not -obligated to do so. If you do not wish to do so, delete this -exception statement from your version. */ - -package gnu.java.awt; - -import java.awt.*; -import java.awt.event.PaintEvent; -import java.awt.peer.*; -import java.awt.image.*; - -/** - * @author Rolf W. Rasmussen - */ -public class GLightweightPeer implements LightweightPeer -{ - public static final GLightweightPeer INSTANCE = new GLightweightPeer(); - - public GLightweightPeer() {} - - // -------- java.awt.peer.ComponentPeer implementation: - - public int checkImage(Image img, int width, int height, ImageObserver o) - { - return 0; - } - - public Image createImage(ImageProducer prod) - { - return null; - } - - public Image createImage(int width, int height) - { - return null; - } - - public void disable() {} - - public void dispose() {} - - public void enable() {} - - public GraphicsConfiguration getGraphicsConfiguration() - { - return null; - } - - public FontMetrics getFontMetrics(Font f) - { - return null; - } - - public Graphics getGraphics() - { - return null; - } - - public Point getLocationOnScreen() - { - return null; - } - - public Dimension getMinimumSize() - { - return null; - } - - public Dimension getPreferredSize() - { - return null; - } - - public Toolkit getToolkit() - { - return null; - } - - public void handleEvent(AWTEvent e) {} - - public void hide() {} - - public boolean isFocusable() - { - return false; - } - - public boolean isFocusTraversable() - { - return false; - } - - public Dimension minimumSize() - { - return null; - } - - public Dimension preferredSize() - { - return null; - } - - public void paint(Graphics graphics) {} - - public boolean prepareImage(Image img, int width, int height, - ImageObserver o) - { - return false; - } - - public void print(Graphics graphics) {} - - public void repaint(long tm, int x, int y, int width, int height) {} - - public void requestFocus() {} - - public boolean requestFocus(java.awt.Component source, boolean bool1, boolean bool2, long x) { return false; } - - public void reshape(int x, int y, int width, int height) {} - - public void setBackground(Color color) {} - - public void setBounds(int x, int y, int width, int height) {} - - public void setCursor(Cursor cursor) {} - - public void setEnabled(boolean enabled) {} - - public void setEventMask(long eventMask) {} - - public void setFont(Font font) {} - - public void setForeground(Color color) {} - - public void setVisible(boolean visible) {} - - public void show() {} - - public ColorModel getColorModel () - { - return null; - } - - public boolean isObscured() { return false; } - - public boolean canDetermineObscurity() { return false; } - - public void coalescePaintEvent(PaintEvent e) { } - - public void updateCursorImmediately() { } - - public VolatileImage createVolatileImage(int width, int height) - { - return null; - } - - public boolean handlesWheelScrolling() { return false; } - - public void createBuffers(int x, java.awt.BufferCapabilities capabilities) - throws java.awt.AWTException { } - - public java.awt.Image getBackBuffer() { return null; } - - public void flip(java.awt.BufferCapabilities.FlipContents contents) { } - - public void destroyBuffers() { } -} diff --git a/libjava/gnu/java/awt/peer/GLightweightPeer.java b/libjava/gnu/java/awt/peer/GLightweightPeer.java new file mode 100644 index 00000000000..5c0ea498e82 --- /dev/null +++ b/libjava/gnu/java/awt/peer/GLightweightPeer.java @@ -0,0 +1,298 @@ +/* GLightweightPeer.java -- + Copyright (C) 2003 Free Software Foundation, Inc. + +This file is part of GNU Classpath. + +GNU Classpath is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2, or (at your option) +any later version. + +GNU Classpath is distributed in the hope that it will be useful, but +WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +General Public License for more details. + +You should have received a copy of the GNU General Public License +along with GNU Classpath; see the file COPYING. If not, write to the +Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA +02111-1307 USA. + +Linking this library statically or dynamically with other modules is +making a combined work based on this library. Thus, the terms and +conditions of the GNU General Public License cover the whole +combination. + +As a special exception, the copyright holders of this library give you +permission to link this library with independent modules to produce an +executable, regardless of the license terms of these independent +modules, and to copy and distribute the resulting executable under +terms of your choice, provided that you also meet, for each linked +independent module, the terms and conditions of the license of that +module. An independent module is a module which is not derived from +or based on this library. If you modify this library, you may extend +this exception to your version of the library, but you are not +obligated to do so. If you do not wish to do so, delete this +exception statement from your version. */ + +package gnu.java.awt.peer; + +import java.awt.AWTEvent; +import java.awt.AWTException; +import java.awt.BufferCapabilities; +import java.awt.Color; +import java.awt.Component; +import java.awt.Cursor; +import java.awt.Dimension; +import java.awt.Font; +import java.awt.Font; +import java.awt.FontMetrics; +import java.awt.Graphics; +import java.awt.GraphicsConfiguration; +import java.awt.Image; +import java.awt.Insets; +import java.awt.Point; +import java.awt.Toolkit; +import java.awt.event.PaintEvent; +import java.awt.image.ColorModel; +import java.awt.image.ImageObserver; +import java.awt.image.ImageProducer; +import java.awt.image.VolatileImage; +import java.awt.peer.ContainerPeer; +import java.awt.peer.LightweightPeer; + +/* + * Another possible implementation strategy for lightweight peers is + * to make GLightweightPeer a placeholder class that implements + * LightweightPeer. Then the Component and Container classes could + * identify a peer as lightweight and handle it specially. The + * current approach is probably more clear but less efficient. + */ + +/** + * A stub class that implements the ComponentPeer and ContainerPeer + * interfaces using callbacks into the Component and Container + * classes. GLightweightPeer allows the Component and Container + * classes to treat lightweight and heavyweight peers in the same way. + * + * Lightweight components are painted directly onto their parent + * containers through an Image object provided by the toolkit. + */ +public class GLightweightPeer + implements LightweightPeer, ContainerPeer +{ + private Component comp; + + private Insets containerInsets; + + public GLightweightPeer(Component comp) + { + this.comp = comp; + } + + // -------- java.awt.peer.ContainerPeer implementation: + + public Insets insets() + { + return getInsets (); + } + + public Insets getInsets() + { + if (containerInsets == null) + containerInsets = new Insets (0,0,0,0); + return containerInsets; + } + + public void beginValidate() + { + } + + public void endValidate() + { + } + + public void beginLayout() + { + } + + public void endLayout() + { + } + + public boolean isPaintPending() + { + return false; + } + + // -------- java.awt.peer.ComponentPeer implementation: + + public int checkImage(Image img, int width, int height, ImageObserver o) + { + return comp.getToolkit().checkImage(img, width, height, o); + } + + public Image createImage(ImageProducer prod) + { + return comp.getToolkit().createImage(prod); + } + + /* This method is not called. */ + public Image createImage(int width, int height) + { + return null; + } + + public void disable() {} + + public void dispose() {} + + public void enable() {} + + public GraphicsConfiguration getGraphicsConfiguration() + { + return null; + } + + public FontMetrics getFontMetrics(Font f) + { + return comp.getToolkit().getFontMetrics(f); + } + + /* Returning null here tells the Component object that called us to + * use its parent's Graphics. */ + public Graphics getGraphics() + { + return null; + } + + public Point getLocationOnScreen() + { + Point parentLocation = comp.getParent().getLocationOnScreen(); + return new Point (parentLocation.x + comp.getX(), + parentLocation.y + comp.getY()); + } + + public Dimension getMinimumSize() + { + return new Dimension(comp.getWidth(), comp.getHeight()); + } + + /* A lightweight component's preferred size is equivalent to its + * Component width and height values. */ + public Dimension getPreferredSize() + { + return new Dimension(comp.getWidth(), comp.getHeight()); + } + + /* Returning null here tells the Component object that called us to + * use its parent's Toolkit. */ + public Toolkit getToolkit() + { + return null; + } + + public void handleEvent(AWTEvent e) {} + + public void hide() {} + + public boolean isFocusable() + { + return false; + } + + public boolean isFocusTraversable() + { + return false; + } + + public Dimension minimumSize() + { + return getMinimumSize(); + } + + public Dimension preferredSize() + { + return getPreferredSize(); + } + + public void paint(Graphics graphics) {} + + public boolean prepareImage(Image img, int width, int height, + ImageObserver o) + { + return comp.getToolkit().prepareImage(img, width, height, o); + } + + public void print(Graphics graphics) {} + + public void repaint(long tm, int x, int y, int width, int height) {} + + public void requestFocus() {} + + public boolean requestFocus(Component source, boolean bool1, boolean bool2, long x) + { + return false; + } + + public void reshape(int x, int y, int width, int height) {} + + public void setBackground(Color color) {} + + public void setBounds(int x, int y, int width, int height) { } + + public void setCursor(Cursor cursor) {} + + public void setEnabled(boolean enabled) {} + + public void setEventMask(long eventMask) {} + + public void setFont(Font font) {} + + public void setForeground(Color color) {} + + public void setVisible(boolean visible) {} + + public void show() {} + + public ColorModel getColorModel () + { + return comp.getColorModel (); + } + + public boolean isObscured() + { + return false; + } + + public boolean canDetermineObscurity() + { + return false; + } + + public void coalescePaintEvent(PaintEvent e) { } + + public void updateCursorImmediately() { } + + public VolatileImage createVolatileImage(int width, int height) + { + return null; + } + + public boolean handlesWheelScrolling() + { + return false; + } + + public void createBuffers(int x, BufferCapabilities capabilities) + throws AWTException { } + + public Image getBackBuffer() + { + return null; + } + + public void flip(BufferCapabilities.FlipContents contents) { } + + public void destroyBuffers() { } +} diff --git a/libjava/include/Makefile.in b/libjava/include/Makefile.in index 1a38831cb19..70902622733 100644 --- a/libjava/include/Makefile.in +++ b/libjava/include/Makefile.in @@ -125,6 +125,7 @@ STRIP = @STRIP@ SYSDEP_SOURCES = @SYSDEP_SOURCES@ SYSTEMSPEC = @SYSTEMSPEC@ SYS_ZLIBS = @SYS_ZLIBS@ +THREADCXXFLAGS = @THREADCXXFLAGS@ THREADDEPS = @THREADDEPS@ THREADINCS = @THREADINCS@ THREADLDFLAGS = @THREADLDFLAGS@ diff --git a/libjava/java/awt/Component.java b/libjava/java/awt/Component.java index 9a38919f1c5..98511ef7c6e 100644 --- a/libjava/java/awt/Component.java +++ b/libjava/java/awt/Component.java @@ -677,6 +677,7 @@ public abstract class Component if (tk != null) return tk; } + // Get toolkit for lightweight component. if (parent != null) return parent.getToolkit(); return Toolkit.getDefaultToolkit(); diff --git a/libjava/java/awt/Toolkit.java b/libjava/java/awt/Toolkit.java index 6fd1413895b..f8cc6bffa2c 100644 --- a/libjava/java/awt/Toolkit.java +++ b/libjava/java/awt/Toolkit.java @@ -342,15 +342,13 @@ public abstract class Toolkit * with its own native window. Instead, this method allows the component * to draw on its parent window as a "lightweight" widget. * - * XXX: FIXME - * * @param target The Component to create the peer for. * * @return The peer for the specified Component object. */ protected LightweightPeer createComponent(Component target) { - return null; + return new gnu.java.awt.peer.GLightweightPeer (target); } /** diff --git a/libjava/testsuite/Makefile.in b/libjava/testsuite/Makefile.in index 091051224b9..a45ec55ddb2 100644 --- a/libjava/testsuite/Makefile.in +++ b/libjava/testsuite/Makefile.in @@ -125,6 +125,7 @@ STRIP = @STRIP@ SYSDEP_SOURCES = @SYSDEP_SOURCES@ SYSTEMSPEC = @SYSTEMSPEC@ SYS_ZLIBS = @SYS_ZLIBS@ +THREADCXXFLAGS = @THREADCXXFLAGS@ THREADDEPS = @THREADDEPS@ THREADINCS = @THREADINCS@ THREADLDFLAGS = @THREADLDFLAGS@ -- cgit v1.2.1