summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--frontends/gtk/toolbar.c2
-rw-r--r--frontends/gtk/window.c7
2 files changed, 8 insertions, 1 deletions
diff --git a/frontends/gtk/toolbar.c b/frontends/gtk/toolbar.c
index 1a6bc124e..c9ec19caf 100644
--- a/frontends/gtk/toolbar.c
+++ b/frontends/gtk/toolbar.c
@@ -926,7 +926,7 @@ nsgtk_browser_window_create(struct browser_window *bw, bool intab)
{
nserror res = NSERROR_OK;
nsurl *url = NULL;
- int flags = BW_CREATE_HISTORY | BW_CREATE_FOREGROUND;
+ int flags = BW_CREATE_HISTORY | BW_CREATE_FOREGROUND | BW_CREATE_FOCUS_LOCATION;
if (intab) {
flags |= BW_CREATE_TAB;
diff --git a/frontends/gtk/window.c b/frontends/gtk/window.c
index b47a1b07d..64f09ebbf 100644
--- a/frontends/gtk/window.c
+++ b/frontends/gtk/window.c
@@ -969,6 +969,13 @@ gui_window_create(struct browser_window *bw,
*/
g_object_unref(tab_builder);
+ /* Finally we need to focus the location bar if requested */
+ if (flags & GW_CREATE_FOCUS_LOCATION) {
+ if (nsgtk_window_item_activate(g, OPENLOCATION_BUTTON) != NSERROR_OK) {
+ NSLOG(netsurf, WARNING, "Unable to focus location input");
+ }
+ }
+
return g;
}