| 1014 if (pixbuf != NULL) |
1014 if (pixbuf != NULL) |
| 1015 g_object_unref(pixbuf); |
1015 g_object_unref(pixbuf); |
| 1016 } |
1016 } |
| 1017 } |
1017 } |
| 1018 |
1018 |
| 1019 static gboolean |
1019 static void |
| 1020 pidgin_status_box_regenerate_real(PidginStatusBox *status_box) |
1020 pidgin_status_box_regenerate(PidginStatusBox *status_box) |
| 1021 { |
1021 { |
| 1022 GdkPixbuf *pixbuf, *pixbuf2, *pixbuf3, *pixbuf4, *pixbuf5; |
1022 GdkPixbuf *pixbuf, *pixbuf2, *pixbuf3, *pixbuf4, *pixbuf5; |
| 1023 GtkIconSize icon_size; |
1023 GtkIconSize icon_size; |
| 1024 |
1024 |
| 1025 icon_size = gtk_icon_size_from_name(PIDGIN_ICON_SIZE_TANGO_EXTRA_SMALL); |
1025 icon_size = gtk_icon_size_from_name(PIDGIN_ICON_SIZE_TANGO_EXTRA_SMALL); |
| 1079 update_to_reflect_account_status(status_box, status_box->account, |
1079 update_to_reflect_account_status(status_box, status_box->account, |
| 1080 purple_account_get_active_status(status_box->account)); |
1080 purple_account_get_active_status(status_box->account)); |
| 1081 } |
1081 } |
| 1082 gtk_tree_view_set_model(GTK_TREE_VIEW(status_box->tree_view), GTK_TREE_MODEL(status_box->dropdown_store)); |
1082 gtk_tree_view_set_model(GTK_TREE_VIEW(status_box->tree_view), GTK_TREE_MODEL(status_box->dropdown_store)); |
| 1083 gtk_tree_view_set_search_column(GTK_TREE_VIEW(status_box->tree_view), TEXT_COLUMN); |
1083 gtk_tree_view_set_search_column(GTK_TREE_VIEW(status_box->tree_view), TEXT_COLUMN); |
| 1084 |
|
| 1085 return FALSE; |
|
| 1086 } |
|
| 1087 |
|
| 1088 static void |
|
| 1089 pidgin_status_box_regenerate(PidginStatusBox *status_box) |
|
| 1090 { |
|
| 1091 /* we have to do this in a timeout, so we avoid recursing |
|
| 1092 * to infinity (and beyond) */ |
|
| 1093 purple_timeout_add(0, (GSourceFunc)pidgin_status_box_regenerate_real, status_box); |
|
| 1094 } |
1084 } |
| 1095 |
1085 |
| 1096 static gboolean combo_box_scroll_event_cb(GtkWidget *w, GdkEventScroll *event, GtkIMHtml *imhtml) |
1086 static gboolean combo_box_scroll_event_cb(GtkWidget *w, GdkEventScroll *event, GtkIMHtml *imhtml) |
| 1097 { |
1087 { |
| 1098 pidgin_status_box_popup(PIDGIN_STATUS_BOX(w)); |
1088 pidgin_status_box_popup(PIDGIN_STATUS_BOX(w)); |
| 1099 return TRUE; |
1089 return TRUE; |
| 1100 } |
1090 } |
| 1101 |
1091 |
| 1102 static gboolean imhtml_scroll_event_cb(GtkWidget *w, GdkEventScroll *event, GtkIMHtml *imhtml) |
1092 static gboolean imhtml_scroll_event_cb(GtkWidget *w, GdkEventScroll *event, GtkIMHtml *imhtml) |
| 1103 { |
1093 { |