diff --git a/CHROMIUM_BUILD_COMPATIBILITY.txt b/CHROMIUM_BUILD_COMPATIBILITY.txt index ca677afab..ab160dad7 100644 --- a/CHROMIUM_BUILD_COMPATIBILITY.txt +++ b/CHROMIUM_BUILD_COMPATIBILITY.txt @@ -7,5 +7,5 @@ # https://bitbucket.org/chromiumembedded/cef/wiki/BranchesAndBuilding { - 'chromium_checkout': 'refs/tags/69.0.3483.0', + 'chromium_checkout': 'refs/tags/69.0.3489.0', } diff --git a/libcef/browser/browser_host_impl.cc b/libcef/browser/browser_host_impl.cc index 5f5f16fee..2bad458c4 100644 --- a/libcef/browser/browser_host_impl.cc +++ b/libcef/browser/browser_host_impl.cc @@ -224,6 +224,13 @@ bool CefBrowserHost::CreateBrowser( return false; } + if (windowInfo.windowless_rendering_enabled && + !CefContext::Get()->settings().windowless_rendering_enabled) { + LOG(ERROR) << "Creating a windowless browser without setting " + "CefSettings.windowless_rendering_enabled may result in " + "reduced performance or runtime errors."; + } + // Create the browser on the UI thread. CreateBrowserHelper* helper = new CreateBrowserHelper( windowInfo, client, url, settings, request_context); diff --git a/libcef/browser/chrome_browser_process_stub.cc b/libcef/browser/chrome_browser_process_stub.cc index 9a52d1751..d6b9781c4 100644 --- a/libcef/browser/chrome_browser_process_stub.cc +++ b/libcef/browser/chrome_browser_process_stub.cc @@ -16,6 +16,7 @@ #include "components/net_log/chrome_net_log.h" #include "content/public/common/content_switches.h" #include "services/network/public/cpp/network_switches.h" +#include "services/network/public/cpp/shared_url_loader_factory.h" ChromeBrowserProcessStub::ChromeBrowserProcessStub() : initialized_(false), @@ -144,6 +145,12 @@ ChromeBrowserProcessStub::system_request_context() { return NULL; } +scoped_refptr +ChromeBrowserProcessStub::shared_url_loader_factory() { + NOTREACHED(); + return NULL; +} + variations::VariationsService* ChromeBrowserProcessStub::variations_service() { NOTREACHED(); return NULL; diff --git a/libcef/browser/chrome_browser_process_stub.h b/libcef/browser/chrome_browser_process_stub.h index 4600b1d43..e171e7de1 100644 --- a/libcef/browser/chrome_browser_process_stub.h +++ b/libcef/browser/chrome_browser_process_stub.h @@ -55,6 +55,8 @@ class ChromeBrowserProcessStub : public BrowserProcess, ProfileManager* profile_manager() override; PrefService* local_state() override; net::URLRequestContextGetter* system_request_context() override; + scoped_refptr shared_url_loader_factory() + override; variations::VariationsService* variations_service() override; BrowserProcessPlatformPart* platform_part() override; extensions::EventRouterForwarder* extension_event_router_forwarder() override; diff --git a/libcef/browser/extensions/extension_web_contents_observer.cc b/libcef/browser/extensions/extension_web_contents_observer.cc index 02a1bd6ca..290039790 100644 --- a/libcef/browser/extensions/extension_web_contents_observer.cc +++ b/libcef/browser/extensions/extension_web_contents_observer.cc @@ -46,7 +46,7 @@ void CefExtensionWebContentsObserver::RenderFrameCreated( // are allowed to use chrome://resources/ URLs. if ((extension->is_extension() || extension->is_platform_app()) && Manifest::IsComponentLocation(extension->location())) { - policy->GrantOrigin( + policy->GrantRequestOrigin( process_id, url::Origin::Create(GURL(content::kChromeUIResourcesURL))); } } diff --git a/libcef/browser/net/url_request_context_getter_impl.cc b/libcef/browser/net/url_request_context_getter_impl.cc index e4762bf79..22f941cae 100644 --- a/libcef/browser/net/url_request_context_getter_impl.cc +++ b/libcef/browser/net/url_request_context_getter_impl.cc @@ -350,7 +350,7 @@ net::URLRequestContext* CefURLRequestContextGetterImpl::GetURLRequestContext() { std::move(system_proxy_service)); io_state_->storage_->set_ssl_config_service( - std::make_unique()); + new net::SSLConfigServiceDefaults); std::vector supported_schemes; supported_schemes.push_back("basic"); diff --git a/libcef/browser/osr/web_contents_view_osr.cc b/libcef/browser/osr/web_contents_view_osr.cc index bcf2dab0f..a20b0f6cf 100644 --- a/libcef/browser/osr/web_contents_view_osr.cc +++ b/libcef/browser/osr/web_contents_view_osr.cc @@ -137,10 +137,9 @@ void CefWebContentsViewOSR::RenderViewCreated(content::RenderViewHost* host) { void CefWebContentsViewOSR::RenderViewReady() {} -void CefWebContentsViewOSR::RenderFrameSwappedIn( - content::RenderFrameHost* old_host, - content::RenderFrameHost* new_host, - bool is_main_frame) {} +void CefWebContentsViewOSR::RenderViewHostChanged( + content::RenderViewHost* old_host, + content::RenderViewHost* new_host) {} void CefWebContentsViewOSR::SetOverscrollControllerEnabled(bool enabled) {} diff --git a/libcef/browser/osr/web_contents_view_osr.h b/libcef/browser/osr/web_contents_view_osr.h index 27403fd36..6e30c5654 100644 --- a/libcef/browser/osr/web_contents_view_osr.h +++ b/libcef/browser/osr/web_contents_view_osr.h @@ -52,9 +52,8 @@ class CefWebContentsViewOSR : public content::WebContentsView, void SetPageTitle(const base::string16& title) override; void RenderViewCreated(content::RenderViewHost* host) override; void RenderViewReady() override; - void RenderFrameSwappedIn(content::RenderFrameHost* old_host, - content::RenderFrameHost* new_host, - bool is_main_frame) override; + void RenderViewHostChanged(content::RenderViewHost* old_host, + content::RenderViewHost* new_host) override; void SetOverscrollControllerEnabled(bool enabled) override; #if defined(OS_MACOSX) diff --git a/libcef/common/main_delegate.cc b/libcef/common/main_delegate.cc index dc4641803..c13c66247 100644 --- a/libcef/common/main_delegate.cc +++ b/libcef/common/main_delegate.cc @@ -31,7 +31,6 @@ #include "content/browser/browser_process_sub_thread.h" #include "content/public/browser/browser_main_runner.h" #include "content/public/browser/render_process_host.h" -#include "content/public/common/content_features.h" #include "content/public/common/content_switches.h" #include "content/public/common/main_function_params.h" #include "extensions/common/constants.h" @@ -244,12 +243,9 @@ bool IsScaleFactorSupported(ui::ScaleFactor scale_factor) { // Used to run the UI on a separate thread. class CefUIThread : public base::Thread { public: - CefUIThread( - const content::MainFunctionParams& main_function_params, - std::unique_ptr service_manager_thread) + CefUIThread(const content::MainFunctionParams& main_function_params) : base::Thread("CefUIThread"), - main_function_params_(main_function_params), - service_manager_thread_(std::move(service_manager_thread)) {} + main_function_params_(main_function_params) {} void Init() override { #if defined(OS_WIN) @@ -261,8 +257,7 @@ class CefUIThread : public base::Thread { browser_runner_.reset(content::BrowserMainRunner::Create()); // Initialize browser process state. Uses the current thread's mesage loop. - int exit_code = browser_runner_->Initialize( - main_function_params_, std::move(service_manager_thread_)); + int exit_code = browser_runner_->Initialize(main_function_params_); CHECK_EQ(exit_code, -1); } @@ -279,7 +274,6 @@ class CefUIThread : public base::Thread { protected: content::MainFunctionParams main_function_params_; - std::unique_ptr service_manager_thread_; std::unique_ptr browser_runner_; }; @@ -441,30 +435,6 @@ bool CefMainDelegate::BasicStartupComplete(int* exit_code) { switches::kUncaughtExceptionStackSize, base::IntToString(settings.uncaught_exception_stack_size)); } - - std::vector disable_features; - - if (settings.windowless_rendering_enabled) { - // Disable AsyncWheelEvents when OSR is enabled to avoid DCHECKs in - // MouseWheelEventQueue. - if (features::kAsyncWheelEvents.default_state == - base::FEATURE_ENABLED_BY_DEFAULT) { - disable_features.push_back(features::kAsyncWheelEvents.name); - } - } - - if (!disable_features.empty()) { - DCHECK(!base::FeatureList::GetInstance()); - std::string disable_features_str = - command_line->GetSwitchValueASCII(switches::kDisableFeatures); - for (auto feature_str : disable_features) { - if (!disable_features_str.empty()) - disable_features_str += ","; - disable_features_str += feature_str; - } - command_line->AppendSwitchASCII(switches::kDisableFeatures, - disable_features_str); - } } if (content_client_.application().get()) { @@ -576,13 +546,6 @@ void CefMainDelegate::SandboxInitialized(const std::string& process_type) { int CefMainDelegate::RunProcess( const std::string& process_type, const content::MainFunctionParams& main_function_params) { - return RunProcess(process_type, main_function_params, nullptr); -} - -int CefMainDelegate::RunProcess( - const std::string& process_type, - const content::MainFunctionParams& main_function_params, - std::unique_ptr service_manager_thread) { if (process_type.empty()) { const CefSettings& settings = CefContext::Get()->settings(); if (!settings.multi_threaded_message_loop) { @@ -592,15 +555,13 @@ int CefMainDelegate::RunProcess( // Initialize browser process state. Results in a call to // CefBrowserMain::PreMainMessageLoopStart() which creates the UI message // loop. - int exit_code = browser_runner_->Initialize( - main_function_params, std::move(service_manager_thread)); + int exit_code = browser_runner_->Initialize(main_function_params); if (exit_code >= 0) return exit_code; } else { // Run the UI on a separate thread. std::unique_ptr thread; - thread.reset(new CefUIThread(main_function_params, - std::move(service_manager_thread))); + thread.reset(new CefUIThread(main_function_params)); base::Thread::Options options; options.message_loop_type = base::MessageLoop::TYPE_UI; if (!thread->StartWithOptions(options)) { diff --git a/libcef/common/main_delegate.h b/libcef/common/main_delegate.h index 61244be18..bf70c5529 100644 --- a/libcef/common/main_delegate.h +++ b/libcef/common/main_delegate.h @@ -38,10 +38,6 @@ class CefMainDelegate : public content::ContentMainDelegate { int RunProcess( const std::string& process_type, const content::MainFunctionParams& main_function_params) override; - int RunProcess(const std::string& process_type, - const content::MainFunctionParams& main_function_params, - std::unique_ptr - service_manager_thread) override; void ProcessExiting(const std::string& process_type) override; #if defined(OS_LINUX) void ZygoteForked() override; diff --git a/patch/patch.cfg b/patch/patch.cfg index e78c331fb..6707cb395 100644 --- a/patch/patch.cfg +++ b/patch/patch.cfg @@ -49,7 +49,10 @@ patches = [ { # Revert change on Windows that removes MessageLoop::os_modal_loop(). # https://codereview.chromium.org/1992243003 - 'name': 'message_loop_443_1992243003', + # + # Revert change that removes MessageLoopForUI constructor. + # https://chromium-review.googlesource.com/751322 + 'name': 'message_loop', }, { # Enable popups in offscreen rendering on OS X. @@ -371,11 +374,6 @@ patches = [ # https://bugs.chromium.org/p/chromium/issues/detail?id=729800#c48 'name': 'net_cookies_729800', }, - { - # Pass BrowserProcessSubThread to ContentMainDelegate::RunProcess. - # https://bitbucket.org/chromiumembedded/cef/issues/2456 - 'name': 'content_runprocess_2456', - }, { # Linux: Use poll instead of select to fix crash during startup. # https://bitbucket.org/chromiumembedded/cef/issues/2466 diff --git a/patch/patches/DEPS.patch b/patch/patches/DEPS.patch index 6346fb3a3..76cc1a6c7 100644 --- a/patch/patches/DEPS.patch +++ b/patch/patches/DEPS.patch @@ -1,5 +1,5 @@ diff --git tools/clang/scripts/update.py tools/clang/scripts/update.py -index 226c3981a3bb..560a58070883 100755 +index 03132fe9ba9b..aee7538e5902 100755 --- tools/clang/scripts/update.py +++ tools/clang/scripts/update.py @@ -392,7 +392,10 @@ def GetWinSDKDir(): diff --git a/patch/patches/browser_plugin_guest_1565.patch b/patch/patches/browser_plugin_guest_1565.patch index a93aa128c..f83b1dab2 100644 --- a/patch/patches/browser_plugin_guest_1565.patch +++ b/patch/patches/browser_plugin_guest_1565.patch @@ -1,5 +1,5 @@ diff --git content/browser/browser_plugin/browser_plugin_guest.cc content/browser/browser_plugin/browser_plugin_guest.cc -index 2cf5621ae33f..7a5d79ed09e4 100644 +index f56ce93c3d5b..716cf8846378 100644 --- content/browser/browser_plugin/browser_plugin_guest.cc +++ content/browser/browser_plugin/browser_plugin_guest.cc @@ -312,8 +312,11 @@ void BrowserPluginGuest::InitInternal( @@ -37,10 +37,10 @@ index 2cf5621ae33f..7a5d79ed09e4 100644 attached_ = true; diff --git content/browser/frame_host/interstitial_page_impl.cc content/browser/frame_host/interstitial_page_impl.cc -index ad9de41d1e3e..a87ec19a5f54 100644 +index f839f62061bb..2150ceb6c780 100644 --- content/browser/frame_host/interstitial_page_impl.cc +++ content/browser/frame_host/interstitial_page_impl.cc -@@ -622,7 +622,7 @@ WebContentsView* InterstitialPageImpl::CreateWebContentsView() { +@@ -619,7 +619,7 @@ WebContentsView* InterstitialPageImpl::CreateWebContentsView() { WebContentsView* wcv = static_cast(web_contents())->GetView(); RenderWidgetHostViewBase* view = @@ -50,10 +50,10 @@ index ad9de41d1e3e..a87ec19a5f54 100644 render_view_host_->GetMainFrame()->AllowBindings( BINDINGS_POLICY_DOM_AUTOMATION); diff --git content/browser/web_contents/web_contents_view.h content/browser/web_contents/web_contents_view.h -index 50047c045553..5e9424f62623 100644 +index 41e44d5d658a..047c935d8ca2 100644 --- content/browser/web_contents/web_contents_view.h +++ content/browser/web_contents/web_contents_view.h -@@ -25,7 +25,7 @@ struct ScreenInfo; +@@ -24,7 +24,7 @@ struct ScreenInfo; // The WebContentsView is an interface that is implemented by the platform- // dependent web contents views. The WebContents uses this interface to talk to // them. @@ -62,7 +62,7 @@ index 50047c045553..5e9424f62623 100644 public: virtual ~WebContentsView() {} -@@ -89,13 +89,9 @@ class WebContentsView { +@@ -88,13 +88,9 @@ class WebContentsView { // Sets up the View that holds the rendered web page, receives messages for // it and contains page plugins. The host view should be sized to the current // size of the WebContents. @@ -79,7 +79,7 @@ index 50047c045553..5e9424f62623 100644 // Creates a new View that holds a popup and receives messages for it. virtual RenderWidgetHostViewBase* CreateViewForPopupWidget( diff --git content/browser/web_contents/web_contents_view_aura.cc content/browser/web_contents/web_contents_view_aura.cc -index 4a373e27bea4..684457680888 100644 +index 713b17948ef7..8ec3e045783f 100644 --- content/browser/web_contents/web_contents_view_aura.cc +++ content/browser/web_contents/web_contents_view_aura.cc @@ -781,7 +781,8 @@ void WebContentsViewAura::CreateView(const gfx::Size& initial_size, @@ -101,7 +101,7 @@ index 4a373e27bea4..684457680888 100644 g_create_render_widget_host_view ? g_create_render_widget_host_view(render_widget_host, diff --git content/browser/web_contents/web_contents_view_aura.h content/browser/web_contents/web_contents_view_aura.h -index 96f23b81caf2..5fb786187b0c 100644 +index 058f3e00d6f5..25a3ad4ec991 100644 --- content/browser/web_contents/web_contents_view_aura.h +++ content/browser/web_contents/web_contents_view_aura.h @@ -114,7 +114,7 @@ class CONTENT_EXPORT WebContentsViewAura @@ -114,7 +114,7 @@ index 96f23b81caf2..5fb786187b0c 100644 RenderWidgetHost* render_widget_host) override; void SetPageTitle(const base::string16& title) override; diff --git content/browser/web_contents/web_contents_view_child_frame.cc content/browser/web_contents/web_contents_view_child_frame.cc -index 345059d92363..39c376940df7 100644 +index 688540cea253..8a143a74ce12 100644 --- content/browser/web_contents/web_contents_view_child_frame.cc +++ content/browser/web_contents/web_contents_view_child_frame.cc @@ -84,7 +84,7 @@ void WebContentsViewChildFrame::CreateView(const gfx::Size& initial_size, @@ -127,7 +127,7 @@ index 345059d92363..39c376940df7 100644 } diff --git content/browser/web_contents/web_contents_view_child_frame.h content/browser/web_contents/web_contents_view_child_frame.h -index b5b3a22747ba..7a4e998d3e16 100644 +index e5485f5609c3..589bbb400684 100644 --- content/browser/web_contents/web_contents_view_child_frame.h +++ content/browser/web_contents/web_contents_view_child_frame.h @@ -40,7 +40,7 @@ class WebContentsViewChildFrame : public WebContentsView, @@ -140,7 +140,7 @@ index b5b3a22747ba..7a4e998d3e16 100644 RenderWidgetHost* render_widget_host) override; void SetPageTitle(const base::string16& title) override; diff --git content/browser/web_contents/web_contents_view_guest.cc content/browser/web_contents/web_contents_view_guest.cc -index 2b272b7ff3de..cecd81826f7d 100644 +index 44c68ed25b66..62026810703a 100644 --- content/browser/web_contents/web_contents_view_guest.cc +++ content/browser/web_contents/web_contents_view_guest.cc @@ -67,6 +67,8 @@ gfx::NativeWindow WebContentsViewGuest::GetTopLevelNativeWindow() const { @@ -195,7 +195,7 @@ index 2b272b7ff3de..cecd81826f7d 100644 RenderWidgetHostViewBase* WebContentsViewGuest::CreateViewForPopupWidget( diff --git content/browser/web_contents/web_contents_view_guest.h content/browser/web_contents/web_contents_view_guest.h -index 6f65cc816325..33a396e09671 100644 +index 9e3511a9dabc..83dfee968d59 100644 --- content/browser/web_contents/web_contents_view_guest.h +++ content/browser/web_contents/web_contents_view_guest.h @@ -58,7 +58,7 @@ class WebContentsViewGuest : public WebContentsView, @@ -208,7 +208,7 @@ index 6f65cc816325..33a396e09671 100644 RenderWidgetHost* render_widget_host) override; void SetPageTitle(const base::string16& title) override; diff --git content/browser/web_contents/web_contents_view_mac.h content/browser/web_contents/web_contents_view_mac.h -index 15f03bafc0aa..c9418cbfa707 100644 +index cf3305f96ddb..a44341905909 100644 --- content/browser/web_contents/web_contents_view_mac.h +++ content/browser/web_contents/web_contents_view_mac.h @@ -93,7 +93,7 @@ class WebContentsViewMac : public WebContentsView, @@ -221,10 +221,10 @@ index 15f03bafc0aa..c9418cbfa707 100644 RenderWidgetHost* render_widget_host) override; void SetPageTitle(const base::string16& title) override; diff --git content/browser/web_contents/web_contents_view_mac.mm content/browser/web_contents/web_contents_view_mac.mm -index 4da80f38595f..dfcf88e06b74 100644 +index 082b74eff5b2..6f477ecba11e 100644 --- content/browser/web_contents/web_contents_view_mac.mm +++ content/browser/web_contents/web_contents_view_mac.mm -@@ -348,7 +348,8 @@ void WebContentsViewMac::CreateView( +@@ -345,7 +345,8 @@ void WebContentsViewMac::CreateView( } RenderWidgetHostViewBase* WebContentsViewMac::CreateViewForWidget( @@ -234,7 +234,7 @@ index 4da80f38595f..dfcf88e06b74 100644 if (render_widget_host->GetView()) { // During testing, the view will already be set up in most cases to the // test view, so we don't want to clobber it with a real one. To verify that -@@ -360,6 +361,7 @@ RenderWidgetHostViewBase* WebContentsViewMac::CreateViewForWidget( +@@ -357,6 +358,7 @@ RenderWidgetHostViewBase* WebContentsViewMac::CreateViewForWidget( render_widget_host->GetView()); } @@ -266,7 +266,7 @@ index d05dd5421458..fa13775f0512 100644 // a BrowserPlugin even when we are using cross process frames for guests. It // should be removed after resolving https://crbug.com/642826). diff --git extensions/browser/guest_view/mime_handler_view/mime_handler_view_guest.cc extensions/browser/guest_view/mime_handler_view/mime_handler_view_guest.cc -index 5adcb212aaaf..c899de6d9a80 100644 +index a2a8e427b231..01d59c063d07 100644 --- extensions/browser/guest_view/mime_handler_view/mime_handler_view_guest.cc +++ extensions/browser/guest_view/mime_handler_view/mime_handler_view_guest.cc @@ -193,6 +193,8 @@ void MimeHandlerViewGuest::CreateWebContents( @@ -298,7 +298,7 @@ index 5adcb212aaaf..c899de6d9a80 100644 WebContents* source, const content::OpenURLParams& params) { diff --git extensions/browser/guest_view/mime_handler_view/mime_handler_view_guest.h extensions/browser/guest_view/mime_handler_view/mime_handler_view_guest.h -index adcb0864ba28..f0ba4efc277a 100644 +index 2a74abb320d5..16db064fb4a3 100644 --- extensions/browser/guest_view/mime_handler_view/mime_handler_view_guest.h +++ extensions/browser/guest_view/mime_handler_view/mime_handler_view_guest.h @@ -108,6 +108,10 @@ class MimeHandlerViewGuest : diff --git a/patch/patches/chrome_browser.patch b/patch/patches/chrome_browser.patch index 5029f8f79..4e310a448 100644 --- a/patch/patches/chrome_browser.patch +++ b/patch/patches/chrome_browser.patch @@ -1,5 +1,5 @@ diff --git chrome/browser/BUILD.gn chrome/browser/BUILD.gn -index 6de801443eac..f0d38f681077 100644 +index a73a10627a5a..b6cf1c0b5608 100644 --- chrome/browser/BUILD.gn +++ chrome/browser/BUILD.gn @@ -8,6 +8,7 @@ import("//build/config/features.gni") @@ -10,7 +10,7 @@ index 6de801443eac..f0d38f681077 100644 import("//chrome/common/features.gni") import("//components/feature_engagement/features.gni") import("//components/feed/features.gni") -@@ -1644,6 +1645,7 @@ jumbo_split_static_library("browser") { +@@ -1646,6 +1647,7 @@ jumbo_split_static_library("browser") { "//base:i18n", "//base/allocator:buildflags", "//cc", @@ -18,7 +18,7 @@ index 6de801443eac..f0d38f681077 100644 "//chrome:extra_resources", "//chrome:resources", "//chrome:strings", -@@ -1916,6 +1918,10 @@ jumbo_split_static_library("browser") { +@@ -1918,6 +1920,10 @@ jumbo_split_static_library("browser") { ] } diff --git a/patch/patches/chrome_renderer.patch b/patch/patches/chrome_renderer.patch index 0763791e6..8fda13174 100644 --- a/patch/patches/chrome_renderer.patch +++ b/patch/patches/chrome_renderer.patch @@ -1,5 +1,5 @@ diff --git chrome/renderer/BUILD.gn chrome/renderer/BUILD.gn -index 0b312fc03b93..929fca9eaee3 100644 +index 0a1e5754bb7a..f21aa63a4b86 100644 --- chrome/renderer/BUILD.gn +++ chrome/renderer/BUILD.gn @@ -3,6 +3,7 @@ @@ -10,7 +10,7 @@ index 0b312fc03b93..929fca9eaee3 100644 import("//chrome/common/features.gni") import("//components/nacl/features.gni") import("//components/offline_pages/buildflags/features.gni") -@@ -113,6 +114,7 @@ static_library("renderer") { +@@ -115,6 +116,7 @@ static_library("renderer") { defines = [] deps = [ @@ -18,7 +18,7 @@ index 0b312fc03b93..929fca9eaee3 100644 "//chrome:resources", "//chrome:strings", "//chrome/common", -@@ -176,6 +178,10 @@ static_library("renderer") { +@@ -178,6 +180,10 @@ static_library("renderer") { configs += [ "//build/config/compiler:wexit_time_destructors" ] diff --git a/patch/patches/component_build_1617.patch b/patch/patches/component_build_1617.patch index 6a2c568b5..58a126dc2 100644 --- a/patch/patches/component_build_1617.patch +++ b/patch/patches/component_build_1617.patch @@ -1,5 +1,5 @@ diff --git content/app/content_service_manager_main_delegate.h content/app/content_service_manager_main_delegate.h -index 283e1daf6c33..548aa8e71b99 100644 +index 6f32f97e3f92..66da6d5cec53 100644 --- content/app/content_service_manager_main_delegate.h +++ content/app/content_service_manager_main_delegate.h @@ -18,7 +18,8 @@ namespace content { diff --git a/patch/patches/compositor_1368.patch b/patch/patches/compositor_1368.patch index f9a60a2c9..b2ea8a3af 100644 --- a/patch/patches/compositor_1368.patch +++ b/patch/patches/compositor_1368.patch @@ -1,5 +1,5 @@ diff --git content/browser/compositor/gpu_process_transport_factory.cc content/browser/compositor/gpu_process_transport_factory.cc -index 03defa1ab778..73be8a2c8253 100644 +index 20fa23379c4b..87d8ba911d53 100644 --- content/browser/compositor/gpu_process_transport_factory.cc +++ content/browser/compositor/gpu_process_transport_factory.cc @@ -494,10 +494,20 @@ void GpuProcessTransportFactory::EstablishedGpuChannel( diff --git a/patch/patches/content_2015.patch b/patch/patches/content_2015.patch index ff33d6d12..3020e86d2 100644 --- a/patch/patches/content_2015.patch +++ b/patch/patches/content_2015.patch @@ -94,7 +94,7 @@ index 201f23b9b422..4664c6b32c22 100644 "WillFailRequest state should come before WillProcessResponse"); return render_frame_host_; diff --git content/browser/frame_host/render_frame_host_impl.cc content/browser/frame_host/render_frame_host_impl.cc -index 41f2205a0158..e4568812a8e7 100644 +index 412fc31e185c..66ee1f2fbd86 100644 --- content/browser/frame_host/render_frame_host_impl.cc +++ content/browser/frame_host/render_frame_host_impl.cc @@ -1614,6 +1614,7 @@ void RenderFrameHostImpl::OnDidFailProvisionalLoadWithError( @@ -105,7 +105,19 @@ index 41f2205a0158..e4568812a8e7 100644 } frame_tree_node_->navigator()->DidFailProvisionalLoadWithError(this, params); -@@ -4402,8 +4403,8 @@ void RenderFrameHostImpl::CreateNetworkServiceDefaultFactoryAndObserve( +@@ -3799,9 +3800,9 @@ void RenderFrameHostImpl::CommitNavigation( + // is used. Currently we have this here to make sure we have non-racy + // situation (https://crbug.com/849929). + DCHECK(base::FeatureList::IsEnabled(network::features::kNetworkService)); +- auto* storage_partition = static_cast( ++ auto* storage_partition = + BrowserContext::GetStoragePartition( +- GetSiteInstance()->GetBrowserContext(), GetSiteInstance())); ++ GetSiteInstance()->GetBrowserContext(), GetSiteInstance()); + BrowserThread::PostTask( + BrowserThread::IO, FROM_HERE, + base::BindOnce(&PrefetchURLLoaderService::GetFactory, +@@ -4413,8 +4414,8 @@ void RenderFrameHostImpl::CreateNetworkServiceDefaultFactoryAndObserve( RenderFrameDevToolsAgentHost::WillCreateURLLoaderFactory( this, false /* is_navigation */, false /* is_download */, &default_factory_request); @@ -116,17 +128,6 @@ index 41f2205a0158..e4568812a8e7 100644 if (g_create_network_factory_callback_for_test.Get().is_null()) { storage_partition->GetNetworkContext()->CreateURLLoaderFactory( std::move(default_factory_request), std::move(params)); -@@ -4690,8 +4691,8 @@ void RenderFrameHostImpl::ConnectToPrefetchURLLoaderService( - DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); - DCHECK(base::FeatureList::IsEnabled(network::features::kNetworkService)); - auto* storage_partition = -- static_cast(BrowserContext::GetStoragePartition( -- GetSiteInstance()->GetBrowserContext(), GetSiteInstance())); -+ BrowserContext::GetStoragePartition( -+ GetSiteInstance()->GetBrowserContext(), GetSiteInstance()); - auto subresource_factories = CloneSubresourceFactories(); - // Temporary for https://crbug.com/849929. - CHECK(subresource_factories); diff --git content/browser/frame_host/render_frame_message_filter.cc content/browser/frame_host/render_frame_message_filter.cc index e39784552c5a..f9f520211e48 100644 --- content/browser/frame_host/render_frame_message_filter.cc @@ -284,10 +285,10 @@ index 3009401dac6b..b4c5a9e2db50 100644 }; diff --git content/common/frame_messages.h content/common/frame_messages.h -index 8284a4240b39..c883fa72292a 100644 +index 94c3c6bfc0d4..ce424e1eaced 100644 --- content/common/frame_messages.h +++ content/common/frame_messages.h -@@ -1382,9 +1382,10 @@ IPC_MESSAGE_ROUTED1(FrameHostMsg_PepperStopsPlayback, +@@ -1381,9 +1381,10 @@ IPC_MESSAGE_ROUTED1(FrameHostMsg_PepperStopsPlayback, // type. If there is no matching plugin, |found| is false. // |actual_mime_type| is the actual mime type supported by the // found plugin. @@ -363,10 +364,10 @@ index 2f1f46075b27..94f300dfea5d 100644 virtual void FocusedNodeChanged(const blink::WebNode& node) {} diff --git content/renderer/render_frame_impl.cc content/renderer/render_frame_impl.cc -index 2deec131e505..a77b188ed948 100644 +index 39f42d884dff..e40852fe5b84 100644 --- content/renderer/render_frame_impl.cc +++ content/renderer/render_frame_impl.cc -@@ -3449,7 +3449,8 @@ blink::WebPlugin* RenderFrameImpl::CreatePlugin( +@@ -3471,7 +3471,8 @@ blink::WebPlugin* RenderFrameImpl::CreatePlugin( std::string mime_type; bool found = false; Send(new FrameHostMsg_GetPluginInfo( @@ -376,7 +377,7 @@ index 2deec131e505..a77b188ed948 100644 params.mime_type.Utf8(), &found, &info, &mime_type)); if (!found) return nullptr; -@@ -3814,6 +3815,8 @@ void RenderFrameImpl::FrameDetached(DetachType type) { +@@ -3836,6 +3837,8 @@ void RenderFrameImpl::FrameDetached(DetachType type) { void RenderFrameImpl::FrameFocused() { Send(new FrameHostMsg_FrameFocused(routing_id_)); @@ -386,7 +387,7 @@ index 2deec131e505..a77b188ed948 100644 void RenderFrameImpl::WillCommitProvisionalLoad() { diff --git content/renderer/render_thread_impl.cc content/renderer/render_thread_impl.cc -index fc840f2bfbf8..53a7cd6962a8 100644 +index ed9ecdafb96e..23e547afaedd 100644 --- content/renderer/render_thread_impl.cc +++ content/renderer/render_thread_impl.cc @@ -866,6 +866,8 @@ void RenderThreadImpl::Init( @@ -399,10 +400,10 @@ index fc840f2bfbf8..53a7cd6962a8 100644 base::Bind(&RenderThreadImpl::OnRendererInterfaceRequest, base::Unretained(this))); diff --git content/renderer/renderer_blink_platform_impl.cc content/renderer/renderer_blink_platform_impl.cc -index f06027e68086..4b720db48c3a 100644 +index e586e93c934c..dcc761353829 100644 --- content/renderer/renderer_blink_platform_impl.cc +++ content/renderer/renderer_blink_platform_impl.cc -@@ -1108,6 +1108,14 @@ void RendererBlinkPlatformImpl::RequestPurgeMemory() { +@@ -1123,6 +1123,14 @@ void RendererBlinkPlatformImpl::RequestPurgeMemory() { base::MemoryCoordinatorClientRegistry::GetInstance()->PurgeMemory(); } @@ -418,10 +419,10 @@ index f06027e68086..4b720db48c3a 100644 if (!web_database_host_) { web_database_host_ = blink::mojom::ThreadSafeWebDatabaseHostPtr::Create( diff --git content/renderer/renderer_blink_platform_impl.h content/renderer/renderer_blink_platform_impl.h -index 464f3bb996e8..d1e15becf2a8 100644 +index 11a3acd664b3..1167382c3bd1 100644 --- content/renderer/renderer_blink_platform_impl.h +++ content/renderer/renderer_blink_platform_impl.h -@@ -230,6 +230,9 @@ class CONTENT_EXPORT RendererBlinkPlatformImpl : public BlinkPlatformImpl { +@@ -235,6 +235,9 @@ class CONTENT_EXPORT RendererBlinkPlatformImpl : public BlinkPlatformImpl { mojo::ScopedDataPipeConsumerHandle handle) override; void RequestPurgeMemory() override; diff --git a/patch/patches/content_runprocess_2456.patch b/patch/patches/content_runprocess_2456.patch deleted file mode 100644 index 8c1abf774..000000000 --- a/patch/patches/content_runprocess_2456.patch +++ /dev/null @@ -1,102 +0,0 @@ -diff --git content/app/content_main_runner_impl.cc content/app/content_main_runner_impl.cc -index 1fec0c7876ca..0c8722204b0f 100644 ---- content/app/content_main_runner_impl.cc -+++ content/app/content_main_runner_impl.cc -@@ -589,7 +589,8 @@ int RunBrowserProcessMain( - const MainFunctionParams& main_function_params, - ContentMainDelegate* delegate, - std::unique_ptr service_manager_thread) { -- int exit_code = delegate->RunProcess("", main_function_params); -+ int exit_code = delegate->RunProcess("", main_function_params, -+ std::move(service_manager_thread)); - #if defined(OS_ANDROID) - // In Android's browser process, the negative exit code doesn't mean the - // default behavior should be used as the UI message loop is managed by -diff --git content/browser/browser_main_runner_impl.h content/browser/browser_main_runner_impl.h -index adb084fe27c6..42a6fdc2d67f 100644 ---- content/browser/browser_main_runner_impl.h -+++ content/browser/browser_main_runner_impl.h -@@ -42,7 +42,7 @@ class BrowserMainRunnerImpl : public BrowserMainRunner { - // on which ServiceManager is currently running. - int Initialize( - const MainFunctionParams& parameters, -- std::unique_ptr service_manager_thread); -+ std::unique_ptr service_manager_thread) override; - - private: - // True if we have started to initialize the runner. -diff --git content/public/app/content_main_delegate.cc content/public/app/content_main_delegate.cc -index c4bdfd36ad0c..f6830c35fd1d 100644 ---- content/public/app/content_main_delegate.cc -+++ content/public/app/content_main_delegate.cc -@@ -6,6 +6,7 @@ - - #include "base/logging.h" - #include "build/build_config.h" -+#include "content/browser/browser_process_sub_thread.h" - #include "content/public/gpu/content_gpu_client.h" - #include "content/public/renderer/content_renderer_client.h" - #include "content/public/utility/content_utility_client.h" -@@ -26,6 +27,13 @@ int ContentMainDelegate::RunProcess( - return -1; - } - -+int ContentMainDelegate::RunProcess( -+ const std::string& process_type, -+ const MainFunctionParams& main_function_params, -+ std::unique_ptr service_manager_thread) { -+ return RunProcess(process_type, main_function_params); -+} -+ - ui::DataPack* ContentMainDelegate::LoadServiceManifestDataPack() { - return nullptr; - } -diff --git content/public/app/content_main_delegate.h content/public/app/content_main_delegate.h -index 979e25d1c1b9..87ef81c4e913 100644 ---- content/public/app/content_main_delegate.h -+++ content/public/app/content_main_delegate.h -@@ -30,6 +30,7 @@ class DataPack; - - namespace content { - -+class BrowserProcessSubThread; - class ContentBrowserClient; - class ContentGpuClient; - class ContentRendererClient; -@@ -60,6 +61,12 @@ class CONTENT_EXPORT ContentMainDelegate { - const std::string& process_type, - const MainFunctionParams& main_function_params); - -+ // Asks the embedder to start a process. Return -1 for the default behavior. -+ virtual int RunProcess( -+ const std::string& process_type, -+ const MainFunctionParams& main_function_params, -+ std::unique_ptr service_manager_thread); -+ - // Called right before the process exits. - virtual void ProcessExiting(const std::string& process_type) {} - -diff --git content/public/browser/browser_main_runner.h content/public/browser/browser_main_runner.h -index c01be956eded..8cbd8d894ac5 100644 ---- content/public/browser/browser_main_runner.h -+++ content/public/browser/browser_main_runner.h -@@ -10,6 +10,7 @@ - - namespace content { - -+class BrowserProcessSubThread; - struct MainFunctionParams; - - // This class is responsible for browser initialization, running and shutdown. -@@ -26,7 +27,10 @@ class CONTENT_EXPORT BrowserMainRunner { - // Initialize all necessary browser state. The |parameters| values will be - // copied. Returning a non-negative value indicates that initialization - // failed, and the returned value is used as the exit code for the process. -- virtual int Initialize(const content::MainFunctionParams& parameters) = 0; -+ virtual int Initialize(const MainFunctionParams& parameters) = 0; -+ virtual int Initialize( -+ const MainFunctionParams& parameters, -+ std::unique_ptr service_manager_thread) = 0; - - #if defined(OS_ANDROID) - // Run all queued startup tasks. Only defined on Android because other diff --git a/patch/patches/crashpad_1995.patch b/patch/patches/crashpad_1995.patch index 93b29d339..293a3e1bd 100644 --- a/patch/patches/crashpad_1995.patch +++ b/patch/patches/crashpad_1995.patch @@ -45,7 +45,7 @@ index bcf172e645a2..f879aa745adf 100644 // on the given |command_line|. void SetCrashKeysFromCommandLine(const base::CommandLine& command_line); diff --git chrome_elf/BUILD.gn chrome_elf/BUILD.gn -index a47b2b61fbfa..83936ff6e265 100644 +index 1b1823b87cc5..eb70d0f5d587 100644 --- chrome_elf/BUILD.gn +++ chrome_elf/BUILD.gn @@ -7,6 +7,7 @@ @@ -127,7 +127,7 @@ index fdc51ab22807..cb0a99dd190c 100644 g_crash_helper_enabled = true; return true; diff --git components/crash/content/app/breakpad_linux.cc components/crash/content/app/breakpad_linux.cc -index 76f15cb5b511..7cf4cb636a2e 100644 +index a7378204ffaa..7efc255eb1b4 100644 --- components/crash/content/app/breakpad_linux.cc +++ components/crash/content/app/breakpad_linux.cc @@ -28,6 +28,7 @@ @@ -138,7 +138,7 @@ index 76f15cb5b511..7cf4cb636a2e 100644 #include "base/files/file_path.h" #include "base/lazy_instance.h" #include "base/linux_util.h" -@@ -88,6 +89,7 @@ namespace { +@@ -89,6 +90,7 @@ namespace { #if !defined(OS_CHROMEOS) const char kUploadURL[] = "https://clients2.google.com/cr/report"; @@ -146,7 +146,7 @@ index 76f15cb5b511..7cf4cb636a2e 100644 #endif bool g_is_crash_reporter_enabled = false; -@@ -686,7 +688,7 @@ bool CrashDone(const MinidumpDescriptor& minidump, +@@ -702,7 +704,7 @@ bool CrashDone(const MinidumpDescriptor& minidump, info.process_type_length = 7; info.distro = base::g_linux_distro; info.distro_length = my_strlen(base::g_linux_distro); @@ -155,7 +155,7 @@ index 76f15cb5b511..7cf4cb636a2e 100644 info.process_start_time = g_process_start_time; info.oom_size = base::g_oom_size; info.pid = g_pid; -@@ -1341,7 +1343,7 @@ void ExecUploadProcessOrTerminate(const BreakpadInfo& info, +@@ -1357,7 +1359,7 @@ void ExecUploadProcessOrTerminate(const BreakpadInfo& info, header_content_encoding, header_content_type, post_file, @@ -164,7 +164,7 @@ index 76f15cb5b511..7cf4cb636a2e 100644 "--timeout=10", // Set a timeout so we don't hang forever. "--tries=1", // Don't retry if the upload fails. "-O", // Output reply to the file descriptor path. -@@ -1681,10 +1683,19 @@ void HandleCrashDump(const BreakpadInfo& info) { +@@ -1697,10 +1699,19 @@ void HandleCrashDump(const BreakpadInfo& info) { GetCrashReporterClient()->GetProductNameAndVersion(&product_name, &version); writer.AddBoundary(); @@ -186,7 +186,7 @@ index 76f15cb5b511..7cf4cb636a2e 100644 if (info.pid > 0) { char pid_value_buf[kUint64StringSize]; uint64_t pid_value_len = my_uint64_len(info.pid); -@@ -1802,10 +1813,20 @@ void HandleCrashDump(const BreakpadInfo& info) { +@@ -1817,10 +1828,20 @@ void HandleCrashDump(const BreakpadInfo& info) { crash_reporter::internal::TransitionalCrashKeyStorage; CrashKeyStorage::Iterator crash_key_iterator(*info.crash_keys); const CrashKeyStorage::Entry* entry; @@ -208,7 +208,7 @@ index 76f15cb5b511..7cf4cb636a2e 100644 writer.AddBoundary(); writer.Flush(); } -@@ -2015,6 +2036,17 @@ void SetChannelCrashKey(const std::string& channel) { +@@ -2032,6 +2053,17 @@ void SetChannelCrashKey(const std::string& channel) { channel_key.Set(channel); } diff --git a/patch/patches/extensions_1947.patch b/patch/patches/extensions_1947.patch index 5da18b991..147e067f2 100644 --- a/patch/patches/extensions_1947.patch +++ b/patch/patches/extensions_1947.patch @@ -27,10 +27,10 @@ index 53c7404ef1f9..ac33df7cfe0e 100644 auto* browser_context = web_contents->GetBrowserContext(); StreamsPrivateAPI* streams_private = GetStreamsPrivateAPI(browser_context); diff --git content/browser/frame_host/render_frame_host_manager.cc content/browser/frame_host/render_frame_host_manager.cc -index c90c938f566a..a65453d62c47 100644 +index 301b0d075284..02109eee22f8 100644 --- content/browser/frame_host/render_frame_host_manager.cc +++ content/browser/frame_host/render_frame_host_manager.cc -@@ -927,10 +927,11 @@ bool RenderFrameHostManager::ShouldSwapBrowsingInstancesForNavigation( +@@ -922,10 +922,11 @@ bool RenderFrameHostManager::ShouldSwapBrowsingInstancesForNavigation( // TODO(alexmos): This check should've been enforced earlier in the // navigation, in chrome::Navigate(). Verify this, and then convert this to // a CHECK and remove the fallback. @@ -46,7 +46,7 @@ index c90c938f566a..a65453d62c47 100644 return true; } -@@ -1069,7 +1070,8 @@ RenderFrameHostManager::GetSiteInstanceForNavigation( +@@ -1064,7 +1065,8 @@ RenderFrameHostManager::GetSiteInstanceForNavigation( // Double-check that the new SiteInstance is associated with the right // BrowserContext. diff --git a/patch/patches/gn_config.patch b/patch/patches/gn_config.patch index 40cac4b36..ef7f7c843 100644 --- a/patch/patches/gn_config.patch +++ b/patch/patches/gn_config.patch @@ -12,10 +12,10 @@ index 87fb8815433e..f19fba48f06c 100644 # https://crbug.com/474506. "//clank/java/BUILD.gn", diff --git BUILD.gn BUILD.gn -index f0c7533a016b..93bd97a88cf6 100644 +index eca00a816913..d892e01835fe 100644 --- BUILD.gn +++ BUILD.gn -@@ -193,6 +193,7 @@ group("gn_all") { +@@ -186,6 +186,7 @@ group("gn_all") { if (!is_ios && !is_fuchsia) { deps += [ diff --git a/patch/patches/gritsettings.patch b/patch/patches/gritsettings.patch index 2ecc8ed12..5bff3c65f 100644 --- a/patch/patches/gritsettings.patch +++ b/patch/patches/gritsettings.patch @@ -1,5 +1,5 @@ diff --git tools/gritsettings/resource_ids tools/gritsettings/resource_ids -index 2c9ca8bbae88..f18ec6b7ffb4 100644 +index 15d8fdc55f91..d860b4ad4a8e 100644 --- tools/gritsettings/resource_ids +++ tools/gritsettings/resource_ids @@ -414,4 +414,11 @@ diff --git a/patch/patches/linux_build.patch b/patch/patches/linux_build.patch index 44eb6f87c..6d91b46a3 100644 --- a/patch/patches/linux_build.patch +++ b/patch/patches/linux_build.patch @@ -1,5 +1,5 @@ diff --git build/config/compiler/BUILD.gn build/config/compiler/BUILD.gn -index 295dabf..e27ae23 100644 +index 6e38ad782d38..a384f8b79c04 100644 --- build/config/compiler/BUILD.gn +++ build/config/compiler/BUILD.gn @@ -152,7 +152,7 @@ declare_args() { @@ -12,7 +12,7 @@ index 295dabf..e27ae23 100644 } diff --git chrome/browser/ui/libgtkui/gtk_util.cc chrome/browser/ui/libgtkui/gtk_util.cc -index 96f8c0e..49c462b 100644 +index 96f8c0e71472..49c462b37e12 100644 --- chrome/browser/ui/libgtkui/gtk_util.cc +++ chrome/browser/ui/libgtkui/gtk_util.cc @@ -237,6 +237,7 @@ float GetDeviceScaleFactor() { @@ -61,7 +61,7 @@ index 96f8c0e..49c462b 100644 ScopedStyleContext child_context(gtk_style_context_new()); gtk_style_context_set_path(child_context, path); diff --git chrome/browser/ui/libgtkui/native_theme_gtk2.cc chrome/browser/ui/libgtkui/native_theme_gtk2.cc -index b24ff4b9..49e8071 100644 +index b24ff4b95f97..49e80717b1d6 100644 --- chrome/browser/ui/libgtkui/native_theme_gtk2.cc +++ chrome/browser/ui/libgtkui/native_theme_gtk2.cc @@ -163,6 +163,8 @@ SkColor NativeThemeGtk2::GetSystemColor(ColorId color_id) const { @@ -74,7 +74,7 @@ index b24ff4b9..49e8071 100644 return GetTextColor(GetEntry(), NORMAL); case kColorId_LabelDisabledColor: diff --git ui/accessibility/platform/atk_util_auralinux_gtk2.cc ui/accessibility/platform/atk_util_auralinux_gtk2.cc -index ac11b56..6355d02 100644 +index ac11b5626f67..6355d0283de1 100644 --- ui/accessibility/platform/atk_util_auralinux_gtk2.cc +++ ui/accessibility/platform/atk_util_auralinux_gtk2.cc @@ -48,6 +48,7 @@ GnomeAccessibilityModuleInitFunc GetAccessibilityModuleInitFunc() { diff --git a/patch/patches/message_loop_443_1992243003.patch b/patch/patches/message_loop.patch similarity index 75% rename from patch/patches/message_loop_443_1992243003.patch rename to patch/patches/message_loop.patch index e6d72bbb7..8c2bd78a5 100644 --- a/patch/patches/message_loop_443_1992243003.patch +++ b/patch/patches/message_loop.patch @@ -1,5 +1,31 @@ +diff --git base/message_loop/message_loop.cc base/message_loop/message_loop.cc +index 3c715c8e6ae9..d1622d2e87c9 100644 +--- base/message_loop/message_loop.cc ++++ base/message_loop/message_loop.cc +@@ -701,6 +701,9 @@ MessageLoopForUI::MessageLoopForUI(Type type) : MessageLoop(type) { + #endif + } + ++MessageLoopForUI::MessageLoopForUI(std::unique_ptr pump) ++ : MessageLoop(TYPE_UI, BindOnce(&ReturnPump, std::move(pump))) {} ++ + // static + MessageLoopCurrentForUI MessageLoopForUI::current() { + return MessageLoopCurrentForUI::Get(); +diff --git base/message_loop/message_loop.h base/message_loop/message_loop.h +index f34416015fee..9727efbe288f 100644 +--- base/message_loop/message_loop.h ++++ base/message_loop/message_loop.h +@@ -352,6 +352,7 @@ class BASE_EXPORT MessageLoop : public MessagePump::Delegate, + class BASE_EXPORT MessageLoopForUI : public MessageLoop { + public: + explicit MessageLoopForUI(Type type = TYPE_UI); ++ explicit MessageLoopForUI(std::unique_ptr pump); + + // TODO(gab): Mass migrate callers to MessageLoopCurrentForUI::Get()/IsSet(). + static MessageLoopCurrentForUI current(); diff --git base/message_loop/message_loop_current.h base/message_loop/message_loop_current.h -index 9e19a78aca10..47a54de56a74 100644 +index 61d1607e31e7..656b3a9c9f68 100644 --- base/message_loop/message_loop_current.h +++ base/message_loop/message_loop_current.h @@ -120,6 +120,16 @@ class BASE_EXPORT MessageLoopCurrent { @@ -34,7 +60,7 @@ index 9e19a78aca10..47a54de56a74 100644 #if !defined(OS_NACL) diff --git base/message_loop/message_pump_win.cc base/message_loop/message_pump_win.cc -index 76747a5086b3..7330d87a9d2d 100644 +index 8dad64cbeb3a..63fa0e1a2be7 100644 --- base/message_loop/message_pump_win.cc +++ base/message_loop/message_pump_win.cc @@ -11,6 +11,7 @@ @@ -45,7 +71,7 @@ index 76747a5086b3..7330d87a9d2d 100644 #include "base/metrics/histogram_macros.h" #include "base/strings/stringprintf.h" #include "base/trace_event/trace_event.h" -@@ -369,20 +370,28 @@ bool MessagePumpForUI::ProcessMessageHelper(const MSG& msg) { +@@ -381,20 +382,28 @@ bool MessagePumpForUI::ProcessMessageHelper(const MSG& msg) { } bool MessagePumpForUI::ProcessPumpReplacementMessage() { diff --git a/patch/patches/net_security_expiration_1994.patch b/patch/patches/net_security_expiration_1994.patch index c86a5acff..f1cf78868 100644 --- a/patch/patches/net_security_expiration_1994.patch +++ b/patch/patches/net_security_expiration_1994.patch @@ -58,10 +58,10 @@ index f61ff0d0564a..e6727c7b1cbc 100644 } // namespace certificate_transparency diff --git net/http/transport_security_state.cc net/http/transport_security_state.cc -index cd6128c22924..5d614e50ec4e 100644 +index 2dc467772e86..fdb047099ff5 100644 --- net/http/transport_security_state.cc +++ net/http/transport_security_state.cc -@@ -1309,8 +1309,10 @@ void TransportSecurityState::ClearReportCachesForTesting() { +@@ -1153,8 +1153,10 @@ void TransportSecurityState::ClearReportCachesForTesting() { sent_expect_ct_reports_cache_.Clear(); } @@ -75,10 +75,10 @@ index cd6128c22924..5d614e50ec4e 100644 // We consider built-in information to be timely for 10 weeks. return (base::Time::Now() - build_time).InDays() < 70 /* 10 weeks */; diff --git net/http/transport_security_state.h net/http/transport_security_state.h -index 5f7873f76376..bccb857b682d 100644 +index 9c65b59e4ec2..0ac0509abf78 100644 --- net/http/transport_security_state.h +++ net/http/transport_security_state.h -@@ -593,6 +593,10 @@ class NET_EXPORT TransportSecurityState { +@@ -561,6 +561,10 @@ class NET_EXPORT TransportSecurityState { // Expect-CT reports. void ClearReportCachesForTesting(); @@ -89,7 +89,7 @@ index 5f7873f76376..bccb857b682d 100644 private: friend class TransportSecurityStateTest; friend class TransportSecurityStateStaticFuzzer; -@@ -613,7 +617,7 @@ class NET_EXPORT TransportSecurityState { +@@ -581,7 +585,7 @@ class NET_EXPORT TransportSecurityState { // IsBuildTimely returns true if the current build is new enough ensure that // built in security information (i.e. HSTS preloading and pinning // information) is timely. @@ -98,7 +98,7 @@ index 5f7873f76376..bccb857b682d 100644 // Helper method for actually checking pins. PKPStatus CheckPublicKeyPinsImpl( -@@ -722,6 +726,8 @@ class NET_EXPORT TransportSecurityState { +@@ -679,6 +683,8 @@ class NET_EXPORT TransportSecurityState { // True if public key pinning bypass is enabled for local trust anchors. bool enable_pkp_bypass_for_local_trust_anchors_; diff --git a/patch/patches/pdfium_print_549365.patch b/patch/patches/pdfium_print_549365.patch index 8899388b4..4d9fc2588 100644 --- a/patch/patches/pdfium_print_549365.patch +++ b/patch/patches/pdfium_print_549365.patch @@ -1,5 +1,5 @@ diff --git BUILD.gn BUILD.gn -index d30640f30..56bc41940 100644 +index 222784f36..a492d6735 100644 --- BUILD.gn +++ BUILD.gn @@ -239,6 +239,10 @@ jumbo_static_library("pdfium") { diff --git a/patch/patches/prefs_content_1161.patch b/patch/patches/prefs_content_1161.patch index 16b7d9b80..a5c9753d2 100644 --- a/patch/patches/prefs_content_1161.patch +++ b/patch/patches/prefs_content_1161.patch @@ -35,14 +35,14 @@ index 78cbf5f3db86..9a4906a32336 100644 bool record_whole_document; SavePreviousDocumentResources save_previous_document_resources; diff --git content/renderer/render_view_impl.cc content/renderer/render_view_impl.cc -index 18b915029764..6aa42b269d13 100644 +index 1fdb7ccfaa8f..55ec8b11b070 100644 --- content/renderer/render_view_impl.cc +++ content/renderer/render_view_impl.cc -@@ -1203,6 +1203,7 @@ void RenderViewImpl::ApplyWebPreferencesInternal( +@@ -1222,6 +1222,7 @@ void RenderViewImpl::ApplyWebPreferencesInternal( blink::WebView* web_view, CompositorDependencies* compositor_deps) { ApplyWebPreferences(prefs, web_view); + web_view->SetBaseBackgroundColor(prefs.base_background_color); } - void RenderViewImpl::OnForceRedraw(int snapshot_id) { + // blink::WebViewClient ------------------------------------------------------ diff --git a/patch/patches/print_header_footer_1478_1565.patch b/patch/patches/print_header_footer_1478_1565.patch index d769d524c..fc67865a5 100644 --- a/patch/patches/print_header_footer_1478_1565.patch +++ b/patch/patches/print_header_footer_1478_1565.patch @@ -1,5 +1,5 @@ diff --git chrome/browser/ui/BUILD.gn chrome/browser/ui/BUILD.gn -index 07de64d30686..39959f0dbadb 100644 +index 8f0a3e469f58..3520b34a3b22 100644 --- chrome/browser/ui/BUILD.gn +++ chrome/browser/ui/BUILD.gn @@ -890,6 +890,7 @@ split_static_library("ui") { @@ -116,7 +116,7 @@ index 006966fd1c58..db9cd49af2a4 100644 #endif diff --git components/printing/common/print_messages.cc components/printing/common/print_messages.cc -index c2eee7803d32..8b4ecb1db44f 100644 +index 18df7614a988..9f86016d3e68 100644 --- components/printing/common/print_messages.cc +++ components/printing/common/print_messages.cc @@ -140,7 +140,6 @@ PrintMsg_PrintFrame_Params::PrintMsg_PrintFrame_Params() {} @@ -133,7 +133,7 @@ index c2eee7803d32..8b4ecb1db44f 100644 } -#endif // BUILDFLAG(ENABLE_PRINT_PREVIEW) diff --git components/printing/common/print_messages.h components/printing/common/print_messages.h -index d85d26c7e79c..ecced6678eb5 100644 +index d29bb6aedecd..db7110ce80be 100644 --- components/printing/common/print_messages.h +++ components/printing/common/print_messages.h @@ -86,7 +86,6 @@ struct PrintMsg_PrintFrame_Params { @@ -253,7 +253,7 @@ index d85d26c7e79c..ecced6678eb5 100644 #endif // COMPONENTS_PRINTING_COMMON_PRINT_MESSAGES_H_ diff --git components/printing/renderer/print_render_frame_helper.cc components/printing/renderer/print_render_frame_helper.cc -index 7bfc822296c2..04fb1dc64a7d 100644 +index 6d106fa56134..7fd9e87e9ea4 100644 --- components/printing/renderer/print_render_frame_helper.cc +++ components/printing/renderer/print_render_frame_helper.cc @@ -340,7 +340,6 @@ bool PrintingNodeOrPdfFrame(const blink::WebLocalFrame* frame, diff --git a/patch/patches/rwh_background_color_1984.patch b/patch/patches/rwh_background_color_1984.patch index d965eddfa..91038639f 100644 --- a/patch/patches/rwh_background_color_1984.patch +++ b/patch/patches/rwh_background_color_1984.patch @@ -1,5 +1,5 @@ diff --git content/browser/renderer_host/render_widget_host_view_aura.cc content/browser/renderer_host/render_widget_host_view_aura.cc -index 1864ef4217fe..97a522b751e2 100644 +index 236b40392445..c7eb7f728120 100644 --- content/browser/renderer_host/render_widget_host_view_aura.cc +++ content/browser/renderer_host/render_widget_host_view_aura.cc @@ -718,10 +718,12 @@ gfx::Rect RenderWidgetHostViewAura::GetViewBounds() const { @@ -19,7 +19,7 @@ index 1864ef4217fe..97a522b751e2 100644 } void RenderWidgetHostViewAura::WindowTitleChanged() { -@@ -1918,6 +1920,15 @@ void RenderWidgetHostViewAura::CreateAuraWindow(aura::client::WindowType type) { +@@ -1920,6 +1922,15 @@ void RenderWidgetHostViewAura::CreateAuraWindow(aura::client::WindowType type) { if (frame_sink_id_.is_valid()) window_->SetEmbedFrameSinkId(frame_sink_id_); diff --git a/patch/patches/service_manager_654986.patch b/patch/patches/service_manager_654986.patch index 44a1fe14c..8b553a6b0 100644 --- a/patch/patches/service_manager_654986.patch +++ b/patch/patches/service_manager_654986.patch @@ -1,8 +1,8 @@ diff --git services/service_manager/embedder/main.cc services/service_manager/embedder/main.cc -index b4728513c0a6..550384c766f2 100644 +index 3480d43aee55..310d9e0b4833 100644 --- services/service_manager/embedder/main.cc +++ services/service_manager/embedder/main.cc -@@ -300,13 +300,30 @@ int RunService(MainDelegate* delegate) { +@@ -300,22 +300,36 @@ int RunService(MainDelegate* delegate) { return exit_code; } @@ -34,43 +34,31 @@ index b4728513c0a6..550384c766f2 100644 MainDelegate* delegate = params.delegate; DCHECK(delegate); -@@ -374,30 +391,14 @@ int Main(const MainParams& params) { - MainDelegate::InitializeParams init_params; + int exit_code = -1; + base::debug::GlobalActivityTracker* tracker = nullptr; + ProcessType process_type = delegate->OverrideProcessType(); +-#if defined(OS_MACOSX) +- std::unique_ptr autorelease_pool; +-#endif + + // A flag to indicate whether Main() has been called before. On Android, we + // may re-run Main() without restarting the browser process. This flag +@@ -391,12 +405,7 @@ int Main(const MainParams& params) { + MainDelegate::InitializeParams init_params; #if defined(OS_MACOSX) -- // We need this pool for all the objects created before we get to the event -- // loop, but we don't want to leave them hanging around until the app quits. -- // Each "main" needs to flush this pool right before it goes into its main -- // event loop to get rid of the cruft. -- std::unique_ptr autorelease_pool = -- std::make_unique(); -- init_params.autorelease_pool = autorelease_pool.get(); -+ init_params.autorelease_pool = params.autorelease_pool.get(); - InitializeMac(); +- // We need this pool for all the objects created before we get to the event +- // loop, but we don't want to leave them hanging around until the app quits. +- // Each "main" needs to flush this pool right before it goes into its main +- // event loop to get rid of the cruft. +- autorelease_pool = std::make_unique(); +- init_params.autorelease_pool = autorelease_pool.get(); ++ init_params.autorelease_pool = params.autorelease_pool.get(); + InitializeMac(); #endif - mojo::core::Configuration mojo_config; -- ProcessType process_type = delegate->OverrideProcessType(); -- if (process_type == ProcessType::kDefault) { -- std::string type_switch = -- command_line.GetSwitchValueASCII(switches::kProcessType); -- if (type_switch == switches::kProcessTypeServiceManager) { -- mojo_config.is_broker_process = true; -- process_type = ProcessType::kServiceManager; -- } else if (type_switch == switches::kProcessTypeService) { -- process_type = ProcessType::kService; -- } else { -- process_type = ProcessType::kEmbedder; -- } -- } -+ const ProcessType process_type = GetProcessType(delegate, command_line); -+ if (process_type == ProcessType::kServiceManager) -+ mojo_config.is_broker_process = true; - mojo_config.max_message_num_bytes = kMaximumMojoMessageSize; - delegate->OverrideMojoConfiguration(&mojo_config); - mojo::core::Init(mojo_config); -@@ -432,6 +433,16 @@ int Main(const MainParams& params) { - trace_config, base::trace_event::TraceLog::RECORDING_MODE); +@@ -440,18 +449,16 @@ int Main(const MainParams& params) { + } } + return exit_code; @@ -81,12 +69,23 @@ index b4728513c0a6..550384c766f2 100644 + DCHECK(delegate); + + int exit_code = 0; -+ const auto& command_line = *base::CommandLine::ForCurrentProcess(); + const auto& command_line = *base::CommandLine::ForCurrentProcess(); +- if (process_type == ProcessType::kDefault) { +- std::string type_switch = +- command_line.GetSwitchValueASCII(switches::kProcessType); +- if (type_switch == switches::kProcessTypeServiceManager) { +- process_type = ProcessType::kServiceManager; +- } else if (type_switch == switches::kProcessTypeService) { +- process_type = ProcessType::kService; +- } else { +- process_type = ProcessType::kEmbedder; +- } +- } + const ProcessType process_type = GetProcessType(delegate, command_line); switch (process_type) { case ProcessType::kDefault: NOTREACHED(); -@@ -460,6 +471,8 @@ int Main(const MainParams& params) { +@@ -473,6 +480,8 @@ int Main(const MainParams& params) { break; } @@ -95,7 +94,7 @@ index b4728513c0a6..550384c766f2 100644 if (tracker) { if (exit_code == 0) { tracker->SetProcessPhaseIfEnabled( -@@ -471,13 +484,38 @@ int Main(const MainParams& params) { +@@ -484,13 +493,38 @@ int Main(const MainParams& params) { } } diff --git a/patch/patches/storage_partition_1973.patch b/patch/patches/storage_partition_1973.patch index e019c3a3f..812cdaa4f 100644 --- a/patch/patches/storage_partition_1973.patch +++ b/patch/patches/storage_partition_1973.patch @@ -161,10 +161,10 @@ index ec9ab86d0ca6..0fe5219f1e84 100644 base::WeakPtrFactory weak_factory_; diff --git content/browser/download/download_manager_impl.cc content/browser/download/download_manager_impl.cc -index ba4abf130285..9bca602b6ec5 100644 +index 091031a3464b..e609953bb69f 100644 --- content/browser/download/download_manager_impl.cc +++ content/browser/download/download_manager_impl.cc -@@ -85,9 +85,9 @@ +@@ -86,9 +86,9 @@ namespace content { namespace { @@ -177,7 +177,7 @@ index ba4abf130285..9bca602b6ec5 100644 DCHECK_CURRENTLY_ON(BrowserThread::UI); SiteInstance* site_instance = nullptr; -@@ -97,8 +97,7 @@ StoragePartitionImpl* GetStoragePartition(BrowserContext* context, +@@ -98,8 +98,7 @@ StoragePartitionImpl* GetStoragePartition(BrowserContext* context, if (render_frame_host_) site_instance = render_frame_host_->GetSiteInstance(); } @@ -187,7 +187,7 @@ index ba4abf130285..9bca602b6ec5 100644 } bool CanRequestURLFromRenderer(int render_process_id, GURL url) { -@@ -264,7 +263,7 @@ base::FilePath GetTemporaryDownloadDirectory() { +@@ -265,7 +264,7 @@ base::FilePath GetTemporaryDownloadDirectory() { #endif scoped_refptr @@ -196,7 +196,7 @@ index ba4abf130285..9bca602b6ec5 100644 RenderFrameHost* rfh, bool is_download) { network::mojom::URLLoaderFactoryPtrInfo proxy_factory_ptr_info; -@@ -281,7 +280,7 @@ CreateDownloadURLLoaderFactoryGetter(StoragePartitionImpl* storage_partition, +@@ -282,7 +281,7 @@ CreateDownloadURLLoaderFactoryGetter(StoragePartitionImpl* storage_partition, } } return base::MakeRefCounted( @@ -205,7 +205,7 @@ index ba4abf130285..9bca602b6ec5 100644 std::move(proxy_factory_ptr_info), std::move(proxy_factory_request)); } -@@ -1061,7 +1060,7 @@ void DownloadManagerImpl::InterceptNavigationOnChecksComplete( +@@ -1060,7 +1059,7 @@ void DownloadManagerImpl::InterceptNavigationOnChecksComplete( tab_referrer_url = entry->GetReferrer().url; } } @@ -214,9 +214,9 @@ index ba4abf130285..9bca602b6ec5 100644 GetStoragePartition(browser_context_, render_process_id, render_frame_id); in_progress_manager_->InterceptDownloadFromNavigation( std::move(resource_request), render_process_id, render_frame_id, site_url, -@@ -1107,10 +1106,8 @@ void DownloadManagerImpl::BeginResourceDownloadOnChecksComplete( - base::MakeRefCounted( - params->url(), browser_context_->GetPath()); +@@ -1110,10 +1109,8 @@ void DownloadManagerImpl::BeginResourceDownloadOnChecksComplete( + base::MakeRefCounted( + rfh, params->url()); } else { - StoragePartitionImpl* storage_partition = - static_cast( @@ -228,10 +228,10 @@ index ba4abf130285..9bca602b6ec5 100644 CreateDownloadURLLoaderFactoryGetter(storage_partition, rfh, true); } diff --git content/browser/loader/navigation_url_loader_impl.cc content/browser/loader/navigation_url_loader_impl.cc -index d8eeafefef71..6069cb51e358 100644 +index 50860abcf28b..20768bd83153 100644 --- content/browser/loader/navigation_url_loader_impl.cc +++ content/browser/loader/navigation_url_loader_impl.cc -@@ -997,7 +997,7 @@ class NavigationURLLoaderImpl::URLLoaderRequestController +@@ -1029,7 +1029,7 @@ class NavigationURLLoaderImpl::URLLoaderRequestController // path does as well for navigations. bool has_plugin = PluginService::GetInstance()->GetPluginInfo( -1 /* render_process_id */, -1 /* render_frame_id */, resource_context_, @@ -240,7 +240,7 @@ index d8eeafefef71..6069cb51e358 100644 false /* allow_wildcard */, &stale, &plugin, nullptr); if (stale) { -@@ -1330,7 +1330,7 @@ NavigationURLLoaderImpl::NavigationURLLoaderImpl( +@@ -1361,7 +1361,7 @@ NavigationURLLoaderImpl::NavigationURLLoaderImpl( network::mojom::URLLoaderFactoryPtrInfo proxied_factory_info; network::mojom::URLLoaderFactoryRequest proxied_factory_request; @@ -249,16 +249,6 @@ index d8eeafefef71..6069cb51e358 100644 if (frame_tree_node) { // |frame_tree_node| may be null in some unit test environments. GetContentClient() -@@ -1378,7 +1378,8 @@ NavigationURLLoaderImpl::NavigationURLLoaderImpl( - DCHECK(!request_controller_); - request_controller_ = std::make_unique( - std::move(initial_interceptors), std::move(new_request), resource_context, -- partition->url_loader_factory_getter(), request_info->common_params.url, -+ base::WrapRefCounted(partition->url_loader_factory_getter()), -+ request_info->common_params.url, - std::move(proxied_factory_request), std::move(proxied_factory_info), - std::move(known_schemes), weak_factory_.GetWeakPtr()); - BrowserThread::PostTask( diff --git content/browser/payments/payment_app_installer.cc content/browser/payments/payment_app_installer.cc index 6a6e31bdb070..dce0433e1775 100644 --- content/browser/payments/payment_app_installer.cc @@ -306,7 +296,7 @@ index 6d28562bd1b9..544566b60192 100644 partition->GetPaymentAppContext(); diff --git content/browser/renderer_host/render_process_host_impl.cc content/browser/renderer_host/render_process_host_impl.cc -index bc6050f27296..879d1dc2c113 100644 +index 137bf0134739..df0e72929b73 100644 --- content/browser/renderer_host/render_process_host_impl.cc +++ content/browser/renderer_host/render_process_host_impl.cc @@ -740,11 +740,10 @@ class DefaultSubframeProcessHostHolder : public base::SupportsUserData::Data, @@ -379,7 +369,7 @@ index bc6050f27296..879d1dc2c113 100644 AddObserver(indexed_db_factory_.get()); AddObserver(service_worker_dispatcher_host_.get()); -@@ -1775,6 +1777,17 @@ void RenderProcessHostImpl::ResetChannelProxy() { +@@ -1779,6 +1781,17 @@ void RenderProcessHostImpl::ResetChannelProxy() { void RenderProcessHostImpl::CreateMessageFilters() { DCHECK_CURRENTLY_ON(BrowserThread::UI); @@ -397,7 +387,7 @@ index bc6050f27296..879d1dc2c113 100644 MediaInternals* media_internals = MediaInternals::GetInstance(); // Add BrowserPluginMessageFilter to ensure it gets the first stab at messages // from guests. -@@ -1787,7 +1800,7 @@ void RenderProcessHostImpl::CreateMessageFilters() { +@@ -1791,7 +1804,7 @@ void RenderProcessHostImpl::CreateMessageFilters() { base::MakeRefCounted( GetID(), GetBrowserContext(), request_context.get(), widget_helper_.get(), media_internals, @@ -406,7 +396,7 @@ index bc6050f27296..879d1dc2c113 100644 AddFilter(render_message_filter.get()); render_frame_message_filter_ = new RenderFrameMessageFilter( -@@ -1814,10 +1827,10 @@ void RenderProcessHostImpl::CreateMessageFilters() { +@@ -1818,10 +1831,10 @@ void RenderProcessHostImpl::CreateMessageFilters() { ChromeBlobStorageContext::GetFor(browser_context); resource_message_filter_ = new ResourceMessageFilter( @@ -419,7 +409,7 @@ index bc6050f27296..879d1dc2c113 100644 storage_partition_impl_->GetPrefetchURLLoaderService(), std::move(get_contexts_callback), BrowserThread::GetTaskRunnerForThread(BrowserThread::IO)); -@@ -1826,8 +1839,7 @@ void RenderProcessHostImpl::CreateMessageFilters() { +@@ -1830,8 +1843,7 @@ void RenderProcessHostImpl::CreateMessageFilters() { AddFilter( new MidiHost(GetID(), BrowserMainLoop::GetInstance()->midi_service())); @@ -429,7 +419,7 @@ index bc6050f27296..879d1dc2c113 100644 peer_connection_tracker_host_ = new PeerConnectionTrackerHost(GetID()); AddFilter(peer_connection_tracker_host_.get()); -@@ -1849,10 +1861,6 @@ void RenderProcessHostImpl::CreateMessageFilters() { +@@ -1853,10 +1865,6 @@ void RenderProcessHostImpl::CreateMessageFilters() { AddFilter(new TraceMessageFilter(GetID())); AddFilter(new ResolveProxyMsgHelper(request_context.get())); @@ -440,7 +430,7 @@ index bc6050f27296..879d1dc2c113 100644 } void RenderProcessHostImpl::BindCacheStorage( -@@ -1864,7 +1872,8 @@ void RenderProcessHostImpl::BindCacheStorage( +@@ -1868,7 +1876,8 @@ void RenderProcessHostImpl::BindCacheStorage( cache_storage_dispatcher_host_ = base::MakeRefCounted(); cache_storage_dispatcher_host_->Init( @@ -450,7 +440,7 @@ index bc6050f27296..879d1dc2c113 100644 } // Send the binding to IO thread, because Cache Storage handles Mojo IPC on IO // thread entirely. -@@ -2016,7 +2025,8 @@ void RenderProcessHostImpl::RegisterMojoInterfaces() { +@@ -2020,7 +2029,8 @@ void RenderProcessHostImpl::RegisterMojoInterfaces() { registry->AddInterface(base::BindRepeating( &AppCacheDispatcherHost::Create, @@ -460,7 +450,7 @@ index bc6050f27296..879d1dc2c113 100644 GetID())); AddUIThreadInterface(registry.get(), base::Bind(&FieldTrialRecorder::Create)); -@@ -2047,6 +2057,9 @@ void RenderProcessHostImpl::RegisterMojoInterfaces() { +@@ -2051,6 +2061,9 @@ void RenderProcessHostImpl::RegisterMojoInterfaces() { plugin_registry_.reset( new PluginRegistryImpl(GetBrowserContext()->GetResourceContext())); } @@ -571,7 +561,7 @@ index 2fe70f50171f..98244cd5ddf8 100644 std::move(client), creation_context_type, blink::MessagePortChannel(std::move(message_port)), diff --git content/browser/shared_worker/shared_worker_service_impl.cc content/browser/shared_worker/shared_worker_service_impl.cc -index b78e52de343e..1aa055691d80 100644 +index 0727104684b1..ea180eca8131 100644 --- content/browser/shared_worker/shared_worker_service_impl.cc +++ content/browser/shared_worker/shared_worker_service_impl.cc @@ -309,8 +309,8 @@ void SharedWorkerServiceImpl::CreateWorker( diff --git a/patch/patches/views_1749_2102.patch b/patch/patches/views_1749_2102.patch index b241c8402..5ef3c1165 100644 --- a/patch/patches/views_1749_2102.patch +++ b/patch/patches/views_1749_2102.patch @@ -295,10 +295,10 @@ index 1d35afeda78f..333f9c0f778d 100644 std::unique_ptr selection_controller_; diff --git ui/views/controls/menu/menu_controller.cc ui/views/controls/menu/menu_controller.cc -index 7db3c69b1a3b..3c5a4106629d 100644 +index beecb7f27177..61bf431486db 100644 --- ui/views/controls/menu/menu_controller.cc +++ ui/views/controls/menu/menu_controller.cc -@@ -2451,8 +2451,13 @@ MenuItemView* MenuController::FindNextSelectableMenuItem( +@@ -2421,8 +2421,13 @@ MenuItemView* MenuController::FindNextSelectableMenuItem( void MenuController::OpenSubmenuChangeSelectionIfCan() { MenuItemView* item = pending_state_.item; @@ -313,7 +313,7 @@ index 7db3c69b1a3b..3c5a4106629d 100644 MenuItemView* to_select = NULL; if (item->GetSubmenu()->GetMenuItemCount() > 0) to_select = FindInitialSelectableMenuItem(item, INCREMENT_SELECTION_DOWN); -@@ -2467,8 +2472,10 @@ void MenuController::OpenSubmenuChangeSelectionIfCan() { +@@ -2437,8 +2442,10 @@ void MenuController::OpenSubmenuChangeSelectionIfCan() { void MenuController::CloseSubmenu() { MenuItemView* item = state_.item; DCHECK(item); @@ -373,10 +373,10 @@ index 4dea63f9f286..ef50b710c5af 100644 virtual int GetMaxWidthForMenu(MenuItemView* menu); diff --git ui/views/controls/menu/menu_item_view.cc ui/views/controls/menu/menu_item_view.cc -index 4b45b29b387b..39304c5c708c 100644 +index 4ede4cb5fa04..8f4af6c91969 100644 --- ui/views/controls/menu/menu_item_view.cc +++ ui/views/controls/menu/menu_item_view.cc -@@ -906,7 +906,12 @@ void MenuItemView::PaintButton(gfx::Canvas* canvas, PaintButtonMode mode) { +@@ -914,7 +914,12 @@ void MenuItemView::PaintButton(gfx::Canvas* canvas, PaintButtonMode mode) { // only need the background when we want it to look different, as when we're // selected. ui::NativeTheme* native_theme = GetNativeTheme(); @@ -390,7 +390,7 @@ index 4b45b29b387b..39304c5c708c 100644 gfx::Rect item_bounds(0, 0, width(), height()); if (type_ == ACTIONABLE_SUBMENU) { if (submenu_area_of_actionable_submenu_selected_) { -@@ -1025,6 +1030,13 @@ void MenuItemView::PaintMinorIconAndText(gfx::Canvas* canvas, SkColor color) { +@@ -1033,6 +1038,13 @@ void MenuItemView::PaintMinorIconAndText(gfx::Canvas* canvas, SkColor color) { SkColor MenuItemView::GetTextColor(bool minor, bool render_selection, bool emphasized) const { diff --git a/patch/patches/views_widget_180_1481_1565_1677_1749.patch b/patch/patches/views_widget_180_1481_1565_1677_1749.patch index 48f5b3018..3e72c728d 100644 --- a/patch/patches/views_widget_180_1481_1565_1677_1749.patch +++ b/patch/patches/views_widget_180_1481_1565_1677_1749.patch @@ -1,8 +1,8 @@ diff --git content/browser/renderer_host/render_widget_host_view_base.cc content/browser/renderer_host/render_widget_host_view_base.cc -index 0c4dc1f8e51d..04aff67cd9fe 100644 +index c7e802e7ac68..bf1d28904f49 100644 --- content/browser/renderer_host/render_widget_host_view_base.cc +++ content/browser/renderer_host/render_widget_host_view_base.cc -@@ -449,6 +449,14 @@ float RenderWidgetHostViewBase::GetDeviceScaleFactor() const { +@@ -468,6 +468,14 @@ float RenderWidgetHostViewBase::GetDeviceScaleFactor() const { return screen_info.device_scale_factor; } @@ -18,7 +18,7 @@ index 0c4dc1f8e51d..04aff67cd9fe 100644 return renderer_frame_number_; } diff --git content/browser/renderer_host/render_widget_host_view_base.h content/browser/renderer_host/render_widget_host_view_base.h -index 3e867a8bf130..27fb12375d15 100644 +index 1b2563d6bca0..cf6717aaeb98 100644 --- content/browser/renderer_host/render_widget_host_view_base.h +++ content/browser/renderer_host/render_widget_host_view_base.h @@ -84,6 +84,7 @@ class CursorManager; @@ -61,7 +61,7 @@ index 3e867a8bf130..27fb12375d15 100644 // Sets the cursor for this view to the one associated with the specified // cursor_type. virtual void UpdateCursor(const WebCursor& cursor) = 0; -@@ -655,6 +667,10 @@ class CONTENT_EXPORT RenderWidgetHostViewBase +@@ -649,6 +661,10 @@ class CONTENT_EXPORT RenderWidgetHostViewBase bool use_viz_hit_test_ = false; @@ -73,7 +73,7 @@ index 3e867a8bf130..27fb12375d15 100644 void SynchronizeVisualProperties(); diff --git content/browser/renderer_host/render_widget_host_view_event_handler.cc content/browser/renderer_host/render_widget_host_view_event_handler.cc -index af9912a5f02a..ce0952342e8c 100644 +index c079001bb4e5..da93acec6e60 100644 --- content/browser/renderer_host/render_widget_host_view_event_handler.cc +++ content/browser/renderer_host/render_widget_host_view_event_handler.cc @@ -30,6 +30,10 @@ @@ -87,7 +87,7 @@ index af9912a5f02a..ce0952342e8c 100644 #if defined(OS_WIN) #include "content/browser/frame_host/render_frame_host_impl.h" #include "content/public/common/context_menu_params.h" -@@ -887,6 +891,14 @@ void RenderWidgetHostViewEventHandler::SetKeyboardFocus() { +@@ -883,6 +887,14 @@ void RenderWidgetHostViewEventHandler::SetKeyboardFocus() { ::SetFocus(hwnd); } } @@ -135,7 +135,7 @@ index f772f64d656e..7d13f9f81b6c 100644 return host ? host->GetAcceleratedWidget() : NULL; } diff --git ui/views/widget/desktop_aura/desktop_window_tree_host_win.cc ui/views/widget/desktop_aura/desktop_window_tree_host_win.cc -index 429e3401d1e2..eaa995e03e70 100644 +index 9ec5fdb9bb5c..0694641f11db 100644 --- ui/views/widget/desktop_aura/desktop_window_tree_host_win.cc +++ ui/views/widget/desktop_aura/desktop_window_tree_host_win.cc @@ -87,6 +87,7 @@ DesktopWindowTreeHostWin::DesktopWindowTreeHostWin( @@ -160,7 +160,7 @@ index 429e3401d1e2..eaa995e03e70 100644 remove_standard_frame_ = params.remove_standard_frame; has_non_client_view_ = Widget::RequiresNonClientView(params.type); -@@ -869,11 +874,15 @@ void DesktopWindowTreeHostWin::HandleFrameChanged() { +@@ -871,11 +876,15 @@ void DesktopWindowTreeHostWin::HandleFrameChanged() { } void DesktopWindowTreeHostWin::HandleNativeFocus(HWND last_focused_window) { @@ -179,7 +179,7 @@ index 429e3401d1e2..eaa995e03e70 100644 bool DesktopWindowTreeHostWin::HandleMouseEvent(ui::MouseEvent* event) { diff --git ui/views/widget/desktop_aura/desktop_window_tree_host_win.h ui/views/widget/desktop_aura/desktop_window_tree_host_win.h -index 1eb03f110884..c3319648f00a 100644 +index 022de4037ff0..c54ef87f2f7f 100644 --- ui/views/widget/desktop_aura/desktop_window_tree_host_win.h +++ ui/views/widget/desktop_aura/desktop_window_tree_host_win.h @@ -284,6 +284,10 @@ class VIEWS_EXPORT DesktopWindowTreeHostWin @@ -194,7 +194,7 @@ index 1eb03f110884..c3319648f00a 100644 // a reference. corewm::TooltipWin* tooltip_; diff --git ui/views/widget/desktop_aura/desktop_window_tree_host_x11.cc ui/views/widget/desktop_aura/desktop_window_tree_host_x11.cc -index 438e5968ed24..97bb9ccef709 100644 +index 22a9914957a7..d315f07eca5e 100644 --- ui/views/widget/desktop_aura/desktop_window_tree_host_x11.cc +++ ui/views/widget/desktop_aura/desktop_window_tree_host_x11.cc @@ -145,6 +145,7 @@ DesktopWindowTreeHostX11::DesktopWindowTreeHostX11( @@ -222,7 +222,7 @@ index 438e5968ed24..97bb9ccef709 100644 return bounds_in_pixels_; } -@@ -502,7 +506,8 @@ void DesktopWindowTreeHostX11::CloseNow() { +@@ -504,7 +508,8 @@ void DesktopWindowTreeHostX11::CloseNow() { // Actually free our native resources. if (ui::PlatformEventSource::GetInstance()) ui::PlatformEventSource::GetInstance()->RemovePlatformEventDispatcher(this); @@ -232,7 +232,7 @@ index 438e5968ed24..97bb9ccef709 100644 xwindow_ = x11::None; desktop_native_widget_aura_->OnHostClosed(); -@@ -643,6 +648,8 @@ void DesktopWindowTreeHostX11::GetWindowPlacement( +@@ -645,6 +650,8 @@ void DesktopWindowTreeHostX11::GetWindowPlacement( } gfx::Rect DesktopWindowTreeHostX11::GetWindowBoundsInScreen() const { @@ -241,7 +241,7 @@ index 438e5968ed24..97bb9ccef709 100644 return ToDIPRect(bounds_in_pixels_); } -@@ -1268,6 +1275,8 @@ void DesktopWindowTreeHostX11::SetBoundsInPixels( +@@ -1270,6 +1277,8 @@ void DesktopWindowTreeHostX11::SetBoundsInPixels( } gfx::Point DesktopWindowTreeHostX11::GetLocationOnScreenInPixels() const { @@ -250,7 +250,7 @@ index 438e5968ed24..97bb9ccef709 100644 return bounds_in_pixels_.origin(); } -@@ -1412,7 +1421,6 @@ void DesktopWindowTreeHostX11::InitX11Window( +@@ -1414,7 +1423,6 @@ void DesktopWindowTreeHostX11::InitX11Window( ::Atom window_type; switch (params.type) { case Widget::InitParams::TYPE_MENU: @@ -258,7 +258,7 @@ index 438e5968ed24..97bb9ccef709 100644 window_type = gfx::GetAtom("_NET_WM_WINDOW_TYPE_MENU"); break; case Widget::InitParams::TYPE_TOOLTIP: -@@ -1468,9 +1476,15 @@ void DesktopWindowTreeHostX11::InitX11Window( +@@ -1470,9 +1478,15 @@ void DesktopWindowTreeHostX11::InitX11Window( attribute_mask |= CWBorderPixel; swa.border_pixel = 0; @@ -275,7 +275,7 @@ index 438e5968ed24..97bb9ccef709 100644 bounds_in_pixels_.y(), bounds_in_pixels_.width(), bounds_in_pixels_.height(), 0, // border width -@@ -2086,6 +2100,10 @@ uint32_t DesktopWindowTreeHostX11::DispatchEvent( +@@ -2088,6 +2102,10 @@ uint32_t DesktopWindowTreeHostX11::DispatchEvent( } break; } @@ -287,7 +287,7 @@ index 438e5968ed24..97bb9ccef709 100644 case x11::FocusOut: OnFocusEvent(xev->type == x11::FocusIn, event->xfocus.mode, diff --git ui/views/widget/desktop_aura/desktop_window_tree_host_x11.h ui/views/widget/desktop_aura/desktop_window_tree_host_x11.h -index 492c896749f8..8e609c5c7d76 100644 +index c5e6df7ce811..8648b49b5753 100644 --- ui/views/widget/desktop_aura/desktop_window_tree_host_x11.h +++ ui/views/widget/desktop_aura/desktop_window_tree_host_x11.h @@ -91,6 +91,12 @@ class VIEWS_EXPORT DesktopWindowTreeHostX11 @@ -335,7 +335,7 @@ index 492c896749f8..8e609c5c7d76 100644 base::WeakPtrFactory weak_factory_; diff --git ui/views/widget/widget.cc ui/views/widget/widget.cc -index adb90b9def4e..ae21334ae654 100644 +index e4e7fc6ce96c..9123f688646f 100644 --- ui/views/widget/widget.cc +++ ui/views/widget/widget.cc @@ -132,6 +132,7 @@ Widget::InitParams::InitParams(Type type) @@ -387,7 +387,7 @@ index adb90b9def4e..ae21334ae654 100644 } diff --git ui/views/widget/widget.h ui/views/widget/widget.h -index 461097ab814e..7c199a5ed30c 100644 +index 482ab928bdec..d06cd234da9d 100644 --- ui/views/widget/widget.h +++ ui/views/widget/widget.h @@ -252,6 +252,7 @@ class VIEWS_EXPORT Widget : public internal::NativeWidgetDelegate, diff --git a/patch/patches/web_contents_1257_1565.patch b/patch/patches/web_contents_1257_1565.patch index 662bb40d1..7cdebe85b 100644 --- a/patch/patches/web_contents_1257_1565.patch +++ b/patch/patches/web_contents_1257_1565.patch @@ -1,8 +1,8 @@ diff --git content/browser/web_contents/web_contents_impl.cc content/browser/web_contents/web_contents_impl.cc -index 34096176fc16..58eabafbd9b6 100644 +index 58eedf0d0bd8..b51742b98834 100644 --- content/browser/web_contents/web_contents_impl.cc +++ content/browser/web_contents/web_contents_impl.cc -@@ -2006,21 +2006,30 @@ void WebContentsImpl::Init(const WebContents::CreateParams& params) { +@@ -2033,21 +2033,30 @@ void WebContentsImpl::Init(const WebContents::CreateParams& params) { std::string unique_name; frame_tree_.root()->SetFrameName(params.main_frame_name, unique_name); @@ -45,7 +45,7 @@ index 34096176fc16..58eabafbd9b6 100644 CHECK(render_view_host_delegate_view_); CHECK(view_.get()); -@@ -2703,6 +2712,15 @@ void WebContentsImpl::CreateNewWindow( +@@ -2730,6 +2739,15 @@ void WebContentsImpl::CreateNewWindow( create_params.renderer_initiated_creation = main_frame_route_id != MSG_ROUTING_NONE; @@ -61,7 +61,7 @@ index 34096176fc16..58eabafbd9b6 100644 std::unique_ptr new_contents; if (!is_guest) { create_params.context = view_->GetNativeView(); -@@ -2733,7 +2751,7 @@ void WebContentsImpl::CreateNewWindow( +@@ -2760,7 +2778,7 @@ void WebContentsImpl::CreateNewWindow( // TODO(brettw): It seems bogus that we have to call this function on the // newly created object and give it one of its own member variables. new_view->CreateViewForWidget( @@ -70,7 +70,7 @@ index 34096176fc16..58eabafbd9b6 100644 } // Save the created window associated with the route so we can show it // later. -@@ -6066,7 +6084,7 @@ InterstitialPageImpl* WebContentsImpl::GetInterstitialForRenderManager() { +@@ -6092,7 +6110,7 @@ InterstitialPageImpl* WebContentsImpl::GetInterstitialForRenderManager() { void WebContentsImpl::CreateRenderWidgetHostViewForRenderManager( RenderViewHost* render_view_host) { RenderWidgetHostViewBase* rwh_view = diff --git a/patch/patches/webkit_plugin_info_2015.patch b/patch/patches/webkit_plugin_info_2015.patch index 0a5f2b04b..e8a596b2e 100644 --- a/patch/patches/webkit_plugin_info_2015.patch +++ b/patch/patches/webkit_plugin_info_2015.patch @@ -10,10 +10,10 @@ index 92e9cb865204..4628c56882b4 100644 + GetPlugins(bool refresh, bool is_main_frame, url.mojom.Origin main_frame_origin) => (array plugins); }; diff --git third_party/blink/public/platform/platform.h third_party/blink/public/platform/platform.h -index ea54e3d6ce90..a36f0e222119 100644 +index 27c4bdcdfd37..a6773b8093c2 100644 --- third_party/blink/public/platform/platform.h +++ third_party/blink/public/platform/platform.h -@@ -706,6 +706,11 @@ class BLINK_PLATFORM_EXPORT Platform { +@@ -697,6 +697,11 @@ class BLINK_PLATFORM_EXPORT Platform { // runs during Chromium's build step). virtual bool IsTakingV8ContextSnapshot() { return false; } @@ -44,10 +44,10 @@ index a2fbf84747aa..8ab120155ccd 100644 .Top() .GetSecurityContext() diff --git third_party/blink/renderer/core/exported/web_dev_tools_agent_impl.cc third_party/blink/renderer/core/exported/web_dev_tools_agent_impl.cc -index 6a9b05fd9c3b..fe63dffe5f92 100644 +index 5494706514d7..6663b2edd897 100644 --- third_party/blink/renderer/core/exported/web_dev_tools_agent_impl.cc +++ third_party/blink/renderer/core/exported/web_dev_tools_agent_impl.cc -@@ -325,6 +325,8 @@ WebDevToolsAgentImpl::Session::Session( +@@ -324,6 +324,8 @@ WebDevToolsAgentImpl::Session::Session( &WebDevToolsAgentImpl::Session::Detach, WrapWeakPersistent(this))); InitializeInspectorSession(reattach_state); @@ -56,7 +56,7 @@ index 6a9b05fd9c3b..fe63dffe5f92 100644 } WebDevToolsAgentImpl::Session::~Session() { -@@ -350,6 +352,7 @@ void WebDevToolsAgentImpl::Session::Detach() { +@@ -349,6 +351,7 @@ void WebDevToolsAgentImpl::Session::Detach() { io_session_->DeleteSoon(); io_session_ = nullptr; inspector_session_->Dispose(); @@ -65,10 +65,10 @@ index 6a9b05fd9c3b..fe63dffe5f92 100644 void WebDevToolsAgentImpl::Session::SendProtocolResponse(int session_id, diff --git third_party/blink/renderer/core/frame/local_frame.cc third_party/blink/renderer/core/frame/local_frame.cc -index 11508d7b0d15..2f43b4dca085 100644 +index a0aa62ce4632..7d6ebb8b3ee5 100644 --- third_party/blink/renderer/core/frame/local_frame.cc +++ third_party/blink/renderer/core/frame/local_frame.cc -@@ -1256,7 +1256,7 @@ FrameResourceCoordinator* LocalFrame::GetFrameResourceCoordinator() { +@@ -1250,7 +1250,7 @@ FrameResourceCoordinator* LocalFrame::GetFrameResourceCoordinator() { PluginData* LocalFrame::GetPluginData() const { if (!Loader().AllowPlugins(kNotAboutToInstantiatePlugin)) return nullptr; @@ -78,20 +78,20 @@ index 11508d7b0d15..2f43b4dca085 100644 } diff --git third_party/blink/renderer/core/page/page.cc third_party/blink/renderer/core/page/page.cc -index b7fef98a016e..b658d51f80a0 100644 +index c22147fa70b0..f222dcb0820e 100644 --- third_party/blink/renderer/core/page/page.cc +++ third_party/blink/renderer/core/page/page.cc -@@ -163,7 +163,8 @@ Page::Page(PageClients& page_clients) +@@ -162,7 +162,8 @@ Page::Page(PageClients& page_clients) + visual_viewport_(VisualViewport::Create(*this)), + overscroll_controller_( OverscrollController::Create(GetVisualViewport(), GetChromeClient())), - link_highlights_(LinkHighlights::Create(*this)), - main_frame_(nullptr), - plugin_data_(nullptr), + plugin_data_main_frame_(nullptr), + plugin_data_sub_frame_(nullptr), - use_counter_(page_clients.chrome_client && - page_clients.chrome_client->IsSVGImageChromeClient() - ? UseCounter::kSVGImageContext -@@ -332,21 +333,40 @@ void Page::InitialStyleChanged() { + opened_by_dom_(false), + tab_key_cycles_through_elements_(true), + paused_(false), +@@ -324,21 +325,40 @@ void Page::InitialStyleChanged() { } } @@ -141,21 +141,21 @@ index b7fef98a016e..b658d51f80a0 100644 page->NotifyPluginsChanged(); } } -@@ -733,7 +753,8 @@ void Page::Trace(blink::Visitor* visitor) { +@@ -726,7 +746,8 @@ void Page::Trace(blink::Visitor* visitor) { + visitor->Trace(visual_viewport_); visitor->Trace(overscroll_controller_); - visitor->Trace(link_highlights_); visitor->Trace(main_frame_); - visitor->Trace(plugin_data_); + visitor->Trace(plugin_data_main_frame_); + visitor->Trace(plugin_data_sub_frame_); visitor->Trace(validation_message_client_); - visitor->Trace(use_counter_); visitor->Trace(plugins_changed_observers_); + visitor->Trace(next_related_page_); diff --git third_party/blink/renderer/core/page/page.h third_party/blink/renderer/core/page/page.h -index 06804a1dd062..0d7e84c5530b 100644 +index c2cc3cceb57c..1b3dcd6052f0 100644 --- third_party/blink/renderer/core/page/page.h +++ third_party/blink/renderer/core/page/page.h -@@ -139,7 +139,8 @@ class CORE_EXPORT Page final : public GarbageCollectedFinalized, +@@ -137,7 +137,8 @@ class CORE_EXPORT Page final : public GarbageCollectedFinalized, ViewportDescription GetViewportDescription() const; // Returns the plugin data associated with |main_frame_origin|. @@ -165,9 +165,9 @@ index 06804a1dd062..0d7e84c5530b 100644 // Resets the plugin data for all pages in the renderer process and notifies // PluginsChangedObservers. -@@ -370,7 +371,8 @@ class CORE_EXPORT Page final : public GarbageCollectedFinalized, - // longer needed. - Member main_frame_; +@@ -364,7 +365,8 @@ class CORE_EXPORT Page final : public GarbageCollectedFinalized, + const Member visual_viewport_; + const Member overscroll_controller_; - Member plugin_data_; + Member plugin_data_main_frame_; diff --git a/patch/patches/webkit_popups.patch b/patch/patches/webkit_popups.patch index a93931d6e..242de2454 100644 --- a/patch/patches/webkit_popups.patch +++ b/patch/patches/webkit_popups.patch @@ -20,7 +20,7 @@ index f4cbe0e0e245..eaabea055764 100644 // Call these methods before and after running a nested, modal event loop diff --git third_party/blink/renderer/core/exported/web_view_impl.cc third_party/blink/renderer/core/exported/web_view_impl.cc -index 789ba3b847d5..612b1a23ebe4 100644 +index 355d0393070c..7c0d32c6d237 100644 --- third_party/blink/renderer/core/exported/web_view_impl.cc +++ third_party/blink/renderer/core/exported/web_view_impl.cc @@ -242,8 +242,13 @@ void WebView::SetUseExternalPopupMenus(bool use_external_popup_menus) { @@ -48,10 +48,10 @@ index 789ba3b847d5..612b1a23ebe4 100644 suppress_next_keypress_event_(false), ime_accept_events_(true), diff --git third_party/blink/renderer/core/exported/web_view_impl.h third_party/blink/renderer/core/exported/web_view_impl.h -index a47150a8df45..3c5ee6d2e723 100644 +index f35cbf267757..39b276fb65ba 100644 --- third_party/blink/renderer/core/exported/web_view_impl.h +++ third_party/blink/renderer/core/exported/web_view_impl.h -@@ -103,7 +103,8 @@ class CORE_EXPORT WebViewImpl final : public WebView, +@@ -104,7 +104,8 @@ class CORE_EXPORT WebViewImpl final : public WebView, static HashSet& AllInstances(); // Returns true if popup menus should be rendered by the browser, false if // they should be rendered by WebKit (which is the default). @@ -61,7 +61,7 @@ index a47150a8df45..3c5ee6d2e723 100644 // WebWidget methods: void Close() override; -@@ -246,7 +247,7 @@ class CORE_EXPORT WebViewImpl final : public WebView, +@@ -247,7 +248,7 @@ class CORE_EXPORT WebViewImpl final : public WebView, HitTestResult CoreHitTestResultAt(const WebPoint&); void InvalidateRect(const IntRect&); @@ -70,7 +70,7 @@ index a47150a8df45..3c5ee6d2e723 100644 void SetBaseBackgroundColorOverride(SkColor); void ClearBaseBackgroundColorOverride(); void SetBackgroundColorOverride(SkColor); -@@ -602,6 +603,8 @@ class CORE_EXPORT WebViewImpl final : public WebView, +@@ -612,6 +613,8 @@ class CORE_EXPORT WebViewImpl final : public WebView, float fake_page_scale_animation_page_scale_factor_; bool fake_page_scale_animation_use_anchor_; @@ -80,10 +80,10 @@ index a47150a8df45..3c5ee6d2e723 100644 TransformationMatrix device_emulation_transform_; diff --git third_party/blink/renderer/core/page/chrome_client_impl.cc third_party/blink/renderer/core/page/chrome_client_impl.cc -index b46bc592ebfb..b7a95ed26456 100644 +index e8dffb24f6f9..beadd792985b 100644 --- third_party/blink/renderer/core/page/chrome_client_impl.cc +++ third_party/blink/renderer/core/page/chrome_client_impl.cc -@@ -779,7 +779,7 @@ bool ChromeClientImpl::HasOpenedPopup() const { +@@ -807,7 +807,7 @@ bool ChromeClientImpl::HasOpenedPopup() const { PopupMenu* ChromeClientImpl::OpenPopupMenu(LocalFrame& frame, HTMLSelectElement& select) { NotifyPopupOpeningObservers(); diff --git a/patch/patches/webview_plugin_2020.patch b/patch/patches/webview_plugin_2020.patch index 0a5f9918a..e113373b4 100644 --- a/patch/patches/webview_plugin_2020.patch +++ b/patch/patches/webview_plugin_2020.patch @@ -1,8 +1,8 @@ diff --git chrome/app/generated_resources.grd chrome/app/generated_resources.grd -index e56441af0106..832eb5a99c28 100644 +index 91c0cc979f0e..1945f8843707 100644 --- chrome/app/generated_resources.grd +++ chrome/app/generated_resources.grd -@@ -4474,7 +4474,7 @@ Keep your key file in a safe place. You will need it to create new versions of y +@@ -4483,7 +4483,7 @@ Keep your key file in a safe place. You will need it to create new versions of y diff --git a/patch/patches/win_rt_2274.patch b/patch/patches/win_rt_2274.patch index 7aa14d6d0..767dad6a8 100644 --- a/patch/patches/win_rt_2274.patch +++ b/patch/patches/win_rt_2274.patch @@ -1,8 +1,8 @@ diff --git services/service_manager/sandbox/win/sandbox_win.cc services/service_manager/sandbox/win/sandbox_win.cc -index 31edb20931f1..eb9c43e69ec0 100644 +index be4d747ae8cc..a32cbbaf4630 100644 --- services/service_manager/sandbox/win/sandbox_win.cc +++ services/service_manager/sandbox/win/sandbox_win.cc -@@ -882,8 +882,11 @@ sandbox::ResultCode SandboxWin::StartSandboxedProcess( +@@ -883,8 +883,11 @@ sandbox::ResultCode SandboxWin::StartSandboxedProcess( #endif // Post-startup mitigations.