[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[cp-patches] FYI: Fix FileDialog's initial size
From: |
Mark Wielaard |
Subject: |
[cp-patches] FYI: Fix FileDialog's initial size |
Date: |
Sat, 31 Jul 2004 23:26:12 +0200 |
Hi all,
This imports another patch from the libgcj gui branch for making sure
that GtkWindows get their natural sizes. This produces a better initial
size with plenty of space for FileDialogs.
2004-07-31 David Jee <address@hidden>
* native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkComponentPeer.c
(gtkWidgetGetPreferredDimensions): For widgets extending GtkWindow,
use their default sizes rather than their natural requisitions.
Committed.
Cheers,
Mark
Index: native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkComponentPeer.c
===================================================================
RCS file:
/cvsroot/classpath/classpath/native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkComponentPeer.c,v
retrieving revision 1.35
diff -u -r1.35 gnu_java_awt_peer_gtk_GtkComponentPeer.c
--- native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkComponentPeer.c 31 Jul
2004 21:15:06 -0000 1.35
+++ native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkComponentPeer.c 31 Jul
2004 21:23:23 -0000
@@ -737,19 +737,33 @@
gdk_threads_enter ();
- /* Save the widget's current size request. */
- gtk_widget_size_request (GTK_WIDGET (ptr), ¤t_req);
+ /* Widgets that extend GtkWindow such as GtkFileChooserDialog may
have
+ a default size. These values seem more useful then the natural
+ requisition values, particularly for GtkFileChooserDialog. */
+ if (GTK_IS_WINDOW (ptr))
+ {
+ gint width, height;
+ gtk_window_get_default_size (GTK_WINDOW (ptr), &width, &height);
+
+ dims[0] = width;
+ dims[1] = height;
+ }
+ else
+ {
+ /* Save the widget's current size request. */
+ gtk_widget_size_request (GTK_WIDGET (ptr), ¤t_req);
- /* Get the widget's "natural" size request. */
- gtk_widget_set_size_request (GTK_WIDGET (ptr), -1, -1);
- gtk_widget_size_request (GTK_WIDGET (ptr), &natural_req);
-
- /* Reset the widget's size request. */
- gtk_widget_set_size_request (GTK_WIDGET (ptr),
- current_req.width, current_req.height);
+ /* Get the widget's "natural" size request. */
+ gtk_widget_set_size_request (GTK_WIDGET (ptr), -1, -1);
+ gtk_widget_size_request (GTK_WIDGET (ptr), &natural_req);
+
+ /* Reset the widget's size request. */
+ gtk_widget_set_size_request (GTK_WIDGET (ptr),
+ current_req.width, current_req.height);
- dims[0] = natural_req.width;
- dims[1] = natural_req.height;
+ dims[0] = natural_req.width;
+ dims[1] = natural_req.height;
+ }
gdk_threads_leave ();
signature.asc
Description: This is a digitally signed message part
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [cp-patches] FYI: Fix FileDialog's initial size,
Mark Wielaard <=