This fixes GtkCanvasPeer to override preferredSize() instead of
getPreferredSize(). The latter never gets called (I checked that against
the RI and added @specnote to ComponentPeer about that fact).
2006-08-03 Roman Kennke <[EMAIL PROTECTED]>
PR 28571
* gnu/java/awt/peer/gtk/GtkCanvasPeer.java
(getPreferredSize): Renamed method to preferredSize(). That's
the one that gets called from java.awt.*.
* java/awt/peer/ComponentPeer.java
(getPreferredSize): Added specnote about this method never
beeing called in the RI.
(getMinimumSize): Added specnote about this method never
beeing called in the RI.
/Roman
Index: gnu/java/awt/peer/gtk/GtkCanvasPeer.java
===================================================================
RCS file: /cvsroot/classpath/classpath/gnu/java/awt/peer/gtk/GtkCanvasPeer.java,v
retrieving revision 1.18
diff -u -1 -2 -r1.18 GtkCanvasPeer.java
--- gnu/java/awt/peer/gtk/GtkCanvasPeer.java 25 May 2006 15:29:36 -0000 1.18
+++ gnu/java/awt/peer/gtk/GtkCanvasPeer.java 3 Aug 2006 09:54:16 -0000
@@ -44,17 +44,17 @@
public class GtkCanvasPeer extends GtkComponentPeer implements CanvasPeer
{
native void create ();
public GtkCanvasPeer (Canvas c)
{
super (c);
}
// Preferred size for a drawing widget is always what the user
// requested.
- public Dimension getPreferredSize ()
+ public Dimension preferredSize()
{
- return awtComponent.getSize ();
+ return awtComponent.getSize();
}
}
Index: java/awt/peer/ComponentPeer.java
===================================================================
RCS file: /cvsroot/classpath/classpath/java/awt/peer/ComponentPeer.java,v
retrieving revision 1.17
diff -u -1 -2 -r1.17 ComponentPeer.java
--- java/awt/peer/ComponentPeer.java 25 Jul 2006 22:41:46 -0000 1.17
+++ java/awt/peer/ComponentPeer.java 3 Aug 2006 09:54:16 -0000
@@ -144,32 +144,44 @@
* Returns the location of this component in screen coordinates. This is
* called by [EMAIL PROTECTED] Component#getLocationOnScreen()}.
*
* @return the location of this component in screen coordinates
*/
Point getLocationOnScreen();
/**
* Returns the minimum size for the component. This is called by
* [EMAIL PROTECTED] Component#getMinimumSize()}.
*
* @return the minimum size for the component
+ *
+ * @specnote Presumably this method got added to replace minimumSize().
+ * However, testing shows that this is never called in the RI
+ * (tested with JDK5), but instead minimumSize() is called
+ * directly. It is advisable to implement this method to delegate
+ * to minimumSize() and put the real implementation in there.
*/
Dimension getMinimumSize();
/**
* Returns the preferred size for the component. This is called by
* [EMAIL PROTECTED] Component#getPreferredSize()}.
*
* @return the preferred size for the component
+ *
+ * @specnote Presumably this method got added to replace preferredSize().
+ * However, testing shows that this is never called in the RI
+ * (tested with JDK5), but instead preferredSize() is called
+ * directly. It is advisable to implement this method to delegate
+ * to preferredSize() and put the real implementation in there.
*/
Dimension getPreferredSize();
/**
* Returns the toolkit that created this peer.
*
* @return the toolkit that created this peer
*/
Toolkit getToolkit();
/**
* Handles the given event. This is called from