diff --git a/desktop/browser_window.c b/desktop/browser_window.c index fcee08599..2a3948f4c 100644 --- a/desktop/browser_window.c +++ b/desktop/browser_window.c @@ -3044,6 +3044,8 @@ browser_window_create(enum browser_window_create_flags flags, gw_flags |= GW_CREATE_CLONE; if (flags & BW_CREATE_FOREGROUND) gw_flags |= GW_CREATE_FOREGROUND; + if (flags & BW_CREATE_FOCUS_LOCATION) + gw_flags |= GW_CREATE_FOCUS_LOCATION; ret->window = guit->window->create(ret, (existing != NULL) ? existing->window : NULL, diff --git a/include/netsurf/browser_window.h b/include/netsurf/browser_window.h index 75977ace4..f8b86d07a 100644 --- a/include/netsurf/browser_window.h +++ b/include/netsurf/browser_window.h @@ -112,6 +112,9 @@ enum browser_window_create_flags { /** Request foreground opening. */ BW_CREATE_FOREGROUND = (1 << 4), + + /** Request location bar focus. */ + BW_CREATE_FOCUS_LOCATION = (1 << 5), }; /** flags to browser_window_navigate */ diff --git a/include/netsurf/window.h b/include/netsurf/window.h index a393a3560..16fd95e30 100644 --- a/include/netsurf/window.h +++ b/include/netsurf/window.h @@ -68,6 +68,7 @@ typedef enum { GW_CREATE_CLONE = (1 << 0), /**< Clone existing window */ GW_CREATE_TAB = (1 << 1), /**< Create tab in same window as existing */ GW_CREATE_FOREGROUND = (1 << 2), /**< Request this window/tab is foregrounded */ + GW_CREATE_FOCUS_LOCATION = (1 << 3) , /** Request this window/tab focusses the URL input */ } gui_window_create_flags; /**