]> git.0d.be Git - empathy.git/commitdiff
Add an entry in the View menu to search for contacts (#632024).
authorVitaly Minko <vitaly.minko@gmail.com>
Mon, 18 Oct 2010 11:32:37 +0000 (15:32 +0400)
committerVitaly Minko <vitaly.minko@gmail.com>
Mon, 18 Oct 2010 11:32:37 +0000 (15:32 +0400)
libempathy-gtk/empathy-individual-view.c
libempathy-gtk/empathy-individual-view.h
src/empathy-main-window.c
src/empathy-main-window.ui

index ebc71a10aa23b5bb5d4323a36789cc816be8ba38..b75e2a1e69051f3838742e70085e7eeee227bacc 100644 (file)
@@ -1223,10 +1223,7 @@ individual_view_start_search_cb (EmpathyIndividualView *view,
   if (priv->search_widget == NULL)
     return FALSE;
 
-  if (gtk_widget_get_visible (GTK_WIDGET (priv->search_widget)))
-    gtk_widget_grab_focus (GTK_WIDGET (priv->search_widget));
-  else
-    gtk_widget_show (GTK_WIDGET (priv->search_widget));
+  empathy_individual_view_start_search (view);
 
   return TRUE;
 }
@@ -2579,3 +2576,17 @@ empathy_individual_view_set_store (EmpathyIndividualView *self,
           G_CALLBACK (individual_view_store_row_deleted_cb), self, 0);
     }
 }
+
+void
+empathy_individual_view_start_search (EmpathyIndividualView *self)
+{
+  EmpathyIndividualViewPriv *priv = GET_PRIV (self);
+
+  g_return_if_fail (EMPATHY_IS_INDIVIDUAL_VIEW (self));
+  g_return_if_fail (priv->search_widget != NULL);
+
+  if (gtk_widget_get_visible (GTK_WIDGET (priv->search_widget)))
+    gtk_widget_grab_focus (GTK_WIDGET (priv->search_widget));
+  else
+    gtk_widget_show (GTK_WIDGET (priv->search_widget));
+}
index 51a487d9424dc3f804c90c3e0a4432abc22db0e0..79f279f94f03d111faf362a55099c0d99fb248b4 100644 (file)
@@ -133,5 +133,7 @@ EmpathyIndividualStore *empathy_individual_view_get_store (
 void empathy_individual_view_set_store (EmpathyIndividualView *self,
     EmpathyIndividualStore *store);
 
+void empathy_individual_view_start_search (EmpathyIndividualView *self);
+
 G_END_DECLS
 #endif /* __EMPATHY_INDIVIDUAL_VIEW_H__ */
index 85a64a3659f67e4d7b6574a96f09516b16fb553e..a62c9cd413c6d7d5467ee18d503869f8c4a38038 100644 (file)
@@ -953,6 +953,15 @@ main_window_notify_contact_list_size_cb (GSettings         *gsettings,
        gtk_radio_action_set_current_value (priv->normal_with_avatars, value);
 }
 
+static void
+main_window_view_search_contacts_cb (GtkCheckMenuItem  *item,
+                                    EmpathyMainWindow *window)
+{
+       EmpathyMainWindowPriv *priv = GET_PRIV (window);
+
+       empathy_individual_view_start_search (priv->individual_view);
+}
+
 static void
 main_window_view_show_map_cb (GtkCheckMenuItem  *item,
                              EmpathyMainWindow *window)
@@ -1601,6 +1610,7 @@ empathy_main_window_init (EmpathyMainWindow *window)
                              "view_show_protocols", "toggled", main_window_view_show_protocols_cb,
                              "view_sort_by_name", "changed", main_window_view_sort_contacts_cb,
                              "view_normal_size_with_avatars", "changed", main_window_view_contacts_list_size_cb,
+                             "view_search_contacts", "activate", main_window_view_search_contacts_cb,
                              "view_show_map", "activate", main_window_view_show_map_cb,
                              "edit", "activate", main_window_edit_cb,
                              "edit_accounts", "activate", main_window_edit_accounts_cb,
index 1d06b3eddbd23c00d98e4d30604d728f83519886..a328eacfeeffec46779e5157c39f75a085b6cd85 100644 (file)
           </object>
           <accelerator key="3" modifiers="GDK_CONTROL_MASK"/>
         </child>
+        <child>
+          <object class="GtkAction" id="view_search_contacts">
+            <property name="name">view_search_contacts</property>
+            <property name="label" translatable="yes">Find in Contact _List</property>
+          </object>
+        </child>
         <child>
           <object class="GtkAction" id="room">
             <property name="name">room</property>
           <menuitem action="view_normal_size"/>
           <menuitem action="view_compact_size"/>
           <separator/>
+          <menuitem action="view_search_contacts"/>
           <menuitem action="view_history"/>
           <menuitem action="view_show_ft_manager"/>
           <menuitem action="view_show_map"/>