diff options
Diffstat (limited to 'packages/gaim/files/06-account-dialogs.patch')
-rw-r--r-- | packages/gaim/files/06-account-dialogs.patch | 219 |
1 files changed, 219 insertions, 0 deletions
diff --git a/packages/gaim/files/06-account-dialogs.patch b/packages/gaim/files/06-account-dialogs.patch new file mode 100644 index 0000000000..9d2cb9acb0 --- /dev/null +++ b/packages/gaim/files/06-account-dialogs.patch @@ -0,0 +1,219 @@ +Index: gaim/src/gtkaccount.c +=================================================================== +--- gaim.orig/src/gtkaccount.c 2005-08-25 17:16:44.000000000 +0200 ++++ gaim/src/gtkaccount.c 2005-08-29 22:34:25.511003600 +0200 +@@ -857,7 +857,6 @@ + { + GtkWidget *frame; + GtkWidget *vbox; +- GtkWidget *vbox2; + GtkWidget *hbox; + GtkWidget *hbox2; + GtkWidget *button; +@@ -901,12 +900,8 @@ + gaim_set_accessible_label (dialog->icon_entry, label); + dialog->icon_path = NULL; + +- vbox2 = gtk_vbox_new(FALSE, 0); +- gtk_box_pack_start(GTK_BOX(hbox), vbox2, TRUE, TRUE, 0); +- gtk_widget_show(vbox2); +- + hbox2 = gtk_hbox_new(FALSE, GAIM_HIG_BOX_SPACE); +- gtk_box_pack_start(GTK_BOX(vbox2), hbox2, FALSE, FALSE, GAIM_HIG_BORDER); ++ gtk_box_pack_start(GTK_BOX(vbox), hbox2, FALSE, FALSE, GAIM_HIG_BORDER); + gtk_widget_show(hbox2); + + button = gtk_button_new_from_stock(GTK_STOCK_OPEN); +@@ -1275,7 +1270,18 @@ + gtk_option_menu_get_menu(GTK_OPTION_MENU(dialog->proxy_dropdown)); + #endif + +- add_pref_box(dialog, vbox, _("Proxy _type:"), dialog->proxy_dropdown); ++ GtkWidget *label; ++ label = gtk_label_new_with_mnemonic(_("Proxy _type:")); ++ gtk_size_group_add_widget(dialog->sg, label); ++ gtk_misc_set_alignment(GTK_MISC(label), 0, 0.5); ++ gtk_box_pack_start(GTK_BOX(vbox), label, FALSE, FALSE, 0); ++ gtk_widget_show(label); ++ ++ gtk_box_pack_start(GTK_BOX(vbox), dialog->proxy_dropdown, TRUE, TRUE, GAIM_HIG_BORDER); ++ gtk_widget_show(dialog->proxy_dropdown); ++ gaim_set_accessible_label (dialog->proxy_dropdown, label); ++ ++ //add_pref_box(dialog, vbox, _("Proxy _type:"), dialog->proxy_dropdown); + + /* Setup the second vbox, which may be hidden at times. */ + dialog->proxy_vbox = vbox2 = gtk_vbox_new(FALSE, GAIM_HIG_BOX_SPACE); +@@ -1643,6 +1649,7 @@ + AccountPrefsDialog *dialog; + GtkWidget *win; + GtkWidget *main_vbox; ++ GtkWidget *sw; + GtkWidget *vbox; + GtkWidget *bbox; + GtkWidget *dbox; +@@ -1709,10 +1716,19 @@ + gtk_box_pack_start(GTK_BOX(main_vbox), notebook, FALSE, FALSE, 0); + + /* Setup the inner vbox */ ++ //With a scrollbox ++ sw = gtk_scrolled_window_new(NULL, NULL); ++ gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(sw), ++ GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); ++ gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(sw), ++ GTK_SHADOW_NONE); ++ gtk_widget_set_size_request(sw, -1, -1); ++ gtk_notebook_append_page(GTK_NOTEBOOK(notebook), sw, ++ gtk_label_new_with_mnemonic("_Basic")); ++ gtk_widget_show(sw); + dialog->top_vbox = vbox = gtk_vbox_new(FALSE, GAIM_HIG_BORDER); + gtk_container_set_border_width(GTK_CONTAINER(vbox), GAIM_HIG_BORDER); +- gtk_notebook_append_page(GTK_NOTEBOOK(notebook), vbox, +- gtk_label_new_with_mnemonic("_Basic")); ++ gtk_scrolled_window_add_with_viewport(GTK_SCROLLED_WINDOW(sw), vbox); + gtk_widget_show(vbox); + + /* Setup the top frames. */ +@@ -1720,10 +1736,20 @@ + add_user_options(dialog, vbox); + + /* Setup the page with 'Advanced'. */ ++ //With a scrollbox ++ sw = gtk_scrolled_window_new(NULL, NULL); ++ gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(sw), ++ GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); ++ gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(sw), ++ GTK_SHADOW_NONE); ++ gtk_widget_set_size_request(sw, -1, -1); ++ gtk_notebook_append_page(GTK_NOTEBOOK(notebook), sw, ++ gtk_label_new_with_mnemonic("_Advanced")); ++ gtk_widget_show(sw); + dialog->bottom_vbox = dbox = gtk_vbox_new(FALSE, GAIM_HIG_BORDER); + gtk_container_set_border_width(GTK_CONTAINER(dbox), GAIM_HIG_BORDER); +- gtk_notebook_append_page(GTK_NOTEBOOK(notebook), dbox, +- gtk_label_new_with_mnemonic("_Advanced")); ++ gtk_scrolled_window_add_with_viewport(GTK_SCROLLED_WINDOW(sw), dbox); ++ gtk_widget_show(dbox); + + /** Setup the bottom frames. */ + add_protocol_options(dialog, dbox); +@@ -1731,46 +1757,50 @@ + add_proxy_options(dialog, dbox); + + /* Setup the button box */ +- bbox = gtk_hbutton_box_new(); ++ //bbox = gtk_hbutton_box_new(); ++ //Replaced with a hbox, otherwise the Register-button doesn't fit (same size required) ++ bbox = gtk_hbox_new(FALSE, GAIM_HIG_BORDER); + gtk_box_set_spacing(GTK_BOX(bbox), GAIM_HIG_BOX_SPACE); +- gtk_button_box_set_layout(GTK_BUTTON_BOX(bbox), GTK_BUTTONBOX_END); + gtk_box_pack_end(GTK_BOX(main_vbox), bbox, FALSE, TRUE, 0); + gtk_widget_show(bbox); + +- /* Register button */ +- button = gtk_button_new_with_label(_("Register")); +- gtk_box_pack_start(GTK_BOX(bbox), button, FALSE, FALSE, 0); +- gtk_widget_show(button); +- +- g_signal_connect(G_OBJECT(button), "clicked", +- G_CALLBACK(register_account_prefs_cb), dialog); +- +- dialog->register_button = button; +- ++ /* Save button */ ++ button = gtk_button_new_from_stock(GTK_STOCK_SAVE); ++ gtk_box_pack_end(GTK_BOX(bbox), button, FALSE, FALSE, 0); ++ + if (dialog->account == NULL) + gtk_widget_set_sensitive(button, FALSE); + +- if (!dialog->prpl_info || !dialog->prpl_info->register_user) +- gtk_widget_hide(button); ++ gtk_widget_show(button); ++ ++ dialog->ok_button = button; ++ ++ g_signal_connect(G_OBJECT(button), "clicked", ++ G_CALLBACK(ok_account_prefs_cb), dialog); + + /* Cancel button */ + button = gtk_button_new_from_stock(GTK_STOCK_CANCEL); +- gtk_box_pack_start(GTK_BOX(bbox), button, FALSE, FALSE, 0); ++ gtk_box_pack_end(GTK_BOX(bbox), button, FALSE, FALSE, 0); + gtk_widget_show(button); + + g_signal_connect(G_OBJECT(button), "clicked", + G_CALLBACK(cancel_account_prefs_cb), dialog); + +- /* Save button */ +- button = gtk_button_new_from_stock(GTK_STOCK_SAVE); +- gtk_box_pack_start(GTK_BOX(bbox), button, FALSE, FALSE, 0); ++ /* Register button */ ++ button = gtk_button_new_with_label(_("Register")); ++ gtk_box_pack_end(GTK_BOX(bbox), button, FALSE, FALSE, 0); ++ gtk_widget_show(button); ++ ++ g_signal_connect(G_OBJECT(button), "clicked", ++ G_CALLBACK(register_account_prefs_cb), dialog); ++ ++ dialog->register_button = button; + + if (dialog->account == NULL) + gtk_widget_set_sensitive(button, FALSE); + +- gtk_widget_show(button); +- +- dialog->ok_button = button; ++ if (!dialog->prpl_info || !dialog->prpl_info->register_user) ++ gtk_widget_hide(button); + + /* Set up DND */ + gtk_drag_dest_set(dialog->window, +@@ -1783,11 +1813,20 @@ + g_signal_connect(G_OBJECT(dialog->window), "drag_data_received", + G_CALLBACK(account_dnd_recv), dialog); + +- g_signal_connect(G_OBJECT(button), "clicked", +- G_CALLBACK(ok_account_prefs_cb), dialog); +- + /* Show the window. */ + gtk_widget_show(win); ++ ++ //Wait for the window to have recieved its "configure_event", ++ //which means it has been resized by the WM ++ while (gtk_events_pending ()) gtk_main_iteration (); ++ ++ //Get allocated size, and adjust widgets accordingly ++ int w, h; ++ gtk_window_get_size(GTK_WINDOW(win), &w, &h); ++ ++ w = w - GAIM_HIG_BORDER * 2; ++ gtk_widget_set_size_request(GTK_WIDGET(dialog->protocol_menu), w, -1); ++ + } + + /************************************************************************** +@@ -2389,6 +2428,7 @@ + bbox = gtk_hbutton_box_new(); + gtk_box_set_spacing(GTK_BOX(bbox), GAIM_HIG_BOX_SPACE); + gtk_button_box_set_layout(GTK_BUTTON_BOX(bbox), GTK_BUTTONBOX_END); ++ gtk_button_box_set_child_size(GTK_BUTTON_BOX(bbox), 20, -1); //DEPRECATED FFH + gtk_box_pack_end(GTK_BOX(vbox), bbox, FALSE, TRUE, 0); + gtk_widget_show(bbox); + +@@ -2421,12 +2461,13 @@ + G_CALLBACK(ask_delete_account_cb), dialog); + + /* Close button */ +- button = gtk_button_new_from_stock(GTK_STOCK_CLOSE); ++ //We can do without the close button to save screen estate ++ /*button = gtk_button_new_from_stock(GTK_STOCK_CLOSE); + gtk_box_pack_start(GTK_BOX(bbox), button, FALSE, FALSE, 0); + gtk_widget_show(button); + + g_signal_connect(G_OBJECT(button), "clicked", +- G_CALLBACK(close_accounts_cb), dialog); ++ G_CALLBACK(close_accounts_cb), dialog);*/ + + /* Setup some gaim signal handlers. */ + gaim_signal_connect(gaim_connections_get_handle(), "signed-on", |