| 941 purple_conversation_get_name(conv), index); |
940 purple_conversation_get_name(conv), index); |
| 942 } |
941 } |
| 943 } |
942 } |
| 944 |
943 |
| 945 static void |
944 static void |
| 946 menu_add_pounce_cb(GtkAction *action, gpointer data) |
|
| 947 { |
|
| 948 PidginConvWindow *win = data; |
|
| 949 PurpleConversation *conv; |
|
| 950 |
|
| 951 conv = pidgin_conv_window_get_active_gtkconv(win)->active_conv; |
|
| 952 |
|
| 953 pidgin_pounce_editor_show(purple_conversation_get_account(conv), |
|
| 954 purple_conversation_get_name(conv), NULL); |
|
| 955 } |
|
| 956 |
|
| 957 static void |
|
| 958 menu_alias_cb(GtkAction *action, gpointer data) |
945 menu_alias_cb(GtkAction *action, gpointer data) |
| 959 { |
946 { |
| 960 PidginConvWindow *win = data; |
947 PidginConvWindow *win = data; |
| 961 PurpleConversation *conv; |
948 PurpleConversation *conv; |
| 962 PurpleAccount *account; |
949 PurpleAccount *account; |
| 2421 { "AudioVideoCall", PIDGIN_STOCK_TOOLBAR_VIDEO_CALL, N_("Audio/Video _Call"), NULL, NULL, G_CALLBACK(menu_initiate_media_call_cb) }, |
2408 { "AudioVideoCall", PIDGIN_STOCK_TOOLBAR_VIDEO_CALL, N_("Audio/Video _Call"), NULL, NULL, G_CALLBACK(menu_initiate_media_call_cb) }, |
| 2422 #endif |
2409 #endif |
| 2423 |
2410 |
| 2424 { "SendFile", PIDGIN_STOCK_TOOLBAR_SEND_FILE, N_("Se_nd File..."), NULL, NULL, G_CALLBACK(menu_send_file_cb) }, |
2411 { "SendFile", PIDGIN_STOCK_TOOLBAR_SEND_FILE, N_("Se_nd File..."), NULL, NULL, G_CALLBACK(menu_send_file_cb) }, |
| 2425 { "GetAttention", PIDGIN_STOCK_TOOLBAR_SEND_ATTENTION, N_("Get _Attention"), NULL, NULL, G_CALLBACK(menu_get_attention_cb) }, |
2412 { "GetAttention", PIDGIN_STOCK_TOOLBAR_SEND_ATTENTION, N_("Get _Attention"), NULL, NULL, G_CALLBACK(menu_get_attention_cb) }, |
| 2426 { "AddBuddyPounce", NULL, N_("Add Buddy _Pounce..."), NULL, NULL, G_CALLBACK(menu_add_pounce_cb) }, |
|
| 2427 { "GetInfo", PIDGIN_STOCK_TOOLBAR_USER_INFO, N_("_Get Info"), "<control>O", NULL, G_CALLBACK(menu_get_info_cb) }, |
2413 { "GetInfo", PIDGIN_STOCK_TOOLBAR_USER_INFO, N_("_Get Info"), "<control>O", NULL, G_CALLBACK(menu_get_info_cb) }, |
| 2428 { "Invite", NULL, N_("In_vite..."), NULL, NULL, G_CALLBACK(menu_invite_cb) }, |
2414 { "Invite", NULL, N_("In_vite..."), NULL, NULL, G_CALLBACK(menu_invite_cb) }, |
| 2429 { "MoreMenu", NULL, N_("M_ore"), NULL, NULL, NULL }, |
2415 { "MoreMenu", NULL, N_("M_ore"), NULL, NULL, NULL }, |
| 2430 { "Alias", NULL, N_("Al_ias..."), NULL, NULL, G_CALLBACK(menu_alias_cb) }, |
2416 { "Alias", NULL, N_("Al_ias..."), NULL, NULL, G_CALLBACK(menu_alias_cb) }, |
| 2431 { "Block", PIDGIN_STOCK_TOOLBAR_BLOCK, N_("_Block..."), NULL, NULL, G_CALLBACK(menu_block_cb) }, |
2417 { "Block", PIDGIN_STOCK_TOOLBAR_BLOCK, N_("_Block..."), NULL, NULL, G_CALLBACK(menu_block_cb) }, |
| 2465 "<menuitem action='AudioVideoCall'/>" |
2451 "<menuitem action='AudioVideoCall'/>" |
| 2466 "</menu>" |
2452 "</menu>" |
| 2467 #endif |
2453 #endif |
| 2468 "<menuitem action='SendFile'/>" |
2454 "<menuitem action='SendFile'/>" |
| 2469 "<menuitem action='GetAttention'/>" |
2455 "<menuitem action='GetAttention'/>" |
| 2470 "<menuitem action='AddBuddyPounce'/>" |
|
| 2471 "<menuitem action='GetInfo'/>" |
2456 "<menuitem action='GetInfo'/>" |
| 2472 "<menuitem action='Invite'/>" |
2457 "<menuitem action='Invite'/>" |
| 2473 "<menu action='MoreMenu'/>" |
2458 "<menu action='MoreMenu'/>" |
| 2474 "<separator/>" |
2459 "<separator/>" |
| 2475 "<menuitem action='Alias'/>" |
2460 "<menuitem action='Alias'/>" |
| 2862 |
2847 |
| 2863 win->menu->get_attention = |
2848 win->menu->get_attention = |
| 2864 gtk_ui_manager_get_action(win->menu->ui, |
2849 gtk_ui_manager_get_action(win->menu->ui, |
| 2865 "/Conversation/ConversationMenu/GetAttention"); |
2850 "/Conversation/ConversationMenu/GetAttention"); |
| 2866 |
2851 |
| 2867 win->menu->add_pounce = |
|
| 2868 gtk_ui_manager_get_action(win->menu->ui, |
|
| 2869 "/Conversation/ConversationMenu/AddBuddyPounce"); |
|
| 2870 |
|
| 2871 /* --- */ |
2852 /* --- */ |
| 2872 |
2853 |
| 2873 win->menu->get_info = |
2854 win->menu->get_info = |
| 2874 gtk_ui_manager_get_action(win->menu->ui, |
2855 gtk_ui_manager_get_action(win->menu->ui, |
| 2875 "/Conversation/ConversationMenu/GetInfo"); |
2856 "/Conversation/ConversationMenu/GetInfo"); |
| 4846 |
4827 |
| 4847 /* Deal with menu items */ |
4828 /* Deal with menu items */ |
| 4848 gtk_action_set_visible(win->menu->view_log, TRUE); |
4829 gtk_action_set_visible(win->menu->view_log, TRUE); |
| 4849 gtk_action_set_visible(win->menu->send_file, TRUE); |
4830 gtk_action_set_visible(win->menu->send_file, TRUE); |
| 4850 gtk_action_set_visible(win->menu->get_attention, TRUE); |
4831 gtk_action_set_visible(win->menu->get_attention, TRUE); |
| 4851 gtk_action_set_visible(win->menu->add_pounce, TRUE); |
|
| 4852 gtk_action_set_visible(win->menu->get_info, TRUE); |
4832 gtk_action_set_visible(win->menu->get_info, TRUE); |
| 4853 gtk_action_set_visible(win->menu->invite, FALSE); |
4833 gtk_action_set_visible(win->menu->invite, FALSE); |
| 4854 gtk_action_set_visible(win->menu->alias, TRUE); |
4834 gtk_action_set_visible(win->menu->alias, TRUE); |
| 4855 if (purple_account_privacy_check(account, purple_conversation_get_name(conv))) { |
4835 if (purple_account_privacy_check(account, purple_conversation_get_name(conv))) { |
| 4856 gtk_action_set_visible(win->menu->unblock, FALSE); |
4836 gtk_action_set_visible(win->menu->unblock, FALSE); |
| 4875 |
4855 |
| 4876 /* Deal with menu items */ |
4856 /* Deal with menu items */ |
| 4877 gtk_action_set_visible(win->menu->view_log, TRUE); |
4857 gtk_action_set_visible(win->menu->view_log, TRUE); |
| 4878 gtk_action_set_visible(win->menu->send_file, FALSE); |
4858 gtk_action_set_visible(win->menu->send_file, FALSE); |
| 4879 gtk_action_set_visible(win->menu->get_attention, FALSE); |
4859 gtk_action_set_visible(win->menu->get_attention, FALSE); |
| 4880 gtk_action_set_visible(win->menu->add_pounce, FALSE); |
|
| 4881 gtk_action_set_visible(win->menu->get_info, FALSE); |
4860 gtk_action_set_visible(win->menu->get_info, FALSE); |
| 4882 gtk_action_set_visible(win->menu->invite, TRUE); |
4861 gtk_action_set_visible(win->menu->invite, TRUE); |
| 4883 gtk_action_set_visible(win->menu->alias, TRUE); |
4862 gtk_action_set_visible(win->menu->alias, TRUE); |
| 4884 gtk_action_set_visible(win->menu->block, FALSE); |
4863 gtk_action_set_visible(win->menu->block, FALSE); |
| 4885 gtk_action_set_visible(win->menu->unblock, FALSE); |
4864 gtk_action_set_visible(win->menu->unblock, FALSE); |
| 4937 pidgin_webview_set_format_functions(PIDGIN_WEBVIEW(gtkconv->entry), buttons); |
4916 pidgin_webview_set_format_functions(PIDGIN_WEBVIEW(gtkconv->entry), buttons); |
| 4938 #endif |
4917 #endif |
| 4939 |
4918 |
| 4940 /* Deal with menu items */ |
4919 /* Deal with menu items */ |
| 4941 gtk_action_set_sensitive(win->menu->view_log, TRUE); |
4920 gtk_action_set_sensitive(win->menu->view_log, TRUE); |
| 4942 gtk_action_set_sensitive(win->menu->add_pounce, TRUE); |
|
| 4943 gtk_action_set_sensitive(win->menu->get_info, (PURPLE_PROTOCOL_IMPLEMENTS(protocol, SERVER, get_info))); |
4921 gtk_action_set_sensitive(win->menu->get_info, (PURPLE_PROTOCOL_IMPLEMENTS(protocol, SERVER, get_info))); |
| 4944 gtk_action_set_sensitive(win->menu->invite, (PURPLE_PROTOCOL_IMPLEMENTS(protocol, CHAT, invite))); |
4922 gtk_action_set_sensitive(win->menu->invite, (PURPLE_PROTOCOL_IMPLEMENTS(protocol, CHAT, invite))); |
| 4945 gtk_action_set_sensitive(win->menu->insert_link, (features & PURPLE_CONNECTION_FLAG_HTML)); |
4923 gtk_action_set_sensitive(win->menu->insert_link, (features & PURPLE_CONNECTION_FLAG_HTML)); |
| 4946 gtk_action_set_sensitive(win->menu->insert_image, !(features & PURPLE_CONNECTION_FLAG_NO_IMAGES)); |
4924 gtk_action_set_sensitive(win->menu->insert_image, !(features & PURPLE_CONNECTION_FLAG_NO_IMAGES)); |
| 4947 |
4925 |
| 4979 |
4957 |
| 4980 /* Then deal with menu items */ |
4958 /* Then deal with menu items */ |
| 4981 gtk_action_set_sensitive(win->menu->view_log, TRUE); |
4959 gtk_action_set_sensitive(win->menu->view_log, TRUE); |
| 4982 gtk_action_set_sensitive(win->menu->send_file, FALSE); |
4960 gtk_action_set_sensitive(win->menu->send_file, FALSE); |
| 4983 gtk_action_set_sensitive(win->menu->get_attention, FALSE); |
4961 gtk_action_set_sensitive(win->menu->get_attention, FALSE); |
| 4984 gtk_action_set_sensitive(win->menu->add_pounce, TRUE); |
|
| 4985 gtk_action_set_sensitive(win->menu->get_info, FALSE); |
4962 gtk_action_set_sensitive(win->menu->get_info, FALSE); |
| 4986 gtk_action_set_sensitive(win->menu->invite, FALSE); |
4963 gtk_action_set_sensitive(win->menu->invite, FALSE); |
| 4987 gtk_action_set_sensitive(win->menu->alias, FALSE); |
4964 gtk_action_set_sensitive(win->menu->alias, FALSE); |
| 4988 gtk_action_set_sensitive(win->menu->add, FALSE); |
4965 gtk_action_set_sensitive(win->menu->add, FALSE); |
| 4989 gtk_action_set_sensitive(win->menu->remove, FALSE); |
4966 gtk_action_set_sensitive(win->menu->remove, FALSE); |
| 6462 |
6439 |
| 6463 #include "gtkdnd-hints.h" |
6440 #include "gtkdnd-hints.h" |
| 6464 #include "gtkblist.h" |
6441 #include "gtkblist.h" |
| 6465 #include "gtkconv.h" |
6442 #include "gtkconv.h" |
| 6466 #include "gtkdialogs.h" |
6443 #include "gtkdialogs.h" |
| 6467 #include "gtkpounce.h" |
|
| 6468 #include "gtkprefs.h" |
6444 #include "gtkprefs.h" |
| 6469 #include "gtkprivacy.h" |
6445 #include "gtkprivacy.h" |
| 6470 #include "gtkutils.h" |
6446 #include "gtkutils.h" |
| 6471 #include "pidginmenutray.h" |
6447 #include "pidginmenutray.h" |
| 6472 #include "pidginstock.h" |
6448 #include "pidginstock.h" |