]> spindle.queued.net Git - midori/commitdiff
Remove 'Search engines in completion' functionality
authorChristian Dywan <christian@twotoasts.de>
Sun, 17 Jan 2010 09:23:35 +0000 (10:23 +0100)
committerChristian Dywan <christian@twotoasts.de>
Sun, 17 Jan 2010 17:14:49 +0000 (18:14 +0100)
The feature doesn't work well with more than two engines.

midori/midori-browser.c
midori/midori-locationaction.c
midori/midori-preferences.c
midori/midori-websettings.c

index 0d26e06bf9167f0beb7e451a5d5ea84755e7d910..be1dd6305bd21b72de1cbf2b811088ca3433c69c 100644 (file)
@@ -6616,12 +6616,7 @@ midori_browser_settings_notify (MidoriWebSettings* web_settings,
             g_value_get_string (&value) && *g_value_get_string (&value));
     else if (name == g_intern_string ("search-engines-in-completion"))
     {
-        if (g_value_get_boolean (&value))
-            midori_location_action_set_search_engines (MIDORI_LOCATION_ACTION (
-                _action_by_name (browser, "Location")), browser->search_engines);
-        else
-            midori_location_action_set_search_engines (MIDORI_LOCATION_ACTION (
-                _action_by_name (browser, "Location")), NULL);
+        /* Do nothing */
     }
     else if (name == g_intern_string ("location-entry-search"))
     {
@@ -6835,13 +6830,6 @@ midori_browser_set_property (GObject*      object,
 
         /* FIXME: Disconnect handlers */
         katze_object_assign (browser->search_engines, g_value_dup_object (value));
-        if (katze_object_get_boolean (browser->settings,
-                                      "search-engines-in-completion"))
-            midori_location_action_set_search_engines (MIDORI_LOCATION_ACTION (
-                _action_by_name (browser, "Location")), browser->search_engines);
-        else
-            midori_location_action_set_search_engines (MIDORI_LOCATION_ACTION (
-                _action_by_name (browser, "Location")), NULL);
         midori_search_action_set_search_engines (MIDORI_SEARCH_ACTION (
             _action_by_name (browser, "Search")), browser->search_engines);
         /* FIXME: Connect to updates */
index 910f8cd77934fb14680dbb217ce11a2d09479135..c353b92a9aca96c764c86d9a511bd9de34be0222 100644 (file)
@@ -29,7 +29,6 @@ struct _MidoriLocationAction
 
     gchar* text;
     gchar* uri;
-    KatzeArray* search_engines;
     gdouble progress;
     gchar* secondary_icon;
 
@@ -361,7 +360,6 @@ static void
 midori_location_action_init (MidoriLocationAction* location_action)
 {
     location_action->text = location_action->uri = NULL;
-    location_action->search_engines = NULL;
     location_action->progress = 0.0;
     location_action->secondary_icon = NULL;
     location_action->default_icon = NULL;
@@ -384,7 +382,6 @@ midori_location_action_finalize (GObject* object)
 
     katze_assign (location_action->text, NULL);
     katze_assign (location_action->uri, NULL);
-    katze_assign (location_action->search_engines, NULL);
 
     katze_object_assign (location_action->model, NULL);
     katze_object_assign (location_action->filter_model, NULL);
@@ -979,48 +976,6 @@ midori_location_entry_match_selected_cb (GtkEntryCompletion*   completion,
     return FALSE;
 }
 
-static void
-midori_location_entry_action_activated_cb (GtkEntryCompletion*   completion,
-                                           gint                  action,
-                                           MidoriLocationAction* location_action)
-{
-    if (location_action->search_engines)
-    {
-        KatzeItem* item = katze_array_get_nth_item (
-            location_action->search_engines, action);
-        GtkWidget* entry = gtk_entry_completion_get_entry (completion);
-        const gchar* keywords = gtk_entry_get_text (GTK_ENTRY (entry));
-        const gchar* uri = katze_item_get_uri (item);
-        gchar* search;
-        if (!item)
-            return;
-        search = sokoke_search_uri (uri, keywords);
-        midori_location_action_set_text (location_action, search);
-        g_signal_emit (location_action, signals[SUBMIT_URI], 0, search, FALSE);
-        g_free (search);
-    }
-}
-
-static void
-midori_location_action_add_actions (GtkEntryCompletion* completion,
-                                    KatzeArray*         search_engines)
-{
-    guint i;
-    KatzeItem* item;
-
-    if (!search_engines)
-        return;
-
-    i = 0;
-    while ((item = katze_array_get_nth_item (search_engines, i)))
-    {
-        gchar* text = g_strdup_printf (_("Search with %s"),
-            katze_item_get_name (item));
-        gtk_entry_completion_insert_action_text (completion, i++, text);
-        g_free (text);
-    }
-}
-
 static void
 midori_location_action_completion_init (MidoriLocationAction* location_action,
                                         GtkEntry*             entry)
@@ -1067,11 +1022,6 @@ midori_location_action_completion_init (MidoriLocationAction* location_action,
 
     g_signal_connect (completion, "match-selected",
         G_CALLBACK (midori_location_entry_match_selected_cb), location_action);
-
-    midori_location_action_add_actions (completion,
-                                        location_action->search_engines);
-    g_signal_connect (completion, "action-activated",
-        G_CALLBACK (midori_location_entry_action_activated_cb), location_action);
 }
 
 static void
@@ -1471,48 +1421,15 @@ midori_location_action_set_title_for_uri (MidoriLocationAction* location_action,
  * @location_action: a #MidoriLocationAction
  * @search_engines: a #KatzeArray
  *
- * Assigns the specified search engines to the location action.
- * Search engines will appear as actions in the completion.
+ * This function is obsolete and has no effect.
  *
- * Since: 0.1.6
+ * Deprecated: 0.2.3
  **/
 void
 midori_location_action_set_search_engines (MidoriLocationAction* location_action,
                                            KatzeArray*           search_engines)
 {
-    GSList* proxies;
-    GtkWidget* entry;
-    GtkWidget* child;
-    GtkEntryCompletion* completion;
-
-    g_return_if_fail (MIDORI_IS_LOCATION_ACTION (location_action));
-
-    if (search_engines)
-        g_object_ref (search_engines);
-
-    proxies = gtk_action_get_proxies (GTK_ACTION (location_action));
-
-    for (; proxies != NULL; proxies = g_slist_next (proxies))
-    if (GTK_IS_TOOL_ITEM (proxies->data))
-    {
-        KatzeItem* item;
-        guint i;
-
-        entry = midori_location_action_entry_for_proxy (proxies->data);
-        child = gtk_bin_get_child (GTK_BIN (entry));
-
-        midori_location_action_completion_init (location_action, GTK_ENTRY (child));
-        completion = gtk_entry_get_completion (GTK_ENTRY (child));
-        i = 0;
-        if (location_action->search_engines)
-            while ((item = katze_array_get_nth_item (location_action->search_engines, i++)))
-                gtk_entry_completion_delete_action (completion, 0);
-
-        midori_location_action_add_actions (completion, search_engines);
-    }
-
-    katze_object_assign (location_action->search_engines, search_engines);
-    /* FIXME: Take care of adding and removing search engines as needed */
+    /* Do nothing */
 }
 
 gdouble
index fe71743ef4aed7602db444a316350472031c6ef6..df1234982ee0576dfc5d2495e328ba4c987bbaa4 100644 (file)
@@ -435,8 +435,6 @@ midori_preferences_set_settings (MidoriPreferences* preferences,
     SPANNED_ADD (button);
     button = katze_property_proxy (settings, "progress-in-location", NULL);
     INDENTED_ADD (button);
-    button = katze_property_proxy (settings, "search-engines-in-completion", NULL);
-    SPANNED_ADD (button);
     #endif
     FRAME_NEW (_("Browsing"));
     label = katze_property_label (settings, "open-new-pages-in");
index 33e1b552c3ab5057e27b29607b9249d8f67d535b..9166cc858c45f7ce9a3e87a481d06e3109a14d27 100644 (file)
@@ -512,7 +512,7 @@ midori_web_settings_class_init (MidoriWebSettingsClass* class)
     *
     * Whether to show search engines in the location completion.
     *
-    * Since: 0.1.6
+    * Deprecated: 0.2.3: This setting is obsolete.
     */
     g_object_class_install_property (gobject_class,
                                      PROP_SEARCH_ENGINES_IN_COMPLETION,