diff --git a/midori/midori-locationaction.c b/midori/midori-locationaction.c index 0fc0374a..5d9b6ee8 100644 --- a/midori/midori-locationaction.c +++ b/midori/midori-locationaction.c @@ -356,7 +356,22 @@ midori_location_action_popup_timeout_cb (gpointer data) if (!action->entry || !gtk_widget_has_focus (action->entry) || !action->history) return FALSE; - if (!(action->key && *action->key)) + /* No completion when typing a search token */ + if (action->search_engines != NULL) + { + gchar** parts = g_strsplit (action->key, " ", 2); + if (parts && *parts && parts[1] + && katze_array_find_token (action->search_engines, *parts)) + { + g_strfreev (parts); + midori_location_action_popdown_completion (action); + return FALSE; + } + g_strfreev (parts); + } + + /* Empaty string or starting with a space means: no completion */ + if (!(action->key && *action->key && *action->key != ' ')) { midori_location_action_popdown_completion (action); return FALSE;