pidgin/gtkdocklet.c

changeset 38433
361c801c4536
parent 38358
30ba44276e74
child 38708
a65157d76fee
equal deleted inserted replaced
38431:71898cf4d20f 38433:361c801c4536
356 if (event->type == GDK_LEAVE_NOTIFY && (event->detail == GDK_NOTIFY_ANCESTOR || 356 if (event->type == GDK_LEAVE_NOTIFY && (event->detail == GDK_NOTIFY_ANCESTOR ||
357 event->detail == GDK_NOTIFY_UNKNOWN)) { 357 event->detail == GDK_NOTIFY_UNKNOWN)) {
358 purple_debug(PURPLE_DEBUG_INFO, "docklet", "menu leave-notify-event\n"); 358 purple_debug(PURPLE_DEBUG_INFO, "docklet", "menu leave-notify-event\n");
359 /* Add some slop so that the menu doesn't annoyingly disappear when mousing around */ 359 /* Add some slop so that the menu doesn't annoyingly disappear when mousing around */
360 if (hide_docklet_timer == 0) { 360 if (hide_docklet_timer == 0) {
361 hide_docklet_timer = purple_timeout_add(500, 361 hide_docklet_timer = g_timeout_add(500,
362 hide_docklet_menu, menu); 362 hide_docklet_menu, menu);
363 } 363 }
364 } else if (event->type == GDK_ENTER_NOTIFY && event->detail == GDK_NOTIFY_ANCESTOR) { 364 } else if (event->type == GDK_ENTER_NOTIFY && event->detail == GDK_NOTIFY_ANCESTOR) {
365 purple_debug(PURPLE_DEBUG_INFO, "docklet", "menu enter-notify-event\n"); 365 purple_debug(PURPLE_DEBUG_INFO, "docklet", "menu enter-notify-event\n");
366 if (hide_docklet_timer != 0) { 366 if (hide_docklet_timer != 0) {
367 /* Cancel the hiding if we reenter */ 367 /* Cancel the hiding if we reenter */
368 368
369 purple_timeout_remove(hide_docklet_timer); 369 g_source_remove(hide_docklet_timer);
370 hide_docklet_timer = 0; 370 hide_docklet_timer = 0;
371 } 371 }
372 } 372 }
373 return FALSE; 373 return FALSE;
374 } 374 }
838 838
839 static gboolean 839 static gboolean
840 docklet_gtk_embedded_cb(GtkWidget *widget, gpointer data) 840 docklet_gtk_embedded_cb(GtkWidget *widget, gpointer data)
841 { 841 {
842 if (embed_timeout) { 842 if (embed_timeout) {
843 purple_timeout_remove(embed_timeout); 843 g_source_remove(embed_timeout);
844 embed_timeout = 0; 844 embed_timeout = 0;
845 } 845 }
846 846
847 if (gtk_status_icon_is_embedded(docklet)) { 847 if (gtk_status_icon_is_embedded(docklet)) {
848 purple_debug_info("docklet", "embedded\n"); 848 purple_debug_info("docklet", "embedded\n");
883 g_return_if_fail(docklet != NULL); 883 g_return_if_fail(docklet != NULL);
884 884
885 pidgin_docklet_remove(); 885 pidgin_docklet_remove();
886 886
887 if (embed_timeout) { 887 if (embed_timeout) {
888 purple_timeout_remove(embed_timeout); 888 g_source_remove(embed_timeout);
889 embed_timeout = 0; 889 embed_timeout = 0;
890 } 890 }
891 891
892 gtk_status_icon_set_visible(docklet, FALSE); 892 gtk_status_icon_set_visible(docklet, FALSE);
893 g_object_unref(G_OBJECT(docklet)); 893 g_object_unref(G_OBJECT(docklet));
931 */ 931 */
932 if (!recreate) { 932 if (!recreate) {
933 pidgin_docklet_embedded(); 933 pidgin_docklet_embedded();
934 #ifndef _WIN32 934 #ifndef _WIN32
935 if (purple_prefs_get_bool(PIDGIN_PREFS_ROOT "/docklet/gtk/embedded")) { 935 if (purple_prefs_get_bool(PIDGIN_PREFS_ROOT "/docklet/gtk/embedded")) {
936 embed_timeout = purple_timeout_add_seconds(LONG_EMBED_TIMEOUT, docklet_gtk_embed_timeout_cb, NULL); 936 embed_timeout = g_timeout_add_seconds(LONG_EMBED_TIMEOUT, docklet_gtk_embed_timeout_cb, NULL);
937 } else { 937 } else {
938 embed_timeout = purple_timeout_add_seconds(SHORT_EMBED_TIMEOUT, docklet_gtk_embed_timeout_cb, NULL); 938 embed_timeout = g_timeout_add_seconds(SHORT_EMBED_TIMEOUT, docklet_gtk_embed_timeout_cb, NULL);
939 } 939 }
940 #endif 940 #endif
941 } 941 }
942 942
943 purple_debug_info("docklet", "GTK+ created\n"); 943 purple_debug_info("docklet", "GTK+ created\n");

mercurial