From 5ef40a9e35ff8c558d423e1bb5b48d6554f72f31 Mon Sep 17 00:00:00 2001 From: Guillaume Desmottes Date: Tue, 27 Mar 2012 10:28:11 +0200 Subject: import-widget: request the preferred height of the treeview We should try to display as much rows as possible. https://bugzilla.gnome.org/show_bug.cgi?id=672839 --- src/empathy-import-dialog.ui | 3 +-- src/empathy-import-widget.c | 10 ++++++++++ 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/src/empathy-import-dialog.ui b/src/empathy-import-dialog.ui index ce7a56a74..2cc9207ba 100644 --- a/src/empathy-import-dialog.ui +++ b/src/empathy-import-dialog.ui @@ -6,7 +6,7 @@ True 2 - + True True never @@ -14,7 +14,6 @@ in - 200 True True False diff --git a/src/empathy-import-widget.c b/src/empathy-import-widget.c index 40956f9ee..6a2d24a81 100644 --- a/src/empathy-import-widget.c +++ b/src/empathy-import-widget.c @@ -62,6 +62,7 @@ enum { typedef struct { GtkWidget *vbox; GtkWidget *treeview; + GtkWidget *scrolledwindow; GList *accounts; EmpathyImportApplication app_id; @@ -91,6 +92,8 @@ import_widget_account_id_in_list (GList *accounts, return FALSE; } +#define MAX_TREEVIEW_HEIGHT 300 + static void import_widget_add_accounts_to_model (EmpathyImportWidget *self) { @@ -99,6 +102,7 @@ import_widget_add_accounts_to_model (EmpathyImportWidget *self) GtkTreeIter iter; GList *l; EmpathyImportWidgetPriv *priv = GET_PRIV (self); + gint min, natural; manager = tp_account_manager_dup (); @@ -141,6 +145,11 @@ import_widget_add_accounts_to_model (EmpathyImportWidget *self) } + /* Display as much rows as possible */ + gtk_widget_get_preferred_height (priv->treeview, &min, &natural); + gtk_widget_set_size_request (priv->scrolledwindow, -1, + MIN (natural, MAX_TREEVIEW_HEIGHT)); + g_object_unref (manager); } @@ -434,6 +443,7 @@ do_constructed (GObject *obj) gui = empathy_builder_get_file (filename, "widget_vbox", &priv->vbox, "treeview", &priv->treeview, + "scrolledwindow", &priv->scrolledwindow, NULL); g_free (filename); -- cgit v1.2.3