diff options
author | Michael Catanzaro <mcatanzaro@igalia.com> | 2017-07-12 18:39:00 -0500 |
---|---|---|
committer | Michael Catanzaro <mcatanzaro@igalia.com> | 2017-07-12 18:58:45 -0500 |
commit | 8b6ce7b8ad5f02fba58acd13bfd96f150a27891d (patch) | |
tree | 56469cf169896912fc7a05bb1e59d3d87e67b004 | |
parent | 8d7b39a69e31c0764ac62399062e219f23e16c8e (diff) | |
download | epiphany-8b6ce7b8ad5f02fba58acd13bfd96f150a27891d.tar.gz |
search-engine-manager: Add convenience function to get default address
Add ephy_search_engine_manager_get_address_for_default_engine(), a
simpler way to get the address of the default search engine without
having to make separate calls to
ephy_search_engine_manager_get_default_engine() and
ephy_search_engine_manager_get_address().
-rw-r--r-- | embed/ephy-embed-utils.c | 5 | ||||
-rw-r--r-- | lib/ephy-search-engine-manager.c | 13 | ||||
-rw-r--r-- | lib/ephy-search-engine-manager.h | 2 |
3 files changed, 16 insertions, 4 deletions
diff --git a/embed/ephy-embed-utils.c b/embed/ephy-embed-utils.c index de1d5d08e..2da1f5c40 100644 --- a/embed/ephy-embed-utils.c +++ b/embed/ephy-embed-utils.c @@ -270,15 +270,13 @@ ephy_embed_utils_autosearch_address (const char *search_key) { char *query_param; const char *address_search; - char *default_name; char *effective_address; EphyEmbedShell *shell; EphySearchEngineManager *search_engine_manager; shell = ephy_embed_shell_get_default (); search_engine_manager = ephy_embed_shell_get_search_engine_manager (shell); - default_name = ephy_search_engine_manager_get_default_engine (search_engine_manager); - address_search = ephy_search_engine_manager_get_address (search_engine_manager, default_name); + address_search = ephy_search_engine_manager_get_address_for_default_engine (search_engine_manager); query_param = soup_form_encode ("q", search_key, NULL); #pragma GCC diagnostic push @@ -288,7 +286,6 @@ ephy_embed_utils_autosearch_address (const char *search_key) effective_address = g_strdup_printf (address_search, query_param + 2); #pragma GCC diagnostic pop g_free (query_param); - g_free (default_name); return effective_address; } diff --git a/lib/ephy-search-engine-manager.c b/lib/ephy-search-engine-manager.c index 4c86c5412..f65110ac1 100644 --- a/lib/ephy-search-engine-manager.c +++ b/lib/ephy-search-engine-manager.c @@ -149,6 +149,19 @@ ephy_search_engine_manager_get_address (EphySearchEngineManager *manager, } const char * +ephy_search_engine_manager_get_address_for_default_engine (EphySearchEngineManager *manager) +{ + char *name; + const char *address; + + name = ephy_search_engine_manager_get_default_engine (manager); + address = ephy_search_engine_manager_get_address (manager, name); + g_free (name); + + return address; +} + +const char * ephy_search_engine_manager_get_bang (EphySearchEngineManager *manager, const char *name) { diff --git a/lib/ephy-search-engine-manager.h b/lib/ephy-search-engine-manager.h index 2e92396f8..f0381608e 100644 --- a/lib/ephy-search-engine-manager.h +++ b/lib/ephy-search-engine-manager.h @@ -39,6 +39,8 @@ G_DECLARE_FINAL_TYPE (EphySearchEngineManager, ephy_search_engine_manager, EPHY, EphySearchEngineManager *ephy_search_engine_manager_new (void); const char *ephy_search_engine_manager_get_address (EphySearchEngineManager *manager, const char *name); +const char *ephy_search_engine_manager_get_address_for_default_engine + (EphySearchEngineManager *manager); const char *ephy_search_engine_manager_get_bang (EphySearchEngineManager *manager, const char *name); char *ephy_search_engine_manager_get_default_engine (EphySearchEngineManager *manager); |