mirror of
https://github.com/electron/electron.git
synced 2026-01-09 15:38:08 -05:00
* chore: bump chromium in DEPS to 142.0.7429.0
* chore: bump chromium in DEPS to 142.0.7430.0
* 6954508: Reland Migrate WrappableWithNamedPropertyInterceptor to gin::Wrappable | https://chromium-review.googlesource.com/c/chromium/src/+/6954508
* https://chromium-review.googlesource.com/c/chromium/src/+/6955633
* 5584820: Fix font face resolution when renderer is blocked | https://chromium-review.googlesource.com/c/chromium/src/+/5584820
* chore: export patches
* chore: remove patch that keeley says is ok to remove in comments
* chore: bump chromium in DEPS to 142.0.7432.0
* chore: export patches
* chore: bump chromium in DEPS to 142.0.7434.0
* 6973697: Use type tags for data stored in V8 internal fields | https://chromium-review.googlesource.com/c/chromium/src/+/6973697
* 6976272: Revert Reland mac: click through content area in main window | https://chromium-review.googlesource.com/c/chromium/src/+/6976272
* chore: export patches
* 6938086: Rename native_widget_types.h -> native_ui_types.h | https://chromium-review.googlesource.com/c/chromium/src/+/6938086
* 6951252: Correct PersistentCache backed code cache context grouping
* chore: bump chromium in DEPS to 142.0.7436.0
* 6981628: Reland Use unordered_map in AcceleratorMap | https://chromium-review.googlesource.com/c/chromium/src/+/6981628
* chore: export patches
* chore: resolve patch conflict with main
* chore: merge conflict with main
* chore: bump chromium in DEPS to 142.0.7438.0
* chore: bump chromium in DEPS to 142.0.7440.0
* chore: bump chromium in DEPS to 142.0.7442.0
* chore: bump chromium in DEPS to 142.0.7444.0
* chore: bump chromium in DEPS to 143.0.7445.0
* chore: bump chromium in DEPS to 143.0.7447.0
* chore: bump chromium in DEPS to 143.0.7449.0
* chore: bump chromium in DEPS to 143.0.7451.0
* 7001364: Migrate GURL accessors to Get* variants in //content | https://chromium-review.googlesource.com/c/chromium/src/+/7001364
* 6986521: Implicit second value 'any' instead of 'span-all' for fallback query | https://chromium-review.googlesource.com/c/chromium/src/+/6986521
* chore: update chromium patches
* chore: update chromium patches
* chore: update patches
* fix: parse macOS SDK version across line break
https://chromium-review.googlesource.com/c/chromium/src/+/6980166
* fix: replace v8::Object::SetPrototype() usage
https://chromium-review.googlesource.com/c/v8/v8/+/6983465
https://github.com/nodejs/node/pull/55453
* fix: regenerate filenames.libcxx.gni
https://chromium-review.googlesource.com/c/chromium/src/+/6980307
* fix: replace additional usages of SetPrototype
https://chromium-review.googlesource.com/c/v8/v8/+/6983465
* build: use macos 15 minimum
https://chromium-review.googlesource.com/c/chromium/src/+/6980166
* ci: ignore missing dir for strip_universal_deep
* fix: js2c compilation failure
https://chromium-review.googlesource.com/c/chromium/src/+/6950738
See patch description explaining MacOS 26 SDK headers incompatibility.
* fixup! chore: export patches
* feat: add new memory-eviction exit reason
https://chromium-review.googlesource.com/c/chromium/src/+/6991933
* fix: set JSON reader parsing options
https://chromium-review.googlesource.com/c/chromium/src/+/6992114
* fix: provide DeviceEmulationCacheBehavior param
https://chromium-review.googlesource.com/c/chromium/src/+/6965238
* fix: views::NonClientFrameView -> views::FrameView
https://chromium-review.googlesource.com/c/chromium/src/+/7005027
https://chromium-review.googlesource.com/c/chromium/src/+/6966937
* fix: check new forced colors enum value
https://chromium-review.googlesource.com/c/chromium/src/+/6944403
* fix: migrate NetworkConditions -> MatchedNetworkConditions
https://chromium-review.googlesource.com/c/chromium/src/+/6827307
* fix: migrate GURL string methods to Get*()
https://chromium-review.googlesource.com/c/chromium/src/+/7007010
* fix: disable C++ modules in electron_lib builds
https://chromium-review.googlesource.com/c/chromium/src/+/6950738
* fix: partially revert is_headless_mode removal
https://chromium-review.googlesource.com/c/chromium/src/+/6955633
This patch should likely be reworked. For now, this partially reverts the
removal of a required class property to restore behavior.
* Revert "build: use macos 15 minimum"
This reverts commit 2fc12d6acc.
Initially this change was made to test if it fixes libcxx
compilation issues. As that's now resolved by disabling libcxx
modules, this can be reverted.
* fix: disable C++ modules in libnode builds
* fixup! fix: replace v8::Object::SetPrototype() usage https://chromium-review.googlesource.com/c/v8/v8/+/6983465 https://github.com/nodejs/node/pull/55453
* fixup! fix: replace v8::Object::SetPrototype() usage https://chromium-review.googlesource.com/c/v8/v8/+/6983465 https://github.com/nodejs/node/pull/55453
* build: switch to macos-15 runner
build/mac/find_sdk.py now requires macOS 15 SDK as a minimum version. The
macos 15 runners default to an Xcode using the 15 SDK and removes older
versions.
* fixup! fix: check new forced colors enum value https://chromium-review.googlesource.com/c/chromium/src/+/6944403
* fixup! fix: migrate GURL string methods to Get*() https://chromium-review.googlesource.com/c/chromium/src/+/7007010
* fix: use std::u16string for Extension::Create() error parameter
https://chromium-review.googlesource.com/c/chromium/src/+/6975452
* fix: add missing image_skia include
https://chromium-review.googlesource.com/c/chromium/src/+/6986762
* fixup! fix: add missing image_skia include https://chromium-review.googlesource.com/c/chromium/src/+/6986762
* fix: remove outdated V8 flag
https://chromium-review.googlesource.com/c/v8/v8/+/6948286
* fix: disable protocol handler DCHECK
https://chromium-review.googlesource.com/c/chromium/src/+/6727594
Ignore the extension custom protocol handler registry DCHECK until
we invest in supporting it. Replacing this DCHECK seems harmless
and will unblock the roll.
* fix: replace deprecated usage of SetPrototype
https://chromium-review.googlesource.com/c/v8/v8/+/6983465
* fixup! fix: migrate NetworkConditions -> MatchedNetworkConditions https://chromium-review.googlesource.com/c/chromium/src/+/6827307
* fixup! fix: migrate GURL string methods to Get*() https://chromium-review.googlesource.com/c/chromium/src/+/7007010
* chore: remove patch already included in roll
* chore: remove extraneous formatting added to patch
* chore: remove fix_harden_blink_scriptstate_maybefrom.patch
https://chromium-review.googlesource.com/c/chromium/src/+/6973697
No longer needed since the above CL landed.
* 6973697: Use type tags for data stored in V8 internal fields
https://chromium-review.googlesource.com/c/chromium/src/+/6973697
* chore: update patches
* fixup! chore: export patches
* chore: restore electron embedder data tag patch
---------
Co-authored-by: electron-roller[bot] <84116207+electron-roller[bot]@users.noreply.github.com>
Co-authored-by: Alice Zhao <alicelovescake@anthropic.com>
Co-authored-by: Keeley Hammond <vertedinde@electronjs.org>
Co-authored-by: Samuel Maddock <smaddock@slack-corp.com>
Co-authored-by: John Kleinschmidt <jkleinsc@electronjs.org>
428 lines
24 KiB
Diff
428 lines
24 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Andy Locascio <andy@slack-corp.com>
|
|
Date: Wed, 9 Sep 2020 16:56:06 -0700
|
|
Subject: chore: provide IsWebContentsCreationOverridden with full params
|
|
|
|
Pending upstream patch, this gives us fuller access to the window.open params
|
|
so that we will be able to decide whether to cancel it or not.
|
|
|
|
diff --git a/chrome/browser/media/offscreen_tab.cc b/chrome/browser/media/offscreen_tab.cc
|
|
index 047f1258f951f763df2ca0ba355b19d19337826b..9fc7114312212fbe38ddec740b4aebbcd72cb0f8 100644
|
|
--- a/chrome/browser/media/offscreen_tab.cc
|
|
+++ b/chrome/browser/media/offscreen_tab.cc
|
|
@@ -285,8 +285,7 @@ bool OffscreenTab::IsWebContentsCreationOverridden(
|
|
content::SiteInstance* source_site_instance,
|
|
content::mojom::WindowContainerType window_container_type,
|
|
const GURL& opener_url,
|
|
- const std::string& frame_name,
|
|
- const GURL& target_url) {
|
|
+ const content::mojom::CreateNewWindowParams& params) {
|
|
// Disallow creating separate WebContentses. The WebContents implementation
|
|
// uses this to spawn new windows/tabs, which is also not allowed for
|
|
// offscreen tabs.
|
|
diff --git a/chrome/browser/media/offscreen_tab.h b/chrome/browser/media/offscreen_tab.h
|
|
index 231e3595f218aeebe28d0b13ce6182e7a4d6f4e1..609bd205d1cd0404cab3471765bef8b0e053d061 100644
|
|
--- a/chrome/browser/media/offscreen_tab.h
|
|
+++ b/chrome/browser/media/offscreen_tab.h
|
|
@@ -108,8 +108,7 @@ class OffscreenTab final : public ProfileObserver,
|
|
content::SiteInstance* source_site_instance,
|
|
content::mojom::WindowContainerType window_container_type,
|
|
const GURL& opener_url,
|
|
- const std::string& frame_name,
|
|
- const GURL& target_url) final;
|
|
+ const content::mojom::CreateNewWindowParams& params) override;
|
|
void EnterFullscreenModeForTab(
|
|
content::RenderFrameHost* requesting_frame,
|
|
const blink::mojom::FullscreenOptions& options) final;
|
|
diff --git a/chrome/browser/ui/ash/keyboard/chrome_keyboard_web_contents.cc b/chrome/browser/ui/ash/keyboard/chrome_keyboard_web_contents.cc
|
|
index 7f99bf8c0c79de2cb8a812a7bfe8b4255697444a..d39aee929900cca756a6293b782a44228725f6fc 100644
|
|
--- a/chrome/browser/ui/ash/keyboard/chrome_keyboard_web_contents.cc
|
|
+++ b/chrome/browser/ui/ash/keyboard/chrome_keyboard_web_contents.cc
|
|
@@ -80,8 +80,7 @@ class ChromeKeyboardContentsDelegate : public content::WebContentsDelegate,
|
|
content::SiteInstance* source_site_instance,
|
|
content::mojom::WindowContainerType window_container_type,
|
|
const GURL& opener_url,
|
|
- const std::string& frame_name,
|
|
- const GURL& target_url) override {
|
|
+ const content::mojom::CreateNewWindowParams& params) override {
|
|
return true;
|
|
}
|
|
|
|
diff --git a/chrome/browser/ui/ash/web_view/ash_web_view_impl.cc b/chrome/browser/ui/ash/web_view/ash_web_view_impl.cc
|
|
index e4e42249c476ccae58f0ba42e7dbae299f1e36bd..670c30ed4b7f1a07eb4b8abaa95e5a8a9d94bd8d 100644
|
|
--- a/chrome/browser/ui/ash/web_view/ash_web_view_impl.cc
|
|
+++ b/chrome/browser/ui/ash/web_view/ash_web_view_impl.cc
|
|
@@ -121,10 +121,9 @@ bool AshWebViewImpl::IsWebContentsCreationOverridden(
|
|
content::SiteInstance* source_site_instance,
|
|
content::mojom::WindowContainerType window_container_type,
|
|
const GURL& opener_url,
|
|
- const std::string& frame_name,
|
|
- const GURL& target_url) {
|
|
+ const content::mojom::CreateNewWindowParams& params) {
|
|
if (params_.suppress_navigation) {
|
|
- NotifyDidSuppressNavigation(target_url,
|
|
+ NotifyDidSuppressNavigation(params.target_url,
|
|
WindowOpenDisposition::NEW_FOREGROUND_TAB,
|
|
/*from_user_gesture=*/true);
|
|
return true;
|
|
diff --git a/chrome/browser/ui/ash/web_view/ash_web_view_impl.h b/chrome/browser/ui/ash/web_view/ash_web_view_impl.h
|
|
index 39fa45f0a0f9076bd7ac0be6f455dd540a276512..3d0381d463eed73470b28085830f2a23751659a7 100644
|
|
--- a/chrome/browser/ui/ash/web_view/ash_web_view_impl.h
|
|
+++ b/chrome/browser/ui/ash/web_view/ash_web_view_impl.h
|
|
@@ -60,8 +60,7 @@ class AshWebViewImpl : public ash::AshWebView,
|
|
content::SiteInstance* source_site_instance,
|
|
content::mojom::WindowContainerType window_container_type,
|
|
const GURL& opener_url,
|
|
- const std::string& frame_name,
|
|
- const GURL& target_url) override;
|
|
+ const content::mojom::CreateNewWindowParams& params) override;
|
|
content::WebContents* OpenURLFromTab(
|
|
content::WebContents* source,
|
|
const content::OpenURLParams& params,
|
|
diff --git a/chrome/browser/ui/browser.cc b/chrome/browser/ui/browser.cc
|
|
index 757db07950a0b179a105cb6201d21bed8b8fe3b8..6d45f2dcaff894836a0e8584ecb622275e02ae62 100644
|
|
--- a/chrome/browser/ui/browser.cc
|
|
+++ b/chrome/browser/ui/browser.cc
|
|
@@ -2417,7 +2417,8 @@ bool Browser::IsWebContentsCreationOverridden(
|
|
content::mojom::WindowContainerType window_container_type,
|
|
const GURL& opener_url,
|
|
const std::string& frame_name,
|
|
- const GURL& target_url) {
|
|
+ const GURL& target_url,
|
|
+ const content::mojom::CreateNewWindowParams& params) {
|
|
if (HasActorTask(profile(), opener)) {
|
|
// If an ExecutionEngine is acting on the opener, prevent it from creating a
|
|
// new WebContents. We'll instead force the navigation to happen in the same
|
|
@@ -2430,7 +2431,7 @@ bool Browser::IsWebContentsCreationOverridden(
|
|
return (window_container_type ==
|
|
content::mojom::WindowContainerType::BACKGROUND &&
|
|
ShouldCreateBackgroundContents(source_site_instance, opener_url,
|
|
- frame_name));
|
|
+ params.frame));
|
|
}
|
|
|
|
WebContents* Browser::CreateCustomWebContents(
|
|
diff --git a/chrome/browser/ui/browser.h b/chrome/browser/ui/browser.h
|
|
index 81a247cded1dd321f1003221f02a5c3a0c5a3312..037f5ecdf3a4437c935b90c45ef29536e0bfa2e3 100644
|
|
--- a/chrome/browser/ui/browser.h
|
|
+++ b/chrome/browser/ui/browser.h
|
|
@@ -954,8 +954,7 @@ class Browser : public TabStripModelObserver,
|
|
content::SiteInstance* source_site_instance,
|
|
content::mojom::WindowContainerType window_container_type,
|
|
const GURL& opener_url,
|
|
- const std::string& frame_name,
|
|
- const GURL& target_url) override;
|
|
+ const content::mojom::CreateNewWindowParams& params) override;
|
|
content::WebContents* CreateCustomWebContents(
|
|
content::RenderFrameHost* opener,
|
|
content::SiteInstance* source_site_instance,
|
|
diff --git a/chrome/browser/ui/media_router/presentation_receiver_window_controller.cc b/chrome/browser/ui/media_router/presentation_receiver_window_controller.cc
|
|
index a05510eadf5c9ff24bb7999aa76229946319280f..a80ecc46f8a6b84de83d608257d45ae61ccc2170 100644
|
|
--- a/chrome/browser/ui/media_router/presentation_receiver_window_controller.cc
|
|
+++ b/chrome/browser/ui/media_router/presentation_receiver_window_controller.cc
|
|
@@ -206,8 +206,7 @@ bool PresentationReceiverWindowController::IsWebContentsCreationOverridden(
|
|
content::SiteInstance* source_site_instance,
|
|
content::mojom::WindowContainerType window_container_type,
|
|
const GURL& opener_url,
|
|
- const std::string& frame_name,
|
|
- const GURL& target_url) {
|
|
+ const content::mojom::CreateNewWindowParams& params) {
|
|
// Disallow creating separate WebContentses. The WebContents implementation
|
|
// uses this to spawn new windows/tabs, which is also not allowed for
|
|
// local presentations.
|
|
diff --git a/chrome/browser/ui/media_router/presentation_receiver_window_controller.h b/chrome/browser/ui/media_router/presentation_receiver_window_controller.h
|
|
index 3fc06be01f20e8cd314d95d73a3f58c2f0742fe9..c07910ae59a185442f37ea6e7b96fdf3a33aba82 100644
|
|
--- a/chrome/browser/ui/media_router/presentation_receiver_window_controller.h
|
|
+++ b/chrome/browser/ui/media_router/presentation_receiver_window_controller.h
|
|
@@ -106,8 +106,7 @@ class PresentationReceiverWindowController final
|
|
content::SiteInstance* source_site_instance,
|
|
content::mojom::WindowContainerType window_container_type,
|
|
const GURL& opener_url,
|
|
- const std::string& frame_name,
|
|
- const GURL& target_url) override;
|
|
+ const content::mojom::CreateNewWindowParams& params) override;
|
|
|
|
// The profile used for the presentation.
|
|
raw_ptr<Profile, DanglingUntriaged> otr_profile_;
|
|
diff --git a/chrome/browser/ui/views/hats/hats_next_web_dialog.cc b/chrome/browser/ui/views/hats/hats_next_web_dialog.cc
|
|
index 3bbd4e568ba99245622a96f0801d2b6cd203025f..1e0b7d16b33daed980961dd49c667a3b254c186f 100644
|
|
--- a/chrome/browser/ui/views/hats/hats_next_web_dialog.cc
|
|
+++ b/chrome/browser/ui/views/hats/hats_next_web_dialog.cc
|
|
@@ -104,8 +104,7 @@ class HatsNextWebDialog::HatsWebView : public views::WebView {
|
|
content::SiteInstance* source_site_instance,
|
|
content::mojom::WindowContainerType window_container_type,
|
|
const GURL& opener_url,
|
|
- const std::string& frame_name,
|
|
- const GURL& target_url) override {
|
|
+ const content::mojom::CreateNewWindowParams& params) override {
|
|
return true;
|
|
}
|
|
content::WebContents* CreateCustomWebContents(
|
|
diff --git a/components/embedder_support/android/delegate/web_contents_delegate_android.cc b/components/embedder_support/android/delegate/web_contents_delegate_android.cc
|
|
index 279f7501a197380dd63c8fe7827854b16d46e5f7..2b80f1970a067e91794a81fcc19e5be64b6b2944 100644
|
|
--- a/components/embedder_support/android/delegate/web_contents_delegate_android.cc
|
|
+++ b/components/embedder_support/android/delegate/web_contents_delegate_android.cc
|
|
@@ -205,14 +205,13 @@ bool WebContentsDelegateAndroid::IsWebContentsCreationOverridden(
|
|
content::SiteInstance* source_site_instance,
|
|
content::mojom::WindowContainerType window_container_type,
|
|
const GURL& opener_url,
|
|
- const std::string& frame_name,
|
|
- const GURL& target_url) {
|
|
+ const content::mojom::CreateNewWindowParams& params) {
|
|
JNIEnv* env = AttachCurrentThread();
|
|
ScopedJavaLocalRef<jobject> obj = GetJavaDelegate(env);
|
|
if (obj.is_null())
|
|
return false;
|
|
ScopedJavaLocalRef<jobject> java_gurl =
|
|
- url::GURLAndroid::FromNativeGURL(env, target_url);
|
|
+ url::GURLAndroid::FromNativeGURL(env, params.target_url.spec());
|
|
return !Java_WebContentsDelegateAndroid_shouldCreateWebContents(env, obj,
|
|
java_gurl);
|
|
}
|
|
diff --git a/components/embedder_support/android/delegate/web_contents_delegate_android.h b/components/embedder_support/android/delegate/web_contents_delegate_android.h
|
|
index 261d38394a9ff6f81848b94d6b183b2062c37ba9..0c6a26599bb8fef6f9ee6180fc0a98760d857b19 100644
|
|
--- a/components/embedder_support/android/delegate/web_contents_delegate_android.h
|
|
+++ b/components/embedder_support/android/delegate/web_contents_delegate_android.h
|
|
@@ -78,8 +78,7 @@ class WebContentsDelegateAndroid : public content::WebContentsDelegate {
|
|
content::SiteInstance* source_site_instance,
|
|
content::mojom::WindowContainerType window_container_type,
|
|
const GURL& opener_url,
|
|
- const std::string& frame_name,
|
|
- const GURL& target_url) override;
|
|
+ const content::mojom::CreateNewWindowParams& params) override;
|
|
void CloseContents(content::WebContents* source) override;
|
|
bool DidAddMessageToConsole(content::WebContents* source,
|
|
blink::mojom::ConsoleMessageLevel log_level,
|
|
diff --git a/components/offline_pages/content/background_loader/background_loader_contents.cc b/components/offline_pages/content/background_loader/background_loader_contents.cc
|
|
index 14f2758f2d71d4d4ba77e4fcb9be40bb878526e0..536db4f8fe9771b60f0359df5c680b298c89cad4 100644
|
|
--- a/components/offline_pages/content/background_loader/background_loader_contents.cc
|
|
+++ b/components/offline_pages/content/background_loader/background_loader_contents.cc
|
|
@@ -86,8 +86,7 @@ bool BackgroundLoaderContents::IsWebContentsCreationOverridden(
|
|
content::SiteInstance* source_site_instance,
|
|
content::mojom::WindowContainerType window_container_type,
|
|
const GURL& opener_url,
|
|
- const std::string& frame_name,
|
|
- const GURL& target_url) {
|
|
+ const content::mojom::CreateNewWindowParams& params) {
|
|
// Background pages should not create other webcontents/tabs.
|
|
return true;
|
|
}
|
|
diff --git a/components/offline_pages/content/background_loader/background_loader_contents.h b/components/offline_pages/content/background_loader/background_loader_contents.h
|
|
index b969f1d97b7e3396119b579cfbe61e19ff7d2dd4..b8d6169652da28266a514938b45b39c58df53573 100644
|
|
--- a/components/offline_pages/content/background_loader/background_loader_contents.h
|
|
+++ b/components/offline_pages/content/background_loader/background_loader_contents.h
|
|
@@ -66,8 +66,7 @@ class BackgroundLoaderContents : public content::WebContentsDelegate {
|
|
content::SiteInstance* source_site_instance,
|
|
content::mojom::WindowContainerType window_container_type,
|
|
const GURL& opener_url,
|
|
- const std::string& frame_name,
|
|
- const GURL& target_url) override;
|
|
+ const content::mojom::CreateNewWindowParams& params) override;
|
|
|
|
content::WebContents* AddNewContents(
|
|
content::WebContents* source,
|
|
diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc
|
|
index e7a985973e1fd6ff51649d4e3fe802cc306c8f39..dfcb0be8195aab4df36c319c0996ec8a1a4f555e 100644
|
|
--- a/content/browser/web_contents/web_contents_impl.cc
|
|
+++ b/content/browser/web_contents/web_contents_impl.cc
|
|
@@ -5257,8 +5257,7 @@ FrameTree* WebContentsImpl::CreateNewWindow(
|
|
if (delegate_ &&
|
|
delegate_->IsWebContentsCreationOverridden(
|
|
opener, source_site_instance, params.window_container_type,
|
|
- opener->GetLastCommittedURL(), params.frame_name,
|
|
- params.target_url)) {
|
|
+ opener->GetLastCommittedURL(), params)) {
|
|
auto* web_contents_impl =
|
|
static_cast<WebContentsImpl*>(delegate_->CreateCustomWebContents(
|
|
opener, source_site_instance, is_new_browsing_instance,
|
|
diff --git a/content/public/browser/web_contents_delegate.cc b/content/public/browser/web_contents_delegate.cc
|
|
index df972f1ce594f2d4651202b650ff2d41fe19ecd0..a92305042eef86fbabeae6fe02b48668a349be99 100644
|
|
--- a/content/public/browser/web_contents_delegate.cc
|
|
+++ b/content/public/browser/web_contents_delegate.cc
|
|
@@ -160,8 +160,7 @@ bool WebContentsDelegate::IsWebContentsCreationOverridden(
|
|
SiteInstance* source_site_instance,
|
|
mojom::WindowContainerType window_container_type,
|
|
const GURL& opener_url,
|
|
- const std::string& frame_name,
|
|
- const GURL& target_url) {
|
|
+ const mojom::CreateNewWindowParams& params) {
|
|
return false;
|
|
}
|
|
|
|
diff --git a/content/public/browser/web_contents_delegate.h b/content/public/browser/web_contents_delegate.h
|
|
index 38b61d04446736bcc44a412f633c01ed9aca5399..3c982afb1af048618506a36ca3532b15720d8869 100644
|
|
--- a/content/public/browser/web_contents_delegate.h
|
|
+++ b/content/public/browser/web_contents_delegate.h
|
|
@@ -368,8 +368,7 @@ class CONTENT_EXPORT WebContentsDelegate {
|
|
SiteInstance* source_site_instance,
|
|
mojom::WindowContainerType window_container_type,
|
|
const GURL& opener_url,
|
|
- const std::string& frame_name,
|
|
- const GURL& target_url);
|
|
+ const mojom::CreateNewWindowParams& params);
|
|
|
|
// Allow delegate to creates a custom WebContents when
|
|
// WebContents::CreateNewWindow() is called. This function is only called
|
|
diff --git a/extensions/browser/guest_view/app_view/app_view_guest.cc b/extensions/browser/guest_view/app_view/app_view_guest.cc
|
|
index af80323215e2cb6ff7bdb802f8da4bdbe0067f71..187816751bde435e9c622921c457873d4b3172cd 100644
|
|
--- a/extensions/browser/guest_view/app_view/app_view_guest.cc
|
|
+++ b/extensions/browser/guest_view/app_view/app_view_guest.cc
|
|
@@ -153,8 +153,7 @@ bool AppViewGuest::IsWebContentsCreationOverridden(
|
|
content::SiteInstance* source_site_instance,
|
|
content::mojom::WindowContainerType window_container_type,
|
|
const GURL& opener_url,
|
|
- const std::string& frame_name,
|
|
- const GURL& target_url) {
|
|
+ const content::mojom::CreateNewWindowParams& params) {
|
|
CHECK(!base::FeatureList::IsEnabled(features::kGuestViewMPArch));
|
|
|
|
return true;
|
|
diff --git a/extensions/browser/guest_view/app_view/app_view_guest.h b/extensions/browser/guest_view/app_view/app_view_guest.h
|
|
index 7695578f626f2a0c7fefae2bc1d5c35e5ac154f2..78958bff12ce41ae5ad77f43279a4b35b9408a12 100644
|
|
--- a/extensions/browser/guest_view/app_view/app_view_guest.h
|
|
+++ b/extensions/browser/guest_view/app_view/app_view_guest.h
|
|
@@ -10,6 +10,7 @@
|
|
#include "base/containers/id_map.h"
|
|
#include "base/values.h"
|
|
#include "components/guest_view/browser/guest_view.h"
|
|
+#include "content/common/frame.mojom-shared.h"
|
|
#include "extensions/browser/guest_view/app_view/app_view_guest_delegate.h"
|
|
#include "extensions/browser/lazy_context_task_queue.h"
|
|
|
|
@@ -80,8 +81,7 @@ class AppViewGuest : public guest_view::GuestView<AppViewGuest> {
|
|
content::SiteInstance* source_site_instance,
|
|
content::mojom::WindowContainerType window_container_type,
|
|
const GURL& opener_url,
|
|
- const std::string& frame_name,
|
|
- const GURL& target_url) final;
|
|
+ const content::mojom::CreateNewWindowParams& params) final;
|
|
content::WebContents* CreateCustomWebContents(
|
|
content::RenderFrameHost* opener,
|
|
content::SiteInstance* source_site_instance,
|
|
diff --git a/extensions/browser/guest_view/extension_options/extension_options_guest.cc b/extensions/browser/guest_view/extension_options/extension_options_guest.cc
|
|
index 0ab40dfd23d1071212c4d30d01fa8e7755458d4a..f032127a94c52beb3f509d6ea84c7e55f21084e2 100644
|
|
--- a/extensions/browser/guest_view/extension_options/extension_options_guest.cc
|
|
+++ b/extensions/browser/guest_view/extension_options/extension_options_guest.cc
|
|
@@ -263,8 +263,7 @@ bool ExtensionOptionsGuest::IsWebContentsCreationOverridden(
|
|
content::SiteInstance* source_site_instance,
|
|
content::mojom::WindowContainerType window_container_type,
|
|
const GURL& opener_url,
|
|
- const std::string& frame_name,
|
|
- const GURL& target_url) {
|
|
+ const content::mojom::CreateNewWindowParams& params) {
|
|
CHECK(!base::FeatureList::IsEnabled(features::kGuestViewMPArch));
|
|
|
|
// This method handles opening links from within the guest. Since this guest
|
|
diff --git a/extensions/browser/guest_view/extension_options/extension_options_guest.h b/extensions/browser/guest_view/extension_options/extension_options_guest.h
|
|
index 56d86e3d1179df2d5f34eb6216989aef2687f49f..236f3ccf8354b156737e03929ee538f99f1f4adf 100644
|
|
--- a/extensions/browser/guest_view/extension_options/extension_options_guest.h
|
|
+++ b/extensions/browser/guest_view/extension_options/extension_options_guest.h
|
|
@@ -74,8 +74,7 @@ class ExtensionOptionsGuest
|
|
content::SiteInstance* source_site_instance,
|
|
content::mojom::WindowContainerType window_container_type,
|
|
const GURL& opener_url,
|
|
- const std::string& frame_name,
|
|
- const GURL& target_url) final;
|
|
+ const content::mojom::CreateNewWindowParams& params) final;
|
|
content::WebContents* CreateCustomWebContents(
|
|
content::RenderFrameHost* opener,
|
|
content::SiteInstance* source_site_instance,
|
|
diff --git a/extensions/browser/guest_view/mime_handler_view/mime_handler_view_guest.cc b/extensions/browser/guest_view/mime_handler_view/mime_handler_view_guest.cc
|
|
index 23705fa50cf79865b68d8352f6ec72444ca5233e..efa5e78ed92464a6d47319f7b2087555d683bd8c 100644
|
|
--- a/extensions/browser/guest_view/mime_handler_view/mime_handler_view_guest.cc
|
|
+++ b/extensions/browser/guest_view/mime_handler_view/mime_handler_view_guest.cc
|
|
@@ -424,8 +424,7 @@ bool MimeHandlerViewGuest::IsWebContentsCreationOverridden(
|
|
content::SiteInstance* source_site_instance,
|
|
content::mojom::WindowContainerType window_container_type,
|
|
const GURL& opener_url,
|
|
- const std::string& frame_name,
|
|
- const GURL& target_url) {
|
|
+ const content::mojom::CreateNewWindowParams& params) {
|
|
CHECK(!base::FeatureList::IsEnabled(features::kGuestViewMPArch));
|
|
|
|
return true;
|
|
diff --git a/extensions/browser/guest_view/mime_handler_view/mime_handler_view_guest.h b/extensions/browser/guest_view/mime_handler_view/mime_handler_view_guest.h
|
|
index 7eeffdfbda9611806c6f260f0c68f6d84689cb7e..5d8f6d132068d7fabaa52bc61354c71a8ac8cd20 100644
|
|
--- a/extensions/browser/guest_view/mime_handler_view/mime_handler_view_guest.h
|
|
+++ b/extensions/browser/guest_view/mime_handler_view/mime_handler_view_guest.h
|
|
@@ -187,8 +187,7 @@ class MimeHandlerViewGuest
|
|
content::SiteInstance* source_site_instance,
|
|
content::mojom::WindowContainerType window_container_type,
|
|
const GURL& opener_url,
|
|
- const std::string& frame_name,
|
|
- const GURL& target_url) override;
|
|
+ const content::mojom::CreateNewWindowParams& params) override;
|
|
content::WebContents* CreateCustomWebContents(
|
|
content::RenderFrameHost* opener,
|
|
content::SiteInstance* source_site_instance,
|
|
diff --git a/fuchsia_web/webengine/browser/frame_impl.cc b/fuchsia_web/webengine/browser/frame_impl.cc
|
|
index e3761e1de9031dafab2e26063d048ddfe784a682..d3ff31613f5ecfe3407d3088b25c0422e7e7a93c 100644
|
|
--- a/fuchsia_web/webengine/browser/frame_impl.cc
|
|
+++ b/fuchsia_web/webengine/browser/frame_impl.cc
|
|
@@ -585,8 +585,7 @@ bool FrameImpl::IsWebContentsCreationOverridden(
|
|
content::SiteInstance* source_site_instance,
|
|
content::mojom::WindowContainerType window_container_type,
|
|
const GURL& opener_url,
|
|
- const std::string& frame_name,
|
|
- const GURL& target_url) {
|
|
+ const content::mojom::CreateNewWindowParams& params) {
|
|
// Specify a generous upper bound for unacknowledged popup windows, so that we
|
|
// can catch bad client behavior while not interfering with normal operation.
|
|
constexpr size_t kMaxPendingWebContentsCount = 10;
|
|
diff --git a/fuchsia_web/webengine/browser/frame_impl.h b/fuchsia_web/webengine/browser/frame_impl.h
|
|
index 756d4192271d6a65cfe8e1511737c565b543cb1f..5688f6f745056565c3c01947f741c4d13e27b6ae 100644
|
|
--- a/fuchsia_web/webengine/browser/frame_impl.h
|
|
+++ b/fuchsia_web/webengine/browser/frame_impl.h
|
|
@@ -308,8 +308,7 @@ class WEB_ENGINE_EXPORT FrameImpl : public fuchsia::web::Frame,
|
|
content::SiteInstance* source_site_instance,
|
|
content::mojom::WindowContainerType window_container_type,
|
|
const GURL& opener_url,
|
|
- const std::string& frame_name,
|
|
- const GURL& target_url) override;
|
|
+ const content::mojom::CreateNewWindowParams& params) override;
|
|
void WebContentsCreated(content::WebContents* source_contents,
|
|
int opener_render_process_id,
|
|
int opener_render_frame_id,
|
|
diff --git a/headless/lib/browser/headless_web_contents_impl.cc b/headless/lib/browser/headless_web_contents_impl.cc
|
|
index 00d3e4de6945e76761576eb95a66e4777f7f2f70..312559105d5de88d81edc917522aecb6a3890104 100644
|
|
--- a/headless/lib/browser/headless_web_contents_impl.cc
|
|
+++ b/headless/lib/browser/headless_web_contents_impl.cc
|
|
@@ -207,8 +207,7 @@ class HeadlessWebContentsImpl::Delegate : public content::WebContentsDelegate {
|
|
content::SiteInstance* source_site_instance,
|
|
content::mojom::WindowContainerType window_container_type,
|
|
const GURL& opener_url,
|
|
- const std::string& frame_name,
|
|
- const GURL& target_url) override {
|
|
+ const content::mojom::CreateNewWindowParams& params) override {
|
|
return headless_web_contents_->browser_context()
|
|
->options()
|
|
->block_new_web_contents();
|
|
diff --git a/ui/views/controls/webview/web_dialog_view.cc b/ui/views/controls/webview/web_dialog_view.cc
|
|
index f56882565de72fa9ab660b4a8d86f08c7392becd..439586a03288822bab8f5f21d0c38b678ed52fb6 100644
|
|
--- a/ui/views/controls/webview/web_dialog_view.cc
|
|
+++ b/ui/views/controls/webview/web_dialog_view.cc
|
|
@@ -489,8 +489,7 @@ bool WebDialogView::IsWebContentsCreationOverridden(
|
|
content::SiteInstance* source_site_instance,
|
|
content::mojom::WindowContainerType window_container_type,
|
|
const GURL& opener_url,
|
|
- const std::string& frame_name,
|
|
- const GURL& target_url) {
|
|
+ const content::mojom::CreateNewWindowParams& params) {
|
|
if (delegate_) {
|
|
return delegate_->HandleShouldOverrideWebContentsCreation();
|
|
}
|
|
diff --git a/ui/views/controls/webview/web_dialog_view.h b/ui/views/controls/webview/web_dialog_view.h
|
|
index 720611a58300a0252d5dd66e1e7c98282dc82646..eb0abf978651266fe7e4d6a8e9af30024fceb7d1 100644
|
|
--- a/ui/views/controls/webview/web_dialog_view.h
|
|
+++ b/ui/views/controls/webview/web_dialog_view.h
|
|
@@ -167,8 +167,7 @@ class WEBVIEW_EXPORT WebDialogView : public ClientView,
|
|
content::SiteInstance* source_site_instance,
|
|
content::mojom::WindowContainerType window_container_type,
|
|
const GURL& opener_url,
|
|
- const std::string& frame_name,
|
|
- const GURL& target_url) override;
|
|
+ const content::mojom::CreateNewWindowParams& params) override;
|
|
void RequestMediaAccessPermission(
|
|
content::WebContents* web_contents,
|
|
const content::MediaStreamRequest& request,
|