# HG changeset patch # User Sadrul Habib Chowdhury # Date 1210646970 0 # Node ID da1b9eeac7b59b99289979ef13041eaecb9a6ab1 # Parent e2d28391d3fce0dda4c1b43aa8be6a5278177c89 Change how the columns in the account-manager window are resized. diff -r e2d28391d3fc -r da1b9eeac7b5 pidgin/gtkaccount.c --- a/pidgin/gtkaccount.c Tue May 13 02:48:08 2008 +0000 +++ b/pidgin/gtkaccount.c Tue May 13 02:49:30 2008 +0000 @@ -1809,39 +1809,6 @@ return FALSE; } -static gboolean -configure_cb(GtkWidget *w, GdkEventConfigure *event, AccountsWindow *dialog) -{ - if (GTK_WIDGET_VISIBLE(w)) { - int old_width = purple_prefs_get_int(PIDGIN_PREFS_ROOT "/accounts/dialog/width"); - int col_width; - int difference; - - purple_prefs_set_int(PIDGIN_PREFS_ROOT "/accounts/dialog/width", event->width); - purple_prefs_set_int(PIDGIN_PREFS_ROOT "/accounts/dialog/height", event->height); - - col_width = gtk_tree_view_column_get_width(dialog->screenname_col); - - if (col_width == 0) - return FALSE; - - difference = (MAX(old_width, event->width) - - MIN(old_width, event->width)); - - if (difference == 0) - return FALSE; - - if (old_width < event->width) - gtk_tree_view_column_set_min_width(dialog->screenname_col, - col_width + difference); - else - gtk_tree_view_column_set_max_width(dialog->screenname_col, - col_width - difference); - } - - return FALSE; -} - static void add_account_cb(GtkWidget *w, AccountsWindow *dialog) { @@ -1964,14 +1931,14 @@ column = gtk_tree_view_column_new_with_attributes(_("Enabled"), renderer, "active", COLUMN_ENABLED, NULL); - gtk_tree_view_insert_column(GTK_TREE_VIEW(treeview), column, -1); - gtk_tree_view_column_set_resizable(column, TRUE); + gtk_tree_view_column_set_resizable(column, FALSE); + gtk_tree_view_append_column(GTK_TREE_VIEW(treeview), column); /* Screen Name column */ column = gtk_tree_view_column_new(); gtk_tree_view_column_set_title(column, _("Username")); - gtk_tree_view_insert_column(GTK_TREE_VIEW(treeview), column, -1); gtk_tree_view_column_set_resizable(column, TRUE); + gtk_tree_view_append_column(GTK_TREE_VIEW(treeview), column); /* Buddy Icon */ renderer = gtk_cell_renderer_pixbuf_new(); @@ -1990,8 +1957,8 @@ /* Protocol name */ column = gtk_tree_view_column_new(); gtk_tree_view_column_set_title(column, _("Protocol")); - gtk_tree_view_insert_column(GTK_TREE_VIEW(treeview), column, -1); - gtk_tree_view_column_set_resizable(column, TRUE); + gtk_tree_view_column_set_resizable(column, FALSE); + gtk_tree_view_append_column(GTK_TREE_VIEW(treeview), column); /* Icon */ renderer = gtk_cell_renderer_pixbuf_new(); @@ -2245,6 +2212,7 @@ gtk_container_add(GTK_CONTAINER(sw), treeview); add_columns(treeview, dialog); + gtk_tree_view_columns_autosize(GTK_TREE_VIEW(treeview)); if (populate_accounts_list(dialog)) gtk_notebook_set_current_page(GTK_NOTEBOOK(accounts_window->notebook), 1); @@ -2314,8 +2282,6 @@ g_signal_connect(G_OBJECT(win), "delete_event", G_CALLBACK(accedit_win_destroy_cb), accounts_window); - g_signal_connect(G_OBJECT(win), "configure_event", - G_CALLBACK(configure_cb), accounts_window); /* Setup the vbox */ vbox = pidgin_dialog_get_vbox_with_properties(GTK_DIALOG(win), FALSE, PIDGIN_HIG_BORDER);