diff --git a/desktop/browser_window.c b/desktop/browser_window.c index ea84e195e..e79dcc1a6 100644 --- a/desktop/browser_window.c +++ b/desktop/browser_window.c @@ -4802,9 +4802,7 @@ nserror browser_window_show_cookies( lwc_string *host = nsurl_get_component(url, NSURL_HOST); const char *string = (host != NULL) ? lwc_string_data(host) : NULL; - /** \todo Ensure cookie manager is open. (Ask front end.) */ - - err = cookie_manager_set_search_string(string); + err = guit->misc->present_cookies(string); if (host != NULL) { lwc_string_unref(host); diff --git a/desktop/gui_factory.c b/desktop/gui_factory.c index 4a9a585d2..a4532fefa 100644 --- a/desktop/gui_factory.c +++ b/desktop/gui_factory.c @@ -657,6 +657,12 @@ gui_default_pdf_password(char **owner_pass, char **user_pass, char *path) save_pdf(path); } +static nserror +gui_default_present_cookies(const char *search_term) +{ + return NSERROR_NOT_IMPLEMENTED; +} + /** verify misc table is valid */ static nserror verify_misc_register(struct gui_misc_table *gmt) { @@ -683,6 +689,9 @@ static nserror verify_misc_register(struct gui_misc_table *gmt) if (gmt->pdf_password == NULL) { gmt->pdf_password = gui_default_pdf_password; } + if (gmt->present_cookies == NULL) { + gmt->present_cookies = gui_default_present_cookies; + } return NSERROR_OK; } diff --git a/include/netsurf/misc.h b/include/netsurf/misc.h index ee5d00d3d..00ac705cc 100644 --- a/include/netsurf/misc.h +++ b/include/netsurf/misc.h @@ -116,6 +116,14 @@ struct gui_misc_table { */ void (*pdf_password)(char **owner_pass, char **user_pass, char *path); + /** + * Request that the cookie manager be displayed + * + * \param search_term The search term to be set (NULL if no search) + * + * \return NSERROR_OK on success + */ + nserror (*present_cookies)(const char *search_term); }; #endif