| 956 |
956 |
| 957 gtk_box_set_spacing(GTK_BOX(vbox), PIDGIN_HIG_BORDER); |
957 gtk_box_set_spacing(GTK_BOX(vbox), PIDGIN_HIG_BORDER); |
| 958 gtk_container_set_border_width(GTK_CONTAINER(vbox), PIDGIN_HIG_BOX_SPACE); |
958 gtk_container_set_border_width(GTK_CONTAINER(vbox), PIDGIN_HIG_BOX_SPACE); |
| 959 |
959 |
| 960 /* Setup the inner hbox and put the dialog's icon in it. */ |
960 /* Setup the inner hbox and put the dialog's icon in it. */ |
| 961 hbox = gtk_hbox_new(FALSE, PIDGIN_HIG_BORDER); |
961 hbox = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, PIDGIN_HIG_BORDER); |
| 962 gtk_container_add(GTK_CONTAINER(vbox), hbox); |
962 gtk_container_add(GTK_CONTAINER(vbox), hbox); |
| 963 gtk_box_pack_start(GTK_BOX(hbox), img, FALSE, FALSE, 0); |
963 gtk_box_pack_start(GTK_BOX(hbox), img, FALSE, FALSE, 0); |
| 964 gtk_misc_set_alignment(GTK_MISC(img), 0, 0); |
964 gtk_misc_set_alignment(GTK_MISC(img), 0, 0); |
| 965 |
965 |
| 966 /* Setup the right vbox. */ |
966 /* Setup the right vbox. */ |
| 967 vbox = gtk_vbox_new(FALSE, 0); |
967 vbox = gtk_box_new(GTK_ORIENTATION_VERTICAL, 0); |
| 968 gtk_container_add(GTK_CONTAINER(hbox), vbox); |
968 gtk_container_add(GTK_CONTAINER(hbox), vbox); |
| 969 |
969 |
| 970 /* Put our happy label in it. */ |
970 /* Put our happy label in it. */ |
| 971 label = gtk_label_new(_("Please enter the name of the user you wish " |
971 label = gtk_label_new(_("Please enter the name of the user you wish " |
| 972 "to invite, along with an optional invite " |
972 "to invite, along with an optional invite " |
| 975 gtk_label_set_line_wrap(GTK_LABEL(label), TRUE); |
975 gtk_label_set_line_wrap(GTK_LABEL(label), TRUE); |
| 976 gtk_misc_set_alignment(GTK_MISC(label), 0, 0); |
976 gtk_misc_set_alignment(GTK_MISC(label), 0, 0); |
| 977 gtk_box_pack_start(GTK_BOX(vbox), label, FALSE, FALSE, 0); |
977 gtk_box_pack_start(GTK_BOX(vbox), label, FALSE, FALSE, 0); |
| 978 |
978 |
| 979 /* hbox for the table, and to give it some spacing on the left. */ |
979 /* hbox for the table, and to give it some spacing on the left. */ |
| 980 hbox = gtk_hbox_new(FALSE, PIDGIN_HIG_BOX_SPACE); |
980 hbox = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, PIDGIN_HIG_BOX_SPACE); |
| 981 gtk_container_add(GTK_CONTAINER(vbox), hbox); |
981 gtk_container_add(GTK_CONTAINER(vbox), hbox); |
| 982 |
982 |
| 983 /* Setup the table we're going to use to lay stuff out. */ |
983 /* Setup the table we're going to use to lay stuff out. */ |
| 984 table = gtk_table_new(2, 2, FALSE); |
984 table = gtk_table_new(2, 2, FALSE); |
| 985 gtk_table_set_row_spacings(GTK_TABLE(table), PIDGIN_HIG_BOX_SPACE); |
985 gtk_table_set_row_spacings(GTK_TABLE(table), PIDGIN_HIG_BOX_SPACE); |
| 4006 menuitem = gtk_radio_menu_item_new_with_label(*group, text); |
4006 menuitem = gtk_radio_menu_item_new_with_label(*group, text); |
| 4007 g_free(text); |
4007 g_free(text); |
| 4008 *group = gtk_radio_menu_item_get_group(GTK_RADIO_MENU_ITEM(menuitem)); |
4008 *group = gtk_radio_menu_item_get_group(GTK_RADIO_MENU_ITEM(menuitem)); |
| 4009 |
4009 |
| 4010 /* Do some evil, see some evil, speak some evil. */ |
4010 /* Do some evil, see some evil, speak some evil. */ |
| 4011 box = gtk_hbox_new(FALSE, 0); |
4011 box = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 0); |
| 4012 |
4012 |
| 4013 label = gtk_bin_get_child(GTK_BIN(menuitem)); |
4013 label = gtk_bin_get_child(GTK_BIN(menuitem)); |
| 4014 g_object_ref(label); |
4014 g_object_ref(label); |
| 4015 gtk_container_remove(GTK_CONTAINER(menuitem), label); |
4015 gtk_container_remove(GTK_CONTAINER(menuitem), label); |
| 4016 |
4016 |
| 5046 if (purple_protocol_get_options(protocol) & OPT_PROTO_CHAT_TOPIC) |
5046 if (purple_protocol_get_options(protocol) & OPT_PROTO_CHAT_TOPIC) |
| 5047 { |
5047 { |
| 5048 GtkWidget *hbox, *label; |
5048 GtkWidget *hbox, *label; |
| 5049 PidginChatPane *gtkchat = gtkconv->u.chat; |
5049 PidginChatPane *gtkchat = gtkconv->u.chat; |
| 5050 |
5050 |
| 5051 hbox = gtk_hbox_new(FALSE, PIDGIN_HIG_BOX_SPACE); |
5051 hbox = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, PIDGIN_HIG_BOX_SPACE); |
| 5052 gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); |
5052 gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); |
| 5053 |
5053 |
| 5054 label = gtk_label_new(_("Topic:")); |
5054 label = gtk_label_new(_("Topic:")); |
| 5055 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); |
5055 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); |
| 5056 |
5056 |
| 5111 int ul_width; |
5111 int ul_width; |
| 5112 void *blist_handle = purple_blist_get_handle(); |
5112 void *blist_handle = purple_blist_get_handle(); |
| 5113 PurpleConversation *conv = gtkconv->active_conv; |
5113 PurpleConversation *conv = gtkconv->active_conv; |
| 5114 |
5114 |
| 5115 /* Build the right pane. */ |
5115 /* Build the right pane. */ |
| 5116 lbox = gtk_vbox_new(FALSE, PIDGIN_HIG_BOX_SPACE); |
5116 lbox = gtk_box_new(GTK_ORIENTATION_VERTICAL, PIDGIN_HIG_BOX_SPACE); |
| 5117 gtk_paned_pack2(GTK_PANED(hpaned), lbox, FALSE, TRUE); |
5117 gtk_paned_pack2(GTK_PANED(hpaned), lbox, FALSE, TRUE); |
| 5118 gtk_widget_show(lbox); |
5118 gtk_widget_show(lbox); |
| 5119 |
5119 |
| 5120 /* Setup the label telling how many people are in the room. */ |
5120 /* Setup the label telling how many people are in the room. */ |
| 5121 gtkchat->count = gtk_label_new(_("0 people in room")); |
5121 gtkchat->count = gtk_label_new(_("0 people in room")); |
| 5227 /* Quick Find {{{ */ |
5227 /* Quick Find {{{ */ |
| 5228 static gboolean |
5228 static gboolean |
| 5229 pidgin_conv_end_quickfind(PidginConversation *gtkconv) |
5229 pidgin_conv_end_quickfind(PidginConversation *gtkconv) |
| 5230 { |
5230 { |
| 5231 #if GTK_CHECK_VERSION(3,0,0) |
5231 #if GTK_CHECK_VERSION(3,0,0) |
| 5232 gtk_widget_override_background_color(gtkconv->quickfind_entry, GTK_STATE_FLAG_NORMAL, NULL); |
5232 GtkStyleContext *context = gtk_widget_get_style_context(gtkconv->quickfind_entry); |
| |
5233 gtk_style_context_remove_class(context, "not-found"); |
| 5233 #else |
5234 #else |
| 5234 gtk_widget_modify_base(gtkconv->quickfind_entry, GTK_STATE_NORMAL, NULL); |
5235 gtk_widget_modify_base(gtkconv->quickfind_entry, GTK_STATE_NORMAL, NULL); |
| 5235 #endif |
5236 #endif |
| 5236 |
5237 |
| 5237 webkit_web_view_unmark_text_matches(WEBKIT_WEB_VIEW(gtkconv->webview)); |
5238 webkit_web_view_unmark_text_matches(WEBKIT_WEB_VIEW(gtkconv->webview)); |
| 5247 switch (event->keyval) { |
5248 switch (event->keyval) { |
| 5248 case GDK_KEY_Return: |
5249 case GDK_KEY_Return: |
| 5249 case GDK_KEY_KP_Enter: |
5250 case GDK_KEY_KP_Enter: |
| 5250 if (webkit_web_view_search_text(WEBKIT_WEB_VIEW(gtkconv->webview), gtk_entry_get_text(GTK_ENTRY(entry)), FALSE, TRUE, TRUE)) { |
5251 if (webkit_web_view_search_text(WEBKIT_WEB_VIEW(gtkconv->webview), gtk_entry_get_text(GTK_ENTRY(entry)), FALSE, TRUE, TRUE)) { |
| 5251 #if GTK_CHECK_VERSION(3,0,0) |
5252 #if GTK_CHECK_VERSION(3,0,0) |
| 5252 gtk_widget_override_background_color(gtkconv->quickfind_entry, GTK_STATE_FLAG_NORMAL, NULL); |
5253 GtkStyleContext *context = gtk_widget_get_style_context(gtkconv->quickfind_entry); |
| |
5254 gtk_style_context_remove_class(context, "not-found"); |
| 5253 #else |
5255 #else |
| 5254 gtk_widget_modify_base(gtkconv->quickfind_entry, GTK_STATE_NORMAL, NULL); |
5256 gtk_widget_modify_base(gtkconv->quickfind_entry, GTK_STATE_NORMAL, NULL); |
| 5255 #endif |
5257 #endif |
| 5256 } else { |
5258 } else { |
| 5257 #if GTK_CHECK_VERSION(3,0,0) |
5259 #if GTK_CHECK_VERSION(3,0,0) |
| 5258 GdkRGBA col; |
5260 GtkStyleContext *context = gtk_widget_get_style_context(gtkconv->quickfind_entry); |
| 5259 col.red = 1.0; |
5261 gtk_style_context_add_class(context, "not-found"); |
| 5260 col.green = 0xafff/(double)0xffff; |
|
| 5261 col.blue = 0xafff/(double)0xffff; |
|
| 5262 col.alpha = 1.0; |
|
| 5263 gtk_widget_override_background_color(gtkconv->quickfind_entry, GTK_STATE_FLAG_NORMAL, &col); |
|
| 5264 #else |
5262 #else |
| 5265 GdkColor col; |
5263 GdkColor col; |
| 5266 col.red = 0xffff; |
5264 col.red = 0xffff; |
| 5267 col.green = 0xafff; |
5265 col.green = 0xafff; |
| 5268 col.blue = 0xafff; |
5266 col.blue = 0xafff; |
| 5280 } |
5278 } |
| 5281 |
5279 |
| 5282 static void |
5280 static void |
| 5283 pidgin_conv_setup_quickfind(PidginConversation *gtkconv, GtkWidget *container) |
5281 pidgin_conv_setup_quickfind(PidginConversation *gtkconv, GtkWidget *container) |
| 5284 { |
5282 { |
| 5285 GtkWidget *widget = gtk_hbox_new(FALSE, 0); |
5283 GtkWidget *widget = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 0); |
| 5286 GtkWidget *label, *entry, *close; |
5284 GtkWidget *label, *entry, *close; |
| |
5285 #if GTK_CHECK_VERSION(3,0,0) |
| |
5286 GtkStyleContext *context; |
| |
5287 GtkCssProvider *filter_css; |
| |
5288 const gchar filter_style[] = |
| |
5289 ".not-found {" |
| |
5290 "color: @error_fg_color;" |
| |
5291 "text-shadow: 0 1px @error_text_shadow;" |
| |
5292 "background-image: none;" |
| |
5293 "background-color: @error_bg_color;" |
| |
5294 "}"; |
| |
5295 #endif |
| 5287 |
5296 |
| 5288 gtk_box_pack_start(GTK_BOX(container), widget, FALSE, FALSE, 0); |
5297 gtk_box_pack_start(GTK_BOX(container), widget, FALSE, FALSE, 0); |
| 5289 |
5298 |
| 5290 close = pidgin_create_small_button(gtk_label_new("×")); |
5299 close = pidgin_create_small_button(gtk_label_new("×")); |
| 5291 gtk_box_pack_start(GTK_BOX(widget), close, FALSE, FALSE, 0); |
5300 gtk_box_pack_start(GTK_BOX(widget), close, FALSE, FALSE, 0); |
| 5294 label = gtk_label_new(_("Find:")); |
5303 label = gtk_label_new(_("Find:")); |
| 5295 gtk_box_pack_start(GTK_BOX(widget), label, FALSE, FALSE, 10); |
5304 gtk_box_pack_start(GTK_BOX(widget), label, FALSE, FALSE, 10); |
| 5296 |
5305 |
| 5297 entry = gtk_entry_new(); |
5306 entry = gtk_entry_new(); |
| 5298 gtk_box_pack_start(GTK_BOX(widget), entry, TRUE, TRUE, 0); |
5307 gtk_box_pack_start(GTK_BOX(widget), entry, TRUE, TRUE, 0); |
| |
5308 #if GTK_CHECK_VERSION(3,0,0) |
| |
5309 filter_css = gtk_css_provider_new(); |
| |
5310 gtk_css_provider_load_from_data(filter_css, filter_style, -1, NULL); |
| |
5311 context = gtk_widget_get_style_context(entry); |
| |
5312 gtk_style_context_add_provider(context, |
| |
5313 GTK_STYLE_PROVIDER(filter_css), |
| |
5314 GTK_STYLE_PROVIDER_PRIORITY_APPLICATION); |
| |
5315 #endif |
| 5299 |
5316 |
| 5300 gtkconv->quickfind_entry = entry; |
5317 gtkconv->quickfind_entry = entry; |
| 5301 gtkconv->quickfind_container = widget; |
5318 gtkconv->quickfind_container = widget; |
| 5302 |
5319 |
| 5303 /* Hook to signals and stuff */ |
5320 /* Hook to signals and stuff */ |
| 5553 PurpleBuddy *buddy; |
5570 PurpleBuddy *buddy; |
| 5554 gboolean chat = PURPLE_IS_CHAT_CONVERSATION(conv); |
5571 gboolean chat = PURPLE_IS_CHAT_CONVERSATION(conv); |
| 5555 int buddyicon_size = 0; |
5572 int buddyicon_size = 0; |
| 5556 |
5573 |
| 5557 /* Setup the top part of the pane */ |
5574 /* Setup the top part of the pane */ |
| 5558 vbox = gtk_vbox_new(FALSE, PIDGIN_HIG_BOX_SPACE); |
5575 vbox = gtk_box_new(GTK_ORIENTATION_VERTICAL, PIDGIN_HIG_BOX_SPACE); |
| 5559 gtk_widget_show(vbox); |
5576 gtk_widget_show(vbox); |
| 5560 |
5577 |
| 5561 /* Setup the info pane */ |
5578 /* Setup the info pane */ |
| 5562 event_box = gtk_event_box_new(); |
5579 event_box = gtk_event_box_new(); |
| 5563 gtk_event_box_set_visible_window(GTK_EVENT_BOX(event_box), FALSE); |
5580 gtk_event_box_set_visible_window(GTK_EVENT_BOX(event_box), FALSE); |
| 5564 gtk_widget_show(event_box); |
5581 gtk_widget_show(event_box); |
| 5565 gtkconv->infopane_hbox = gtk_hbox_new(FALSE, 0); |
5582 gtkconv->infopane_hbox = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 0); |
| 5566 gtk_box_pack_start(GTK_BOX(vbox), event_box, FALSE, FALSE, 0); |
5583 gtk_box_pack_start(GTK_BOX(vbox), event_box, FALSE, FALSE, 0); |
| 5567 gtk_container_add(GTK_CONTAINER(event_box), gtkconv->infopane_hbox); |
5584 gtk_container_add(GTK_CONTAINER(event_box), gtkconv->infopane_hbox); |
| 5568 gtk_widget_show(gtkconv->infopane_hbox); |
5585 gtk_widget_show(gtkconv->infopane_hbox); |
| 5569 gtk_widget_add_events(event_box, |
5586 gtk_widget_add_events(event_box, |
| 5570 GDK_POINTER_MOTION_MASK | GDK_LEAVE_NOTIFY_MASK); |
5587 GDK_POINTER_MOTION_MASK | GDK_LEAVE_NOTIFY_MASK); |
| 5590 sized for chat windows. The correct fix is to put an icon in the chat |
5607 sized for chat windows. The correct fix is to put an icon in the chat |
| 5591 window as well, because that would make "Set Custom Icon" consistent |
5608 window as well, because that would make "Set Custom Icon" consistent |
| 5592 for both the buddy list and the chat window, but PidginConversation |
5609 for both the buddy list and the chat window, but PidginConversation |
| 5593 is pretty much stuck until 3.0. */ |
5610 is pretty much stuck until 3.0. */ |
| 5594 GtkWidget *sizing_vbox; |
5611 GtkWidget *sizing_vbox; |
| 5595 sizing_vbox = gtk_vbox_new(FALSE, 0); |
5612 sizing_vbox = gtk_box_new(GTK_ORIENTATION_VERTICAL, 0); |
| 5596 gtk_widget_set_size_request(sizing_vbox, -1, BUDDYICON_SIZE_MIN); |
5613 gtk_widget_set_size_request(sizing_vbox, -1, BUDDYICON_SIZE_MIN); |
| 5597 gtk_box_pack_start(GTK_BOX(gtkconv->infopane_hbox), sizing_vbox, FALSE, FALSE, 0); |
5614 gtk_box_pack_start(GTK_BOX(gtkconv->infopane_hbox), sizing_vbox, FALSE, FALSE, 0); |
| 5598 gtk_widget_show(sizing_vbox); |
5615 gtk_widget_show(sizing_vbox); |
| 5599 } |
5616 } |
| 5600 else { |
5617 else { |
| 5601 gtkconv->u.im->icon_container = gtk_vbox_new(FALSE, 0); |
5618 gtkconv->u.im->icon_container = gtk_box_new(GTK_ORIENTATION_VERTICAL, 0); |
| 5602 |
5619 |
| 5603 if ((buddy = purple_blist_find_buddy(purple_conversation_get_account(conv), |
5620 if ((buddy = purple_blist_find_buddy(purple_conversation_get_account(conv), |
| 5604 purple_conversation_get_name(conv))) != NULL) { |
5621 purple_conversation_get_name(conv))) != NULL) { |
| 5605 PurpleContact *contact = purple_buddy_get_contact(buddy); |
5622 PurpleContact *contact = purple_buddy_get_contact(buddy); |
| 5606 if (contact) { |
5623 if (contact) { |
| 5653 |
5670 |
| 5654 /* Add the topic */ |
5671 /* Add the topic */ |
| 5655 setup_chat_topic(gtkconv, vbox); |
5672 setup_chat_topic(gtkconv, vbox); |
| 5656 |
5673 |
| 5657 /* Add the gtkwebview frame */ |
5674 /* Add the gtkwebview frame */ |
| 5658 hpaned = gtk_hpaned_new(); |
5675 hpaned = gtk_paned_new(GTK_ORIENTATION_HORIZONTAL); |
| 5659 gtk_box_pack_start(GTK_BOX(vbox), hpaned, TRUE, TRUE, 0); |
5676 gtk_box_pack_start(GTK_BOX(vbox), hpaned, TRUE, TRUE, 0); |
| 5660 gtk_widget_show(hpaned); |
5677 gtk_widget_show(hpaned); |
| 5661 gtk_paned_pack1(GTK_PANED(hpaned), frame, TRUE, TRUE); |
5678 gtk_paned_pack1(GTK_PANED(hpaned), frame, TRUE, TRUE); |
| 5662 |
5679 |
| 5663 /* Now add the userlist */ |
5680 /* Now add the userlist */ |
| 5677 g_signal_connect(G_OBJECT(gtkconv->webview), "key_release_event", |
5694 g_signal_connect(G_OBJECT(gtkconv->webview), "key_release_event", |
| 5678 G_CALLBACK(refocus_entry_cb), gtkconv); |
5695 G_CALLBACK(refocus_entry_cb), gtkconv); |
| 5679 |
5696 |
| 5680 pidgin_conv_setup_quickfind(gtkconv, vbox); |
5697 pidgin_conv_setup_quickfind(gtkconv, vbox); |
| 5681 |
5698 |
| 5682 gtkconv->lower_hbox = gtk_hbox_new(FALSE, PIDGIN_HIG_BOX_SPACE); |
5699 gtkconv->lower_hbox = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, PIDGIN_HIG_BOX_SPACE); |
| 5683 gtk_box_pack_start(GTK_BOX(vbox), gtkconv->lower_hbox, FALSE, FALSE, 0); |
5700 gtk_box_pack_start(GTK_BOX(vbox), gtkconv->lower_hbox, FALSE, FALSE, 0); |
| 5684 gtk_widget_show(gtkconv->lower_hbox); |
5701 gtk_widget_show(gtkconv->lower_hbox); |
| 5685 |
5702 |
| 5686 /* Setup the entry widget and all signals */ |
5703 /* Setup the entry widget and all signals */ |
| 5687 frame = pidgin_create_webview(TRUE, >kconv->entry, NULL); |
5704 frame = pidgin_create_webview(TRUE, >kconv->entry, NULL); |
| 6042 #endif |
6059 #endif |
| 6043 |
6060 |
| 6044 g_signal_connect(gtkconv->webview, "style-set", G_CALLBACK(set_typing_font), gtkconv); |
6061 g_signal_connect(gtkconv->webview, "style-set", G_CALLBACK(set_typing_font), gtkconv); |
| 6045 |
6062 |
| 6046 /* Setup the container for the tab. */ |
6063 /* Setup the container for the tab. */ |
| 6047 gtkconv->tab_cont = tab_cont = gtk_vbox_new(FALSE, PIDGIN_HIG_BOX_SPACE); |
6064 gtkconv->tab_cont = tab_cont = gtk_box_new(GTK_ORIENTATION_VERTICAL, PIDGIN_HIG_BOX_SPACE); |
| 6048 g_object_set_data(G_OBJECT(tab_cont), "PidginConversation", gtkconv); |
6065 g_object_set_data(G_OBJECT(tab_cont), "PidginConversation", gtkconv); |
| 6049 gtk_container_set_border_width(GTK_CONTAINER(tab_cont), PIDGIN_HIG_BOX_SPACE); |
6066 gtk_container_set_border_width(GTK_CONTAINER(tab_cont), PIDGIN_HIG_BOX_SPACE); |
| 6050 gtk_container_add(GTK_CONTAINER(tab_cont), pane); |
6067 gtk_container_add(GTK_CONTAINER(tab_cont), pane); |
| 6051 gtk_widget_show(pane); |
6068 gtk_widget_show(pane); |
| 6052 |
6069 |
| 9162 gtk_container_set_border_width(GTK_CONTAINER(vbox), 6); |
9179 gtk_container_set_border_width(GTK_CONTAINER(vbox), 6); |
| 9163 |
9180 |
| 9164 img = gtk_image_new_from_stock(PIDGIN_STOCK_DIALOG_WARNING, |
9181 img = gtk_image_new_from_stock(PIDGIN_STOCK_DIALOG_WARNING, |
| 9165 gtk_icon_size_from_name(PIDGIN_ICON_SIZE_TANGO_HUGE)); |
9182 gtk_icon_size_from_name(PIDGIN_ICON_SIZE_TANGO_HUGE)); |
| 9166 /* Setup the inner hbox and put the dialog's icon in it. */ |
9183 /* Setup the inner hbox and put the dialog's icon in it. */ |
| 9167 hbox = gtk_hbox_new(FALSE, 12); |
9184 hbox = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 12); |
| 9168 gtk_container_add(GTK_CONTAINER(vbox), hbox); |
9185 gtk_container_add(GTK_CONTAINER(vbox), hbox); |
| 9169 gtk_box_pack_start(GTK_BOX(hbox), img, FALSE, FALSE, 0); |
9186 gtk_box_pack_start(GTK_BOX(hbox), img, FALSE, FALSE, 0); |
| 9170 gtk_misc_set_alignment(GTK_MISC(img), 0, 0); |
9187 gtk_misc_set_alignment(GTK_MISC(img), 0, 0); |
| 9171 |
9188 |
| 9172 /* Setup the right vbox. */ |
9189 /* Setup the right vbox. */ |
| 9173 vbox = gtk_vbox_new(FALSE, 12); |
9190 vbox = gtk_box_new(GTK_ORIENTATION_VERTICAL, 12); |
| 9174 gtk_container_add(GTK_CONTAINER(hbox), vbox); |
9191 gtk_container_add(GTK_CONTAINER(hbox), vbox); |
| 9175 |
9192 |
| 9176 label = gtk_label_new(_("You have unread messages. Are you sure you want to close the window?")); |
9193 label = gtk_label_new(_("You have unread messages. Are you sure you want to close the window?")); |
| 9177 gtk_widget_set_size_request(label, 350, -1); |
9194 gtk_widget_set_size_request(label, 350, -1); |
| 9178 gtk_label_set_line_wrap(GTK_LABEL(label), TRUE); |
9195 gtk_label_set_line_wrap(GTK_LABEL(label), TRUE); |
| 10304 g_signal_connect(G_OBJECT(win->notebook), "button_press_event", |
10321 g_signal_connect(G_OBJECT(win->notebook), "button_press_event", |
| 10305 G_CALLBACK(notebook_press_cb), win); |
10322 G_CALLBACK(notebook_press_cb), win); |
| 10306 g_signal_connect(G_OBJECT(win->notebook), "button_release_event", |
10323 g_signal_connect(G_OBJECT(win->notebook), "button_release_event", |
| 10307 G_CALLBACK(notebook_release_cb), win); |
10324 G_CALLBACK(notebook_release_cb), win); |
| 10308 |
10325 |
| 10309 testidea = gtk_vbox_new(FALSE, 0); |
10326 testidea = gtk_box_new(GTK_ORIENTATION_VERTICAL, 0); |
| 10310 |
10327 |
| 10311 /* Setup the menubar. */ |
10328 /* Setup the menubar. */ |
| 10312 menubar = setup_menubar(win); |
10329 menubar = setup_menubar(win); |
| 10313 gtk_box_pack_start(GTK_BOX(testidea), menubar, FALSE, TRUE, 0); |
10330 gtk_box_pack_start(GTK_BOX(testidea), menubar, FALSE, TRUE, 0); |
| 10314 |
10331 |
| 10496 #if GTK_CHECK_VERSION(3,0,0) |
10513 #if GTK_CHECK_VERSION(3,0,0) |
| 10497 set_default_tab_colors(gtkconv->tab_label); |
10514 set_default_tab_colors(gtkconv->tab_label); |
| 10498 #endif |
10515 #endif |
| 10499 gtk_widget_set_name(gtkconv->tab_label, "tab-label"); |
10516 gtk_widget_set_name(gtkconv->tab_label, "tab-label"); |
| 10500 |
10517 |
| 10501 gtkconv->menu_tabby = gtk_hbox_new(FALSE, PIDGIN_HIG_BOX_SPACE); |
10518 gtkconv->menu_tabby = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, PIDGIN_HIG_BOX_SPACE); |
| 10502 gtkconv->menu_label = gtk_label_new(tmp_lab); |
10519 gtkconv->menu_label = gtk_label_new(tmp_lab); |
| 10503 gtk_box_pack_start(GTK_BOX(gtkconv->menu_tabby), gtkconv->menu_icon, FALSE, FALSE, 0); |
10520 gtk_box_pack_start(GTK_BOX(gtkconv->menu_tabby), gtkconv->menu_icon, FALSE, FALSE, 0); |
| 10504 |
10521 |
| 10505 gtk_widget_show_all(gtkconv->menu_icon); |
10522 gtk_widget_show_all(gtkconv->menu_icon); |
| 10506 |
10523 |
| 10571 gtk_misc_set_alignment(GTK_MISC(gtkconv->tab_label), 0.00, 0.5); |
10588 gtk_misc_set_alignment(GTK_MISC(gtkconv->tab_label), 0.00, 0.5); |
| 10572 gtk_misc_set_padding(GTK_MISC(gtkconv->tab_label), 4, 0); |
10589 gtk_misc_set_padding(GTK_MISC(gtkconv->tab_label), 4, 0); |
| 10573 #endif |
10590 #endif |
| 10574 |
10591 |
| 10575 if (angle) |
10592 if (angle) |
| 10576 gtkconv->tabby = gtk_vbox_new(FALSE, PIDGIN_HIG_BOX_SPACE); |
10593 gtkconv->tabby = gtk_box_new(GTK_ORIENTATION_VERTICAL, PIDGIN_HIG_BOX_SPACE); |
| 10577 else |
10594 else |
| 10578 gtkconv->tabby = gtk_hbox_new(FALSE, PIDGIN_HIG_BOX_SPACE); |
10595 gtkconv->tabby = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, PIDGIN_HIG_BOX_SPACE); |
| 10579 gtk_widget_set_name(gtkconv->tabby, "tab-container"); |
10596 gtk_widget_set_name(gtkconv->tabby, "tab-container"); |
| 10580 |
10597 |
| 10581 /* select the correct ordering for verticle tabs */ |
10598 /* select the correct ordering for verticle tabs */ |
| 10582 if (angle == 90) { |
10599 if (angle == 90) { |
| 10583 first = gtkconv->close; |
10600 first = gtkconv->close; |