Commit b0835455 authored by Jiewei Qian's avatar Jiewei Qian Committed by Commit Bot

os-settings: check URL origin for link capture

Let browser_navigator check for OS Settings origin when it decides to
open OS Settings in a standalone window.

Before this CL, browser_navigator ignores the scheme and checks for
os-settings host only. Thus URLs like http://os-settings/ will open a
standalone window (with OS Settings icon). This is misleading.

Fixed: 1114023
Change-Id: I8a8f5d21e3f3d6aae0d4baea9194ac64d065fcd2
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2342232Reviewed-by: default avatarScott Violet <sky@chromium.org>
Reviewed-by: default avatarKyle Horimoto <khorimoto@chromium.org>
Commit-Queue: Jiewei Qian  <qjw@chromium.org>
Cr-Commit-Position: refs/heads/master@{#797513}
parent 488d64e3
...@@ -529,7 +529,8 @@ void Navigate(NavigateParams* params) { ...@@ -529,7 +529,8 @@ void Navigate(NavigateParams* params) {
#if defined(OS_CHROMEOS) #if defined(OS_CHROMEOS)
if (source_browser) { if (source_browser) {
// Open OS settings in PWA, even when user types in URL bar. // Open OS settings in PWA, even when user types in URL bar.
if (params->url.host() == chrome::kChromeUIOSSettingsHost && if (params->url.GetOrigin() ==
GURL(chrome::kChromeUIOSSettingsURL).GetOrigin() &&
!allow_os_settings_in_tab) { !allow_os_settings_in_tab) {
chrome::SettingsWindowManager* settings_window_manager = chrome::SettingsWindowManager* settings_window_manager =
chrome::SettingsWindowManager::GetInstance(); chrome::SettingsWindowManager::GetInstance();
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment