summaryrefslogtreecommitdiff
path: root/packages/gaim/files/03-blist-dialogs.patch
diff options
context:
space:
mode:
Diffstat (limited to 'packages/gaim/files/03-blist-dialogs.patch')
-rw-r--r--packages/gaim/files/03-blist-dialogs.patch240
1 files changed, 240 insertions, 0 deletions
diff --git a/packages/gaim/files/03-blist-dialogs.patch b/packages/gaim/files/03-blist-dialogs.patch
new file mode 100644
index 0000000000..62d4710d46
--- /dev/null
+++ b/packages/gaim/files/03-blist-dialogs.patch
@@ -0,0 +1,240 @@
+Identiske underkataloger: src2/CVS og src/CVS
+Identiske underkataloger: src2/.deps og src/.deps
+Index: gaim/src/gtkblist.c
+===================================================================
+--- gaim.orig/src/gtkblist.c 2005-08-19 21:57:30.272074856 +0200
++++ gaim/src/gtkblist.c 2005-08-19 21:57:42.030287336 +0200
+@@ -825,6 +825,15 @@
+ joinchat_set_sensitive_if_input_cb(NULL, data);
+
+ gtk_widget_show_all(data->entries_box);
++
++ GList* children;
++ children = GTK_BOX(data->entries_box)->children;
++ while (children)
++ {
++ //Let the prilabel handle the maxsize
++ gtk_widget_set_size_request(((GtkBoxChild*)(children->data))->widget, 0, -1);
++ children = children->next;
++ }
+ }
+
+ static void
+@@ -916,12 +925,26 @@
+ #else
+ vbox = GTK_DIALOG(data->window)->vbox;
+ #endif
++
++ //Make a scrollview to accomodate it all
++ sw = gtk_scrolled_window_new(NULL, NULL);
++ gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(sw),
++ GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC);
++ gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(sw),
++ GTK_SHADOW_NONE);
++ gtk_widget_set_size_request(sw, -1, 200);
++ gtk_box_pack_start(GTK_BOX(vbox), sw, TRUE, TRUE, 0);
++ gtk_widget_show(sw);
++
++ vbox = gtk_vbox_new(FALSE, GAIM_HIG_BORDER);
++ gtk_scrolled_window_add_with_viewport(GTK_SCROLLED_WINDOW(sw), vbox);
+
+ label = gtk_label_new(_("Please enter the appropriate information "
+ "about the chat you would like to join.\n"));
+ gtk_label_set_line_wrap(GTK_LABEL(label), TRUE);
+ gtk_misc_set_alignment(GTK_MISC(label), 0, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), label, FALSE, FALSE, 0);
++ pri_label = label;
+
+ rowbox = gtk_hbox_new(FALSE, GAIM_HIG_BORDER);
+ gtk_box_pack_start(GTK_BOX(vbox), rowbox, TRUE, TRUE, 0);
+@@ -955,6 +978,22 @@
+ g_object_unref(data->sg);
+
+ gtk_widget_show_all(data->window);
++
++ //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(data->window), &w, &h);
++
++ // Window_border Scrollbar (FFH)
++ w = w - GAIM_HIG_BORDER * 2 - GAIM_HIG_BORDER * 4;
++ gtk_widget_set_size_request(GTK_WIDGET(pri_label), w, -1);
++
++ //Let the prilabel handle the maxsize
++ gtk_widget_set_size_request(GTK_WIDGET(data->account_menu), 0, -1);
++ gtk_widget_set_size_request(GTK_WIDGET(data->entries_box), 0, -1);
+ }
+
+ static void gtk_blist_row_expanded_cb(GtkTreeView *tv, GtkTreeIter *iter, GtkTreePath *path, gpointer user_data) {
+@@ -4364,6 +4403,19 @@
+ vbox = GTK_DIALOG(data->window)->vbox;
+ #endif
+
++ //Make a scrollview to accomodate it all
++ sw = gtk_scrolled_window_new(NULL, NULL);
++ gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(sw),
++ GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC);
++ gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(sw),
++ GTK_SHADOW_NONE);
++ gtk_widget_set_size_request(sw, -1, 200);
++ gtk_box_pack_start(GTK_BOX(vbox), sw, TRUE, TRUE, 0);
++ gtk_widget_show(sw);
++
++ vbox = gtk_vbox_new(FALSE, GAIM_HIG_BORDER);
++ gtk_scrolled_window_add_with_viewport(GTK_SCROLLED_WINDOW(sw), vbox);
++
+ label = gtk_label_new(
+ _("Please enter the screen name of the person you would like "
+ "to add to your buddy list. You may optionally enter an alias, "
+@@ -4374,6 +4426,7 @@
+ gtk_label_set_line_wrap(GTK_LABEL(label), TRUE);
+ gtk_misc_set_alignment(GTK_MISC(label), 0, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), label, FALSE, FALSE, 0);
++ pri_label = label;
+
+ hbox = gtk_hbox_new(FALSE, GAIM_HIG_BOX_SPACE);
+ gtk_container_add(GTK_CONTAINER(vbox), hbox);
+@@ -4446,6 +4499,25 @@
+
+ if (group != NULL)
+ gtk_entry_set_text(GTK_ENTRY(GTK_COMBO(data->combo)->entry), group);
++
++ //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, field_labels_w;
++ gtk_window_get_size(GTK_WINDOW(data->window), &w, &h);
++ field_labels_w = label->allocation.width + GAIM_HIG_BORDER*2; //The width of the largest field-label
++
++ // Window_border Scrollbar (FFH)
++ w = w - GAIM_HIG_BORDER * 2 - GAIM_HIG_BORDER * 4;
++ gtk_widget_set_size_request(GTK_WIDGET(pri_label), w, -1);
++ //Set the size of the input fields
++ gtk_widget_set_size_request(GTK_WIDGET(data->entry), w-field_labels_w, -1);
++ gtk_widget_set_size_request(GTK_WIDGET(data->entry_for_alias), w-field_labels_w, -1);
++ gtk_widget_set_size_request(GTK_WIDGET(data->combo), w-field_labels_w, -1);
++ gtk_widget_set_size_request(GTK_WIDGET(data->account_box), w-field_labels_w, -1);
++
+ }
+
+ static void
+@@ -4572,6 +4644,9 @@
+ GHashTable *defaults = NULL;
+ struct proto_chat_entry *pce;
+ gboolean focus = TRUE;
++ GtkWidget *label;
++ GtkWidget *rowbox;
++ GtkWidget *input;
+
+ g_return_if_fail(data->account != NULL);
+
+@@ -4596,10 +4671,6 @@
+
+ for (tmp = list; tmp; tmp = tmp->next)
+ {
+- GtkWidget *label;
+- GtkWidget *rowbox;
+- GtkWidget *input;
+-
+ pce = tmp->data;
+
+ rowbox = gtk_hbox_new(FALSE, 5);
+@@ -4657,6 +4728,15 @@
+ addchat_set_sensitive_if_input_cb(NULL, data);
+
+ gtk_widget_show_all(data->entries_box);
++
++ GList* children;
++ children = GTK_BOX(data->entries_box)->children;
++ while (children)
++ {
++ //Let the prilabel handle the maxsize
++ gtk_widget_set_size_request(((GtkBoxChild*)(children->data))->widget, 0, -1);
++ children = children->next;
++ }
+ }
+
+ static void
+@@ -4759,6 +4839,19 @@
+ vbox = GTK_DIALOG(data->window)->vbox;
+ #endif
+
++ //Make a scrollview to accomodate it all
++ sw = gtk_scrolled_window_new(NULL, NULL);
++ gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(sw),
++ GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC);
++ gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(sw),
++ GTK_SHADOW_NONE);
++ gtk_widget_set_size_request(sw, -1, 200);
++ gtk_box_pack_start(GTK_BOX(vbox), sw, TRUE, TRUE, 0);
++ gtk_widget_show(sw);
++
++ vbox = gtk_vbox_new(FALSE, GAIM_HIG_BORDER);
++ gtk_scrolled_window_add_with_viewport(GTK_SCROLLED_WINDOW(sw), vbox);
++
+ label = gtk_label_new(
+ _("Please enter an alias, and the appropriate information "
+ "about the chat you would like to add to your buddy list.\n"));
+@@ -4766,7 +4859,8 @@
+ gtk_label_set_line_wrap(GTK_LABEL(label), TRUE);
+ gtk_misc_set_alignment(GTK_MISC(label), 0, 0);
+ gtk_box_pack_start(GTK_BOX(vbox), label, FALSE, FALSE, 0);
+-
++ pri_label = label;
++
+ rowbox = gtk_hbox_new(FALSE, 5);
+ gtk_box_pack_start(GTK_BOX(vbox), rowbox, FALSE, FALSE, 0);
+
+@@ -4825,6 +4919,24 @@
+ G_CALLBACK(add_chat_resp_cb), data);
+
+ gtk_widget_show_all(data->window);
++
++ //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 the label accordingly
++ int w, h;
++ gtk_window_get_size(GTK_WINDOW(data->window), &w, &h);
++
++ // Window_border Scrollbar (FFH)
++ w = w - GAIM_HIG_BORDER * 2 - GAIM_HIG_BORDER * 4;
++ gtk_widget_set_size_request(GTK_WIDGET(pri_label), w, -1);
++ //Let the prilabel handle the maxsize
++ gtk_widget_set_size_request(GTK_WIDGET(data->account_menu), 0, -1);
++ gtk_widget_set_size_request(GTK_WIDGET(data->entries_box), 0, -1);
++ gtk_widget_set_size_request(GTK_WIDGET(data->alias_entry), 0, -1);
++ gtk_widget_set_size_request(GTK_WIDGET(data->group_combo), 0, -1);
++
+ }
+
+ static void
+Index: gaim/src/gtkrequest.c
+===================================================================
+--- gaim.orig/src/gtkrequest.c 2005-08-19 21:57:30.273074704 +0200
++++ gaim/src/gtkrequest.c 2005-08-19 21:58:05.468724152 +0200
+@@ -650,6 +650,17 @@
+ /* Show everything. */
+ gtk_widget_show_all(dialog);
+
++ //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(dialog), &w, &h);
++
++ w = w - GAIM_HIG_BORDER * 2;
++ gtk_widget_set_size_request(GTK_WIDGET(label), w, -1);
++
+ return data;
+ }
+