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"))
{
/* 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 */
gchar* text;
gchar* uri;
- KatzeArray* search_engines;
gdouble progress;
gchar* secondary_icon;
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;
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);
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)
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
* @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