]> git.0d.be Git - empathy.git/blobdiff - src/empathy-chat-window.c
Setup contact submenu in chat window.
[empathy.git] / src / empathy-chat-window.c
index 88858dae5cbfbee4f8775df1a56489e6253c71db..0d4baef5793cec3af25e2bb0e15f533ae56d595d 100644 (file)
@@ -453,13 +453,29 @@ chat_window_insert_smiley_activate_cb (GtkWidget         *menuitem,
                                smiley, -1);
 }
 
+static void
+chat_window_conv_activate_cb (GtkWidget         *menuitem,
+                             EmpathyChatWindow *window)
+{
+       EmpathyChatWindowPriv *priv = GET_PRIV (window);
+       GtkWidget             *submenu = NULL;
+
+       submenu = empathy_chat_get_contact_menu (priv->current_chat);
+       if (submenu) {
+               gtk_menu_item_set_submenu (GTK_MENU_ITEM (priv->menu_conv_contact),
+                                          submenu);
+               gtk_widget_show (priv->menu_conv_contact);
+               gtk_widget_show (submenu);
+       } else {
+               gtk_widget_hide (priv->menu_conv_contact);
+       }
+}
+
 static void
 chat_window_clear_activate_cb (GtkWidget        *menuitem,
                               EmpathyChatWindow *window)
 {
-       EmpathyChatWindowPriv *priv;
-
-       priv = GET_PRIV (window);
+       EmpathyChatWindowPriv *priv = GET_PRIV (window);
 
        empathy_chat_clear (priv->current_chat);
 }
@@ -1120,6 +1136,7 @@ empathy_chat_window_init (EmpathyChatWindow *window)
        empathy_glade_connect (glade,
                              window,
                              "chat_window", "configure-event", chat_window_configure_event_cb,
+                             "menu_conv", "activate", chat_window_conv_activate_cb,
                              "menu_conv_clear", "activate", chat_window_clear_activate_cb,
                              "menu_conv_close", "activate", chat_window_close_activate_cb,
                              "menu_edit", "activate", chat_window_edit_activate_cb,