diff options
author | Lillian Angel <langel@redhat.com> | 2006-03-06 19:52:35 +0000 |
---|---|---|
committer | Lillian Angel <langel@redhat.com> | 2006-03-06 19:52:35 +0000 |
commit | ea1be1847988bc3ea1d785d400fda2e952d49408 (patch) | |
tree | cd8e85688cf4a8e7ade33d79a35d36d7da11a52d | |
parent | 4742a3dbf1371728e461b555a580d7432376445b (diff) | |
download | classpath-ea1be1847988bc3ea1d785d400fda2e952d49408.tar.gz |
2006-03-06 Lillian Angel <langel@redhat.com>
PR classpath/26569
* java/awt/List.java
(preferredSize): Return the size of the list if the peer is null.
* gnu/java/awt/peer/gtk/GtkListPeer.java
(preferredSize): Code was returning the minimum size of the list.
Added adjustment to the width of the list so it is a proper size.
-rw-r--r-- | ChangeLog | 9 | ||||
-rw-r--r-- | gnu/java/awt/peer/gtk/GtkListPeer.java | 12 | ||||
-rw-r--r-- | java/awt/List.java | 2 |
3 files changed, 17 insertions, 6 deletions
@@ -1,3 +1,12 @@ +2006-03-06 Lillian Angel <langel@redhat.com> + + PR classpath/26569 + * java/awt/List.java + (preferredSize): Return the size of the list if the peer is null. + * gnu/java/awt/peer/gtk/GtkListPeer.java + (preferredSize): Code was returning the minimum size of the list. + Added adjustment to the width of the list so it is a proper size. + 2006-03-06 Wolfgang Baer <WBaer@gmx.de> * gnu/java/net/protocol/http/HTTPURLConnection.java: Organized imports. diff --git a/gnu/java/awt/peer/gtk/GtkListPeer.java b/gnu/java/awt/peer/gtk/GtkListPeer.java index 285f79416..bd6ec0aef 100644 --- a/gnu/java/awt/peer/gtk/GtkListPeer.java +++ b/gnu/java/awt/peer/gtk/GtkListPeer.java @@ -40,6 +40,7 @@ package gnu.java.awt.peer.gtk; import java.awt.AWTEvent; import java.awt.Dimension; +import java.awt.FontMetrics; import java.awt.List; import java.awt.event.KeyEvent; import java.awt.event.MouseEvent; @@ -120,11 +121,12 @@ public class GtkListPeer extends GtkComponentPeer public Dimension preferredSize (int rows) { - int dims[] = new int[2]; - - int visibleRows = ((List) awtComponent).getRows(); - getSize (rows, visibleRows, dims); - return new Dimension (dims[0], dims[1]); + // getSize returns the minimum size of the list. + // The width is too narrow for a typical list. + List l = (List) awtComponent; + Dimension d = getMinimumSize(); + FontMetrics fm = l.getFontMetrics(l.getFont()); + return new Dimension(d.width + fm.stringWidth("1234567890"), d.height); } public void removeAll () diff --git a/java/awt/List.java b/java/awt/List.java index 00636a022..b28e2016d 100644 --- a/java/awt/List.java +++ b/java/awt/List.java @@ -446,7 +446,7 @@ preferredSize(int rows) if (peer != null) return peer.preferredSize (rows); else - return new Dimension (0, 0); + return getSize(); } /*************************************************************************/ |