pidgin/gtkdocklet.c

changeset 16123
8b98683319e7
parent 15884
4de1981757fc
child 16129
2942cb9d57f8
equal deleted inserted replaced
16122:cd87903b6131 16123:8b98683319e7
119 gboolean pending = FALSE, connecting = FALSE; 119 gboolean pending = FALSE, connecting = FALSE;
120 120
121 /* determine if any ims have unseen messages */ 121 /* determine if any ims have unseen messages */
122 convs = get_pending_list(DOCKLET_TOOLTIP_LINE_LIMIT); 122 convs = get_pending_list(DOCKLET_TOOLTIP_LINE_LIMIT);
123 123
124 if (!strcmp(purple_prefs_get_string("/purple/gtk/docklet/show"), "pending")) { 124 if (!strcmp(purple_prefs_get_string(PIDGIN_PREFS_ROOT "/docklet/show"), "pending")) {
125 if (convs && ui_ops->create && !visible) { 125 if (convs && ui_ops->create && !visible) {
126 g_list_free(convs); 126 g_list_free(convs);
127 ui_ops->create(); 127 ui_ops->create();
128 return FALSE; 128 return FALSE;
129 } else if (!convs && ui_ops->destroy && visible) { 129 } else if (!convs && ui_ops->destroy && visible) {
210 210
211 if (ui_ops && ui_ops->update_icon) 211 if (ui_ops && ui_ops->update_icon)
212 ui_ops->update_icon(status); 212 ui_ops->update_icon(status);
213 213
214 /* and schedule the blinker function if messages are pending */ 214 /* and schedule the blinker function if messages are pending */
215 if (purple_prefs_get_bool("/purple/gtk/docklet/blink") && 215 if (purple_prefs_get_bool(PIDGIN_PREFS_ROOT "/docklet/blink") &&
216 status == DOCKLET_STATUS_PENDING 216 status == DOCKLET_STATUS_PENDING
217 && docklet_blinking_timer == 0) { 217 && docklet_blinking_timer == 0) {
218 docklet_blinking_timer = g_timeout_add(500, docklet_blink_icon, NULL); 218 docklet_blinking_timer = g_timeout_add(500, docklet_blink_icon, NULL);
219 } 219 }
220 } 220 }
314 * docklet pop-up menu 314 * docklet pop-up menu
315 **************************************************************************/ 315 **************************************************************************/
316 static void 316 static void
317 docklet_toggle_mute(GtkWidget *toggle, void *data) 317 docklet_toggle_mute(GtkWidget *toggle, void *data)
318 { 318 {
319 purple_prefs_set_bool("/purple/gtk/sound/mute", GTK_CHECK_MENU_ITEM(toggle)->active); 319 purple_prefs_set_bool(PIDGIN_PREFS_ROOT "/sound/mute", GTK_CHECK_MENU_ITEM(toggle)->active);
320 } 320 }
321 321
322 static void 322 static void
323 docklet_toggle_blink(GtkWidget *toggle, void *data) 323 docklet_toggle_blink(GtkWidget *toggle, void *data)
324 { 324 {
325 purple_prefs_set_bool("/purple/gtk/docklet/blink", GTK_CHECK_MENU_ITEM(toggle)->active); 325 purple_prefs_set_bool(PIDGIN_PREFS_ROOT "/docklet/blink", GTK_CHECK_MENU_ITEM(toggle)->active);
326 } 326 }
327 327
328 static void 328 static void
329 docklet_toggle_blist(GtkWidget *toggle, void *data) 329 docklet_toggle_blist(GtkWidget *toggle, void *data)
330 { 330 {
491 } 491 }
492 492
493 menu = gtk_menu_new(); 493 menu = gtk_menu_new();
494 494
495 menuitem = gtk_check_menu_item_new_with_label(_("Show Buddy List")); 495 menuitem = gtk_check_menu_item_new_with_label(_("Show Buddy List"));
496 gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(menuitem), purple_prefs_get_bool("/purple/gtk/blist/list_visible")); 496 gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(menuitem), purple_prefs_get_bool(PIDGIN_PREFS_ROOT "/blist/list_visible"));
497 g_signal_connect(G_OBJECT(menuitem), "toggled", G_CALLBACK(docklet_toggle_blist), NULL); 497 g_signal_connect(G_OBJECT(menuitem), "toggled", G_CALLBACK(docklet_toggle_blist), NULL);
498 gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem); 498 gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem);
499 499
500 menuitem = gtk_menu_item_new_with_label(_("Unread Messages")); 500 menuitem = gtk_menu_item_new_with_label(_("Unread Messages"));
501 501
532 pidgin_new_item_from_stock(menu, _("Preferences"), GTK_STOCK_PREFERENCES, G_CALLBACK(pidgin_prefs_show), NULL, 0, 0, NULL); 532 pidgin_new_item_from_stock(menu, _("Preferences"), GTK_STOCK_PREFERENCES, G_CALLBACK(pidgin_prefs_show), NULL, 0, 0, NULL);
533 533
534 pidgin_separator(menu); 534 pidgin_separator(menu);
535 535
536 menuitem = gtk_check_menu_item_new_with_label(_("Mute Sounds")); 536 menuitem = gtk_check_menu_item_new_with_label(_("Mute Sounds"));
537 gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(menuitem), purple_prefs_get_bool("/purple/gtk/sound/mute")); 537 gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(menuitem), purple_prefs_get_bool(PIDGIN_PREFS_ROOT "/sound/mute"));
538 if (!strcmp(purple_prefs_get_string("/purple/gtk/sound/method"), "none")) 538 if (!strcmp(purple_prefs_get_string(PIDGIN_PREFS_ROOT "/sound/method"), "none"))
539 gtk_widget_set_sensitive(GTK_WIDGET(menuitem), FALSE); 539 gtk_widget_set_sensitive(GTK_WIDGET(menuitem), FALSE);
540 g_signal_connect(G_OBJECT(menuitem), "toggled", G_CALLBACK(docklet_toggle_mute), NULL); 540 g_signal_connect(G_OBJECT(menuitem), "toggled", G_CALLBACK(docklet_toggle_mute), NULL);
541 gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem); 541 gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem);
542 542
543 menuitem = gtk_check_menu_item_new_with_label(_("Blink on new message")); 543 menuitem = gtk_check_menu_item_new_with_label(_("Blink on new message"));
544 gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(menuitem), purple_prefs_get_bool("/purple/gtk/docklet/blink")); 544 gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(menuitem), purple_prefs_get_bool(PIDGIN_PREFS_ROOT "/docklet/blink"));
545 g_signal_connect(G_OBJECT(menuitem), "toggled", G_CALLBACK(docklet_toggle_blink), NULL); 545 g_signal_connect(G_OBJECT(menuitem), "toggled", G_CALLBACK(docklet_toggle_blink), NULL);
546 gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem); 546 gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem);
547 547
548 pidgin_separator(menu); 548 pidgin_separator(menu);
549 549
589 589
590 void 590 void
591 pidgin_docklet_embedded() 591 pidgin_docklet_embedded()
592 { 592 {
593 if (!visibility_manager 593 if (!visibility_manager
594 && strcmp(purple_prefs_get_string("/purple/gtk/docklet/show"), "pending")) { 594 && strcmp(purple_prefs_get_string(PIDGIN_PREFS_ROOT "/docklet/show"), "pending")) {
595 pidgin_blist_visibility_manager_add(); 595 pidgin_blist_visibility_manager_add();
596 visibility_manager = TRUE; 596 visibility_manager = TRUE;
597 } 597 }
598 visible = TRUE; 598 visible = TRUE;
599 docklet_update_status(); 599 docklet_update_status();
637 void *conn_handle = purple_connections_get_handle(); 637 void *conn_handle = purple_connections_get_handle();
638 void *conv_handle = purple_conversations_get_handle(); 638 void *conv_handle = purple_conversations_get_handle();
639 void *accounts_handle = purple_accounts_get_handle(); 639 void *accounts_handle = purple_accounts_get_handle();
640 void *docklet_handle = pidgin_docklet_get_handle(); 640 void *docklet_handle = pidgin_docklet_get_handle();
641 641
642 purple_prefs_add_none("/purple/gtk/docklet"); 642 purple_prefs_add_none(PIDGIN_PREFS_ROOT "/docklet");
643 purple_prefs_add_bool("/purple/gtk/docklet/blink", FALSE); 643 purple_prefs_add_bool(PIDGIN_PREFS_ROOT "/docklet/blink", FALSE);
644 purple_prefs_add_string("/purple/gtk/docklet/show", "always"); 644 purple_prefs_add_string(PIDGIN_PREFS_ROOT "/docklet/show", "always");
645 purple_prefs_connect_callback(docklet_handle, "/purple/gtk/docklet/show", 645 purple_prefs_connect_callback(docklet_handle, PIDGIN_PREFS_ROOT "/docklet/show",
646 docklet_show_pref_changed_cb, NULL); 646 docklet_show_pref_changed_cb, NULL);
647 647
648 docklet_ui_init(); 648 docklet_ui_init();
649 if (!strcmp(purple_prefs_get_string("/purple/gtk/docklet/show"), "always") && ui_ops && ui_ops->create) 649 if (!strcmp(purple_prefs_get_string(PIDGIN_PREFS_ROOT "/docklet/show"), "always") && ui_ops && ui_ops->create)
650 ui_ops->create(); 650 ui_ops->create();
651 651
652 purple_signal_connect(conn_handle, "signed-on", 652 purple_signal_connect(conn_handle, "signed-on",
653 docklet_handle, PURPLE_CALLBACK(docklet_signed_on_cb), NULL); 653 docklet_handle, PURPLE_CALLBACK(docklet_signed_on_cb), NULL);
654 purple_signal_connect(conn_handle, "signed-off", 654 purple_signal_connect(conn_handle, "signed-off",

mercurial