mirror of
				https://bitbucket.org/chromiumembedded/cef
				synced 2025-06-05 21:39:12 +02:00 
			
		
		
		
	Update to Chromium version 119.0.6045.0 (#1204232)
Mac: 13.5+ build system w/ 14.0 base SDK (Xcode 15.0) is now required.
This commit is contained in:
		| @@ -1,5 +1,5 @@ | ||||
| diff --git base/BUILD.gn base/BUILD.gn | ||||
| index 82cb596dcbb36..16c057933e1f8 100644 | ||||
| index 55479f4187323..207b9e3a1e281 100644 | ||||
| --- base/BUILD.gn | ||||
| +++ base/BUILD.gn | ||||
| @@ -40,6 +40,7 @@ import("//build/config/ui.gni") | ||||
| @@ -10,7 +10,7 @@ index 82cb596dcbb36..16c057933e1f8 100644 | ||||
|  import("//testing/libfuzzer/fuzzer_test.gni") | ||||
|  import("//testing/test.gni") | ||||
|   | ||||
| @@ -1502,7 +1503,11 @@ component("base") { | ||||
| @@ -1495,7 +1496,11 @@ component("base") { | ||||
|      "hash/md5_constexpr_internal.h", | ||||
|      "hash/sha1.h", | ||||
|    ] | ||||
| @@ -23,7 +23,7 @@ index 82cb596dcbb36..16c057933e1f8 100644 | ||||
|      sources += [ | ||||
|        "hash/md5_nacl.cc", | ||||
|        "hash/md5_nacl.h", | ||||
| @@ -1911,6 +1916,12 @@ component("base") { | ||||
| @@ -1909,6 +1914,12 @@ component("base") { | ||||
|        defines += [ "COM_INIT_CHECK_HOOK_DISABLED" ] | ||||
|      } | ||||
|   | ||||
|   | ||||
| @@ -33,7 +33,7 @@ index 641bbaf2c7576..afdd641e38452 100644 | ||||
|  // Generic container overload. | ||||
|  template <typename Range> | ||||
| diff --git base/win/registry.cc base/win/registry.cc | ||||
| index c33cda7211238..063be1886c544 100644 | ||||
| index 7b9dcb90e627e..275b60e6c2a28 100644 | ||||
| --- base/win/registry.cc | ||||
| +++ base/win/registry.cc | ||||
| @@ -14,6 +14,14 @@ | ||||
|   | ||||
| @@ -1,8 +1,8 @@ | ||||
| diff --git base/test/BUILD.gn base/test/BUILD.gn | ||||
| index c6add87d77744..80d34d031e14b 100644 | ||||
| index 90df027353fe7..fdfc6c6d450d9 100644 | ||||
| --- base/test/BUILD.gn | ||||
| +++ base/test/BUILD.gn | ||||
| @@ -185,11 +185,6 @@ static_library("test_support") { | ||||
| @@ -189,11 +189,6 @@ static_library("test_support") { | ||||
|   | ||||
|    if (enable_base_tracing) { | ||||
|      public_deps += [ "//third_party/perfetto:perfetto_test_support" ] | ||||
| @@ -14,7 +14,7 @@ index c6add87d77744..80d34d031e14b 100644 | ||||
|      deps += [ ":gen_cc_chrome_track_event_descriptor" ] | ||||
|      if (is_ios) { | ||||
|        deps += [ | ||||
| @@ -534,7 +529,7 @@ if (enable_base_tracing) { | ||||
| @@ -537,7 +532,7 @@ if (enable_base_tracing) { | ||||
|    # processor depends on dev_sqlite. The two share the same symbols but have | ||||
|    # different implementations, so we need to hide dev_sqlite in this shared | ||||
|    # library even in non-component builds to prevent duplicate symbols. | ||||
| @@ -23,7 +23,7 @@ index c6add87d77744..80d34d031e14b 100644 | ||||
|    if (is_ios) { | ||||
|      _target_type = "ios_framework_bundle" | ||||
|    } | ||||
| @@ -543,6 +538,8 @@ if (enable_base_tracing) { | ||||
| @@ -546,6 +541,8 @@ if (enable_base_tracing) { | ||||
|      defines = [ "TEST_TRACE_PROCESSOR_IMPL" ] | ||||
|      testonly = true | ||||
|      sources = [ | ||||
| @@ -32,7 +32,7 @@ index c6add87d77744..80d34d031e14b 100644 | ||||
|        "test_trace_processor_export.h", | ||||
|        "test_trace_processor_impl.cc", | ||||
|        "test_trace_processor_impl.h", | ||||
| @@ -560,33 +557,6 @@ if (enable_base_tracing) { | ||||
| @@ -563,33 +560,6 @@ if (enable_base_tracing) { | ||||
|        output_name = "TestTraceProcessor" | ||||
|        bundle_deps_filter = [ "//third_party/icu:icudata" ] | ||||
|      } | ||||
| @@ -88,10 +88,10 @@ index f5191b804bc07..aadb7d66ba4c3 100644 | ||||
| + | ||||
|  #endif  // BASE_TEST_TEST_TRACE_PROCESSOR_EXPORT_H_ | ||||
| diff --git content/shell/BUILD.gn content/shell/BUILD.gn | ||||
| index f770bd917f92f..0607e2eedaaca 100644 | ||||
| index acc54b120738f..6a79447c20513 100644 | ||||
| --- content/shell/BUILD.gn | ||||
| +++ content/shell/BUILD.gn | ||||
| @@ -841,7 +841,6 @@ if (is_mac) { | ||||
| @@ -842,7 +842,6 @@ if (is_mac) { | ||||
|        # Specify a sensible install_name for static builds. The library is | ||||
|        # dlopen()ed so this is not used to resolve the module. | ||||
|        ldflags = [ "-Wl,-install_name,@executable_path/../Frameworks/$output_name.framework/$output_name" ] | ||||
|   | ||||
| @@ -1,5 +1,5 @@ | ||||
| diff --git third_party/blink/public/web/web_element.h third_party/blink/public/web/web_element.h | ||||
| index a23dd0a402704..91e4d3615fb6a 100644 | ||||
| index c9a9eb2da897c..7339ae9945fc4 100644 | ||||
| --- third_party/blink/public/web/web_element.h | ||||
| +++ third_party/blink/public/web/web_element.h | ||||
| @@ -81,6 +81,9 @@ class BLINK_EXPORT WebElement : public WebNode { | ||||
| @@ -13,10 +13,10 @@ index a23dd0a402704..91e4d3615fb6a 100644 | ||||
|    // Returns all <label> elements associated to this element. | ||||
|    WebVector<WebLabelElement> Labels() const; | ||||
| diff --git third_party/blink/renderer/core/exported/web_element.cc third_party/blink/renderer/core/exported/web_element.cc | ||||
| index a2afa376065be..be829f7f58854 100644 | ||||
| index 496d5181ff522..f98339358e9d4 100644 | ||||
| --- third_party/blink/renderer/core/exported/web_element.cc | ||||
| +++ third_party/blink/renderer/core/exported/web_element.cc | ||||
| @@ -105,6 +105,24 @@ void WebElement::SetAttribute(const WebString& attr_name, | ||||
| @@ -106,6 +106,24 @@ void WebElement::SetAttribute(const WebString& attr_name, | ||||
|                                    IGNORE_EXCEPTION_FOR_TESTING); | ||||
|  } | ||||
|   | ||||
|   | ||||
| @@ -1,8 +1,8 @@ | ||||
| diff --git content/browser/scheduler/browser_task_executor.cc content/browser/scheduler/browser_task_executor.cc | ||||
| index 0e9aa441e3298..d22508fe1965f 100644 | ||||
| index 307d5b7ffca63..9a8f0a4d3d7bd 100644 | ||||
| --- content/browser/scheduler/browser_task_executor.cc | ||||
| +++ content/browser/scheduler/browser_task_executor.cc | ||||
| @@ -208,7 +208,7 @@ BrowserTaskExecutor::OnUserInputStart() { | ||||
| @@ -209,7 +209,7 @@ BrowserTaskExecutor::OnUserInputStart() { | ||||
|   | ||||
|  // static | ||||
|  void BrowserTaskExecutor::Shutdown() { | ||||
|   | ||||
| @@ -1,8 +1,8 @@ | ||||
| diff --git content/browser/child_process_security_policy_impl.cc content/browser/child_process_security_policy_impl.cc | ||||
| index ccc2e7da62b79..f3b31e1196988 100644 | ||||
| index 401eb0cd40ee2..5e7ac0b6d9d0a 100644 | ||||
| --- content/browser/child_process_security_policy_impl.cc | ||||
| +++ content/browser/child_process_security_policy_impl.cc | ||||
| @@ -1860,6 +1860,16 @@ bool ChildProcessSecurityPolicyImpl::CanAccessDataForMaybeOpaqueOrigin( | ||||
| @@ -1866,6 +1866,16 @@ bool ChildProcessSecurityPolicyImpl::CanAccessDataForMaybeOpaqueOrigin( | ||||
|              // DeclarativeApiTest.PersistRules. | ||||
|              if (actual_process_lock.matches_scheme(url::kDataScheme)) | ||||
|                return true; | ||||
| @@ -20,10 +20,10 @@ index ccc2e7da62b79..f3b31e1196988 100644 | ||||
|   | ||||
|            // Make an exception to allow most visited tiles to commit in | ||||
| diff --git content/browser/renderer_host/navigation_request.cc content/browser/renderer_host/navigation_request.cc | ||||
| index e91fb6b203b55..fdf1de970fe18 100644 | ||||
| index 68b50260715c2..79d9cd4558848 100644 | ||||
| --- content/browser/renderer_host/navigation_request.cc | ||||
| +++ content/browser/renderer_host/navigation_request.cc | ||||
| @@ -7414,10 +7414,22 @@ NavigationRequest::GetOriginForURLLoaderFactoryBeforeResponseWithDebugInfo( | ||||
| @@ -7463,10 +7463,22 @@ NavigationRequest::GetOriginForURLLoaderFactoryBeforeResponseWithDebugInfo( | ||||
|    bool use_opaque_origin = | ||||
|        (sandbox_flags & network::mojom::WebSandboxFlags::kOrigin) == | ||||
|        network::mojom::WebSandboxFlags::kOrigin; | ||||
| @@ -47,7 +47,7 @@ index e91fb6b203b55..fdf1de970fe18 100644 | ||||
|    } | ||||
|   | ||||
|    return origin_and_debug_info; | ||||
| @@ -7523,6 +7535,15 @@ NavigationRequest::GetOriginForURLLoaderFactoryAfterResponseWithDebugInfo() { | ||||
| @@ -7572,6 +7584,15 @@ NavigationRequest::GetOriginForURLLoaderFactoryAfterResponseWithDebugInfo() { | ||||
|        DetermineInitiatorRelationship(initiator_rfh, | ||||
|                                       frame_tree_node_->current_frame_host())); | ||||
|   | ||||
|   | ||||
| @@ -1,8 +1,8 @@ | ||||
| diff --git build/config/compiler/BUILD.gn build/config/compiler/BUILD.gn | ||||
| index 06812fb9c2188..3daa061efcd8f 100644 | ||||
| index 6d05512ae3644..d67b22be8ecea 100644 | ||||
| --- build/config/compiler/BUILD.gn | ||||
| +++ build/config/compiler/BUILD.gn | ||||
| @@ -2080,8 +2080,6 @@ config("thin_archive") { | ||||
| @@ -2116,8 +2116,6 @@ config("thin_archive") { | ||||
|    # confuses lldb. | ||||
|    if ((is_posix && !is_nacl && !is_apple) || is_fuchsia) { | ||||
|      arflags = [ "-T" ] | ||||
|   | ||||
| @@ -1,5 +1,5 @@ | ||||
| diff --git chrome/browser/BUILD.gn chrome/browser/BUILD.gn | ||||
| index 1a9bff4a3efb7..883534be3c975 100644 | ||||
| index 157ee5cadc0a7..9906a3cc24dd0 100644 | ||||
| --- chrome/browser/BUILD.gn | ||||
| +++ chrome/browser/BUILD.gn | ||||
| @@ -11,6 +11,7 @@ import("//build/config/compiler/pgo/pgo.gni") | ||||
| @@ -10,7 +10,7 @@ index 1a9bff4a3efb7..883534be3c975 100644 | ||||
|  import("//chrome/browser/buildflags.gni") | ||||
|  import("//chrome/browser/downgrade/buildflags.gni") | ||||
|  import("//chrome/common/features.gni") | ||||
| @@ -2001,6 +2002,7 @@ static_library("browser") { | ||||
| @@ -2047,6 +2048,7 @@ static_library("browser") { | ||||
|      "//build/config/chromebox_for_meetings:buildflags", | ||||
|      "//build/config/compiler:compiler_buildflags", | ||||
|      "//cc", | ||||
| @@ -18,7 +18,7 @@ index 1a9bff4a3efb7..883534be3c975 100644 | ||||
|      "//chrome:extra_resources", | ||||
|      "//chrome:resources", | ||||
|      "//chrome:strings", | ||||
| @@ -2630,6 +2632,10 @@ static_library("browser") { | ||||
| @@ -2694,6 +2696,10 @@ static_library("browser") { | ||||
|      ] | ||||
|    } | ||||
|   | ||||
|   | ||||
| @@ -14,10 +14,10 @@ index 25a82353eace8..bf3c1cc675688 100644 | ||||
|        std::unique_ptr<BackgroundModeManager> manager) = 0; | ||||
|  #endif | ||||
| diff --git chrome/browser/browser_process_impl.cc chrome/browser/browser_process_impl.cc | ||||
| index 080614c2c660d..8a01a0cf10dfa 100644 | ||||
| index 2c378853875b1..abb69e7678b8c 100644 | ||||
| --- chrome/browser/browser_process_impl.cc | ||||
| +++ chrome/browser/browser_process_impl.cc | ||||
| @@ -1053,18 +1053,14 @@ DownloadRequestLimiter* BrowserProcessImpl::download_request_limiter() { | ||||
| @@ -1055,18 +1055,14 @@ DownloadRequestLimiter* BrowserProcessImpl::download_request_limiter() { | ||||
|    return download_request_limiter_.get(); | ||||
|  } | ||||
|   | ||||
|   | ||||
| @@ -13,7 +13,7 @@ index 2480282a19d12..dbd1fbf8a15b5 100644 | ||||
|    return false; | ||||
|  } | ||||
| diff --git chrome/browser/ui/BUILD.gn chrome/browser/ui/BUILD.gn | ||||
| index a521886e9eb44..4ba68bf125c94 100644 | ||||
| index eca90c39e0d44..2157b6d86ab02 100644 | ||||
| --- chrome/browser/ui/BUILD.gn | ||||
| +++ chrome/browser/ui/BUILD.gn | ||||
| @@ -9,6 +9,7 @@ import("//build/config/compiler/compiler.gni") | ||||
| @@ -24,7 +24,7 @@ index a521886e9eb44..4ba68bf125c94 100644 | ||||
|  import("//chrome/browser/buildflags.gni") | ||||
|  import("//chrome/common/features.gni") | ||||
|  import("//chromeos/ash/components/assistant/assistant.gni") | ||||
| @@ -382,6 +383,10 @@ static_library("ui") { | ||||
| @@ -374,6 +375,10 @@ static_library("ui") { | ||||
|      "//build/config/compiler:wexit_time_destructors", | ||||
|    ] | ||||
|   | ||||
| @@ -35,7 +35,7 @@ index a521886e9eb44..4ba68bf125c94 100644 | ||||
|    # Since browser and browser_ui actually depend on each other, | ||||
|    # we must omit the dependency from browser_ui to browser. | ||||
|    # However, this means browser_ui and browser should more or less | ||||
| @@ -407,6 +412,7 @@ static_library("ui") { | ||||
| @@ -399,6 +404,7 @@ static_library("ui") { | ||||
|      "//build:chromeos_buildflags", | ||||
|      "//build/config/chromebox_for_meetings:buildflags", | ||||
|      "//cc/paint", | ||||
| @@ -43,7 +43,7 @@ index a521886e9eb44..4ba68bf125c94 100644 | ||||
|      "//chrome:resources", | ||||
|      "//chrome:strings", | ||||
|      "//chrome/app:chrome_dll_resources", | ||||
| @@ -2710,6 +2716,8 @@ static_library("ui") { | ||||
| @@ -2759,6 +2765,8 @@ static_library("ui") { | ||||
|        "views/apps/app_dialog/app_block_dialog_view.h", | ||||
|        "views/apps/app_dialog/app_pause_dialog_view.cc", | ||||
|        "views/apps/app_dialog/app_pause_dialog_view.h", | ||||
| @@ -52,7 +52,7 @@ index a521886e9eb44..4ba68bf125c94 100644 | ||||
|        "views/apps/app_info_dialog/arc_app_info_links_panel.cc", | ||||
|        "views/apps/app_info_dialog/arc_app_info_links_panel.h", | ||||
|        "views/apps/chrome_app_window_client_views_chromeos.cc", | ||||
| @@ -4619,8 +4627,6 @@ static_library("ui") { | ||||
| @@ -4694,8 +4702,6 @@ static_library("ui") { | ||||
|        "views/accessibility/theme_tracking_non_accessible_image_view.h", | ||||
|        "views/apps/app_dialog/app_dialog_view.cc", | ||||
|        "views/apps/app_dialog/app_dialog_view.h", | ||||
| @@ -61,7 +61,7 @@ index a521886e9eb44..4ba68bf125c94 100644 | ||||
|        "views/apps/app_info_dialog/app_info_dialog_container.cc", | ||||
|        "views/apps/app_info_dialog/app_info_dialog_container.h", | ||||
|        "views/apps/app_info_dialog/app_info_dialog_views.cc", | ||||
| @@ -6279,6 +6285,7 @@ static_library("ui") { | ||||
| @@ -6392,6 +6398,7 @@ static_library("ui") { | ||||
|    if (enable_printing) { | ||||
|      deps += [ | ||||
|        "//components/printing/browser", | ||||
| @@ -70,7 +70,7 @@ index a521886e9eb44..4ba68bf125c94 100644 | ||||
|      ] | ||||
|    } | ||||
| diff --git chrome/browser/ui/browser.cc chrome/browser/ui/browser.cc | ||||
| index fdb96dee05067..a188b6442b1ca 100644 | ||||
| index 9ba2025634365..b6ceaa7f0b531 100644 | ||||
| --- chrome/browser/ui/browser.cc | ||||
| +++ chrome/browser/ui/browser.cc | ||||
| @@ -265,6 +265,25 @@ | ||||
| @@ -99,7 +99,7 @@ index fdb96dee05067..a188b6442b1ca 100644 | ||||
|  #if BUILDFLAG(ENABLE_EXTENSIONS) | ||||
|  #include "chrome/browser/extensions/extension_browser_window_helper.h" | ||||
|  #endif | ||||
| @@ -456,6 +475,10 @@ Browser::Browser(const CreateParams& params) | ||||
| @@ -460,6 +479,10 @@ Browser::Browser(const CreateParams& params) | ||||
|        type_(params.type), | ||||
|        profile_(params.profile), | ||||
|        window_(nullptr), | ||||
| @@ -110,7 +110,7 @@ index fdb96dee05067..a188b6442b1ca 100644 | ||||
|        tab_strip_model_delegate_( | ||||
|            std::make_unique<chrome::BrowserTabStripModelDelegate>(this)), | ||||
|        tab_strip_model_(std::make_unique<TabStripModel>( | ||||
| @@ -651,6 +674,12 @@ Browser::~Browser() { | ||||
| @@ -655,6 +678,12 @@ Browser::~Browser() { | ||||
|    // away so they don't try and call back to us. | ||||
|    if (select_file_dialog_.get()) | ||||
|      select_file_dialog_->ListenerDestroyed(); | ||||
| @@ -123,7 +123,7 @@ index fdb96dee05067..a188b6442b1ca 100644 | ||||
|  } | ||||
|   | ||||
|  /////////////////////////////////////////////////////////////////////////////// | ||||
| @@ -1055,6 +1084,8 @@ void Browser::WindowFullscreenStateChanged() { | ||||
| @@ -1059,6 +1088,8 @@ void Browser::WindowFullscreenStateChanged() { | ||||
|        ->WindowFullscreenStateChanged(); | ||||
|    command_controller_->FullscreenStateChanged(); | ||||
|    UpdateBookmarkBarState(BOOKMARK_BAR_STATE_CHANGE_TOGGLE_FULLSCREEN); | ||||
| @@ -132,7 +132,7 @@ index fdb96dee05067..a188b6442b1ca 100644 | ||||
|  } | ||||
|   | ||||
|  void Browser::FullscreenTopUIStateChanged() { | ||||
| @@ -1394,6 +1425,14 @@ content::KeyboardEventProcessingResult Browser::PreHandleKeyboardEvent( | ||||
| @@ -1398,6 +1429,14 @@ content::KeyboardEventProcessingResult Browser::PreHandleKeyboardEvent( | ||||
|    if (exclusive_access_manager_->HandleUserKeyEvent(event)) | ||||
|      return content::KeyboardEventProcessingResult::HANDLED; | ||||
|   | ||||
| @@ -147,7 +147,7 @@ index fdb96dee05067..a188b6442b1ca 100644 | ||||
|    return window()->PreHandleKeyboardEvent(event); | ||||
|  } | ||||
|   | ||||
| @@ -1401,8 +1440,18 @@ bool Browser::HandleKeyboardEvent(content::WebContents* source, | ||||
| @@ -1405,8 +1444,18 @@ bool Browser::HandleKeyboardEvent(content::WebContents* source, | ||||
|                                    const NativeWebKeyboardEvent& event) { | ||||
|    DevToolsWindow* devtools_window = | ||||
|        DevToolsWindow::GetInstanceForInspectedWebContents(source); | ||||
| @@ -168,7 +168,7 @@ index fdb96dee05067..a188b6442b1ca 100644 | ||||
|  } | ||||
|   | ||||
|  bool Browser::TabsNeedBeforeUnloadFired() { | ||||
| @@ -1613,6 +1662,14 @@ WebContents* Browser::OpenURLFromTab(WebContents* source, | ||||
| @@ -1617,6 +1666,14 @@ WebContents* Browser::OpenURLFromTab(WebContents* source, | ||||
|    } | ||||
|  #endif  // BUILDFLAG(IS_CHROMEOS_ASH) | ||||
|   | ||||
| @@ -183,7 +183,7 @@ index fdb96dee05067..a188b6442b1ca 100644 | ||||
|    NavigateParams nav_params(this, params.url, params.transition); | ||||
|    nav_params.FillNavigateParamsFromOpenURLParams(params); | ||||
|    nav_params.source_contents = source; | ||||
| @@ -1770,6 +1827,8 @@ void Browser::LoadingStateChanged(WebContents* source, | ||||
| @@ -1774,6 +1831,8 @@ void Browser::LoadingStateChanged(WebContents* source, | ||||
|                                    bool should_show_loading_ui) { | ||||
|    ScheduleUIUpdate(source, content::INVALIDATE_TYPE_LOAD); | ||||
|    UpdateWindowForLoadingStateChanged(source, should_show_loading_ui); | ||||
| @@ -192,7 +192,7 @@ index fdb96dee05067..a188b6442b1ca 100644 | ||||
|  } | ||||
|   | ||||
|  void Browser::CloseContents(WebContents* source) { | ||||
| @@ -1798,6 +1857,8 @@ void Browser::SetContentsBounds(WebContents* source, const gfx::Rect& bounds) { | ||||
| @@ -1802,6 +1861,8 @@ void Browser::SetContentsBounds(WebContents* source, const gfx::Rect& bounds) { | ||||
|  } | ||||
|   | ||||
|  void Browser::UpdateTargetURL(WebContents* source, const GURL& url) { | ||||
| @@ -201,7 +201,7 @@ index fdb96dee05067..a188b6442b1ca 100644 | ||||
|    if (!GetStatusBubble()) | ||||
|      return; | ||||
|   | ||||
| @@ -1805,6 +1866,17 @@ void Browser::UpdateTargetURL(WebContents* source, const GURL& url) { | ||||
| @@ -1809,6 +1870,17 @@ void Browser::UpdateTargetURL(WebContents* source, const GURL& url) { | ||||
|      GetStatusBubble()->SetURL(url); | ||||
|  } | ||||
|   | ||||
| @@ -219,7 +219,7 @@ index fdb96dee05067..a188b6442b1ca 100644 | ||||
|  void Browser::ContentsMouseEvent(WebContents* source, | ||||
|                                   bool motion, | ||||
|                                   bool exited) { | ||||
| @@ -1829,6 +1901,19 @@ bool Browser::TakeFocus(content::WebContents* source, bool reverse) { | ||||
| @@ -1833,6 +1905,19 @@ bool Browser::TakeFocus(content::WebContents* source, bool reverse) { | ||||
|    return false; | ||||
|  } | ||||
|   | ||||
| @@ -239,7 +239,7 @@ index fdb96dee05067..a188b6442b1ca 100644 | ||||
|  void Browser::BeforeUnloadFired(WebContents* web_contents, | ||||
|                                  bool proceed, | ||||
|                                  bool* proceed_to_fire_unload) { | ||||
| @@ -1921,6 +2006,10 @@ void Browser::WebContentsCreated(WebContents* source_contents, | ||||
| @@ -1925,6 +2010,10 @@ void Browser::WebContentsCreated(WebContents* source_contents, | ||||
|   | ||||
|    // Make the tab show up in the task manager. | ||||
|    task_manager::WebContentsTags::CreateForTabContents(new_contents); | ||||
| @@ -250,7 +250,7 @@ index fdb96dee05067..a188b6442b1ca 100644 | ||||
|  } | ||||
|   | ||||
|  void Browser::PortalWebContentsCreated(WebContents* portal_web_contents) { | ||||
| @@ -2038,11 +2127,15 @@ void Browser::EnterFullscreenModeForTab( | ||||
| @@ -2046,11 +2135,15 @@ void Browser::EnterFullscreenModeForTab( | ||||
|      const blink::mojom::FullscreenOptions& options) { | ||||
|    exclusive_access_manager_->fullscreen_controller()->EnterFullscreenModeForTab( | ||||
|        requesting_frame, options.display_id); | ||||
| @@ -266,7 +266,7 @@ index fdb96dee05067..a188b6442b1ca 100644 | ||||
|  } | ||||
|   | ||||
|  bool Browser::IsFullscreenForTabOrPending(const WebContents* web_contents) { | ||||
| @@ -2232,6 +2325,15 @@ void Browser::RequestMediaAccessPermission( | ||||
| @@ -2240,6 +2333,15 @@ void Browser::RequestMediaAccessPermission( | ||||
|      content::WebContents* web_contents, | ||||
|      const content::MediaStreamRequest& request, | ||||
|      content::MediaResponseCallback callback) { | ||||
| @@ -282,29 +282,33 @@ index fdb96dee05067..a188b6442b1ca 100644 | ||||
|    const extensions::Extension* extension = | ||||
|        GetExtensionForOrigin(profile_, request.security_origin); | ||||
|    MediaCaptureDevicesDispatcher::GetInstance()->ProcessMediaAccessRequest( | ||||
| @@ -2783,13 +2885,20 @@ void Browser::RemoveScheduledUpdatesFor(WebContents* contents) { | ||||
| @@ -2791,9 +2893,11 @@ void Browser::RemoveScheduledUpdatesFor(WebContents* contents) { | ||||
|  // Browser, Getters for UI (private): | ||||
|   | ||||
|  StatusBubble* Browser::GetStatusBubble() { | ||||
| +  bool show_by_default = true; | ||||
| + | ||||
|    // In web apps, and in kiosk and exclusive app mode we want to always hide the | ||||
|    // status bubble. | ||||
|    if (chrome::IsRunningInAppMode() || | ||||
|        web_app::AppBrowserController::IsWebApp(this)) { | ||||
|    // For kiosk and exclusive app mode we want to always hide the status bubble. | ||||
|    if (chrome::IsRunningInAppMode()) { | ||||
| -    return nullptr; | ||||
| +    show_by_default = false; | ||||
|    } | ||||
|   | ||||
|    // We hide the status bar for web apps windows as this matches native | ||||
| @@ -2801,6 +2905,12 @@ StatusBubble* Browser::GetStatusBubble() { | ||||
|    // mode, as the minimal browser UI includes the status bar. | ||||
|    if (web_app::AppBrowserController::IsWebApp(this) && | ||||
|        !app_controller()->HasMinimalUiButtons()) { | ||||
| +    show_by_default = false; | ||||
| +  } | ||||
| + | ||||
| +  bool show = show_by_default; | ||||
| +  CALL_CEF_DELEGATE_RESULT(ShowStatusBubble, show, show_by_default); | ||||
| +  if (!show) | ||||
| +    return nullptr; | ||||
| + | ||||
|    return window_ ? window_->GetStatusBubble() : nullptr; | ||||
|  } | ||||
| +  if (!show) { | ||||
|      return nullptr; | ||||
|    } | ||||
|   | ||||
| @@ -2923,6 +3032,8 @@ void Browser::SetAsDelegate(WebContents* web_contents, bool set_delegate) { | ||||
| @@ -2937,6 +3047,8 @@ void Browser::SetAsDelegate(WebContents* web_contents, bool set_delegate) { | ||||
|      BookmarkTabHelper::FromWebContents(web_contents)->RemoveObserver(this); | ||||
|      web_contents_collection_.StopObserving(web_contents); | ||||
|    } | ||||
| @@ -313,7 +317,7 @@ index fdb96dee05067..a188b6442b1ca 100644 | ||||
|  } | ||||
|   | ||||
|  void Browser::TabDetachedAtImpl(content::WebContents* contents, | ||||
| @@ -3077,6 +3188,14 @@ bool Browser::PictureInPictureBrowserSupportsWindowFeature( | ||||
| @@ -3091,6 +3203,14 @@ bool Browser::PictureInPictureBrowserSupportsWindowFeature( | ||||
|   | ||||
|  bool Browser::SupportsWindowFeatureImpl(WindowFeature feature, | ||||
|                                          bool check_can_support) const { | ||||
| @@ -329,7 +333,7 @@ index fdb96dee05067..a188b6442b1ca 100644 | ||||
|      case TYPE_NORMAL: | ||||
|        return NormalBrowserSupportsWindowFeature(feature, check_can_support); | ||||
| diff --git chrome/browser/ui/browser.h chrome/browser/ui/browser.h | ||||
| index ce9edb90a7ac7..a0f0e6fe0d02f 100644 | ||||
| index db37e861d2546..c47dfc31131f7 100644 | ||||
| --- chrome/browser/ui/browser.h | ||||
| +++ chrome/browser/ui/browser.h | ||||
| @@ -22,6 +22,7 @@ | ||||
| @@ -351,7 +355,7 @@ index ce9edb90a7ac7..a0f0e6fe0d02f 100644 | ||||
|  #if BUILDFLAG(IS_ANDROID) | ||||
|  #error This file should only be included on desktop. | ||||
|  #endif | ||||
| @@ -327,6 +332,15 @@ class Browser : public TabStripModelObserver, | ||||
| @@ -331,6 +336,15 @@ class Browser : public TabStripModelObserver, | ||||
|      // Document Picture in Picture options, specific to TYPE_PICTURE_IN_PICTURE. | ||||
|      absl::optional<blink::mojom::PictureInPictureWindowOptions> pip_options; | ||||
|   | ||||
| @@ -367,7 +371,7 @@ index ce9edb90a7ac7..a0f0e6fe0d02f 100644 | ||||
|     private: | ||||
|      friend class Browser; | ||||
|      friend class WindowSizerChromeOSTest; | ||||
| @@ -408,6 +422,13 @@ class Browser : public TabStripModelObserver, | ||||
| @@ -412,6 +426,13 @@ class Browser : public TabStripModelObserver, | ||||
|      update_ui_immediately_for_testing_ = true; | ||||
|    } | ||||
|   | ||||
| @@ -381,7 +385,7 @@ index ce9edb90a7ac7..a0f0e6fe0d02f 100644 | ||||
|    // Accessors //////////////////////////////////////////////////////////////// | ||||
|   | ||||
|    const CreateParams& create_params() const { return create_params_; } | ||||
| @@ -481,6 +502,12 @@ class Browser : public TabStripModelObserver, | ||||
| @@ -485,6 +506,12 @@ class Browser : public TabStripModelObserver, | ||||
|   | ||||
|    base::WeakPtr<Browser> AsWeakPtr(); | ||||
|   | ||||
| @@ -394,7 +398,7 @@ index ce9edb90a7ac7..a0f0e6fe0d02f 100644 | ||||
|    // Get the FindBarController for this browser, creating it if it does not | ||||
|    // yet exist. | ||||
|    FindBarController* GetFindBarController(); | ||||
| @@ -872,11 +899,19 @@ class Browser : public TabStripModelObserver, | ||||
| @@ -876,11 +903,19 @@ class Browser : public TabStripModelObserver, | ||||
|    void SetContentsBounds(content::WebContents* source, | ||||
|                           const gfx::Rect& bounds) override; | ||||
|    void UpdateTargetURL(content::WebContents* source, const GURL& url) override; | ||||
| @@ -414,7 +418,7 @@ index ce9edb90a7ac7..a0f0e6fe0d02f 100644 | ||||
|    void BeforeUnloadFired(content::WebContents* source, | ||||
|                           bool proceed, | ||||
|                           bool* proceed_to_fire_unload) override; | ||||
| @@ -1215,6 +1250,10 @@ class Browser : public TabStripModelObserver, | ||||
| @@ -1219,6 +1254,10 @@ class Browser : public TabStripModelObserver, | ||||
|    // This Browser's window. | ||||
|    raw_ptr<BrowserWindow, DanglingUntriaged> window_; | ||||
|   | ||||
| @@ -425,7 +429,7 @@ index ce9edb90a7ac7..a0f0e6fe0d02f 100644 | ||||
|    std::unique_ptr<TabStripModelDelegate> const tab_strip_model_delegate_; | ||||
|    std::unique_ptr<TabStripModel> const tab_strip_model_; | ||||
|   | ||||
| @@ -1284,6 +1323,8 @@ class Browser : public TabStripModelObserver, | ||||
| @@ -1288,6 +1327,8 @@ class Browser : public TabStripModelObserver, | ||||
|    const std::string initial_workspace_; | ||||
|    bool initial_visible_on_all_workspaces_state_; | ||||
|   | ||||
| @@ -435,7 +439,7 @@ index ce9edb90a7ac7..a0f0e6fe0d02f 100644 | ||||
|   | ||||
|    UnloadController unload_controller_; | ||||
| diff --git chrome/browser/ui/browser_navigator.cc chrome/browser/ui/browser_navigator.cc | ||||
| index 3b7f96e505e0b..d44d0369def55 100644 | ||||
| index e76824b5ba371..27c8e3d131238 100644 | ||||
| --- chrome/browser/ui/browser_navigator.cc | ||||
| +++ chrome/browser/ui/browser_navigator.cc | ||||
| @@ -288,6 +288,10 @@ std::pair<Browser*, int> GetBrowserAndTabForDisposition( | ||||
| @@ -449,7 +453,7 @@ index 3b7f96e505e0b..d44d0369def55 100644 | ||||
|          const BrowserWindow* const browser_window = params.browser->window(); | ||||
|          const gfx::NativeWindow native_window = | ||||
|              browser_window ? browser_window->GetNativeWindow() | ||||
| @@ -551,6 +555,13 @@ std::unique_ptr<content::WebContents> CreateTargetContents( | ||||
| @@ -553,6 +557,13 @@ std::unique_ptr<content::WebContents> CreateTargetContents( | ||||
|    std::unique_ptr<WebContents> target_contents = | ||||
|        WebContents::Create(create_params); | ||||
|   | ||||
|   | ||||
| @@ -1,8 +1,8 @@ | ||||
| diff --git chrome/browser/renderer_context_menu/render_view_context_menu.cc chrome/browser/renderer_context_menu/render_view_context_menu.cc | ||||
| index 81349bc10ffe9..6fce9815a6c51 100644 | ||||
| index 9ed9d3b43c45b..845bb4ff858ef 100644 | ||||
| --- chrome/browser/renderer_context_menu/render_view_context_menu.cc | ||||
| +++ chrome/browser/renderer_context_menu/render_view_context_menu.cc | ||||
| @@ -341,6 +341,13 @@ base::OnceCallback<void(RenderViewContextMenu*)>* GetMenuShownCallback() { | ||||
| @@ -344,6 +344,13 @@ base::OnceCallback<void(RenderViewContextMenu*)>* GetMenuShownCallback() { | ||||
|    return callback.get(); | ||||
|  } | ||||
|   | ||||
| @@ -16,7 +16,7 @@ index 81349bc10ffe9..6fce9815a6c51 100644 | ||||
|  enum class UmaEnumIdLookupType { | ||||
|    GeneralEnumId, | ||||
|    ContextSpecificEnumId, | ||||
| @@ -590,6 +597,10 @@ int FindUMAEnumValueForCommand(int id, UmaEnumIdLookupType type) { | ||||
| @@ -593,6 +600,10 @@ int FindUMAEnumValueForCommand(int id, UmaEnumIdLookupType type) { | ||||
|    if (ContextMenuMatcher::IsExtensionsCustomCommandId(id)) | ||||
|      return 1; | ||||
|   | ||||
| @@ -27,7 +27,7 @@ index 81349bc10ffe9..6fce9815a6c51 100644 | ||||
|    id = CollapseCommandsForUMA(id); | ||||
|    const auto& map = GetIdcToUmaMap(type); | ||||
|    auto it = map.find(id); | ||||
| @@ -814,6 +825,14 @@ RenderViewContextMenu::RenderViewContextMenu( | ||||
| @@ -816,6 +827,14 @@ RenderViewContextMenu::RenderViewContextMenu( | ||||
|    pdf_ocr_submenu_model_ = std::make_unique<ui::SimpleMenuModel>(this); | ||||
|  #endif  // BUILDFLAG(ENABLE_SCREEN_AI_SERVICE) | ||||
|   | ||||
| @@ -42,7 +42,7 @@ index 81349bc10ffe9..6fce9815a6c51 100644 | ||||
|    observers_.AddObserver(&autofill_context_menu_manager_); | ||||
|  } | ||||
|   | ||||
| @@ -1252,6 +1271,12 @@ void RenderViewContextMenu::InitMenu() { | ||||
| @@ -1278,6 +1297,12 @@ void RenderViewContextMenu::InitMenu() { | ||||
|            autofill::PopupHidingReason::kContextMenuOpened); | ||||
|      } | ||||
|    } | ||||
| @@ -55,7 +55,7 @@ index 81349bc10ffe9..6fce9815a6c51 100644 | ||||
|  } | ||||
|   | ||||
|  Profile* RenderViewContextMenu::GetProfile() const { | ||||
| @@ -3320,6 +3345,12 @@ void RenderViewContextMenu::RegisterExecutePluginActionCallbackForTesting( | ||||
| @@ -3334,6 +3359,12 @@ void RenderViewContextMenu::RegisterExecutePluginActionCallbackForTesting( | ||||
|    execute_plugin_action_callback_ = std::move(cb); | ||||
|  } | ||||
|   | ||||
| @@ -69,7 +69,7 @@ index 81349bc10ffe9..6fce9815a6c51 100644 | ||||
|  RenderViewContextMenu::GetHandlersForLinkUrl() { | ||||
|    custom_handlers::ProtocolHandlerRegistry::ProtocolHandlerList handlers = | ||||
| diff --git chrome/browser/renderer_context_menu/render_view_context_menu.h chrome/browser/renderer_context_menu/render_view_context_menu.h | ||||
| index 88034ab234827..e11cde8e1663b 100644 | ||||
| index 45f2a2a82cb03..5abee00109363 100644 | ||||
| --- chrome/browser/renderer_context_menu/render_view_context_menu.h | ||||
| +++ chrome/browser/renderer_context_menu/render_view_context_menu.h | ||||
| @@ -152,6 +152,12 @@ class RenderViewContextMenu | ||||
| @@ -85,7 +85,7 @@ index 88034ab234827..e11cde8e1663b 100644 | ||||
|   protected: | ||||
|    Profile* GetProfile() const; | ||||
|   | ||||
| @@ -433,6 +439,9 @@ class RenderViewContextMenu | ||||
| @@ -437,6 +443,9 @@ class RenderViewContextMenu | ||||
|    //   built. | ||||
|    bool is_protocol_submenu_valid_ = false; | ||||
|   | ||||
|   | ||||
| @@ -1,5 +1,5 @@ | ||||
| diff --git chrome/browser/file_select_helper.cc chrome/browser/file_select_helper.cc | ||||
| index 961f04a054a1a..b2080237e8deb 100644 | ||||
| index 3f5042600416e..25c23b1a0f00d 100644 | ||||
| --- chrome/browser/file_select_helper.cc | ||||
| +++ chrome/browser/file_select_helper.cc | ||||
| @@ -20,6 +20,7 @@ | ||||
| @@ -10,7 +10,7 @@ index 961f04a054a1a..b2080237e8deb 100644 | ||||
|  #include "chrome/browser/browser_process.h" | ||||
|  #include "chrome/browser/enterprise/connectors/common.h" | ||||
|  #include "chrome/browser/platform_util.h" | ||||
| @@ -253,6 +254,13 @@ void FileSelectHelper::OnListFile( | ||||
| @@ -256,6 +257,13 @@ void FileSelectHelper::OnListFile( | ||||
|  void FileSelectHelper::LaunchConfirmationDialog( | ||||
|      const base::FilePath& path, | ||||
|      std::vector<ui::SelectedFileInfo> selected_files) { | ||||
| @@ -24,7 +24,7 @@ index 961f04a054a1a..b2080237e8deb 100644 | ||||
|    ShowFolderUploadConfirmationDialog( | ||||
|        path, | ||||
|        base::BindOnce(&FileSelectHelper::ConvertToFileChooserFileInfoList, this), | ||||
| @@ -337,6 +345,12 @@ void FileSelectHelper::PerformContentAnalysisIfNeeded( | ||||
| @@ -340,6 +348,12 @@ void FileSelectHelper::PerformContentAnalysisIfNeeded( | ||||
|    if (AbortIfWebContentsDestroyed()) | ||||
|      return; | ||||
|   | ||||
| @@ -37,7 +37,7 @@ index 961f04a054a1a..b2080237e8deb 100644 | ||||
|  #if BUILDFLAG(ENTERPRISE_CLOUD_CONTENT_ANALYSIS) | ||||
|    enterprise_connectors::ContentAnalysisDelegate::Data data; | ||||
|    if (enterprise_connectors::ContentAnalysisDelegate::IsEnabled( | ||||
| @@ -467,7 +481,8 @@ void FileSelectHelper::DontAbortOnMissingWebContentsForTesting() { | ||||
| @@ -470,7 +484,8 @@ void FileSelectHelper::DontAbortOnMissingWebContentsForTesting() { | ||||
|   | ||||
|  std::unique_ptr<ui::SelectFileDialog::FileTypeInfo> | ||||
|  FileSelectHelper::GetFileTypesFromAcceptType( | ||||
| @@ -47,7 +47,7 @@ index 961f04a054a1a..b2080237e8deb 100644 | ||||
|    auto base_file_type = std::make_unique<ui::SelectFileDialog::FileTypeInfo>(); | ||||
|    if (accept_types.empty()) | ||||
|      return base_file_type; | ||||
| @@ -480,17 +495,24 @@ FileSelectHelper::GetFileTypesFromAcceptType( | ||||
| @@ -483,17 +498,24 @@ FileSelectHelper::GetFileTypesFromAcceptType( | ||||
|    std::vector<base::FilePath::StringType>* extensions = | ||||
|        &file_type->extensions.back(); | ||||
|   | ||||
| @@ -73,7 +73,7 @@ index 961f04a054a1a..b2080237e8deb 100644 | ||||
|      } else { | ||||
|        if (!base::IsStringASCII(accept_type)) | ||||
|          continue; | ||||
| @@ -501,10 +523,18 @@ FileSelectHelper::GetFileTypesFromAcceptType( | ||||
| @@ -504,10 +526,18 @@ FileSelectHelper::GetFileTypesFromAcceptType( | ||||
|          description_id = IDS_AUDIO_FILES; | ||||
|        else if (ascii_type == "video/*") | ||||
|          description_id = IDS_VIDEO_FILES; | ||||
| @@ -94,7 +94,7 @@ index 961f04a054a1a..b2080237e8deb 100644 | ||||
|      if (extensions->size() > old_extension_size) | ||||
|        valid_type_count++; | ||||
|    } | ||||
| @@ -529,6 +559,15 @@ FileSelectHelper::GetFileTypesFromAcceptType( | ||||
| @@ -532,6 +562,15 @@ FileSelectHelper::GetFileTypesFromAcceptType( | ||||
|          l10n_util::GetStringUTF16(description_id)); | ||||
|    } | ||||
|   | ||||
| @@ -110,7 +110,7 @@ index 961f04a054a1a..b2080237e8deb 100644 | ||||
|    return file_type; | ||||
|  } | ||||
|   | ||||
| @@ -536,7 +575,8 @@ FileSelectHelper::GetFileTypesFromAcceptType( | ||||
| @@ -539,7 +578,8 @@ FileSelectHelper::GetFileTypesFromAcceptType( | ||||
|  void FileSelectHelper::RunFileChooser( | ||||
|      content::RenderFrameHost* render_frame_host, | ||||
|      scoped_refptr<content::FileSelectListener> listener, | ||||
| @@ -120,7 +120,7 @@ index 961f04a054a1a..b2080237e8deb 100644 | ||||
|    Profile* profile = Profile::FromBrowserContext( | ||||
|        render_frame_host->GetProcess()->GetBrowserContext()); | ||||
|   | ||||
| @@ -555,6 +595,7 @@ void FileSelectHelper::RunFileChooser( | ||||
| @@ -558,6 +598,7 @@ void FileSelectHelper::RunFileChooser( | ||||
|    // message. | ||||
|    scoped_refptr<FileSelectHelper> file_select_helper( | ||||
|        new FileSelectHelper(profile)); | ||||
| @@ -128,7 +128,7 @@ index 961f04a054a1a..b2080237e8deb 100644 | ||||
|    file_select_helper->RunFileChooser(render_frame_host, std::move(listener), | ||||
|                                       params.Clone()); | ||||
|  } | ||||
| @@ -606,7 +647,8 @@ void FileSelectHelper::RunFileChooser( | ||||
| @@ -609,7 +650,8 @@ void FileSelectHelper::RunFileChooser( | ||||
|  } | ||||
|   | ||||
|  void FileSelectHelper::GetFileTypesInThreadPool(FileChooserParamsPtr params) { | ||||
| @@ -139,7 +139,7 @@ index 961f04a054a1a..b2080237e8deb 100644 | ||||
|        params->need_local_path ? ui::SelectFileDialog::FileTypeInfo::NATIVE_PATH | ||||
|                                : ui::SelectFileDialog::FileTypeInfo::ANY_PATH; | ||||
| diff --git chrome/browser/file_select_helper.h chrome/browser/file_select_helper.h | ||||
| index 143b971ea541e..a45df89a843b0 100644 | ||||
| index 57dae0b3670ae..85eeda4cbaa5b 100644 | ||||
| --- chrome/browser/file_select_helper.h | ||||
| +++ chrome/browser/file_select_helper.h | ||||
| @@ -62,7 +62,8 @@ class FileSelectHelper : public base::RefCountedThreadSafe< | ||||
| @@ -255,10 +255,10 @@ index e2c00b2ec1532..a2e8753766597 100644 | ||||
|    return CreateSelectFileDialog(listener, std::move(policy)); | ||||
|  } | ||||
| diff --git ui/shell_dialogs/select_file_dialog.h ui/shell_dialogs/select_file_dialog.h | ||||
| index f4c63672b1a5f..6c756beaba0f3 100644 | ||||
| index 65f0342389117..c4b79bc0dab91 100644 | ||||
| --- ui/shell_dialogs/select_file_dialog.h | ||||
| +++ ui/shell_dialogs/select_file_dialog.h | ||||
| @@ -114,7 +114,8 @@ class SHELL_DIALOGS_EXPORT SelectFileDialog | ||||
| @@ -116,7 +116,8 @@ class SHELL_DIALOGS_EXPORT SelectFileDialog | ||||
|    // is refcounted and uses a background thread. | ||||
|    static scoped_refptr<SelectFileDialog> Create( | ||||
|        Listener* listener, | ||||
| @@ -268,7 +268,7 @@ index f4c63672b1a5f..6c756beaba0f3 100644 | ||||
|   | ||||
|    SelectFileDialog(const SelectFileDialog&) = delete; | ||||
|    SelectFileDialog& operator=(const SelectFileDialog&) = delete; | ||||
| @@ -211,6 +212,19 @@ class SHELL_DIALOGS_EXPORT SelectFileDialog | ||||
| @@ -213,6 +214,19 @@ class SHELL_DIALOGS_EXPORT SelectFileDialog | ||||
|                    const GURL* caller = nullptr); | ||||
|    bool HasMultipleFileTypeChoices(); | ||||
|   | ||||
| @@ -288,7 +288,7 @@ index f4c63672b1a5f..6c756beaba0f3 100644 | ||||
|   protected: | ||||
|    friend class base::RefCountedThreadSafe<SelectFileDialog>; | ||||
|   | ||||
| @@ -236,6 +250,11 @@ class SHELL_DIALOGS_EXPORT SelectFileDialog | ||||
| @@ -238,6 +252,11 @@ class SHELL_DIALOGS_EXPORT SelectFileDialog | ||||
|    // The listener to be notified of selection completion. | ||||
|    raw_ptr<Listener> listener_; | ||||
|   | ||||
| @@ -300,7 +300,7 @@ index f4c63672b1a5f..6c756beaba0f3 100644 | ||||
|   private: | ||||
|    // Tests if the file selection dialog can be displayed by | ||||
|    // testing if the AllowFileSelectionDialogs-Policy is | ||||
| @@ -248,8 +267,6 @@ class SHELL_DIALOGS_EXPORT SelectFileDialog | ||||
| @@ -250,8 +269,6 @@ class SHELL_DIALOGS_EXPORT SelectFileDialog | ||||
|   | ||||
|    // Returns true if the dialog has multiple file type choices. | ||||
|    virtual bool HasMultipleFileTypeChoicesImpl() = 0; | ||||
|   | ||||
| @@ -12,7 +12,7 @@ index b169371e4d42f..509e4bda85b47 100644 | ||||
|      // on the screen, we can't actually attach to it. | ||||
|      parent_window = nullptr; | ||||
| diff --git components/constrained_window/constrained_window_views.cc components/constrained_window/constrained_window_views.cc | ||||
| index 819da6b0bff94..b25a48fb2516b 100644 | ||||
| index 819da6b0bff94..a8e3ecd8527bd 100644 | ||||
| --- components/constrained_window/constrained_window_views.cc | ||||
| +++ components/constrained_window/constrained_window_views.cc | ||||
| @@ -105,15 +105,24 @@ void UpdateModalDialogPosition(views::Widget* widget, | ||||
| @@ -77,10 +77,10 @@ index 819da6b0bff94..b25a48fb2516b 100644 | ||||
|      DCHECK_EQ(parent_view, host->GetHostView()); | ||||
|      ModalDialogHostObserver* dialog_host_observer = | ||||
| diff --git components/constrained_window/native_web_contents_modal_dialog_manager_views.cc components/constrained_window/native_web_contents_modal_dialog_manager_views.cc | ||||
| index 647391095306e..bd49316ac758e 100644 | ||||
| index b986b7fa98c73..1000f529acc82 100644 | ||||
| --- components/constrained_window/native_web_contents_modal_dialog_manager_views.cc | ||||
| +++ components/constrained_window/native_web_contents_modal_dialog_manager_views.cc | ||||
| @@ -184,9 +184,20 @@ void NativeWebContentsModalDialogManagerViews::HostChanged( | ||||
| @@ -188,9 +188,20 @@ void NativeWebContentsModalDialogManagerViews::HostChanged( | ||||
|    if (host_) { | ||||
|      host_->AddObserver(this); | ||||
|   | ||||
| @@ -105,7 +105,7 @@ index 647391095306e..bd49316ac758e 100644 | ||||
|   | ||||
|      OnPositionRequiresUpdate(); | ||||
| diff --git components/web_modal/modal_dialog_host.h components/web_modal/modal_dialog_host.h | ||||
| index 51ed6bcf6b540..9ae4737e0737e 100644 | ||||
| index 51ed6bcf6b540..c6e1161140655 100644 | ||||
| --- components/web_modal/modal_dialog_host.h | ||||
| +++ components/web_modal/modal_dialog_host.h | ||||
| @@ -34,6 +34,10 @@ class WEB_MODAL_EXPORT ModalDialogHost { | ||||
|   | ||||
| @@ -33,7 +33,7 @@ index a5ee05ae5f5e9..97fd2e8da450e 100644 | ||||
|    ~BrowserFrameMac() override; | ||||
|   | ||||
| diff --git chrome/browser/ui/views/frame/browser_frame_mac.mm chrome/browser/ui/views/frame/browser_frame_mac.mm | ||||
| index 65e7e391139ba..88dfa39f4cdcd 100644 | ||||
| index 1473ed154f906..bf861087fe292 100644 | ||||
| --- chrome/browser/ui/views/frame/browser_frame_mac.mm | ||||
| +++ chrome/browser/ui/views/frame/browser_frame_mac.mm | ||||
| @@ -182,7 +182,14 @@ void BrowserFrameMac::OnWindowFullscreenTransitionComplete() { | ||||
|   | ||||
| @@ -142,10 +142,10 @@ index fbce13c16ad10..0512b2f09937e 100644 | ||||
|  std::unique_ptr<permissions::PermissionPrompt> CreatePermissionPrompt( | ||||
|      content::WebContents* web_contents, | ||||
| diff --git chrome/browser/ui/views/permissions/permission_prompt_factory.cc chrome/browser/ui/views/permissions/permission_prompt_factory.cc | ||||
| index 162e03560b2ed..8d3c92202e55f 100644 | ||||
| index 3171d0aed2cd0..dc47430ccc81e 100644 | ||||
| --- chrome/browser/ui/views/permissions/permission_prompt_factory.cc | ||||
| +++ chrome/browser/ui/views/permissions/permission_prompt_factory.cc | ||||
| @@ -181,11 +181,28 @@ std::unique_ptr<permissions::PermissionPrompt> CreateQuietPrompt( | ||||
| @@ -182,11 +182,28 @@ std::unique_ptr<permissions::PermissionPrompt> CreateQuietPrompt( | ||||
|    } | ||||
|  } | ||||
|   | ||||
|   | ||||
| @@ -351,10 +351,10 @@ index 8dbf958c189dd..6eaccc6688eca 100644 | ||||
|      *dir = base::FilePath(policy::path_parser::ExpandPathVariables(value)); | ||||
|      return true; | ||||
| diff --git chrome/common/chrome_paths.cc chrome/common/chrome_paths.cc | ||||
| index 1d75edad24781..62dda7d933828 100644 | ||||
| index 9c8efc76fc3f1..5ae2ec3ff1fdd 100644 | ||||
| --- chrome/common/chrome_paths.cc | ||||
| +++ chrome/common/chrome_paths.cc | ||||
| @@ -504,7 +504,8 @@ bool PathProvider(int key, base::FilePath* result) { | ||||
| @@ -516,7 +516,8 @@ bool PathProvider(int key, base::FilePath* result) { | ||||
|          return false; | ||||
|        } | ||||
|        break; | ||||
|   | ||||
| @@ -14,10 +14,10 @@ index 7ae18c5a960b0..d48ba838efe6f 100644 | ||||
|               ? profile_metrics::BrowserProfileType::kRegular | ||||
|               : profile_metrics::BrowserProfileType::kIncognito; | ||||
| diff --git chrome/browser/ui/views/incognito_clear_browsing_data_dialog.cc chrome/browser/ui/views/incognito_clear_browsing_data_dialog.cc | ||||
| index f3a5093abe7ca..f2bcc7b3c1f4c 100644 | ||||
| index 9f1cb38d90303..986ac5ed9bdaf 100644 | ||||
| --- chrome/browser/ui/views/incognito_clear_browsing_data_dialog.cc | ||||
| +++ chrome/browser/ui/views/incognito_clear_browsing_data_dialog.cc | ||||
| @@ -30,7 +30,9 @@ IncognitoClearBrowsingDataDialog::IncognitoClearBrowsingDataDialog( | ||||
| @@ -31,7 +31,9 @@ IncognitoClearBrowsingDataDialog::IncognitoClearBrowsingDataDialog( | ||||
|        dialog_type_(type), | ||||
|        incognito_profile_(incognito_profile) { | ||||
|    DCHECK(incognito_profile_); | ||||
|   | ||||
| @@ -84,7 +84,7 @@ index ee1675aa1ecc9..cb526d1aba30d 100644 | ||||
|   | ||||
|    // Returns whether the user has signed in this profile to an account. | ||||
| diff --git chrome/browser/profiles/profile_impl.cc chrome/browser/profiles/profile_impl.cc | ||||
| index f3e41082fe306..abdefa172be33 100644 | ||||
| index 90859a99248a4..26fec83939559 100644 | ||||
| --- chrome/browser/profiles/profile_impl.cc | ||||
| +++ chrome/browser/profiles/profile_impl.cc | ||||
| @@ -1023,7 +1023,9 @@ Profile* ProfileImpl::GetOffTheRecordProfile(const OTRProfileID& otr_profile_id, | ||||
|   | ||||
| @@ -1,5 +1,5 @@ | ||||
| diff --git chrome/browser/safe_browsing/BUILD.gn chrome/browser/safe_browsing/BUILD.gn | ||||
| index 0f823ed1e7066..99bbeb884cdfb 100644 | ||||
| index 19c1eac726602..b9528268d6a9a 100644 | ||||
| --- chrome/browser/safe_browsing/BUILD.gn | ||||
| +++ chrome/browser/safe_browsing/BUILD.gn | ||||
| @@ -32,6 +32,7 @@ static_library("safe_browsing") { | ||||
|   | ||||
| @@ -1,5 +1,5 @@ | ||||
| diff --git chrome/browser/themes/theme_service.cc chrome/browser/themes/theme_service.cc | ||||
| index 3b1af39b69a60..3f3f15c23a74f 100644 | ||||
| index dbd628982e216..d77a39111e254 100644 | ||||
| --- chrome/browser/themes/theme_service.cc | ||||
| +++ chrome/browser/themes/theme_service.cc | ||||
| @@ -29,6 +29,7 @@ | ||||
|   | ||||
| @@ -42,7 +42,7 @@ index 438276b719c2f..69635e429be78 100644 | ||||
|      const extensions::Extension* extension = | ||||
|          registry->enabled_extensions().GetByID(extension_id); | ||||
| diff --git chrome/renderer/chrome_content_renderer_client.cc chrome/renderer/chrome_content_renderer_client.cc | ||||
| index c573a3908fd43..1077f313f71b8 100644 | ||||
| index 8ef09f60649bb..8a4eb86233f67 100644 | ||||
| --- chrome/renderer/chrome_content_renderer_client.cc | ||||
| +++ chrome/renderer/chrome_content_renderer_client.cc | ||||
| @@ -982,6 +982,7 @@ WebPlugin* ChromeContentRendererClient::CreatePlugin( | ||||
|   | ||||
| @@ -1,8 +1,8 @@ | ||||
| diff --git chrome/browser/ui/prefs/pref_watcher.h chrome/browser/ui/prefs/pref_watcher.h | ||||
| index 67365a45be704..840f4e4860571 100644 | ||||
| index 81ccdbf504726..80f44f4a87881 100644 | ||||
| --- chrome/browser/ui/prefs/pref_watcher.h | ||||
| +++ chrome/browser/ui/prefs/pref_watcher.h | ||||
| @@ -30,10 +30,10 @@ class PrefWatcher : public KeyedService { | ||||
| @@ -33,10 +33,10 @@ class PrefWatcher : public KeyedService, | ||||
|    void RegisterRendererPreferenceWatcher( | ||||
|        mojo::PendingRemote<blink::mojom::RendererPreferenceWatcher> watcher); | ||||
|   | ||||
| @@ -11,6 +11,6 @@ index 67365a45be704..840f4e4860571 100644 | ||||
|    void Shutdown() override; | ||||
|   | ||||
| + private: | ||||
|    void OnDoNotTrackEnabledChanged() override; | ||||
|   | ||||
|    void UpdateRendererPreferences(); | ||||
|    void OnWebPrefChanged(const std::string& pref_name); | ||||
|    void OnLiveCaptionEnabledPrefChanged(const std::string& pref_name); | ||||
|   | ||||
| @@ -1,5 +1,5 @@ | ||||
| diff --git chrome/renderer/BUILD.gn chrome/renderer/BUILD.gn | ||||
| index 01c93bf7e64af..858c5eb8e7e27 100644 | ||||
| index 18b342e66f11a..765b0634327d1 100644 | ||||
| --- chrome/renderer/BUILD.gn | ||||
| +++ chrome/renderer/BUILD.gn | ||||
| @@ -5,6 +5,7 @@ | ||||
| @@ -10,7 +10,7 @@ index 01c93bf7e64af..858c5eb8e7e27 100644 | ||||
|  import("//chrome/common/features.gni") | ||||
|  import("//components/nacl/features.gni") | ||||
|  import("//components/offline_pages/buildflags/features.gni") | ||||
| @@ -135,6 +136,7 @@ static_library("renderer") { | ||||
| @@ -136,6 +137,7 @@ static_library("renderer") { | ||||
|    deps = [ | ||||
|      "//base/allocator:buildflags", | ||||
|      "//build:chromeos_buildflags", | ||||
| @@ -18,7 +18,7 @@ index 01c93bf7e64af..858c5eb8e7e27 100644 | ||||
|      "//chrome:resources", | ||||
|      "//chrome:strings", | ||||
|      "//chrome/common", | ||||
| @@ -237,6 +239,10 @@ static_library("renderer") { | ||||
| @@ -238,6 +240,10 @@ static_library("renderer") { | ||||
|   | ||||
|    configs += [ "//build/config/compiler:wexit_time_destructors" ] | ||||
|   | ||||
|   | ||||
| @@ -1,5 +1,5 @@ | ||||
| diff --git chrome/app/chrome_main_delegate.cc chrome/app/chrome_main_delegate.cc | ||||
| index 7aacff321a40c..3dbbd8f6d03c5 100644 | ||||
| index 4c150b5cb007d..51e5c89714978 100644 | ||||
| --- chrome/app/chrome_main_delegate.cc | ||||
| +++ chrome/app/chrome_main_delegate.cc | ||||
| @@ -41,6 +41,7 @@ | ||||
| @@ -10,7 +10,7 @@ index 7aacff321a40c..3dbbd8f6d03c5 100644 | ||||
|  #include "chrome/browser/buildflags.h" | ||||
|  #include "chrome/browser/chrome_content_browser_client.h" | ||||
|  #include "chrome/browser/chrome_resource_bundle_helper.h" | ||||
| @@ -522,6 +523,8 @@ struct MainFunction { | ||||
| @@ -569,6 +570,8 @@ struct MainFunction { | ||||
|   | ||||
|  // Initializes the user data dir. Must be called before InitializeLocalState(). | ||||
|  void InitializeUserDataDir(base::CommandLine* command_line) { | ||||
| @@ -19,7 +19,7 @@ index 7aacff321a40c..3dbbd8f6d03c5 100644 | ||||
|  #if BUILDFLAG(IS_WIN) | ||||
|    // Reach out to chrome_elf for the truth on the user data directory. | ||||
|    // Note that in tests, this links to chrome_elf_test_stubs. | ||||
| @@ -694,6 +697,10 @@ ChromeMainDelegate::~ChromeMainDelegate() { | ||||
| @@ -741,6 +744,10 @@ ChromeMainDelegate::~ChromeMainDelegate() { | ||||
|  ChromeMainDelegate::~ChromeMainDelegate() = default; | ||||
|  #endif  // !BUILDFLAG(IS_ANDROID) | ||||
|   | ||||
| @@ -30,7 +30,7 @@ index 7aacff321a40c..3dbbd8f6d03c5 100644 | ||||
|  absl::optional<int> ChromeMainDelegate::PostEarlyInitialization( | ||||
|      InvokedIn invoked_in) { | ||||
|    DCHECK(base::ThreadPoolInstance::Get()); | ||||
| @@ -896,7 +903,8 @@ absl::optional<int> ChromeMainDelegate::PostEarlyInitialization( | ||||
| @@ -914,7 +921,8 @@ absl::optional<int> ChromeMainDelegate::PostEarlyInitialization( | ||||
|   | ||||
|    if (base::FeatureList::IsEnabled( | ||||
|            features::kWriteBasicSystemProfileToPersistentHistogramsFile)) { | ||||
| @@ -40,7 +40,7 @@ index 7aacff321a40c..3dbbd8f6d03c5 100644 | ||||
|  #if BUILDFLAG(IS_ANDROID) | ||||
|      record = | ||||
|          base::FeatureList::IsEnabled(chrome::android::kUmaBackgroundSessions); | ||||
| @@ -1340,6 +1348,7 @@ void ChromeMainDelegate::PreSandboxStartup() { | ||||
| @@ -1358,6 +1366,7 @@ void ChromeMainDelegate::PreSandboxStartup() { | ||||
|    std::string process_type = | ||||
|        command_line.GetSwitchValueASCII(switches::kProcessType); | ||||
|   | ||||
| @@ -48,7 +48,7 @@ index 7aacff321a40c..3dbbd8f6d03c5 100644 | ||||
|    crash_reporter::InitializeCrashKeys(); | ||||
|   | ||||
|  #if BUILDFLAG(IS_CHROMEOS_LACROS) | ||||
| @@ -1367,6 +1376,7 @@ void ChromeMainDelegate::PreSandboxStartup() { | ||||
| @@ -1385,6 +1394,7 @@ void ChromeMainDelegate::PreSandboxStartup() { | ||||
|    InitMacCrashReporter(command_line, process_type); | ||||
|    SetUpInstallerPreferences(command_line); | ||||
|  #endif | ||||
| @@ -56,7 +56,7 @@ index 7aacff321a40c..3dbbd8f6d03c5 100644 | ||||
|   | ||||
|  #if BUILDFLAG(IS_WIN) | ||||
|    child_process_logging::Init(); | ||||
| @@ -1561,6 +1571,7 @@ void ChromeMainDelegate::PreSandboxStartup() { | ||||
| @@ -1589,6 +1599,7 @@ void ChromeMainDelegate::PreSandboxStartup() { | ||||
|      CHECK(!loaded_locale.empty()) << "Locale could not be found for " << locale; | ||||
|    } | ||||
|   | ||||
| @@ -64,7 +64,7 @@ index 7aacff321a40c..3dbbd8f6d03c5 100644 | ||||
|  #if BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_MAC) | ||||
|    // Zygote needs to call InitCrashReporter() in RunZygote(). | ||||
|    if (process_type != switches::kZygoteProcess) { | ||||
| @@ -1604,6 +1615,7 @@ void ChromeMainDelegate::PreSandboxStartup() { | ||||
| @@ -1632,6 +1643,7 @@ void ChromeMainDelegate::PreSandboxStartup() { | ||||
|    // After all the platform Breakpads have been initialized, store the command | ||||
|    // line for crash reporting. | ||||
|    crash_keys::SetCrashKeysFromCommandLine(command_line); | ||||
| @@ -72,7 +72,7 @@ index 7aacff321a40c..3dbbd8f6d03c5 100644 | ||||
|   | ||||
|  #if BUILDFLAG(ENABLE_PDF) | ||||
|    MaybePatchGdiGetFontData(); | ||||
| @@ -1723,6 +1735,7 @@ void ChromeMainDelegate::ZygoteForked() { | ||||
| @@ -1750,6 +1762,7 @@ void ChromeMainDelegate::ZygoteForked() { | ||||
|      SetUpProfilingShutdownHandler(); | ||||
|    } | ||||
|   | ||||
| @@ -80,7 +80,7 @@ index 7aacff321a40c..3dbbd8f6d03c5 100644 | ||||
|    // Needs to be called after we have chrome::DIR_USER_DATA.  BrowserMain sets | ||||
|    // this up for the browser process in a different manner. | ||||
|    const base::CommandLine* command_line = | ||||
| @@ -1745,6 +1758,7 @@ void ChromeMainDelegate::ZygoteForked() { | ||||
| @@ -1772,6 +1785,7 @@ void ChromeMainDelegate::ZygoteForked() { | ||||
|   | ||||
|    // Reset the command line for the newly spawned process. | ||||
|    crash_keys::SetCrashKeysFromCommandLine(*command_line); | ||||
| @@ -88,7 +88,7 @@ index 7aacff321a40c..3dbbd8f6d03c5 100644 | ||||
|  } | ||||
|   | ||||
|  #endif  // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) | ||||
| @@ -1845,6 +1859,7 @@ void ChromeMainDelegate::InitializeMemorySystem() { | ||||
| @@ -1872,6 +1886,7 @@ void ChromeMainDelegate::InitializeMemorySystem() { | ||||
|                                channel == version_info::Channel::DEV); | ||||
|    const bool gwp_asan_boost_sampling = is_canary_dev || is_browser_process; | ||||
|   | ||||
| @@ -96,7 +96,7 @@ index 7aacff321a40c..3dbbd8f6d03c5 100644 | ||||
|    memory_system::Initializer() | ||||
|        .SetGwpAsanParameters(gwp_asan_boost_sampling, process_type) | ||||
|        .SetProfilingClientParameters(channel, | ||||
| @@ -1854,5 +1869,5 @@ void ChromeMainDelegate::InitializeMemorySystem() { | ||||
| @@ -1881,5 +1896,5 @@ void ChromeMainDelegate::InitializeMemorySystem() { | ||||
|                                 memory_system::DispatcherParameters:: | ||||
|                                     AllocationTraceRecorderInclusion::kDynamic, | ||||
|                                 process_type) | ||||
| @@ -126,7 +126,7 @@ index 176b6248f18e8..1360e8c209eba 100644 | ||||
|  #if BUILDFLAG(IS_CHROMEOS_LACROS) | ||||
|    std::unique_ptr<chromeos::LacrosService> lacros_service_; | ||||
| diff --git chrome/browser/chrome_browser_main.cc chrome/browser/chrome_browser_main.cc | ||||
| index f2613018d0bc3..fab49b0c14657 100644 | ||||
| index 143a625d3bb54..cff7b898c66a9 100644 | ||||
| --- chrome/browser/chrome_browser_main.cc | ||||
| +++ chrome/browser/chrome_browser_main.cc | ||||
| @@ -52,6 +52,7 @@ | ||||
| @@ -137,7 +137,7 @@ index f2613018d0bc3..fab49b0c14657 100644 | ||||
|  #include "chrome/browser/about_flags.h" | ||||
|  #include "chrome/browser/active_use_util.h" | ||||
|  #include "chrome/browser/after_startup_task_utils.h" | ||||
| @@ -1556,7 +1557,7 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() { | ||||
| @@ -1507,7 +1508,7 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() { | ||||
|    } | ||||
|  #endif  // !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_CHROMEOS_ASH) | ||||
|   | ||||
| @@ -146,7 +146,7 @@ index f2613018d0bc3..fab49b0c14657 100644 | ||||
|    // Handle special early return paths (which couldn't be processed even earlier | ||||
|    // as they require the process singleton to be held) first. | ||||
|   | ||||
| @@ -1603,7 +1604,7 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() { | ||||
| @@ -1554,7 +1555,7 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() { | ||||
|      return content::RESULT_CODE_NORMAL_EXIT; | ||||
|  #endif  // BUILDFLAG(IS_WIN) | ||||
|    } | ||||
| @@ -155,7 +155,7 @@ index f2613018d0bc3..fab49b0c14657 100644 | ||||
|   | ||||
|  #if BUILDFLAG(IS_WIN) | ||||
|    // Check if there is any machine level Chrome installed on the current | ||||
| @@ -1657,12 +1658,14 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() { | ||||
| @@ -1608,12 +1609,14 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() { | ||||
|          browser_process_->local_state()); | ||||
|    } | ||||
|   | ||||
| @@ -170,7 +170,7 @@ index f2613018d0bc3..fab49b0c14657 100644 | ||||
|   | ||||
|  #if BUILDFLAG(IS_ANDROID) | ||||
|    page_info::SetPageInfoClient(new ChromePageInfoClient()); | ||||
| @@ -1808,6 +1811,10 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() { | ||||
| @@ -1759,6 +1762,10 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() { | ||||
|    } | ||||
|  #endif  // BUILDFLAG(IS_CHROMEOS_ASH) | ||||
|   | ||||
| @@ -181,7 +181,7 @@ index f2613018d0bc3..fab49b0c14657 100644 | ||||
|    // This step is costly and is already measured in | ||||
|    // Startup.StartupBrowserCreator_Start. | ||||
|    // See the comment above for an explanation of |process_command_line|. | ||||
| @@ -1846,11 +1853,14 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() { | ||||
| @@ -1797,11 +1804,14 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl() { | ||||
|   | ||||
|      // Create the RunLoop for MainMessageLoopRun() to use and transfer | ||||
|      // ownership of the browser's lifetime to the BrowserProcess. | ||||
| @@ -197,7 +197,7 @@ index f2613018d0bc3..fab49b0c14657 100644 | ||||
|  #endif  // !BUILDFLAG(IS_ANDROID) | ||||
|   | ||||
| diff --git chrome/browser/chrome_browser_main_mac.mm chrome/browser/chrome_browser_main_mac.mm | ||||
| index a85dd48b0c298..11944bf767f9b 100644 | ||||
| index a509d0b37e953..0d48c4a1f1daf 100644 | ||||
| --- chrome/browser/chrome_browser_main_mac.mm | ||||
| +++ chrome/browser/chrome_browser_main_mac.mm | ||||
| @@ -17,6 +17,7 @@ | ||||
| @@ -233,7 +233,7 @@ index a85dd48b0c298..11944bf767f9b 100644 | ||||
| +#endif | ||||
|  } | ||||
| diff --git chrome/browser/chrome_content_browser_client.cc chrome/browser/chrome_content_browser_client.cc | ||||
| index 267387e7e079c..48376496d4895 100644 | ||||
| index 54053dfc9b86d..19c11cf71046d 100644 | ||||
| --- chrome/browser/chrome_content_browser_client.cc | ||||
| +++ chrome/browser/chrome_content_browser_client.cc | ||||
| @@ -42,6 +42,7 @@ | ||||
| @@ -244,7 +244,7 @@ index 267387e7e079c..48376496d4895 100644 | ||||
|  #include "chrome/browser/accessibility/accessibility_labels_service.h" | ||||
|  #include "chrome/browser/accessibility/accessibility_labels_service_factory.h" | ||||
|  #include "chrome/browser/after_startup_task_utils.h" | ||||
| @@ -1552,6 +1553,8 @@ ChromeContentBrowserClient::GetPopupNavigationDelegateFactoryForTesting() { | ||||
| @@ -1550,6 +1551,8 @@ ChromeContentBrowserClient::GetPopupNavigationDelegateFactoryForTesting() { | ||||
|  } | ||||
|   | ||||
|  ChromeContentBrowserClient::ChromeContentBrowserClient() { | ||||
| @@ -253,7 +253,7 @@ index 267387e7e079c..48376496d4895 100644 | ||||
|  #if BUILDFLAG(ENABLE_PLUGINS) | ||||
|    extra_parts_.push_back( | ||||
|        std::make_unique<ChromeContentBrowserClientPluginsPart>()); | ||||
| @@ -1584,6 +1587,11 @@ ChromeContentBrowserClient::~ChromeContentBrowserClient() { | ||||
| @@ -1582,6 +1585,11 @@ ChromeContentBrowserClient::~ChromeContentBrowserClient() { | ||||
|    } | ||||
|  } | ||||
|   | ||||
| @@ -265,7 +265,7 @@ index 267387e7e079c..48376496d4895 100644 | ||||
|  // static | ||||
|  void ChromeContentBrowserClient::RegisterLocalStatePrefs( | ||||
|      PrefRegistrySimple* registry) { | ||||
| @@ -4431,9 +4439,11 @@ void ChromeContentBrowserClient::BrowserURLHandlerCreated( | ||||
| @@ -4463,9 +4471,11 @@ void ChromeContentBrowserClient::BrowserURLHandlerCreated( | ||||
|                            &search::HandleNewTabURLReverseRewrite); | ||||
|  #endif  // BUILDFLAG(IS_ANDROID) | ||||
|   | ||||
| @@ -277,7 +277,7 @@ index 267387e7e079c..48376496d4895 100644 | ||||
|  } | ||||
|   | ||||
|  base::FilePath ChromeContentBrowserClient::GetDefaultDownloadDirectory() { | ||||
| @@ -6494,7 +6504,7 @@ void ChromeContentBrowserClient::OnNetworkServiceCreated( | ||||
| @@ -6529,7 +6539,7 @@ void ChromeContentBrowserClient::OnNetworkServiceCreated( | ||||
|  #endif | ||||
|  } | ||||
|   | ||||
| @@ -286,7 +286,7 @@ index 267387e7e079c..48376496d4895 100644 | ||||
|      content::BrowserContext* context, | ||||
|      bool in_memory, | ||||
|      const base::FilePath& relative_partition_path, | ||||
| @@ -6512,6 +6522,8 @@ void ChromeContentBrowserClient::ConfigureNetworkContextParams( | ||||
| @@ -6547,6 +6557,8 @@ void ChromeContentBrowserClient::ConfigureNetworkContextParams( | ||||
|      network_context_params->user_agent = GetUserAgentBasedOnPolicy(context); | ||||
|      network_context_params->accept_language = GetApplicationLocale(); | ||||
|    } | ||||
| @@ -295,7 +295,7 @@ index 267387e7e079c..48376496d4895 100644 | ||||
|  } | ||||
|   | ||||
|  std::vector<base::FilePath> | ||||
| @@ -7577,10 +7589,10 @@ void ChromeContentBrowserClient::OnKeepaliveRequestStarted( | ||||
| @@ -7652,10 +7664,10 @@ void ChromeContentBrowserClient::OnKeepaliveRequestStarted( | ||||
|    const auto now = base::TimeTicks::Now(); | ||||
|    const auto timeout = GetKeepaliveTimerTimeout(context); | ||||
|    keepalive_deadline_ = std::max(keepalive_deadline_, now + timeout); | ||||
| @@ -308,7 +308,7 @@ index 267387e7e079c..48376496d4895 100644 | ||||
|          FROM_HERE, keepalive_deadline_ - now, | ||||
|          base::BindOnce( | ||||
|              &ChromeContentBrowserClient::OnKeepaliveTimerFired, | ||||
| @@ -7599,7 +7611,8 @@ void ChromeContentBrowserClient::OnKeepaliveRequestFinished() { | ||||
| @@ -7674,7 +7686,8 @@ void ChromeContentBrowserClient::OnKeepaliveRequestFinished() { | ||||
|    --num_keepalive_requests_; | ||||
|    if (num_keepalive_requests_ == 0) { | ||||
|      DVLOG(1) << "Stopping the keepalive timer"; | ||||
| @@ -318,7 +318,7 @@ index 267387e7e079c..48376496d4895 100644 | ||||
|      // This deletes the keep alive handle attached to the timer function and | ||||
|      // unblock the shutdown sequence. | ||||
|    } | ||||
| @@ -7741,7 +7754,7 @@ void ChromeContentBrowserClient::OnKeepaliveTimerFired( | ||||
| @@ -7816,7 +7829,7 @@ void ChromeContentBrowserClient::OnKeepaliveTimerFired( | ||||
|    const auto now = base::TimeTicks::Now(); | ||||
|    const auto then = keepalive_deadline_; | ||||
|    if (now < then) { | ||||
| @@ -328,7 +328,7 @@ index 267387e7e079c..48376496d4895 100644 | ||||
|          base::BindOnce(&ChromeContentBrowserClient::OnKeepaliveTimerFired, | ||||
|                         weak_factory_.GetWeakPtr(), | ||||
| diff --git chrome/browser/chrome_content_browser_client.h chrome/browser/chrome_content_browser_client.h | ||||
| index 28633d6bd4cb9..d17cbef0ae5af 100644 | ||||
| index db4ede8eb28c8..a5ca9f6c57826 100644 | ||||
| --- chrome/browser/chrome_content_browser_client.h | ||||
| +++ chrome/browser/chrome_content_browser_client.h | ||||
| @@ -136,6 +136,8 @@ class ChromeContentBrowserClient : public content::ContentBrowserClient { | ||||
| @@ -340,7 +340,7 @@ index 28633d6bd4cb9..d17cbef0ae5af 100644 | ||||
|    // TODO(https://crbug.com/787567): This file is about calls from content/ out | ||||
|    // to chrome/ to get values or notify about events, but both of these | ||||
|    // functions are from chrome/ to chrome/ and don't involve content/ at all. | ||||
| @@ -647,7 +649,7 @@ class ChromeContentBrowserClient : public content::ContentBrowserClient { | ||||
| @@ -654,7 +656,7 @@ class ChromeContentBrowserClient : public content::ContentBrowserClient { | ||||
|        override; | ||||
|    void OnNetworkServiceCreated( | ||||
|        network::mojom::NetworkService* network_service) override; | ||||
| @@ -349,7 +349,7 @@ index 28633d6bd4cb9..d17cbef0ae5af 100644 | ||||
|        content::BrowserContext* context, | ||||
|        bool in_memory, | ||||
|        const base::FilePath& relative_partition_path, | ||||
| @@ -1081,7 +1083,7 @@ class ChromeContentBrowserClient : public content::ContentBrowserClient { | ||||
| @@ -1098,7 +1100,7 @@ class ChromeContentBrowserClient : public content::ContentBrowserClient { | ||||
|   | ||||
|  #if !BUILDFLAG(IS_ANDROID) | ||||
|    uint64_t num_keepalive_requests_ = 0; | ||||
| @@ -359,7 +359,7 @@ index 28633d6bd4cb9..d17cbef0ae5af 100644 | ||||
|  #endif | ||||
|   | ||||
| diff --git chrome/browser/prefs/browser_prefs.cc chrome/browser/prefs/browser_prefs.cc | ||||
| index 327282bd86785..a27fb4161b70c 100644 | ||||
| index fc8d276b5191a..7fbdb13fe7ff4 100644 | ||||
| --- chrome/browser/prefs/browser_prefs.cc | ||||
| +++ chrome/browser/prefs/browser_prefs.cc | ||||
| @@ -14,6 +14,7 @@ | ||||
| @@ -370,7 +370,7 @@ index 327282bd86785..a27fb4161b70c 100644 | ||||
|  #include "chrome/browser/about_flags.h" | ||||
|  #include "chrome/browser/accessibility/accessibility_labels_service.h" | ||||
|  #include "chrome/browser/accessibility/accessibility_ui.h" | ||||
| @@ -185,6 +186,10 @@ | ||||
| @@ -189,6 +190,10 @@ | ||||
|  #include "chrome/browser/background/background_mode_manager.h" | ||||
|  #endif | ||||
|   | ||||
| @@ -381,7 +381,7 @@ index 327282bd86785..a27fb4161b70c 100644 | ||||
|  #if BUILDFLAG(ENABLE_EXTENSIONS) | ||||
|  #include "chrome/browser/accessibility/animation_policy_prefs.h" | ||||
|  #include "chrome/browser/apps/platform_apps/shortcut_manager.h" | ||||
| @@ -1531,6 +1536,11 @@ void RegisterLocalState(PrefRegistrySimple* registry) { | ||||
| @@ -1619,6 +1624,11 @@ void RegisterLocalState(PrefRegistrySimple* registry) { | ||||
|   | ||||
|    // This is intentionally last. | ||||
|    RegisterLocalStatePrefsForMigration(registry); | ||||
| @@ -393,7 +393,7 @@ index 327282bd86785..a27fb4161b70c 100644 | ||||
|  } | ||||
|   | ||||
|  // Register prefs applicable to all profiles. | ||||
| @@ -1945,6 +1955,10 @@ void RegisterUserProfilePrefs(user_prefs::PrefRegistrySyncable* registry, | ||||
| @@ -2039,6 +2049,10 @@ void RegisterUserProfilePrefs(user_prefs::PrefRegistrySyncable* registry, | ||||
|                                const std::string& locale) { | ||||
|    RegisterProfilePrefs(registry, locale); | ||||
|   | ||||
|   | ||||
| @@ -1,8 +1,8 @@ | ||||
| diff --git chrome/browser/ui/browser_command_controller.cc chrome/browser/ui/browser_command_controller.cc | ||||
| index db31ee0b50746..2f3aebdcb6101 100644 | ||||
| index 85dc58159a58a..9b582e691f6d8 100644 | ||||
| --- chrome/browser/ui/browser_command_controller.cc | ||||
| +++ chrome/browser/ui/browser_command_controller.cc | ||||
| @@ -401,6 +401,7 @@ bool BrowserCommandController::ExecuteCommandWithDisposition( | ||||
| @@ -402,6 +402,7 @@ bool BrowserCommandController::ExecuteCommandWithDisposition( | ||||
|    // choose to not implement CommandUpdaterDelegate inside this class and | ||||
|    // therefore command_updater_ doesn't have the delegate set). | ||||
|    if (!SupportsCommand(id) || !IsCommandEnabled(id)) { | ||||
| @@ -10,7 +10,7 @@ index db31ee0b50746..2f3aebdcb6101 100644 | ||||
|      return false; | ||||
|    } | ||||
|   | ||||
| @@ -417,6 +418,13 @@ bool BrowserCommandController::ExecuteCommandWithDisposition( | ||||
| @@ -418,6 +419,13 @@ bool BrowserCommandController::ExecuteCommandWithDisposition( | ||||
|    DCHECK(command_updater_.IsCommandEnabled(id)) | ||||
|        << "Invalid/disabled command " << id; | ||||
|   | ||||
| @@ -24,7 +24,7 @@ index db31ee0b50746..2f3aebdcb6101 100644 | ||||
|    // The order of commands in this switch statement must match the function | ||||
|    // declaration order in browser.h! | ||||
|    switch (id) { | ||||
| @@ -1148,11 +1156,13 @@ void BrowserCommandController::TabRestoreServiceLoaded( | ||||
| @@ -1152,11 +1160,13 @@ void BrowserCommandController::TabRestoreServiceLoaded( | ||||
|  // BrowserCommandController, private: | ||||
|   | ||||
|  bool BrowserCommandController::IsShowingMainUI() { | ||||
| @@ -41,7 +41,7 @@ index db31ee0b50746..2f3aebdcb6101 100644 | ||||
|   | ||||
|  bool BrowserCommandController::IsWebAppOrCustomTab() const { | ||||
| diff --git chrome/browser/ui/toolbar/app_menu_model.cc chrome/browser/ui/toolbar/app_menu_model.cc | ||||
| index 2f7825a3bdf38..8553f4293c576 100644 | ||||
| index d2b2a605cbba5..afaf26c26a6db 100644 | ||||
| --- chrome/browser/ui/toolbar/app_menu_model.cc | ||||
| +++ chrome/browser/ui/toolbar/app_menu_model.cc | ||||
| @@ -590,6 +590,57 @@ SaveAndShareSubMenuModel::SaveAndShareSubMenuModel( | ||||
| @@ -102,7 +102,7 @@ index 2f7825a3bdf38..8553f4293c576 100644 | ||||
|  }  // namespace | ||||
|   | ||||
|  //////////////////////////////////////////////////////////////////////////////// | ||||
| @@ -1370,7 +1421,7 @@ bool AppMenuModel::IsCommandIdChecked(int command_id) const { | ||||
| @@ -1382,7 +1433,7 @@ bool AppMenuModel::IsCommandIdChecked(int command_id) const { | ||||
|    return false; | ||||
|  } | ||||
|   | ||||
| @@ -111,7 +111,7 @@ index 2f7825a3bdf38..8553f4293c576 100644 | ||||
|    GlobalError* error = | ||||
|        GlobalErrorServiceFactory::GetForProfile(browser_->profile()) | ||||
|            ->GetGlobalErrorByMenuItemCommandID(command_id); | ||||
| @@ -1385,6 +1436,30 @@ bool AppMenuModel::IsCommandIdEnabled(int command_id) const { | ||||
| @@ -1397,6 +1448,30 @@ bool AppMenuModel::IsCommandIdEnabled(int command_id) const { | ||||
|    } | ||||
|  } | ||||
|   | ||||
| @@ -142,7 +142,7 @@ index 2f7825a3bdf38..8553f4293c576 100644 | ||||
|  bool AppMenuModel::IsCommandIdAlerted(int command_id) const { | ||||
|    if ((command_id == IDC_RECENT_TABS_MENU) || | ||||
|        (command_id == AppMenuModel::kMinRecentTabsCommandId)) { | ||||
| @@ -1555,11 +1630,15 @@ void AppMenuModel::Build() { | ||||
| @@ -1566,11 +1641,15 @@ void AppMenuModel::Build() { | ||||
|                                         kDefaultIconSize)); | ||||
|    } | ||||
|   | ||||
| @@ -163,7 +163,7 @@ index 2f7825a3bdf38..8553f4293c576 100644 | ||||
|   | ||||
|    AddItemWithStringId(IDC_PRINT, IDS_PRINT); | ||||
|   | ||||
| @@ -1640,9 +1719,13 @@ void AppMenuModel::Build() { | ||||
| @@ -1651,9 +1730,13 @@ void AppMenuModel::Build() { | ||||
|                           kMoreToolsMenuItem); | ||||
|   | ||||
|    if (!features::IsChromeRefresh2023()) { | ||||
| @@ -180,7 +180,7 @@ index 2f7825a3bdf38..8553f4293c576 100644 | ||||
|    } | ||||
|   | ||||
|    if (!features::IsChromeRefresh2023()) { | ||||
| @@ -1724,6 +1807,11 @@ void AppMenuModel::Build() { | ||||
| @@ -1739,6 +1822,11 @@ void AppMenuModel::Build() { | ||||
|      SetCommandIcon(this, IDC_EXIT, kExitMenuIcon); | ||||
|    } | ||||
|   | ||||
| @@ -193,10 +193,10 @@ index 2f7825a3bdf38..8553f4293c576 100644 | ||||
|  } | ||||
|   | ||||
| diff --git chrome/browser/ui/toolbar/app_menu_model.h chrome/browser/ui/toolbar/app_menu_model.h | ||||
| index fe6f250d169a3..606cbd2e248b3 100644 | ||||
| index f06cf1bf08ba4..4e89b522715fc 100644 | ||||
| --- chrome/browser/ui/toolbar/app_menu_model.h | ||||
| +++ chrome/browser/ui/toolbar/app_menu_model.h | ||||
| @@ -202,6 +202,7 @@ class AppMenuModel : public ui::SimpleMenuModel, | ||||
| @@ -204,6 +204,7 @@ class AppMenuModel : public ui::SimpleMenuModel, | ||||
|    void ExecuteCommand(int command_id, int event_flags) override; | ||||
|    bool IsCommandIdChecked(int command_id) const override; | ||||
|    bool IsCommandIdEnabled(int command_id) const override; | ||||
| @@ -204,7 +204,7 @@ index fe6f250d169a3..606cbd2e248b3 100644 | ||||
|    bool IsCommandIdAlerted(int command_id) const override; | ||||
|    bool GetAcceleratorForCommandId(int command_id, | ||||
|                                    ui::Accelerator* accelerator) const override; | ||||
| @@ -234,6 +235,8 @@ class AppMenuModel : public ui::SimpleMenuModel, | ||||
| @@ -236,6 +237,8 @@ class AppMenuModel : public ui::SimpleMenuModel, | ||||
|    // took to select the command. | ||||
|    void LogMenuMetrics(int command_id); | ||||
|   | ||||
| @@ -231,7 +231,7 @@ index 59024587ef6b7..0c30aa71768cf 100644 | ||||
|   | ||||
|  void FindBarHost::RegisterAccelerators() { | ||||
| diff --git chrome/browser/ui/views/frame/browser_frame.cc chrome/browser/ui/views/frame/browser_frame.cc | ||||
| index c3b5d07643806..761cc6306363f 100644 | ||||
| index bb4b3821bcfda..9734fe4aaffcf 100644 | ||||
| --- chrome/browser/ui/views/frame/browser_frame.cc | ||||
| +++ chrome/browser/ui/views/frame/browser_frame.cc | ||||
| @@ -114,15 +114,23 @@ ui::ColorProviderKey::SchemeVariant GetSchemeVariant( | ||||
| @@ -331,7 +331,7 @@ index c3b5d07643806..761cc6306363f 100644 | ||||
|   | ||||
|    key.app_controller = browser_view_->browser()->app_controller(); | ||||
|   | ||||
| @@ -642,5 +672,8 @@ bool BrowserFrame::RegenerateFrameOnThemeChange( | ||||
| @@ -632,5 +662,8 @@ bool BrowserFrame::RegenerateFrameOnThemeChange( | ||||
|  } | ||||
|   | ||||
|  bool BrowserFrame::IsIncognitoBrowser() const { | ||||
| @@ -355,10 +355,10 @@ index 0c231b6ac5b01..6b5af98e18e42 100644 | ||||
|    BrowserFrame(const BrowserFrame&) = delete; | ||||
|    BrowserFrame& operator=(const BrowserFrame&) = delete; | ||||
| diff --git chrome/browser/ui/views/frame/browser_view.cc chrome/browser/ui/views/frame/browser_view.cc | ||||
| index 2c4cb9a1e892c..2e38fc9d32d98 100644 | ||||
| index 41376bb2d8af1..43ed7312cd8d9 100644 | ||||
| --- chrome/browser/ui/views/frame/browser_view.cc | ||||
| +++ chrome/browser/ui/views/frame/browser_view.cc | ||||
| @@ -338,11 +338,10 @@ using content::NativeWebKeyboardEvent; | ||||
| @@ -343,11 +343,10 @@ using content::NativeWebKeyboardEvent; | ||||
|  using content::WebContents; | ||||
|  using web_modal::WebContentsModalDialogHost; | ||||
|   | ||||
| @@ -373,7 +373,7 @@ index 2c4cb9a1e892c..2e38fc9d32d98 100644 | ||||
|   | ||||
|  #if BUILDFLAG(IS_CHROMEOS_ASH) | ||||
|  // UMA histograms that record animation smoothness for tab loading animation. | ||||
| @@ -838,11 +837,22 @@ class BrowserView::AccessibilityModeObserver : public ui::AXModeObserver { | ||||
| @@ -843,12 +842,23 @@ class BrowserView::AccessibilityModeObserver : public ui::AXModeObserver { | ||||
|  /////////////////////////////////////////////////////////////////////////////// | ||||
|  // BrowserView, public: | ||||
|   | ||||
| @@ -383,7 +383,9 @@ index 2c4cb9a1e892c..2e38fc9d32d98 100644 | ||||
|      : views::ClientView(nullptr, nullptr), | ||||
| -      browser_(std::move(browser)), | ||||
|        accessibility_mode_observer_( | ||||
|            std::make_unique<AccessibilityModeObserver>(this)) { | ||||
| -          std::make_unique<AccessibilityModeObserver>(this)), | ||||
| -      browser_actions_(*browser_) { | ||||
| +          std::make_unique<AccessibilityModeObserver>(this)) { | ||||
| +  if (browser) | ||||
| +    InitBrowser(std::move(browser)); | ||||
| +} | ||||
| @@ -392,12 +394,13 @@ index 2c4cb9a1e892c..2e38fc9d32d98 100644 | ||||
| +  DCHECK(!browser_); | ||||
| +  browser_ = std::move(browser); | ||||
| + | ||||
| +  browser_actions_ = std::make_unique<BrowserActions>(*browser_); | ||||
| +  immersive_mode_controller_ = chrome::CreateImmersiveModeController(this); | ||||
| + | ||||
|    SetShowIcon( | ||||
|        ::ShouldShowWindowIcon(browser_.get(), AppUsesWindowControlsOverlay())); | ||||
|   | ||||
| @@ -888,7 +898,6 @@ BrowserView::BrowserView(std::unique_ptr<Browser> browser) | ||||
| @@ -897,7 +907,6 @@ BrowserView::BrowserView(std::unique_ptr<Browser> browser) | ||||
|    } | ||||
|   | ||||
|    browser_->tab_strip_model()->AddObserver(this); | ||||
| @@ -405,7 +408,7 @@ index 2c4cb9a1e892c..2e38fc9d32d98 100644 | ||||
|   | ||||
|    // Top container holds tab strip region and toolbar and lives at the front of | ||||
|    // the view hierarchy. | ||||
| @@ -944,8 +953,15 @@ BrowserView::BrowserView(std::unique_ptr<Browser> browser) | ||||
| @@ -956,8 +965,15 @@ BrowserView::BrowserView(std::unique_ptr<Browser> browser) | ||||
|    contents_container->SetLayoutManager(std::make_unique<ContentsLayoutManager>( | ||||
|        devtools_web_view_, contents_web_view_)); | ||||
|   | ||||
| @@ -423,7 +426,7 @@ index 2c4cb9a1e892c..2e38fc9d32d98 100644 | ||||
|   | ||||
|    contents_separator_ = | ||||
|        top_container_->AddChildView(std::make_unique<ContentsSeparator>()); | ||||
| @@ -1019,7 +1035,9 @@ BrowserView::~BrowserView() { | ||||
| @@ -1031,7 +1047,9 @@ BrowserView::~BrowserView() { | ||||
|   | ||||
|    // All the tabs should have been destroyed already. If we were closed by the | ||||
|    // OS with some tabs than the NativeBrowserFrame should have destroyed them. | ||||
| @@ -433,7 +436,7 @@ index 2c4cb9a1e892c..2e38fc9d32d98 100644 | ||||
|   | ||||
|    // Stop the animation timer explicitly here to avoid running it in a nested | ||||
|    // message loop, which may run by Browser destructor. | ||||
| @@ -1033,12 +1051,14 @@ BrowserView::~BrowserView() { | ||||
| @@ -1045,12 +1063,14 @@ BrowserView::~BrowserView() { | ||||
|    // child views and it is an observer for avatar toolbar button if any. | ||||
|    autofill_bubble_handler_.reset(); | ||||
|   | ||||
| @@ -448,7 +451,7 @@ index 2c4cb9a1e892c..2e38fc9d32d98 100644 | ||||
|   | ||||
|    // The TabStrip attaches a listener to the model. Make sure we shut down the | ||||
|    // TabStrip first so that it can cleanly remove the listener. | ||||
| @@ -1056,7 +1076,9 @@ BrowserView::~BrowserView() { | ||||
| @@ -1068,7 +1088,9 @@ BrowserView::~BrowserView() { | ||||
|   | ||||
|    // `SidePanelUI::RemoveSidePanelUIForBrowser()` deletes the | ||||
|    // SidePanelCoordinator. | ||||
| @@ -458,7 +461,7 @@ index 2c4cb9a1e892c..2e38fc9d32d98 100644 | ||||
|  } | ||||
|   | ||||
|  // static | ||||
| @@ -1147,12 +1169,14 @@ gfx::Size BrowserView::GetWebAppFrameToolbarPreferredSize() const { | ||||
| @@ -1159,12 +1181,14 @@ gfx::Size BrowserView::GetWebAppFrameToolbarPreferredSize() const { | ||||
|   | ||||
|  #if BUILDFLAG(IS_MAC) | ||||
|  bool BrowserView::UsesImmersiveFullscreenMode() const { | ||||
| @@ -475,7 +478,7 @@ index 2c4cb9a1e892c..2e38fc9d32d98 100644 | ||||
|  } | ||||
|   | ||||
|  bool BrowserView::UsesImmersiveFullscreenTabbedMode() const { | ||||
| @@ -1914,6 +1938,8 @@ bool BrowserView::ShouldHideUIForFullscreen() const { | ||||
| @@ -1942,6 +1966,8 @@ bool BrowserView::ShouldHideUIForFullscreen() const { | ||||
|    if (immersive_mode_controller_->IsEnabled()) | ||||
|      return false; | ||||
|   | ||||
| @@ -484,7 +487,7 @@ index 2c4cb9a1e892c..2e38fc9d32d98 100644 | ||||
|    return frame_->GetFrameView()->ShouldHideTopUIForFullscreen(); | ||||
|  } | ||||
|   | ||||
| @@ -2921,7 +2947,8 @@ DownloadShelf* BrowserView::GetDownloadShelf() { | ||||
| @@ -2956,7 +2982,8 @@ DownloadShelf* BrowserView::GetDownloadShelf() { | ||||
|  } | ||||
|   | ||||
|  DownloadBubbleUIController* BrowserView::GetDownloadBubbleUIController() { | ||||
| @@ -494,7 +497,7 @@ index 2c4cb9a1e892c..2e38fc9d32d98 100644 | ||||
|    if (auto* download_button = toolbar_button_provider_->GetDownloadButton()) | ||||
|      return download_button->bubble_controller(); | ||||
|    return nullptr; | ||||
| @@ -3454,7 +3481,8 @@ void BrowserView::ReparentTopContainerForEndOfImmersive() { | ||||
| @@ -3490,7 +3517,8 @@ void BrowserView::ReparentTopContainerForEndOfImmersive() { | ||||
|    if (top_container()->parent() == this) | ||||
|      return; | ||||
|   | ||||
| @@ -504,7 +507,7 @@ index 2c4cb9a1e892c..2e38fc9d32d98 100644 | ||||
|    top_container()->DestroyLayer(); | ||||
|    AddChildViewAt(top_container(), 0); | ||||
|    EnsureFocusOrder(); | ||||
| @@ -3904,11 +3932,38 @@ void BrowserView::GetAccessiblePanes(std::vector<views::View*>* panes) { | ||||
| @@ -3948,11 +3976,38 @@ void BrowserView::GetAccessiblePanes(std::vector<views::View*>* panes) { | ||||
|  bool BrowserView::ShouldDescendIntoChildForEventHandling( | ||||
|      gfx::NativeView child, | ||||
|      const gfx::Point& location) { | ||||
| @@ -545,7 +548,7 @@ index 2c4cb9a1e892c..2e38fc9d32d98 100644 | ||||
|      // Draggable regions are defined relative to the web contents. | ||||
|      gfx::Point point_in_contents_web_view_coords(location); | ||||
|      views::View::ConvertPointToTarget(GetWidget()->GetRootView(), | ||||
| @@ -3917,7 +3972,7 @@ bool BrowserView::ShouldDescendIntoChildForEventHandling( | ||||
| @@ -3961,7 +4016,7 @@ bool BrowserView::ShouldDescendIntoChildForEventHandling( | ||||
|   | ||||
|      // Draggable regions should be ignored for clicks into any browser view's | ||||
|      // owned widgets, for example alerts, permission prompts or find bar. | ||||
| @@ -554,7 +557,7 @@ index 2c4cb9a1e892c..2e38fc9d32d98 100644 | ||||
|                 point_in_contents_web_view_coords.x(), | ||||
|                 point_in_contents_web_view_coords.y()) || | ||||
|             WidgetOwnedByAnchorContainsPoint(point_in_contents_web_view_coords); | ||||
| @@ -4025,8 +4080,10 @@ void BrowserView::Layout() { | ||||
| @@ -4069,8 +4124,10 @@ void BrowserView::Layout() { | ||||
|   | ||||
|    // TODO(jamescook): Why was this in the middle of layout code? | ||||
|    toolbar_->location_bar()->omnibox_view()->SetFocusBehavior( | ||||
| @@ -567,7 +570,7 @@ index 2c4cb9a1e892c..2e38fc9d32d98 100644 | ||||
|   | ||||
|  #if BUILDFLAG(IS_CHROMEOS_ASH) | ||||
|    // In chromeOS ash we round the bottom two corners of the browser frame by | ||||
| @@ -4104,6 +4161,11 @@ void BrowserView::AddedToWidget() { | ||||
| @@ -4148,6 +4205,11 @@ void BrowserView::AddedToWidget() { | ||||
|    SetThemeProfileForWindow(GetNativeWindow(), browser_->profile()); | ||||
|  #endif | ||||
|   | ||||
| @@ -579,7 +582,7 @@ index 2c4cb9a1e892c..2e38fc9d32d98 100644 | ||||
|    toolbar_->Init(); | ||||
|   | ||||
|    // TODO(pbos): Investigate whether the side panels should be creatable when | ||||
| @@ -4152,13 +4214,9 @@ void BrowserView::AddedToWidget() { | ||||
| @@ -4196,13 +4258,9 @@ void BrowserView::AddedToWidget() { | ||||
|   | ||||
|    EnsureFocusOrder(); | ||||
|   | ||||
| @@ -595,7 +598,7 @@ index 2c4cb9a1e892c..2e38fc9d32d98 100644 | ||||
|    using_native_frame_ = frame_->ShouldUseNativeFrame(); | ||||
|   | ||||
|    MaybeInitializeWebUITabStrip(); | ||||
| @@ -4571,7 +4629,8 @@ void BrowserView::ProcessFullscreen(bool fullscreen, | ||||
| @@ -4614,7 +4672,8 @@ void BrowserView::ProcessFullscreen(bool fullscreen, | ||||
|    // Undo our anti-jankiness hacks and force a re-layout. | ||||
|    in_process_fullscreen_ = false; | ||||
|    ToolbarSizeChanged(false); | ||||
| @@ -605,7 +608,7 @@ index 2c4cb9a1e892c..2e38fc9d32d98 100644 | ||||
|  } | ||||
|   | ||||
|  bool BrowserView::ShouldUseImmersiveFullscreenForUrl(const GURL& url) const { | ||||
| @@ -4942,6 +5001,8 @@ Profile* BrowserView::GetProfile() { | ||||
| @@ -5003,6 +5062,8 @@ Profile* BrowserView::GetProfile() { | ||||
|  } | ||||
|   | ||||
|  void BrowserView::UpdateUIForTabFullscreen() { | ||||
| @@ -614,7 +617,7 @@ index 2c4cb9a1e892c..2e38fc9d32d98 100644 | ||||
|    frame()->GetFrameView()->UpdateFullscreenTopUI(); | ||||
|  } | ||||
|   | ||||
| @@ -4964,6 +5025,8 @@ void BrowserView::HideDownloadShelf() { | ||||
| @@ -5025,6 +5086,8 @@ void BrowserView::HideDownloadShelf() { | ||||
|  } | ||||
|   | ||||
|  bool BrowserView::CanUserExitFullscreen() const { | ||||
| @@ -624,10 +627,10 @@ index 2c4cb9a1e892c..2e38fc9d32d98 100644 | ||||
|  } | ||||
|   | ||||
| diff --git chrome/browser/ui/views/frame/browser_view.h chrome/browser/ui/views/frame/browser_view.h | ||||
| index 8d0b8e65bb269..35cee8880bb31 100644 | ||||
| index f6251860d8bd3..9756332121fd8 100644 | ||||
| --- chrome/browser/ui/views/frame/browser_view.h | ||||
| +++ chrome/browser/ui/views/frame/browser_view.h | ||||
| @@ -136,11 +136,16 @@ class BrowserView : public BrowserWindow, | ||||
| @@ -140,11 +140,16 @@ class BrowserView : public BrowserWindow, | ||||
|      kUnknown | ||||
|    }; | ||||
|   | ||||
| @@ -644,7 +647,16 @@ index 8d0b8e65bb269..35cee8880bb31 100644 | ||||
|    void set_frame(BrowserFrame* frame) { | ||||
|      frame_ = frame; | ||||
|      paint_as_active_subscription_ = | ||||
| @@ -819,6 +824,9 @@ class BrowserView : public BrowserWindow, | ||||
| @@ -377,7 +382,7 @@ class BrowserView : public BrowserWindow, | ||||
|    } | ||||
|   | ||||
|    actions::ActionItem* root_action_item() const { | ||||
| -    return browser_actions_.root_action_item(); | ||||
| +    return browser_actions_->root_action_item(); | ||||
|    } | ||||
|   | ||||
|    // Returns true if the view has been initialized. | ||||
| @@ -822,6 +827,9 @@ class BrowserView : public BrowserWindow, | ||||
|    // TopContainerBackground::PaintThemeCustomImage for details. | ||||
|    gfx::Point GetThemeOffsetFromBrowserView() const; | ||||
|   | ||||
| @@ -654,8 +666,17 @@ index 8d0b8e65bb269..35cee8880bb31 100644 | ||||
|   private: | ||||
|    // Do not friend BrowserViewLayout. Use the BrowserViewLayoutDelegate | ||||
|    // interface to keep these two classes decoupled and testable. | ||||
| @@ -1255,7 +1263,7 @@ class BrowserView : public BrowserWindow, | ||||
|   | ||||
|    // `browser_actions_` creates the root browser level action along with child | ||||
|    // actions. | ||||
| -  const BrowserActions browser_actions_; | ||||
| +  std::unique_ptr<BrowserActions> browser_actions_; | ||||
|   | ||||
|    std::unique_ptr<AccessibilityFocusHighlight> accessibility_focus_highlight_; | ||||
|   | ||||
| diff --git chrome/browser/ui/views/frame/browser_view_layout.cc chrome/browser/ui/views/frame/browser_view_layout.cc | ||||
| index 36831f71eeb95..24e0f9e70781b 100644 | ||||
| index ab36dd2ae50e2..6dabacc9773fc 100644 | ||||
| --- chrome/browser/ui/views/frame/browser_view_layout.cc | ||||
| +++ chrome/browser/ui/views/frame/browser_view_layout.cc | ||||
| @@ -48,6 +48,10 @@ | ||||
| @@ -700,10 +721,10 @@ index 8267a265a8e10..ee08f18e96a34 100644 | ||||
|   | ||||
|  ContentsWebView::~ContentsWebView() { | ||||
| diff --git chrome/browser/ui/views/frame/picture_in_picture_browser_frame_view.cc chrome/browser/ui/views/frame/picture_in_picture_browser_frame_view.cc | ||||
| index f1d303e9b7fd8..8a5935e8f10da 100644 | ||||
| index b9b50af047993..30793a69c4942 100644 | ||||
| --- chrome/browser/ui/views/frame/picture_in_picture_browser_frame_view.cc | ||||
| +++ chrome/browser/ui/views/frame/picture_in_picture_browser_frame_view.cc | ||||
| @@ -549,6 +549,11 @@ PictureInPictureBrowserFrameView::PictureInPictureBrowserFrameView( | ||||
| @@ -573,6 +573,11 @@ PictureInPictureBrowserFrameView::PictureInPictureBrowserFrameView( | ||||
|    frame->GetNativeWindow()->SetEventTargeter( | ||||
|        std::make_unique<chromeos::InteriorResizeHandleTargeter>()); | ||||
|  #endif | ||||
| @@ -715,7 +736,7 @@ index f1d303e9b7fd8..8a5935e8f10da 100644 | ||||
|  } | ||||
|   | ||||
|  PictureInPictureBrowserFrameView::~PictureInPictureBrowserFrameView() { | ||||
| @@ -644,17 +649,20 @@ gfx::Rect PictureInPictureBrowserFrameView::GetWindowBoundsForClientBounds( | ||||
| @@ -669,17 +674,20 @@ gfx::Rect PictureInPictureBrowserFrameView::GetWindowBoundsForClientBounds( | ||||
|   | ||||
|  int PictureInPictureBrowserFrameView::NonClientHitTest( | ||||
|      const gfx::Point& point) { | ||||
| @@ -745,7 +766,7 @@ index f1d303e9b7fd8..8a5935e8f10da 100644 | ||||
|    } | ||||
|   | ||||
|    // Allow dragging and resizing the window. | ||||
| @@ -664,6 +672,27 @@ int PictureInPictureBrowserFrameView::NonClientHitTest( | ||||
| @@ -689,6 +697,27 @@ int PictureInPictureBrowserFrameView::NonClientHitTest( | ||||
|    if (window_component != HTNOWHERE) | ||||
|      return window_component; | ||||
|   | ||||
| @@ -773,7 +794,7 @@ index f1d303e9b7fd8..8a5935e8f10da 100644 | ||||
|    // Allow interacting with the web contents. | ||||
|    int frame_component = frame()->client_view()->NonClientHitTest(point); | ||||
|    if (frame_component != HTNOWHERE) | ||||
| @@ -722,7 +751,8 @@ void PictureInPictureBrowserFrameView::Layout() { | ||||
| @@ -747,7 +776,8 @@ void PictureInPictureBrowserFrameView::Layout() { | ||||
|    gfx::Rect content_area = GetLocalBounds(); | ||||
|    content_area.Inset(FrameBorderInsets()); | ||||
|    gfx::Rect top_bar = content_area; | ||||
| @@ -783,7 +804,7 @@ index f1d303e9b7fd8..8a5935e8f10da 100644 | ||||
|    top_bar_container_view_->SetBoundsRect(top_bar); | ||||
|  #if !BUILDFLAG(IS_ANDROID) | ||||
|    if (auto_pip_setting_overlay_) { | ||||
| @@ -1171,7 +1201,8 @@ gfx::Insets PictureInPictureBrowserFrameView::ResizeBorderInsets() const { | ||||
| @@ -1207,7 +1237,8 @@ gfx::Insets PictureInPictureBrowserFrameView::ResizeBorderInsets() const { | ||||
|  } | ||||
|   | ||||
|  int PictureInPictureBrowserFrameView::GetTopAreaHeight() const { | ||||
| @@ -794,10 +815,10 @@ index f1d303e9b7fd8..8a5935e8f10da 100644 | ||||
|   | ||||
|  gfx::Size PictureInPictureBrowserFrameView::GetNonClientViewAreaSize() const { | ||||
| diff --git chrome/browser/ui/views/page_action/page_action_icon_controller.cc chrome/browser/ui/views/page_action/page_action_icon_controller.cc | ||||
| index 723a2840bd988..975152c988917 100644 | ||||
| index ca602db58de3a..1db448a2526a4 100644 | ||||
| --- chrome/browser/ui/views/page_action/page_action_icon_controller.cc | ||||
| +++ chrome/browser/ui/views/page_action/page_action_icon_controller.cc | ||||
| @@ -96,6 +96,12 @@ void PageActionIconController::Init(const PageActionIconParams& params, | ||||
| @@ -97,6 +97,12 @@ void PageActionIconController::Init(const PageActionIconParams& params, | ||||
|    }; | ||||
|   | ||||
|    for (PageActionIconType type : params.types_enabled) { | ||||
| @@ -857,10 +878,10 @@ index 734c741d1f2fa..739b468cfc0d8 100644 | ||||
|  } | ||||
|   | ||||
| diff --git chrome/browser/ui/views/toolbar/toolbar_view.cc chrome/browser/ui/views/toolbar/toolbar_view.cc | ||||
| index 2ea09fd7e8cc0..d5afd2bcb0e3c 100644 | ||||
| index 26de912e300e9..c3761d1cb060c 100644 | ||||
| --- chrome/browser/ui/views/toolbar/toolbar_view.cc | ||||
| +++ chrome/browser/ui/views/toolbar/toolbar_view.cc | ||||
| @@ -183,7 +183,7 @@ class TabstripLikeBackground : public views::Background { | ||||
| @@ -186,7 +186,7 @@ class TabstripLikeBackground : public views::Background { | ||||
|    void Paint(gfx::Canvas* canvas, views::View* view) const override { | ||||
|      bool painted = TopContainerBackground::PaintThemeCustomImage(canvas, view, | ||||
|                                                                   browser_view_); | ||||
| @@ -869,7 +890,7 @@ index 2ea09fd7e8cc0..d5afd2bcb0e3c 100644 | ||||
|        SkColor frame_color = | ||||
|            browser_view_->frame()->GetFrameView()->GetFrameColor( | ||||
|                BrowserFrameActiveState::kUseCurrent); | ||||
| @@ -208,12 +208,13 @@ class ToolbarView::ContainerView : public views::View { | ||||
| @@ -215,12 +215,13 @@ END_METADATA | ||||
|  //////////////////////////////////////////////////////////////////////////////// | ||||
|  // ToolbarView, public: | ||||
|   | ||||
| @@ -885,7 +906,7 @@ index 2ea09fd7e8cc0..d5afd2bcb0e3c 100644 | ||||
|    SetID(VIEW_ID_TOOLBAR); | ||||
|   | ||||
|    container_view_ = AddChildView(std::make_unique<ContainerView>()); | ||||
| @@ -238,6 +239,19 @@ ToolbarView::~ToolbarView() { | ||||
| @@ -245,6 +246,19 @@ ToolbarView::~ToolbarView() { | ||||
|  } | ||||
|   | ||||
|  void ToolbarView::Init() { | ||||
| @@ -905,7 +926,7 @@ index 2ea09fd7e8cc0..d5afd2bcb0e3c 100644 | ||||
|  #if defined(USE_AURA) | ||||
|    // Avoid generating too many occlusion tracking calculation events before this | ||||
|    // function returns. The occlusion status will be computed only once once this | ||||
| @@ -262,12 +276,13 @@ void ToolbarView::Init() { | ||||
| @@ -269,12 +283,13 @@ void ToolbarView::Init() { | ||||
|   | ||||
|    auto location_bar = std::make_unique<LocationBarView>( | ||||
|        browser_, browser_->profile(), browser_->command_controller(), this, | ||||
| @@ -921,7 +942,7 @@ index 2ea09fd7e8cc0..d5afd2bcb0e3c 100644 | ||||
|      download_button = | ||||
|          std::make_unique<DownloadToolbarButtonView>(browser_view_); | ||||
|    } | ||||
| @@ -349,8 +364,10 @@ void ToolbarView::Init() { | ||||
| @@ -356,8 +371,10 @@ void ToolbarView::Init() { | ||||
|      } | ||||
|    } | ||||
|    std::unique_ptr<media_router::CastToolbarButton> cast; | ||||
| @@ -933,7 +954,7 @@ index 2ea09fd7e8cc0..d5afd2bcb0e3c 100644 | ||||
|   | ||||
|    std::unique_ptr<MediaToolbarButtonView> media_button; | ||||
|    if (base::FeatureList::IsEnabled(media::kGlobalMediaControls)) { | ||||
| @@ -360,7 +377,8 @@ void ToolbarView::Init() { | ||||
| @@ -367,7 +384,8 @@ void ToolbarView::Init() { | ||||
|   | ||||
|    std::unique_ptr<send_tab_to_self::SendTabToSelfToolbarIconView> | ||||
|        send_tab_to_self_button; | ||||
| @@ -943,20 +964,20 @@ index 2ea09fd7e8cc0..d5afd2bcb0e3c 100644 | ||||
|      send_tab_to_self_button = | ||||
|          std::make_unique<send_tab_to_self::SendTabToSelfToolbarIconView>( | ||||
|              browser_view_); | ||||
| @@ -368,7 +386,7 @@ void ToolbarView::Init() { | ||||
| @@ -375,7 +393,7 @@ void ToolbarView::Init() { | ||||
|   | ||||
|    std::unique_ptr<SidePanelToolbarButton> side_panel_button; | ||||
|    std::unique_ptr<SidePanelToolbarContainer> side_panel_toolbar_container; | ||||
| -  if (browser_view_->unified_side_panel()) { | ||||
| +  if (browser_view_->unified_side_panel() && BUTTON_VISIBLE(kSidePanel)) { | ||||
|      if (companion::IsCompanionFeatureEnabled()) { | ||||
|        side_panel_toolbar_container = | ||||
|            std::make_unique<SidePanelToolbarContainer>(browser_view_); | ||||
|      if (base::FeatureList::IsEnabled(features::kSidePanelPinning)) { | ||||
|        // TODO(b:299463334): Use the new SidePanelContainer which supports | ||||
|        // ActionItems | ||||
| diff --git chrome/browser/ui/views/toolbar/toolbar_view.h chrome/browser/ui/views/toolbar/toolbar_view.h | ||||
| index be3bd96444563..96669547e3ccf 100644 | ||||
| index 2bca1ba1b72eb..f7b0cf9d09e6e 100644 | ||||
| --- chrome/browser/ui/views/toolbar/toolbar_view.h | ||||
| +++ chrome/browser/ui/views/toolbar/toolbar_view.h | ||||
| @@ -89,7 +89,8 @@ class ToolbarView : public views::AccessiblePaneView, | ||||
| @@ -91,7 +91,8 @@ class ToolbarView : public views::AccessiblePaneView, | ||||
|                  // needs to be displayed. | ||||
|    }; | ||||
|   | ||||
|   | ||||
| @@ -1,8 +1,8 @@ | ||||
| diff --git content/browser/devtools/devtools_instrumentation.h content/browser/devtools/devtools_instrumentation.h | ||||
| index d7bf8b91f83e8..af05c80574ac1 100644 | ||||
| index 2d570cb3b70c7..4df17e47d3c17 100644 | ||||
| --- content/browser/devtools/devtools_instrumentation.h | ||||
| +++ content/browser/devtools/devtools_instrumentation.h | ||||
| @@ -102,7 +102,7 @@ bool ApplyUserAgentMetadataOverrides( | ||||
| @@ -109,7 +109,7 @@ bool ApplyUserAgentMetadataOverrides( | ||||
|      FrameTreeNode* frame_tree_node, | ||||
|      absl::optional<blink::UserAgentMetadata>* override_out); | ||||
|   | ||||
|   | ||||
| @@ -34,10 +34,10 @@ index 3b58e4f2de295..e0348501c83d8 100644 | ||||
|          factory = base::MakeRefCounted<network::WrapperSharedURLLoaderFactory>( | ||||
|              std::move(loader_factory)); | ||||
| diff --git content/public/browser/content_browser_client.cc content/public/browser/content_browser_client.cc | ||||
| index a0d56a9a24f22..c7cc6c3f6ae3f 100644 | ||||
| index 5733e6d1ea77f..5aa0dffc85def 100644 | ||||
| --- content/public/browser/content_browser_client.cc | ||||
| +++ content/public/browser/content_browser_client.cc | ||||
| @@ -1047,7 +1047,7 @@ ContentBrowserClient::CreateURLLoaderHandlerForServiceWorkerNavigationPreload( | ||||
| @@ -1060,7 +1060,7 @@ ContentBrowserClient::CreateURLLoaderHandlerForServiceWorkerNavigationPreload( | ||||
|  void ContentBrowserClient::OnNetworkServiceCreated( | ||||
|      network::mojom::NetworkService* network_service) {} | ||||
|   | ||||
| @@ -46,7 +46,7 @@ index a0d56a9a24f22..c7cc6c3f6ae3f 100644 | ||||
|      BrowserContext* context, | ||||
|      bool in_memory, | ||||
|      const base::FilePath& relative_partition_path, | ||||
| @@ -1056,6 +1056,7 @@ void ContentBrowserClient::ConfigureNetworkContextParams( | ||||
| @@ -1069,6 +1069,7 @@ void ContentBrowserClient::ConfigureNetworkContextParams( | ||||
|          cert_verifier_creation_params) { | ||||
|    network_context_params->user_agent = GetUserAgentBasedOnPolicy(context); | ||||
|    network_context_params->accept_language = "en-us,en"; | ||||
| @@ -55,7 +55,7 @@ index a0d56a9a24f22..c7cc6c3f6ae3f 100644 | ||||
|   | ||||
|  std::vector<base::FilePath> | ||||
| diff --git content/public/browser/content_browser_client.h content/public/browser/content_browser_client.h | ||||
| index a6e922be7e686..e4b4a9150295a 100644 | ||||
| index 8b4b26ed9f976..6f01db1ae5ef7 100644 | ||||
| --- content/public/browser/content_browser_client.h | ||||
| +++ content/public/browser/content_browser_client.h | ||||
| @@ -40,6 +40,7 @@ | ||||
| @@ -66,7 +66,7 @@ index a6e922be7e686..e4b4a9150295a 100644 | ||||
|  #include "content/public/common/alternative_error_page_override_info.mojom-forward.h" | ||||
|  #include "content/public/common/page_visibility_state.h" | ||||
|  #include "content/public/common/window_container_type.mojom-forward.h" | ||||
| @@ -1914,7 +1915,7 @@ class CONTENT_EXPORT ContentBrowserClient { | ||||
| @@ -1940,7 +1941,7 @@ class CONTENT_EXPORT ContentBrowserClient { | ||||
|    // | ||||
|    // If |relative_partition_path| is the empty string, it means this needs to | ||||
|    // create the default NetworkContext for the BrowserContext. | ||||
| @@ -75,7 +75,7 @@ index a6e922be7e686..e4b4a9150295a 100644 | ||||
|        BrowserContext* context, | ||||
|        bool in_memory, | ||||
|        const base::FilePath& relative_partition_path, | ||||
| @@ -2128,6 +2129,19 @@ class CONTENT_EXPORT ContentBrowserClient { | ||||
| @@ -2154,6 +2155,19 @@ class CONTENT_EXPORT ContentBrowserClient { | ||||
|        RenderFrameHost* initiator_document, | ||||
|        mojo::PendingRemote<network::mojom::URLLoaderFactory>* out_factory); | ||||
|   | ||||
| @@ -95,7 +95,7 @@ index a6e922be7e686..e4b4a9150295a 100644 | ||||
|    // Creates an OverlayWindow to be used for video or Picture-in-Picture. | ||||
|    // This window will house the content shown when in Picture-in-Picture mode. | ||||
|    // This will return a new OverlayWindow. | ||||
| @@ -2184,6 +2198,10 @@ class CONTENT_EXPORT ContentBrowserClient { | ||||
| @@ -2210,6 +2224,10 @@ class CONTENT_EXPORT ContentBrowserClient { | ||||
|    // Used as part of the user agent string. | ||||
|    virtual std::string GetProduct(); | ||||
|   | ||||
| @@ -132,10 +132,10 @@ index a4130ad4dc815..b303f6c8768b7 100644 | ||||
|    // started. | ||||
|    virtual void SetRuntimeFeaturesDefaultsBeforeBlinkInitialization() {} | ||||
| diff --git content/renderer/render_thread_impl.cc content/renderer/render_thread_impl.cc | ||||
| index 328ed025f6b71..3f0e661054c7e 100644 | ||||
| index 3c3ebfeec280e..b239506a39b43 100644 | ||||
| --- content/renderer/render_thread_impl.cc | ||||
| +++ content/renderer/render_thread_impl.cc | ||||
| @@ -621,6 +621,8 @@ void RenderThreadImpl::Init() { | ||||
| @@ -584,6 +584,8 @@ void RenderThreadImpl::Init() { | ||||
|        GetContentClient()->renderer()->CreateURLLoaderThrottleProvider( | ||||
|            blink::URLLoaderThrottleProviderType::kFrame); | ||||
|   | ||||
| @@ -145,10 +145,10 @@ index 328ed025f6b71..3f0e661054c7e 100644 | ||||
|        base::BindRepeating(&RenderThreadImpl::OnRendererInterfaceReceiver, | ||||
|                            base::Unretained(this))); | ||||
| diff --git content/renderer/renderer_blink_platform_impl.cc content/renderer/renderer_blink_platform_impl.cc | ||||
| index 3206463a734a8..39cd7e0e2656c 100644 | ||||
| index cddb519c4c893..68b5fc0f60d9c 100644 | ||||
| --- content/renderer/renderer_blink_platform_impl.cc | ||||
| +++ content/renderer/renderer_blink_platform_impl.cc | ||||
| @@ -947,6 +947,15 @@ SkBitmap* RendererBlinkPlatformImpl::GetSadPageBitmap() { | ||||
| @@ -941,6 +941,15 @@ SkBitmap* RendererBlinkPlatformImpl::GetSadPageBitmap() { | ||||
|   | ||||
|  //------------------------------------------------------------------------------ | ||||
|   | ||||
| @@ -165,10 +165,10 @@ index 3206463a734a8..39cd7e0e2656c 100644 | ||||
|  RendererBlinkPlatformImpl::CreateWebV8ValueConverter() { | ||||
|    return std::make_unique<V8ValueConverterImpl>(); | ||||
| diff --git content/renderer/renderer_blink_platform_impl.h content/renderer/renderer_blink_platform_impl.h | ||||
| index 4813c8ce4525f..be9f6167288a7 100644 | ||||
| index 84c36d410a352..7904a0050e3bb 100644 | ||||
| --- content/renderer/renderer_blink_platform_impl.h | ||||
| +++ content/renderer/renderer_blink_platform_impl.h | ||||
| @@ -224,6 +224,9 @@ class CONTENT_EXPORT RendererBlinkPlatformImpl : public BlinkPlatformImpl { | ||||
| @@ -225,6 +225,9 @@ class CONTENT_EXPORT RendererBlinkPlatformImpl : public BlinkPlatformImpl { | ||||
|    InertAndMinimumIntervalOfUserLevelMemoryPressureSignal() override; | ||||
|  #endif  // BUILDFLAG(IS_ANDROID) | ||||
|   | ||||
| @@ -179,10 +179,10 @@ index 4813c8ce4525f..be9f6167288a7 100644 | ||||
|    // plus eTLD+1, such as https://google.com), or to a more specific origin. | ||||
|    void SetIsLockedToSite(); | ||||
| diff --git content/shell/browser/shell_content_browser_client.cc content/shell/browser/shell_content_browser_client.cc | ||||
| index c1834434b9e7d..71b9d1034e7d8 100644 | ||||
| index 0008e3c7c9600..e639ae5373af0 100644 | ||||
| --- content/shell/browser/shell_content_browser_client.cc | ||||
| +++ content/shell/browser/shell_content_browser_client.cc | ||||
| @@ -668,7 +668,7 @@ void ShellContentBrowserClient::GetAdditionalMappedFilesForChildProcess( | ||||
| @@ -685,7 +685,7 @@ void ShellContentBrowserClient::GetAdditionalMappedFilesForChildProcess( | ||||
|  #endif  // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || | ||||
|          // BUILDFLAG(IS_ANDROID) | ||||
|   | ||||
| @@ -191,7 +191,7 @@ index c1834434b9e7d..71b9d1034e7d8 100644 | ||||
|      BrowserContext* context, | ||||
|      bool in_memory, | ||||
|      const base::FilePath& relative_partition_path, | ||||
| @@ -677,6 +677,7 @@ void ShellContentBrowserClient::ConfigureNetworkContextParams( | ||||
| @@ -694,6 +694,7 @@ void ShellContentBrowserClient::ConfigureNetworkContextParams( | ||||
|          cert_verifier_creation_params) { | ||||
|    ConfigureNetworkContextParamsForShell(context, network_context_params, | ||||
|                                          cert_verifier_creation_params); | ||||
| @@ -200,10 +200,10 @@ index c1834434b9e7d..71b9d1034e7d8 100644 | ||||
|   | ||||
|  std::vector<base::FilePath> | ||||
| diff --git content/shell/browser/shell_content_browser_client.h content/shell/browser/shell_content_browser_client.h | ||||
| index 32966a5dcf3e6..0954d033d0f4b 100644 | ||||
| index b33300b6da3ea..fb7d4c5f7b029 100644 | ||||
| --- content/shell/browser/shell_content_browser_client.h | ||||
| +++ content/shell/browser/shell_content_browser_client.h | ||||
| @@ -130,7 +130,7 @@ class ShellContentBrowserClient : public ContentBrowserClient { | ||||
| @@ -137,7 +137,7 @@ class ShellContentBrowserClient : public ContentBrowserClient { | ||||
|  #endif  // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || | ||||
|          // BUILDFLAG(IS_ANDROID) | ||||
|    device::GeolocationManager* GetGeolocationManager() override; | ||||
|   | ||||
| @@ -1,8 +1,8 @@ | ||||
| diff --git content/app/content_main.cc content/app/content_main.cc | ||||
| index a3c00c9743117..d596775057fb9 100644 | ||||
| index f70a103a45c6d..e880a7ec4b26c 100644 | ||||
| --- content/app/content_main.cc | ||||
| +++ content/app/content_main.cc | ||||
| @@ -173,11 +173,8 @@ ContentMainParams::~ContentMainParams() = default; | ||||
| @@ -174,11 +174,8 @@ ContentMainParams::~ContentMainParams() = default; | ||||
|  ContentMainParams::ContentMainParams(ContentMainParams&&) = default; | ||||
|  ContentMainParams& ContentMainParams::operator=(ContentMainParams&&) = default; | ||||
|   | ||||
| @@ -16,41 +16,40 @@ index a3c00c9743117..d596775057fb9 100644 | ||||
|    base::FeatureList::FailOnFeatureAccessWithoutFeatureList(); | ||||
|  #if BUILDFLAG(IS_CHROMEOS_LACROS) | ||||
|    // Lacros is launched with inherited priority. Revert to normal priority | ||||
| @@ -185,9 +182,6 @@ RunContentProcess(ContentMainParams params, | ||||
| @@ -186,9 +183,6 @@ RunContentProcess(ContentMainParams params, | ||||
|    base::PlatformThread::SetCurrentThreadType(base::ThreadType::kDefault); | ||||
|  #endif | ||||
|    int exit_code = -1; | ||||
| -#if BUILDFLAG(IS_MAC) | ||||
| -  std::unique_ptr<base::apple::ScopedNSAutoreleasePool> autorelease_pool; | ||||
| -  base::apple::ScopedNSAutoreleasePool 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 | ||||
| @@ -273,12 +267,6 @@ RunContentProcess(ContentMainParams params, | ||||
| @@ -274,14 +268,6 @@ RunContentProcess(ContentMainParams params, | ||||
|  #endif | ||||
|   | ||||
|  #if BUILDFLAG(IS_MAC) | ||||
| -    // 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<base::apple::ScopedNSAutoreleasePool>(); | ||||
| -    params.autorelease_pool = autorelease_pool.get(); | ||||
| -    // event loop to get rid of the cruft. TODO(https://crbug.com/1424190): This | ||||
| -    // is not safe. Each main loop should create and destroy its own pool; it | ||||
| -    // should not be flushing the pool at the base of the autorelease pool | ||||
| -    // stack. | ||||
| -    params.autorelease_pool = &autorelease_pool; | ||||
|      InitializeMac(); | ||||
|  #endif | ||||
|   | ||||
| @@ -323,16 +311,49 @@ RunContentProcess(ContentMainParams params, | ||||
| @@ -331,12 +317,46 @@ RunContentProcess(ContentMainParams params, | ||||
|   | ||||
|    if (IsSubprocess()) | ||||
|      CommonSubprocessInit(); | ||||
| -  exit_code = content_main_runner->Run(); | ||||
|   | ||||
| -#if BUILDFLAG(IS_MAC) | ||||
| -  autorelease_pool.reset(); | ||||
| -#endif | ||||
| +  return exit_code; | ||||
| +} | ||||
|   | ||||
| + | ||||
| +// This function must be marked with NO_STACK_PROTECTOR or it may crash on | ||||
| +// return, see the --change-stack-guard-on-fork command line flag. | ||||
| +int NO_STACK_PROTECTOR | ||||
| @@ -73,28 +72,25 @@ index a3c00c9743117..d596775057fb9 100644 | ||||
| +  // 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<base::apple::ScopedNSAutoreleasePool> autorelease_pool = | ||||
| +      std::make_unique<base::apple::ScopedNSAutoreleasePool>(); | ||||
| +  params.autorelease_pool = autorelease_pool.get(); | ||||
| +  // event loop to get rid of the cruft. TODO(https://crbug.com/1424190): This | ||||
| +  // is not safe. Each main loop should create and destroy its own pool; it | ||||
| +  // should not be flushing the pool at the base of the autorelease pool | ||||
| +  // stack. | ||||
| +  base::apple::ScopedNSAutoreleasePool autorelease_pool; | ||||
| +  params.autorelease_pool = &autorelease_pool; | ||||
| +#endif | ||||
| + | ||||
| +  int exit_code = ContentMainInitialize(std::move(params), content_main_runner); | ||||
| +  if (exit_code >= 0) | ||||
| +    return exit_code; | ||||
| +  exit_code = ContentMainRun(content_main_runner); | ||||
| + | ||||
| +#if BUILDFLAG(IS_MAC) | ||||
| +  params.autorelease_pool = nullptr; | ||||
| +  autorelease_pool.reset(); | ||||
| +#endif | ||||
|   | ||||
| +  ContentMainShutdown(content_main_runner); | ||||
|    return exit_code; | ||||
|  } | ||||
|   | ||||
| diff --git content/app/content_main_runner_impl.cc content/app/content_main_runner_impl.cc | ||||
| index 11dcd5eaabaab..ea72a69767e7c 100644 | ||||
| index 965b07bc43847..89da1178ca765 100644 | ||||
| --- content/app/content_main_runner_impl.cc | ||||
| +++ content/app/content_main_runner_impl.cc | ||||
| @@ -46,6 +46,7 @@ | ||||
| @@ -105,7 +101,7 @@ index 11dcd5eaabaab..ea72a69767e7c 100644 | ||||
|  #include "base/time/time.h" | ||||
|  #include "base/trace_event/trace_event.h" | ||||
|  #include "build/build_config.h" | ||||
| @@ -1328,6 +1329,11 @@ void ContentMainRunnerImpl::Shutdown() { | ||||
| @@ -1338,6 +1339,11 @@ void ContentMainRunnerImpl::Shutdown() { | ||||
|    is_shutdown_ = true; | ||||
|  } | ||||
|   | ||||
| @@ -153,7 +149,7 @@ index 283161145d792..9f3f635abdd1c 100644 | ||||
|    if (main_argv) | ||||
|      setproctitle_init(main_argv); | ||||
| diff --git content/public/app/content_main.h content/public/app/content_main.h | ||||
| index 876ee72774be1..2b458ac4dcc7a 100644 | ||||
| index 44d9aa44ae430..47f916f566696 100644 | ||||
| --- content/public/app/content_main.h | ||||
| +++ content/public/app/content_main.h | ||||
| @@ -96,6 +96,13 @@ struct CONTENT_EXPORT ContentMainParams { | ||||
|   | ||||
| @@ -81,7 +81,7 @@ index 27a803784eb9e..a8b033f475cb4 100644 | ||||
|    g_crash_helper_enabled = true; | ||||
|    return true; | ||||
| diff --git chrome/common/crash_keys.cc chrome/common/crash_keys.cc | ||||
| index 819bffbbe47c1..c00e3e6925cfe 100644 | ||||
| index 680c8ec662ecf..2c898fc6e1c70 100644 | ||||
| --- chrome/common/crash_keys.cc | ||||
| +++ chrome/common/crash_keys.cc | ||||
| @@ -6,6 +6,8 @@ | ||||
| @@ -93,7 +93,7 @@ index 819bffbbe47c1..c00e3e6925cfe 100644 | ||||
|  #include "base/base_switches.h" | ||||
|  #include "base/command_line.h" | ||||
|  #include "base/format_macros.h" | ||||
| @@ -90,8 +92,10 @@ void HandleEnableDisableFeatures(const base::CommandLine& command_line) { | ||||
| @@ -100,8 +102,10 @@ void HandleEnableDisableFeatures(const base::CommandLine& command_line) { | ||||
|        "commandline-disabled-feature"); | ||||
|  } | ||||
|   | ||||
| @@ -105,7 +105,7 @@ index 819bffbbe47c1..c00e3e6925cfe 100644 | ||||
|    static const char* const kIgnoreSwitches[] = { | ||||
|      switches::kEnableLogging, | ||||
|      switches::kFlagSwitchesBegin, | ||||
| @@ -149,11 +153,9 @@ bool IsBoringSwitch(const std::string& flag) { | ||||
| @@ -159,11 +163,9 @@ bool IsBoringSwitch(const std::string& flag) { | ||||
|    return false; | ||||
|  } | ||||
|   | ||||
|   | ||||
| @@ -60,18 +60,19 @@ index cead7cfa14bae..24142c2e4896f 100644 | ||||
|    std::unique_ptr<StreamContainer> stream_container( | ||||
|        new StreamContainer(tab_id, embedded, handler_url, extension_id, | ||||
| diff --git extensions/browser/extension_host.cc extensions/browser/extension_host.cc | ||||
| index 3d2108f13ea2f..261b0a42bfb21 100644 | ||||
| index 9c44797e9e238..b61704db987b6 100644 | ||||
| --- extensions/browser/extension_host.cc | ||||
| +++ extensions/browser/extension_host.cc | ||||
| @@ -62,11 +62,12 @@ ExtensionHost::ExtensionHost(const Extension* extension, | ||||
| @@ -62,12 +62,13 @@ ExtensionHost::ExtensionHost(const Extension* extension, | ||||
|           host_type == mojom::ViewType::kExtensionDialog || | ||||
|           host_type == mojom::ViewType::kExtensionPopup || | ||||
|           host_type == mojom::ViewType::kExtensionSidePanel); | ||||
| -  host_contents_ = WebContents::Create( | ||||
| +  host_contents_owned_ = WebContents::Create( | ||||
|        WebContents::CreateParams(browser_context_, site_instance)), | ||||
| -  content::WebContentsObserver::Observe(host_contents_.get()); | ||||
|        WebContents::CreateParams(browser_context_, site_instance)); | ||||
| +  host_contents_ = host_contents_owned_.get(); | ||||
|    host_contents_->SetOwnerLocationForDebug(FROM_HERE); | ||||
| -  content::WebContentsObserver::Observe(host_contents_.get()); | ||||
| +  content::WebContentsObserver::Observe(host_contents_); | ||||
|    host_contents_->SetDelegate(this); | ||||
| -  SetViewType(host_contents_.get(), host_type); | ||||
| @@ -79,7 +80,7 @@ index 3d2108f13ea2f..261b0a42bfb21 100644 | ||||
|    main_frame_host_ = host_contents_->GetPrimaryMainFrame(); | ||||
|   | ||||
|    // Listen for when an extension is unloaded from the same profile, as it may | ||||
| @@ -82,11 +83,49 @@ ExtensionHost::ExtensionHost(const Extension* extension, | ||||
| @@ -83,11 +84,49 @@ ExtensionHost::ExtensionHost(const Extension* extension, | ||||
|    // Create password reuse detection manager when new extension web contents are | ||||
|    // created. | ||||
|    ExtensionsBrowserClient::Get()->CreatePasswordReuseDetectionManager( | ||||
| @@ -131,7 +132,7 @@ index 3d2108f13ea2f..261b0a42bfb21 100644 | ||||
|    ExtensionRegistry::Get(browser_context_)->RemoveObserver(this); | ||||
|   | ||||
| diff --git extensions/browser/extension_host.h extensions/browser/extension_host.h | ||||
| index dda0620251895..2b29bdef52444 100644 | ||||
| index dda0620251895..4014bd801f727 100644 | ||||
| --- extensions/browser/extension_host.h | ||||
| +++ extensions/browser/extension_host.h | ||||
| @@ -62,6 +62,12 @@ class ExtensionHost : public DeferredStartRenderHost, | ||||
|   | ||||
| @@ -12,7 +12,7 @@ index 628071cb9a464..1595a4283e134 100644 | ||||
|        # https://crbug.com/474506. | ||||
|        "//clank/java/BUILD.gn", | ||||
| diff --git BUILD.gn BUILD.gn | ||||
| index e8c8a8450ff83..065f99491a2cb 100644 | ||||
| index 64819b31d74a7..3dc461fde620f 100644 | ||||
| --- BUILD.gn | ||||
| +++ BUILD.gn | ||||
| @@ -19,6 +19,7 @@ import("//build/config/sanitizers/sanitizers.gni") | ||||
| @@ -23,7 +23,7 @@ index e8c8a8450ff83..065f99491a2cb 100644 | ||||
|  import("//chrome/browser/buildflags.gni") | ||||
|  import("//components/nacl/features.gni") | ||||
|  import("//device/vr/buildflags/buildflags.gni") | ||||
| @@ -276,6 +277,10 @@ group("gn_all") { | ||||
| @@ -275,6 +276,10 @@ group("gn_all") { | ||||
|   | ||||
|      deps += root_extra_deps | ||||
|   | ||||
| @@ -76,7 +76,7 @@ index 1da479dd5eebc..ff9c7e467997c 100644 | ||||
| -  visual_studio_runtime_dirs = [] | ||||
|  } | ||||
| diff --git chrome/chrome_paks.gni chrome/chrome_paks.gni | ||||
| index 353fdabb937ca..4e09414bc211f 100644 | ||||
| index d60ce9a1f8534..be1f4879542dd 100644 | ||||
| --- chrome/chrome_paks.gni | ||||
| +++ chrome/chrome_paks.gni | ||||
| @@ -6,6 +6,7 @@ import("//ash/ambient/resources/resources.gni") | ||||
| @@ -99,7 +99,7 @@ index 353fdabb937ca..4e09414bc211f 100644 | ||||
|        sources += [ "$root_gen_dir/extensions/extensions_browser_resources_${percent}_percent.pak" ] | ||||
|        deps += [ "//extensions:extensions_browser_resources" ] | ||||
| diff --git chrome/chrome_repack_locales.gni chrome/chrome_repack_locales.gni | ||||
| index 7aa8989a0f471..7c93cbd96b362 100644 | ||||
| index a1666413e61d3..6cac57842af85 100644 | ||||
| --- chrome/chrome_repack_locales.gni | ||||
| +++ chrome/chrome_repack_locales.gni | ||||
| @@ -6,6 +6,7 @@ import("//build/config/chrome_build.gni") | ||||
|   | ||||
| @@ -1,8 +1,8 @@ | ||||
| diff --git tools/gritsettings/resource_ids.spec tools/gritsettings/resource_ids.spec | ||||
| index e65fe348a1b7e..7ef760b495845 100644 | ||||
| index 99322038017cc..d34154ba2a374 100644 | ||||
| --- tools/gritsettings/resource_ids.spec | ||||
| +++ tools/gritsettings/resource_ids.spec | ||||
| @@ -1216,6 +1216,15 @@ | ||||
| @@ -1241,6 +1241,15 @@ | ||||
|    # END "everything else" section. | ||||
|    # Everything but chrome/, components/, content/, and ios/ | ||||
|   | ||||
|   | ||||
| @@ -79,10 +79,10 @@ index e6078b2a45d88..bf051fb8a02f4 100644 | ||||
|    web_instance->SetPreferredContrast(CalculatePreferredContrast()); | ||||
|    web_instance->set_prefers_reduced_transparency(PrefersReducedTransparency()); | ||||
| diff --git ui/native_theme/native_theme_win.cc ui/native_theme/native_theme_win.cc | ||||
| index faa15be0b3e08..a61974c495507 100644 | ||||
| index 50647269ec84f..c947bd2717d04 100644 | ||||
| --- ui/native_theme/native_theme_win.cc | ||||
| +++ ui/native_theme/native_theme_win.cc | ||||
| @@ -656,14 +656,17 @@ bool NativeThemeWin::ShouldUseDarkColors() const { | ||||
| @@ -662,14 +662,17 @@ bool NativeThemeWin::ShouldUseDarkColors() const { | ||||
|    // Windows high contrast modes are entirely different themes, | ||||
|    // so let them take priority over dark mode. | ||||
|    // ...unless --force-dark-mode was specified in which case caveat emptor. | ||||
| @@ -102,7 +102,7 @@ index faa15be0b3e08..a61974c495507 100644 | ||||
|      return NativeTheme::CalculatePreferredColorScheme(); | ||||
|   | ||||
|    // According to the spec, the preferred color scheme for web content is 'dark' | ||||
| @@ -1652,8 +1655,9 @@ void NativeThemeWin::RegisterColorFilteringRegkeyObserver() { | ||||
| @@ -1660,8 +1663,9 @@ void NativeThemeWin::RegisterColorFilteringRegkeyObserver() { | ||||
|  } | ||||
|   | ||||
|  void NativeThemeWin::UpdateDarkModeStatus() { | ||||
|   | ||||
| @@ -1,8 +1,8 @@ | ||||
| diff --git content/browser/child_process_launcher_helper_linux.cc content/browser/child_process_launcher_helper_linux.cc | ||||
| index ff73345339cca..9f05df0924a9c 100644 | ||||
| index 321faab043958..7586dc52e50ca 100644 | ||||
| --- content/browser/child_process_launcher_helper_linux.cc | ||||
| +++ content/browser/child_process_launcher_helper_linux.cc | ||||
| @@ -187,7 +187,7 @@ ZygoteCommunication* ChildProcessLauncherHelper::GetZygoteForLaunch() { | ||||
| @@ -188,7 +188,7 @@ ZygoteCommunication* ChildProcessLauncherHelper::GetZygoteForLaunch() { | ||||
|  base::File OpenFileToShare(const base::FilePath& path, | ||||
|                             base::MemoryMappedFile::Region* region) { | ||||
|    base::FilePath exe_dir; | ||||
|   | ||||
| @@ -12,7 +12,7 @@ index 239c3870a149a..9f5a34fc846bd 100644 | ||||
|  if (use_atk) { | ||||
|    assert(use_glib, "use_atk=true requires that use_glib=true") | ||||
| diff --git build/config/linux/atspi2/BUILD.gn build/config/linux/atspi2/BUILD.gn | ||||
| index 51b6d33aab3c2..970d454e6b539 100644 | ||||
| index d1629205c82a3..21de94bee534b 100644 | ||||
| --- build/config/linux/atspi2/BUILD.gn | ||||
| +++ build/config/linux/atspi2/BUILD.gn | ||||
| @@ -6,7 +6,7 @@ import("//build/config/linux/pkg_config.gni") | ||||
|   | ||||
| @@ -1,8 +1,8 @@ | ||||
| diff --git device/bluetooth/BUILD.gn device/bluetooth/BUILD.gn | ||||
| index 4885f927ae2b8..5e7d3e61391bf 100644 | ||||
| index 003a2504dd681..782c83813dfc6 100644 | ||||
| --- device/bluetooth/BUILD.gn | ||||
| +++ device/bluetooth/BUILD.gn | ||||
| @@ -46,10 +46,12 @@ source_set("deprecated_experimental_mojo") { | ||||
| @@ -47,10 +47,12 @@ source_set("deprecated_experimental_mojo") { | ||||
|    ] | ||||
|   | ||||
|    if (is_chromeos || is_linux) { | ||||
|   | ||||
| @@ -1,5 +1,5 @@ | ||||
| diff --git printing/printing_context_linux.cc printing/printing_context_linux.cc | ||||
| index bbb0082a2ec07..2be329bc10344 100644 | ||||
| index ab6cda8e54b37..164b3ef67445a 100644 | ||||
| --- printing/printing_context_linux.cc | ||||
| +++ printing/printing_context_linux.cc | ||||
| @@ -73,11 +73,11 @@ mojom::ResultCode PrintingContextLinux::UseDefaultSettings() { | ||||
|   | ||||
| @@ -1,5 +1,5 @@ | ||||
| diff --git base/message_loop/message_pump_win.cc base/message_loop/message_pump_win.cc | ||||
| index e6d84c4bbdaae..d6f75f348235f 100644 | ||||
| index 9425ad4ba5432..20a6c1c9c74fa 100644 | ||||
| --- base/message_loop/message_pump_win.cc | ||||
| +++ base/message_loop/message_pump_win.cc | ||||
| @@ -2,6 +2,7 @@ | ||||
| @@ -10,7 +10,7 @@ index e6d84c4bbdaae..d6f75f348235f 100644 | ||||
|  #include "base/message_loop/message_pump_win.h" | ||||
|   | ||||
|  #include <algorithm> | ||||
| @@ -495,7 +496,17 @@ bool MessagePumpForUI::ProcessNextWindowsMessage() { | ||||
| @@ -496,7 +497,17 @@ bool MessagePumpForUI::ProcessNextWindowsMessage() { | ||||
|                  ctx.event()->set_chrome_message_pump(); | ||||
|              msg_pump_data->set_sent_messages_in_queue(more_work_is_plausible); | ||||
|            }); | ||||
|   | ||||
| @@ -1,8 +1,8 @@ | ||||
| diff --git base/message_loop/message_pump_apple.mm base/message_loop/message_pump_apple.mm | ||||
| index 1ca1926d0f423..ad88913a3f463 100644 | ||||
| index a79ef2f20a507..33856ab5322c2 100644 | ||||
| --- base/message_loop/message_pump_apple.mm | ||||
| +++ base/message_loop/message_pump_apple.mm | ||||
| @@ -731,7 +731,8 @@ void MessagePumpUIApplication::Detach() { | ||||
| @@ -762,7 +762,8 @@ void MessagePumpUIApplication::Detach() { | ||||
|  #else | ||||
|   | ||||
|  ScopedPumpMessagesInPrivateModes::ScopedPumpMessagesInPrivateModes() { | ||||
| @@ -12,7 +12,7 @@ index 1ca1926d0f423..ad88913a3f463 100644 | ||||
|    DCHECK_EQ(kNSApplicationModalSafeModeMask, g_app_pump->GetModeMask()); | ||||
|    // Pumping events in private runloop modes is known to interact badly with | ||||
|    // app modal windows like NSAlert. | ||||
| @@ -742,7 +743,8 @@ ScopedPumpMessagesInPrivateModes::ScopedPumpMessagesInPrivateModes() { | ||||
| @@ -773,7 +774,8 @@ ScopedPumpMessagesInPrivateModes::ScopedPumpMessagesInPrivateModes() { | ||||
|  } | ||||
|   | ||||
|  ScopedPumpMessagesInPrivateModes::~ScopedPumpMessagesInPrivateModes() { | ||||
|   | ||||
| @@ -1,5 +1,5 @@ | ||||
| diff --git content/browser/web_contents/web_contents_view.h content/browser/web_contents/web_contents_view.h | ||||
| index a3f8485e40bbc..dc8c1aa898f72 100644 | ||||
| index dc763b0fac47b..d8b63a0f62267 100644 | ||||
| --- content/browser/web_contents/web_contents_view.h | ||||
| +++ content/browser/web_contents/web_contents_view.h | ||||
| @@ -25,7 +25,7 @@ struct DropData; | ||||
|   | ||||
| @@ -10,10 +10,10 @@ index 4fc3870bcfbc8..24c6d32d4a8d8 100644 | ||||
| +// This load will not send any cookies. For CEF usage. | ||||
| +LOAD_FLAG(DO_NOT_SEND_COOKIES, 1 << 19) | ||||
| diff --git net/url_request/url_request_http_job.cc net/url_request/url_request_http_job.cc | ||||
| index eac944172789c..313c46b8088ed 100644 | ||||
| index db9ca10ea0f1c..48af940fa0571 100644 | ||||
| --- net/url_request/url_request_http_job.cc | ||||
| +++ net/url_request/url_request_http_job.cc | ||||
| @@ -1818,7 +1818,8 @@ bool URLRequestHttpJob::ShouldAddCookieHeader() const { | ||||
| @@ -1797,7 +1797,8 @@ bool URLRequestHttpJob::ShouldAddCookieHeader() const { | ||||
|    // Read cookies whenever allow_credentials() is true, even if the PrivacyMode | ||||
|    // is being overridden by NetworkDelegate and will eventually block them, as | ||||
|    // blocked cookies still need to be logged in that case. | ||||
|   | ||||
| @@ -41,10 +41,10 @@ index afefe3cd83dee..6668463247644 100644 | ||||
|   | ||||
|  }  // namespace content | ||||
| diff --git content/browser/renderer_host/render_widget_host_impl.cc content/browser/renderer_host/render_widget_host_impl.cc | ||||
| index 9e946e02bca27..220b1ffecf063 100644 | ||||
| index 7a99c04fcf5bb..2ed7d26f2d047 100644 | ||||
| --- content/browser/renderer_host/render_widget_host_impl.cc | ||||
| +++ content/browser/renderer_host/render_widget_host_impl.cc | ||||
| @@ -3255,6 +3255,11 @@ void RenderWidgetHostImpl::OnInvalidInputEventSource() { | ||||
| @@ -3261,6 +3261,11 @@ void RenderWidgetHostImpl::OnInvalidInputEventSource() { | ||||
|        GetProcess(), bad_message::INPUT_ROUTER_INVALID_EVENT_SOURCE); | ||||
|  } | ||||
|   | ||||
| @@ -57,10 +57,10 @@ index 9e946e02bca27..220b1ffecf063 100644 | ||||
|      const WebInputEvent& event) { | ||||
|    if ((base::FeatureList::IsEnabled( | ||||
| diff --git content/browser/renderer_host/render_widget_host_impl.h content/browser/renderer_host/render_widget_host_impl.h | ||||
| index cd75eee211a8e..0ab051d0d586b 100644 | ||||
| index 5c042eea04022..8752e45f39f1f 100644 | ||||
| --- content/browser/renderer_host/render_widget_host_impl.h | ||||
| +++ content/browser/renderer_host/render_widget_host_impl.h | ||||
| @@ -803,6 +803,7 @@ class CONTENT_EXPORT RenderWidgetHostImpl | ||||
| @@ -801,6 +801,7 @@ class CONTENT_EXPORT RenderWidgetHostImpl | ||||
|   | ||||
|    void ProgressFlingIfNeeded(base::TimeTicks current_time); | ||||
|    void StopFling(); | ||||
|   | ||||
| @@ -1,5 +1,5 @@ | ||||
| diff --git chrome/browser/download/download_prefs.cc chrome/browser/download/download_prefs.cc | ||||
| index 578e66a7e8209..e25eff9c4e6d5 100644 | ||||
| index c4c7b83733167..3a22deb1cdb19 100644 | ||||
| --- chrome/browser/download/download_prefs.cc | ||||
| +++ chrome/browser/download/download_prefs.cc | ||||
| @@ -23,6 +23,7 @@ | ||||
| @@ -21,7 +21,7 @@ index 578e66a7e8209..e25eff9c4e6d5 100644 | ||||
|  using content::BrowserContext; | ||||
|  using content::BrowserThread; | ||||
|  using content::DownloadManager; | ||||
| @@ -360,6 +365,11 @@ DownloadPrefs* DownloadPrefs::FromDownloadManager( | ||||
| @@ -358,6 +363,11 @@ DownloadPrefs* DownloadPrefs::FromDownloadManager( | ||||
|  // static | ||||
|  DownloadPrefs* DownloadPrefs::FromBrowserContext( | ||||
|      content::BrowserContext* context) { | ||||
| @@ -34,10 +34,10 @@ index 578e66a7e8209..e25eff9c4e6d5 100644 | ||||
|  } | ||||
|   | ||||
| diff --git chrome/browser/printing/print_preview_dialog_controller.cc chrome/browser/printing/print_preview_dialog_controller.cc | ||||
| index 1a6740b36343b..6c1a3fe19cf07 100644 | ||||
| index c7ba18ac2081e..2d5dbe156d335 100644 | ||||
| --- chrome/browser/printing/print_preview_dialog_controller.cc | ||||
| +++ chrome/browser/printing/print_preview_dialog_controller.cc | ||||
| @@ -15,6 +15,7 @@ | ||||
| @@ -16,6 +16,7 @@ | ||||
|  #include "build/branding_buildflags.h" | ||||
|  #include "build/build_config.h" | ||||
|  #include "build/chromeos_buildflags.h" | ||||
| @@ -84,7 +84,7 @@ index d5767fe27db0d..5778847a68208 100644 | ||||
|  } | ||||
|   | ||||
| diff --git chrome/browser/ui/webui/print_preview/print_preview_ui.cc chrome/browser/ui/webui/print_preview/print_preview_ui.cc | ||||
| index 9e616396c9c97..87803d244eda3 100644 | ||||
| index 363b7f7037532..2ac23b428fbea 100644 | ||||
| --- chrome/browser/ui/webui/print_preview/print_preview_ui.cc | ||||
| +++ chrome/browser/ui/webui/print_preview/print_preview_ui.cc | ||||
| @@ -24,6 +24,7 @@ | ||||
| @@ -109,7 +109,7 @@ index 9e616396c9c97..87803d244eda3 100644 | ||||
|  constexpr char kInvalidArgsForDidStartPreview[] = | ||||
|      "Invalid arguments for DidStartPreview"; | ||||
|  constexpr char kInvalidPageIndexForDidPreviewPage[] = | ||||
| @@ -303,7 +311,7 @@ void AddPrintPreviewStrings(content::WebUIDataSource* source) { | ||||
| @@ -299,7 +307,7 @@ void AddPrintPreviewStrings(content::WebUIDataSource* source) { | ||||
|    source->AddLocalizedStrings(kLocalizedStrings); | ||||
|   | ||||
|  #if !BUILDFLAG(IS_CHROMEOS) | ||||
|   | ||||
| @@ -1,5 +1,5 @@ | ||||
| diff --git chrome/browser/printing/printer_query.cc chrome/browser/printing/printer_query.cc | ||||
| index 83bce57ef52af..cb14470d16e4a 100644 | ||||
| index e175525a96266..7434b2f5eaa75 100644 | ||||
| --- chrome/browser/printing/printer_query.cc | ||||
| +++ chrome/browser/printing/printer_query.cc | ||||
| @@ -122,6 +122,7 @@ PrinterQuery::PrinterQuery(content::GlobalRenderFrameHostId rfh_id) | ||||
|   | ||||
| @@ -1,5 +1,5 @@ | ||||
| diff --git content/browser/renderer_host/render_view_host_impl.cc content/browser/renderer_host/render_view_host_impl.cc | ||||
| index 8a8f88c0beed2..c2c47c2a063fe 100644 | ||||
| index 914e4cdd97154..13d3a939ba731 100644 | ||||
| --- content/browser/renderer_host/render_view_host_impl.cc | ||||
| +++ content/browser/renderer_host/render_view_host_impl.cc | ||||
| @@ -713,6 +713,8 @@ bool RenderViewHostImpl::IsRenderViewLive() const { | ||||
|   | ||||
| @@ -1,8 +1,8 @@ | ||||
| diff --git ui/base/resource/resource_bundle.cc ui/base/resource/resource_bundle.cc | ||||
| index 3604fa07ff1c4..baf2f2d6507df 100644 | ||||
| index bb38b0bd52767..91ff16ccc058b 100644 | ||||
| --- ui/base/resource/resource_bundle.cc | ||||
| +++ ui/base/resource/resource_bundle.cc | ||||
| @@ -944,6 +944,12 @@ ResourceBundle::ResourceBundle(Delegate* delegate) | ||||
| @@ -943,6 +943,12 @@ ResourceBundle::ResourceBundle(Delegate* delegate) | ||||
|      : delegate_(delegate), | ||||
|        locale_resources_data_lock_(new base::Lock), | ||||
|        max_scale_factor_(k100Percent) { | ||||
| @@ -15,7 +15,7 @@ index 3604fa07ff1c4..baf2f2d6507df 100644 | ||||
|    mangle_localized_strings_ = base::CommandLine::ForCurrentProcess()->HasSwitch( | ||||
|        switches::kMangleLocalizedStrings); | ||||
|  } | ||||
| @@ -953,6 +959,11 @@ ResourceBundle::~ResourceBundle() { | ||||
| @@ -952,6 +958,11 @@ ResourceBundle::~ResourceBundle() { | ||||
|    UnloadLocaleResources(); | ||||
|  } | ||||
|   | ||||
|   | ||||
							
								
								
									
										25
									
								
								patch/patches/rfh_navigation_4829483.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										25
									
								
								patch/patches/rfh_navigation_4829483.patch
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,25 @@ | ||||
| diff --git content/browser/renderer_host/ipc_utils.cc content/browser/renderer_host/ipc_utils.cc | ||||
| index 5cb6e6463767d..84a9de1dfc6f0 100644 | ||||
| --- content/browser/renderer_host/ipc_utils.cc | ||||
| +++ content/browser/renderer_host/ipc_utils.cc | ||||
| @@ -73,7 +73,7 @@ bool VerifyInitiatorOrigin( | ||||
|            navigation_url_key, | ||||
|            navigation_url->DeprecatedGetOriginAsURL().spec()); | ||||
|      } | ||||
| -    if (initiator_frame_token) { | ||||
| +    if (initiator_frame_token && initiator_frame_token->has_value()) { | ||||
|        if (RenderFrameHostImpl* initiator_render_frame_host = | ||||
|                RenderFrameHostImpl::FromFrameToken( | ||||
|                    process_id, initiator_frame_token->value())) { | ||||
| diff --git content/browser/renderer_host/render_frame_host_impl.cc content/browser/renderer_host/render_frame_host_impl.cc | ||||
| index f9295c24641e9..118e86979c5c7 100644 | ||||
| --- content/browser/renderer_host/render_frame_host_impl.cc | ||||
| +++ content/browser/renderer_host/render_frame_host_impl.cc | ||||
| @@ -10086,6 +10086,7 @@ void RenderFrameHostImpl::CommitNavigation( | ||||
|    auto browser_calc_origin_to_commit = | ||||
|        navigation_request->GetOriginToCommitWithDebugInfo(); | ||||
|    if (!process_lock.is_error_page() && !is_mhtml_subframe && | ||||
| +      common_params->url.IsStandard() && | ||||
|        !policy->CanAccessDataForOrigin( | ||||
|            GetProcess()->GetID(), browser_calc_origin_to_commit.first.value())) { | ||||
|      SCOPED_CRASH_KEY_STRING64("CommitNavigation", "lock_url", | ||||
| @@ -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 d8345f942111f..36c1fa6d7f64f 100644 | ||||
| index 98746fea627ab..e00c36762eeb8 100644 | ||||
| --- content/browser/renderer_host/render_widget_host_view_aura.cc | ||||
| +++ content/browser/renderer_host/render_widget_host_view_aura.cc | ||||
| @@ -6,6 +6,7 @@ | ||||
| @@ -10,7 +10,7 @@ index d8345f942111f..36c1fa6d7f64f 100644 | ||||
|  #include <set> | ||||
|  #include <utility> | ||||
|   | ||||
| @@ -745,10 +746,12 @@ gfx::Rect RenderWidgetHostViewAura::GetViewBounds() { | ||||
| @@ -746,10 +747,12 @@ gfx::Rect RenderWidgetHostViewAura::GetViewBounds() { | ||||
|  void RenderWidgetHostViewAura::UpdateBackgroundColor() { | ||||
|    DCHECK(GetBackgroundColor()); | ||||
|   | ||||
| @@ -27,7 +27,7 @@ index d8345f942111f..36c1fa6d7f64f 100644 | ||||
|  } | ||||
|   | ||||
|  #if BUILDFLAG(IS_WIN) | ||||
| @@ -2383,6 +2386,16 @@ void RenderWidgetHostViewAura::CreateAuraWindow(aura::client::WindowType type) { | ||||
| @@ -2384,6 +2387,16 @@ void RenderWidgetHostViewAura::CreateAuraWindow(aura::client::WindowType type) { | ||||
|    // This needs to happen only after |window_| has been initialized using | ||||
|    // Init(), because it needs to have the layer. | ||||
|    window_->SetEmbedFrameSinkId(frame_sink_id_); | ||||
|   | ||||
| @@ -1,5 +1,5 @@ | ||||
| diff --git ui/display/screen.cc ui/display/screen.cc | ||||
| index b74a058c4034e..441ccadf6a729 100644 | ||||
| index 5e8e23ada050f..c11ea072109ec 100644 | ||||
| --- ui/display/screen.cc | ||||
| +++ ui/display/screen.cc | ||||
| @@ -107,13 +107,13 @@ base::TimeDelta Screen::CalculateIdleTime() const { | ||||
| @@ -19,10 +19,10 @@ index b74a058c4034e..441ccadf6a729 100644 | ||||
|   | ||||
|  bool Screen::GetDisplayWithDisplayId(int64_t display_id, | ||||
| diff --git ui/display/win/screen_win.cc ui/display/win/screen_win.cc | ||||
| index f02d58195a931..baed756a0e2fe 100644 | ||||
| index 773fbb8e90276..bdbda65c05dd6 100644 | ||||
| --- ui/display/win/screen_win.cc | ||||
| +++ ui/display/win/screen_win.cc | ||||
| @@ -580,7 +580,7 @@ gfx::Rect ScreenWin::ScreenToDIPRect(HWND hwnd, const gfx::Rect& pixel_bounds) { | ||||
| @@ -535,7 +535,7 @@ gfx::Rect ScreenWin::ScreenToDIPRect(HWND hwnd, const gfx::Rect& pixel_bounds) { | ||||
|        gfx::PointF(pixel_bounds.origin()), screen_win_display)); | ||||
|    const float scale_factor = | ||||
|        1.0f / screen_win_display.display().device_scale_factor(); | ||||
| @@ -31,7 +31,7 @@ index f02d58195a931..baed756a0e2fe 100644 | ||||
|  } | ||||
|   | ||||
|  // static | ||||
| @@ -595,7 +595,7 @@ gfx::Rect ScreenWin::DIPToScreenRect(HWND hwnd, const gfx::Rect& dip_bounds) { | ||||
| @@ -550,7 +550,7 @@ gfx::Rect ScreenWin::DIPToScreenRect(HWND hwnd, const gfx::Rect& dip_bounds) { | ||||
|    const gfx::Point origin = | ||||
|        display::win::DIPToScreenPoint(dip_bounds.origin(), screen_win_display); | ||||
|    const float scale_factor = screen_win_display.display().device_scale_factor(); | ||||
|   | ||||
| @@ -1,5 +1,5 @@ | ||||
| diff --git chrome/browser/enterprise/connectors/analysis/content_analysis_delegate.cc chrome/browser/enterprise/connectors/analysis/content_analysis_delegate.cc | ||||
| index 0257b1e7e2ad4..b910f788f5a57 100644 | ||||
| index 0a6c1f498b8fc..79e0cf27a7715 100644 | ||||
| --- chrome/browser/enterprise/connectors/analysis/content_analysis_delegate.cc | ||||
| +++ chrome/browser/enterprise/connectors/analysis/content_analysis_delegate.cc | ||||
| @@ -23,6 +23,7 @@ | ||||
| @@ -21,7 +21,7 @@ index 0257b1e7e2ad4..b910f788f5a57 100644 | ||||
|    // If the corresponding Connector policy isn't set, don't perform scans. | ||||
|    if (!service || !service->IsConnectorEnabled(connector)) | ||||
| diff --git chrome/browser/net/profile_network_context_service.cc chrome/browser/net/profile_network_context_service.cc | ||||
| index fd92bb9a1f148..4d27c25791033 100644 | ||||
| index 1200475275e91..d32195f01c7ed 100644 | ||||
| --- chrome/browser/net/profile_network_context_service.cc | ||||
| +++ chrome/browser/net/profile_network_context_service.cc | ||||
| @@ -22,6 +22,7 @@ | ||||
| @@ -32,7 +32,7 @@ index fd92bb9a1f148..4d27c25791033 100644 | ||||
|  #include "chrome/browser/browser_features.h" | ||||
|  #include "chrome/browser/browser_process.h" | ||||
|  #include "chrome/browser/content_settings/cookie_settings_factory.h" | ||||
| @@ -337,8 +338,10 @@ ProfileNetworkContextService::ProfileNetworkContextService(Profile* profile) | ||||
| @@ -320,8 +321,10 @@ ProfileNetworkContextService::ProfileNetworkContextService(Profile* profile) | ||||
|                            base::Unretained(this))); | ||||
|    cookie_settings_ = CookieSettingsFactory::GetForProfile(profile); | ||||
|    cookie_settings_observation_.Observe(cookie_settings_.get()); | ||||
| @@ -45,7 +45,17 @@ index fd92bb9a1f148..4d27c25791033 100644 | ||||
|   | ||||
|    DisableQuicIfNotAllowed(); | ||||
|   | ||||
| @@ -893,9 +896,26 @@ void ProfileNetworkContextService::ConfigureNetworkContextParamsInternal( | ||||
| @@ -480,6 +483,9 @@ void ProfileNetworkContextService::OnTruncatedCookieBlockingChanged() { | ||||
|   | ||||
|  void ProfileNetworkContextService::OnFirstPartySetsEnabledChanged( | ||||
|      bool enabled) { | ||||
| +  if (cef::IsAlloyRuntimeEnabled()) { | ||||
| +    return; | ||||
| +  } | ||||
|    // Update all FPS Access Delegates on the FPS service to be `enabled`. | ||||
|    first_party_sets::FirstPartySetsPolicyServiceFactory::GetForBrowserContext( | ||||
|        profile_) | ||||
| @@ -866,9 +872,26 @@ void ProfileNetworkContextService::ConfigureNetworkContextParamsInternal( | ||||
|    network_context_params->cookie_manager_params = | ||||
|        CreateCookieManagerParams(profile_, *cookie_settings_); | ||||
|   | ||||
| @@ -73,7 +83,7 @@ index fd92bb9a1f148..4d27c25791033 100644 | ||||
|      PrefService* local_state = g_browser_process->local_state(); | ||||
|      // Configure the HTTP cache path and size. | ||||
|      base::FilePath base_cache_path; | ||||
| @@ -904,15 +924,14 @@ void ProfileNetworkContextService::ConfigureNetworkContextParamsInternal( | ||||
| @@ -877,15 +900,14 @@ void ProfileNetworkContextService::ConfigureNetworkContextParamsInternal( | ||||
|          local_state->GetFilePath(prefs::kDiskCacheDir); | ||||
|      if (!disk_cache_dir.empty()) | ||||
|        base_cache_path = disk_cache_dir.Append(base_cache_path.BaseName()); | ||||
| @@ -93,6 +103,46 @@ index fd92bb9a1f148..4d27c25791033 100644 | ||||
|      network_context_params->file_paths->data_directory = | ||||
|          path.Append(chrome::kNetworkDataDirname); | ||||
|      network_context_params->file_paths->unsandboxed_data_path = path; | ||||
| @@ -1038,6 +1060,7 @@ void ProfileNetworkContextService::ConfigureNetworkContextParamsInternal( | ||||
|    network_context_params->block_trust_tokens = | ||||
|        anti_abuse_content_setting == CONTENT_SETTING_BLOCK; | ||||
|   | ||||
| +  if (!cef::IsAlloyRuntimeEnabled()) { | ||||
|    network_context_params->first_party_sets_access_delegate_params = | ||||
|        network::mojom::FirstPartySetsAccessDelegateParams::New(); | ||||
|    network_context_params->first_party_sets_access_delegate_params->enabled = | ||||
| @@ -1054,6 +1077,7 @@ void ProfileNetworkContextService::ConfigureNetworkContextParamsInternal( | ||||
|            GetForBrowserContext(profile_); | ||||
|    DCHECK(fps_service); | ||||
|    fps_service->AddRemoteAccessDelegate(std::move(fps_access_delegate_remote)); | ||||
| +  } | ||||
|   | ||||
|    network_context_params->acam_preflight_spec_conformant = | ||||
|        profile_->GetPrefs()->GetBoolean( | ||||
| diff --git chrome/browser/net/profile_network_context_service_factory.cc chrome/browser/net/profile_network_context_service_factory.cc | ||||
| index 14ac2ce8b90c5..99297094beea2 100644 | ||||
| --- chrome/browser/net/profile_network_context_service_factory.cc | ||||
| +++ chrome/browser/net/profile_network_context_service_factory.cc | ||||
| @@ -6,6 +6,7 @@ | ||||
|   | ||||
|  #include "build/build_config.h" | ||||
|  #include "build/chromeos_buildflags.h" | ||||
| +#include "cef/libcef/features/runtime.h" | ||||
|  #include "chrome/browser/first_party_sets/first_party_sets_policy_service_factory.h" | ||||
|  #include "chrome/browser/net/profile_network_context_service.h" | ||||
|  #include "chrome/browser/privacy_sandbox/privacy_sandbox_settings_factory.h" | ||||
| @@ -53,9 +54,11 @@ ProfileNetworkContextServiceFactory::ProfileNetworkContextServiceFactory() | ||||
|  #if BUILDFLAG(IS_CHROMEOS_ASH) | ||||
|    DependsOn(chromeos::CertificateProviderServiceFactory::GetInstance()); | ||||
|  #endif | ||||
| +  if (!cef::IsAlloyRuntimeEnabled()) { | ||||
|    DependsOn(PrivacySandboxSettingsFactory::GetInstance()); | ||||
|    DependsOn( | ||||
|        first_party_sets::FirstPartySetsPolicyServiceFactory::GetInstance()); | ||||
| +  } | ||||
|  } | ||||
|   | ||||
|  ProfileNetworkContextServiceFactory::~ProfileNetworkContextServiceFactory() = | ||||
| diff --git chrome/browser/signin/identity_manager_factory.cc chrome/browser/signin/identity_manager_factory.cc | ||||
| index 77522f65b7b6e..51cc2d60d4b8d 100644 | ||||
| --- chrome/browser/signin/identity_manager_factory.cc | ||||
| @@ -195,10 +245,10 @@ index 6c804ec1092af..605ff3b32b0b8 100644 | ||||
|   | ||||
|  void CookieManager::SetForceKeepSessionState() { | ||||
| diff --git services/network/network_context.cc services/network/network_context.cc | ||||
| index f076c5dc62ca5..5b53652ef63df 100644 | ||||
| index 0a0fa8772cab9..e581302c76db1 100644 | ||||
| --- services/network/network_context.cc | ||||
| +++ services/network/network_context.cc | ||||
| @@ -2444,16 +2444,20 @@ URLRequestContextOwner NetworkContext::MakeURLRequestContext( | ||||
| @@ -2509,16 +2509,20 @@ URLRequestContextOwner NetworkContext::MakeURLRequestContext( | ||||
|          network_service_->network_quality_estimator()); | ||||
|    } | ||||
|   | ||||
| @@ -227,10 +277,10 @@ index f076c5dc62ca5..5b53652ef63df 100644 | ||||
|        base::FeatureList::IsEnabled(features::kFledgePst)) { | ||||
|      trust_token_store_ = std::make_unique<PendingTrustTokenStore>(); | ||||
| diff --git services/network/public/mojom/network_context.mojom services/network/public/mojom/network_context.mojom | ||||
| index 039407080ba9b..aa960e5943129 100644 | ||||
| index 3d95f8cd1adeb..8a2fa92c7eb5e 100644 | ||||
| --- services/network/public/mojom/network_context.mojom | ||||
| +++ services/network/public/mojom/network_context.mojom | ||||
| @@ -377,6 +377,9 @@ struct NetworkContextParams { | ||||
| @@ -376,6 +376,9 @@ struct NetworkContextParams { | ||||
|    // cookies. Otherwise it should be false. | ||||
|    bool persist_session_cookies = false; | ||||
|   | ||||
|   | ||||
| @@ -1,8 +1,8 @@ | ||||
| diff --git content/browser/storage_partition_impl.cc content/browser/storage_partition_impl.cc | ||||
| index 421063895a58f..9d43a6f76a4dd 100644 | ||||
| index 5202b07e11c21..e0448617c9512 100644 | ||||
| --- content/browser/storage_partition_impl.cc | ||||
| +++ content/browser/storage_partition_impl.cc | ||||
| @@ -538,10 +538,6 @@ class LoginHandlerDelegate { | ||||
| @@ -540,10 +540,6 @@ class LoginHandlerDelegate { | ||||
|      } | ||||
|   | ||||
|      WebContents* web_contents = web_contents_getter_.Run(); | ||||
| @@ -13,7 +13,7 @@ index 421063895a58f..9d43a6f76a4dd 100644 | ||||
|   | ||||
|      // WeakPtr is not strictly necessary here due to OnRequestCancelled. | ||||
|      creating_login_delegate_ = true; | ||||
| @@ -593,12 +589,6 @@ void OnAuthRequiredContinuation( | ||||
| @@ -595,12 +591,6 @@ void OnAuthRequiredContinuation( | ||||
|      mojo::PendingRemote<network::mojom::AuthChallengeResponder> | ||||
|          auth_challenge_responder, | ||||
|      base::RepeatingCallback<WebContents*(void)> web_contents_getter) { | ||||
| @@ -26,7 +26,7 @@ index 421063895a58f..9d43a6f76a4dd 100644 | ||||
|    new LoginHandlerDelegate( | ||||
|        std::move(auth_challenge_responder), std::move(web_contents_getter), | ||||
|        auth_info, is_request_for_primary_main_frame, process_id, request_id, url, | ||||
| @@ -3250,8 +3240,12 @@ void StoragePartitionImpl::GetQuotaSettings( | ||||
| @@ -3257,8 +3247,12 @@ void StoragePartitionImpl::GetQuotaSettings( | ||||
|      return; | ||||
|    } | ||||
|   | ||||
| @@ -40,7 +40,7 @@ index 421063895a58f..9d43a6f76a4dd 100644 | ||||
|        storage::GetDefaultDeviceInfoHelper(), std::move(callback)); | ||||
|  } | ||||
|   | ||||
| @@ -3261,9 +3255,12 @@ void StoragePartitionImpl::InitNetworkContext() { | ||||
| @@ -3268,9 +3262,12 @@ void StoragePartitionImpl::InitNetworkContext() { | ||||
|    cert_verifier::mojom::CertVerifierCreationParamsPtr | ||||
|        cert_verifier_creation_params = | ||||
|            cert_verifier::mojom::CertVerifierCreationParams::New(); | ||||
|   | ||||
| @@ -1,8 +1,8 @@ | ||||
| diff --git ui/views/controls/webview/webview.cc ui/views/controls/webview/webview.cc | ||||
| index 46833be700bb8..3ffdedd8509ac 100644 | ||||
| index a2459f3137633..ad29bed6db43a 100644 | ||||
| --- ui/views/controls/webview/webview.cc | ||||
| +++ ui/views/controls/webview/webview.cc | ||||
| @@ -150,6 +150,10 @@ void WebView::EnableSizingFromWebContents(const gfx::Size& min_size, | ||||
| @@ -160,6 +160,10 @@ void WebView::EnableSizingFromWebContents(const gfx::Size& min_size, | ||||
|    } | ||||
|  } | ||||
|   | ||||
| @@ -14,10 +14,10 @@ index 46833be700bb8..3ffdedd8509ac 100644 | ||||
|    if (crashed_overlay_view_.view() == crashed_overlay_view) { | ||||
|      return; | ||||
| diff --git ui/views/controls/webview/webview.h ui/views/controls/webview/webview.h | ||||
| index e5bc9be5a44b3..132e374aff1de 100644 | ||||
| index ff8755f0cfa28..0c7d3e22b863a 100644 | ||||
| --- ui/views/controls/webview/webview.h | ||||
| +++ ui/views/controls/webview/webview.h | ||||
| @@ -89,6 +89,10 @@ class WEBVIEW_EXPORT WebView : public View, | ||||
| @@ -91,6 +91,10 @@ class WEBVIEW_EXPORT WebView : public View, | ||||
|    void EnableSizingFromWebContents(const gfx::Size& min_size, | ||||
|                                     const gfx::Size& max_size); | ||||
|   | ||||
|   | ||||
| @@ -1,8 +1,8 @@ | ||||
| diff --git base/trace_event/builtin_categories.h base/trace_event/builtin_categories.h | ||||
| index 292e5ce4922b3..b9080fa2b6253 100644 | ||||
| index 2f9a9813f863c..f6cc9aabf8540 100644 | ||||
| --- base/trace_event/builtin_categories.h | ||||
| +++ base/trace_event/builtin_categories.h | ||||
| @@ -64,6 +64,8 @@ | ||||
| @@ -65,6 +65,8 @@ | ||||
|    X("cc")                                                                \ | ||||
|    X("cc.debug")                                                          \ | ||||
|    X("cdp.perf")                                                          \ | ||||
|   | ||||
| @@ -1,8 +1,8 @@ | ||||
| diff --git ui/base/x/x11_os_exchange_data_provider.cc ui/base/x/x11_os_exchange_data_provider.cc | ||||
| index 50f6783cda7a0..a8f781375c719 100644 | ||||
| index 5d169e08b509d..aff534bddfd2f 100644 | ||||
| --- ui/base/x/x11_os_exchange_data_provider.cc | ||||
| +++ ui/base/x/x11_os_exchange_data_provider.cc | ||||
| @@ -139,7 +139,8 @@ void XOSExchangeDataProvider::SetURL(const GURL& url, | ||||
| @@ -157,7 +157,8 @@ void XOSExchangeDataProvider::SetURL(const GURL& url, | ||||
|      format_map_.Insert(x11::GetAtom(kMimeTypeMozillaURL), mem); | ||||
|   | ||||
|      // Set a string fallback as well. | ||||
|   | ||||
| @@ -43,10 +43,10 @@ index a6d70c71a1b3a..1b628f5284409 100644 | ||||
|    virtual void MenuWillShow() {} | ||||
|   | ||||
| diff --git ui/gfx/render_text.cc ui/gfx/render_text.cc | ||||
| index 794b77e9eca3e..636589ae29c20 100644 | ||||
| index dab8c9be8d902..5951ec36a874e 100644 | ||||
| --- ui/gfx/render_text.cc | ||||
| +++ ui/gfx/render_text.cc | ||||
| @@ -667,6 +667,14 @@ void RenderText::SetWhitespaceElision(absl::optional<bool> whitespace_elision) { | ||||
| @@ -670,6 +670,14 @@ void RenderText::SetWhitespaceElision(absl::optional<bool> whitespace_elision) { | ||||
|    } | ||||
|  } | ||||
|   | ||||
| @@ -61,7 +61,7 @@ index 794b77e9eca3e..636589ae29c20 100644 | ||||
|  void RenderText::SetDisplayRect(const Rect& r) { | ||||
|    if (r != display_rect_) { | ||||
|      display_rect_ = r; | ||||
| @@ -2036,6 +2044,19 @@ void RenderText::OnTextAttributeChanged() { | ||||
| @@ -2061,6 +2069,19 @@ void RenderText::OnTextAttributeChanged() { | ||||
|   | ||||
|    layout_text_up_to_date_ = false; | ||||
|   | ||||
| @@ -82,7 +82,7 @@ index 794b77e9eca3e..636589ae29c20 100644 | ||||
|  } | ||||
|   | ||||
| diff --git ui/gfx/render_text.h ui/gfx/render_text.h | ||||
| index 678bc9cbf63b4..92322cf339523 100644 | ||||
| index 212c98c242ed3..26f9bb4c28400 100644 | ||||
| --- ui/gfx/render_text.h | ||||
| +++ ui/gfx/render_text.h | ||||
| @@ -347,6 +347,10 @@ class GFX_EXPORT RenderText { | ||||
| @@ -96,7 +96,7 @@ index 678bc9cbf63b4..92322cf339523 100644 | ||||
|    const Rect& display_rect() const { return display_rect_; } | ||||
|    void SetDisplayRect(const Rect& r); | ||||
|   | ||||
| @@ -1050,6 +1054,8 @@ class GFX_EXPORT RenderText { | ||||
| @@ -1056,6 +1060,8 @@ class GFX_EXPORT RenderText { | ||||
|   | ||||
|    // Tell whether or not the |layout_text_| needs an update or is up to date. | ||||
|    mutable bool layout_text_up_to_date_ = false; | ||||
| @@ -119,10 +119,10 @@ index c1c0631071a11..aa2c01ebce43e 100644 | ||||
|    friend class test::InkDropHostTestApi; | ||||
|   | ||||
| diff --git ui/views/controls/button/label_button.cc ui/views/controls/button/label_button.cc | ||||
| index 6d6c45b7dc519..f09365053469d 100644 | ||||
| index c7b00c3852d02..be30a1995d570 100644 | ||||
| --- ui/views/controls/button/label_button.cc | ||||
| +++ ui/views/controls/button/label_button.cc | ||||
| @@ -562,6 +562,12 @@ void LabelButton::OnThemeChanged() { | ||||
| @@ -566,6 +566,12 @@ void LabelButton::OnThemeChanged() { | ||||
|    SchedulePaint(); | ||||
|  } | ||||
|   | ||||
| @@ -150,10 +150,10 @@ index 8dbd918f09528..06fad642642c4 100644 | ||||
|    ImageView* image() const { return image_; } | ||||
|    Label* label() const { return label_; } | ||||
| diff --git ui/views/controls/label.cc ui/views/controls/label.cc | ||||
| index 8faa59e449ddc..d07df64e9bd8e 100644 | ||||
| index a1a17ca0f4090..ad4ac7a2678e0 100644 | ||||
| --- ui/views/controls/label.cc | ||||
| +++ ui/views/controls/label.cc | ||||
| @@ -50,12 +50,29 @@ enum LabelPropertyKey { | ||||
| @@ -53,12 +53,29 @@ enum LabelPropertyKey { | ||||
|    kLabelLineHeight, | ||||
|    kLabelObscured, | ||||
|    kLabelAllowCharacterBreak, | ||||
| @@ -183,7 +183,7 @@ index 8faa59e449ddc..d07df64e9bd8e 100644 | ||||
|  }  // namespace | ||||
|   | ||||
|  namespace views { | ||||
| @@ -464,6 +481,15 @@ void Label::SetElideBehavior(gfx::ElideBehavior elide_behavior) { | ||||
| @@ -474,6 +491,15 @@ void Label::SetElideBehavior(gfx::ElideBehavior elide_behavior) { | ||||
|    OnPropertyChanged(&elide_behavior_, kPropertyEffectsPreferredSizeChanged); | ||||
|  } | ||||
|   | ||||
| @@ -199,7 +199,7 @@ index 8faa59e449ddc..d07df64e9bd8e 100644 | ||||
|  std::u16string Label::GetTooltipText() const { | ||||
|    return tooltip_text_; | ||||
|  } | ||||
| @@ -768,6 +794,16 @@ std::unique_ptr<gfx::RenderText> Label::CreateRenderText() const { | ||||
| @@ -778,6 +804,16 @@ std::unique_ptr<gfx::RenderText> Label::CreateRenderText() const { | ||||
|        render_text->SelectRange(stored_selection_range_); | ||||
|    } | ||||
|   | ||||
| @@ -396,10 +396,10 @@ index 10c4ecd08f76b..062f0c58bb805 100644 | ||||
|   | ||||
|    explicit MenuHost(SubmenuView* submenu); | ||||
| diff --git ui/views/controls/menu/menu_item_view.cc ui/views/controls/menu/menu_item_view.cc | ||||
| index e509227da023b..c4d85ccd39302 100644 | ||||
| index bbb50ca16f67e..9217236ef056b 100644 | ||||
| --- ui/views/controls/menu/menu_item_view.cc | ||||
| +++ ui/views/controls/menu/menu_item_view.cc | ||||
| @@ -1045,6 +1045,15 @@ void MenuItemView::PaintBackground(gfx::Canvas* canvas, | ||||
| @@ -1057,6 +1057,15 @@ void MenuItemView::PaintBackground(gfx::Canvas* canvas, | ||||
|      spilling_rect.set_y(spilling_rect.y() - corner_radius_); | ||||
|      spilling_rect.set_height(spilling_rect.height() + corner_radius_); | ||||
|      canvas->DrawRoundRect(spilling_rect, corner_radius_, flags); | ||||
| @@ -415,7 +415,7 @@ index e509227da023b..c4d85ccd39302 100644 | ||||
|    } else if (paint_as_selected) { | ||||
|      gfx::Rect item_bounds = GetLocalBounds(); | ||||
|      if (type_ == Type::kActionableSubMenu) { | ||||
| @@ -1109,6 +1118,13 @@ void MenuItemView::PaintMinorIconAndText(gfx::Canvas* canvas, SkColor color) { | ||||
| @@ -1121,6 +1130,13 @@ void MenuItemView::PaintMinorIconAndText(gfx::Canvas* canvas, SkColor color) { | ||||
|  } | ||||
|   | ||||
|  SkColor MenuItemView::GetTextColor(bool minor, bool paint_as_selected) const { | ||||
| @@ -639,7 +639,7 @@ index e6587d2208a13..c2c72f7edb89c 100644 | ||||
|    void Cancel() override; | ||||
|    base::TimeTicks GetClosingEventTime() const override; | ||||
| diff --git ui/views/controls/menu/menu_runner_impl_cocoa.h ui/views/controls/menu/menu_runner_impl_cocoa.h | ||||
| index 2056016df3098..6c6467f5a719e 100644 | ||||
| index 2325534ec9243..7573a54cc891c 100644 | ||||
| --- ui/views/controls/menu/menu_runner_impl_cocoa.h | ||||
| +++ ui/views/controls/menu/menu_runner_impl_cocoa.h | ||||
| @@ -42,6 +42,7 @@ class VIEWS_EXPORT MenuRunnerImplCocoa : public MenuRunnerImplInterface { | ||||
| @@ -651,7 +651,7 @@ index 2056016df3098..6c6467f5a719e 100644 | ||||
|    void Cancel() override; | ||||
|    base::TimeTicks GetClosingEventTime() const override; | ||||
| diff --git ui/views/controls/menu/menu_runner_impl_cocoa.mm ui/views/controls/menu/menu_runner_impl_cocoa.mm | ||||
| index f137d6f86aba7..5b329ae12ada1 100644 | ||||
| index c3c80f6becee7..5b6fc116f6255 100644 | ||||
| --- ui/views/controls/menu/menu_runner_impl_cocoa.mm | ||||
| +++ ui/views/controls/menu/menu_runner_impl_cocoa.mm | ||||
| @@ -190,6 +190,7 @@ void MenuRunnerImplCocoa::RunMenuAt( | ||||
| @@ -676,7 +676,7 @@ index cf696fbcf0714..5c48fd7410b88 100644 | ||||
|   | ||||
|    // Hides and cancels the menu. | ||||
| diff --git ui/views/controls/menu/menu_scroll_view_container.cc ui/views/controls/menu/menu_scroll_view_container.cc | ||||
| index 6b6df6857209a..75c62afef88b4 100644 | ||||
| index 8c093e002326c..3a500adcd39bb 100644 | ||||
| --- ui/views/controls/menu/menu_scroll_view_container.cc | ||||
| +++ ui/views/controls/menu/menu_scroll_view_container.cc | ||||
| @@ -250,6 +250,11 @@ MenuScrollViewContainer::MenuScrollViewContainer(SubmenuView* content_view) | ||||
|   | ||||
| @@ -1,5 +1,5 @@ | ||||
| diff --git content/browser/renderer_host/render_widget_host_view_base.cc content/browser/renderer_host/render_widget_host_view_base.cc | ||||
| index 9dd7439e8c1c0..7da7d04fb2d00 100644 | ||||
| index 1634c3556dc78..276a9f58e2bac 100644 | ||||
| --- content/browser/renderer_host/render_widget_host_view_base.cc | ||||
| +++ content/browser/renderer_host/render_widget_host_view_base.cc | ||||
| @@ -648,6 +648,14 @@ float RenderWidgetHostViewBase::GetScaleOverrideForCapture() const { | ||||
| @@ -18,7 +18,7 @@ index 9dd7439e8c1c0..7da7d04fb2d00 100644 | ||||
|    if (!GetMouseWheelPhaseHandler()) | ||||
|      return; | ||||
| diff --git content/browser/renderer_host/render_widget_host_view_base.h content/browser/renderer_host/render_widget_host_view_base.h | ||||
| index 3b4461acc2fc6..ed1ef17fb3667 100644 | ||||
| index b010d43aaeb90..5172abec682b9 100644 | ||||
| --- content/browser/renderer_host/render_widget_host_view_base.h | ||||
| +++ content/browser/renderer_host/render_widget_host_view_base.h | ||||
| @@ -71,6 +71,7 @@ class CursorManager; | ||||
| @@ -85,7 +85,7 @@ index 3b4461acc2fc6..ed1ef17fb3667 100644 | ||||
|    // renderer process changes. This method is called before notifying | ||||
|    // RenderWidgetHostImpl in order to allow the view to allocate a new | ||||
| 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 36b742a3f2b77..9f9d22b531237 100644 | ||||
| index 401e65a8ebe6f..b83410da96f67 100644 | ||||
| --- content/browser/renderer_host/render_widget_host_view_event_handler.cc | ||||
| +++ content/browser/renderer_host/render_widget_host_view_event_handler.cc | ||||
| @@ -52,6 +52,10 @@ namespace { | ||||
| @@ -179,10 +179,10 @@ index e4e6d3104da9e..bb372b0cd2960 100644 | ||||
|    return host ? host->GetAcceleratedWidget() : nullptr; | ||||
|  } | ||||
| diff --git ui/views/widget/desktop_aura/desktop_window_tree_host_linux.cc ui/views/widget/desktop_aura/desktop_window_tree_host_linux.cc | ||||
| index 19e84689c878f..a8943c34699c5 100644 | ||||
| index e5c4e4d662261..15ed8c1a24557 100644 | ||||
| --- ui/views/widget/desktop_aura/desktop_window_tree_host_linux.cc | ||||
| +++ ui/views/widget/desktop_aura/desktop_window_tree_host_linux.cc | ||||
| @@ -165,6 +165,18 @@ Widget::MoveLoopResult DesktopWindowTreeHostLinux::RunMoveLoop( | ||||
| @@ -171,6 +171,18 @@ Widget::MoveLoopResult DesktopWindowTreeHostLinux::RunMoveLoop( | ||||
|    return result; | ||||
|  } | ||||
|   | ||||
| @@ -201,7 +201,7 @@ index 19e84689c878f..a8943c34699c5 100644 | ||||
|  void DesktopWindowTreeHostLinux::DispatchEvent(ui::Event* event) { | ||||
|    // In Windows, the native events sent to chrome are separated into client | ||||
|    // and non-client versions of events, which we record on our LocatedEvent | ||||
| @@ -288,6 +300,8 @@ void DesktopWindowTreeHostLinux::AddAdditionalInitProperties( | ||||
| @@ -294,6 +306,8 @@ void DesktopWindowTreeHostLinux::AddAdditionalInitProperties( | ||||
|   | ||||
|    properties->wayland_app_id = params.wayland_app_id; | ||||
|   | ||||
| @@ -211,10 +211,10 @@ index 19e84689c878f..a8943c34699c5 100644 | ||||
|    properties->x11_extension_delegate = this; | ||||
|  } | ||||
| diff --git ui/views/widget/desktop_aura/desktop_window_tree_host_linux.h ui/views/widget/desktop_aura/desktop_window_tree_host_linux.h | ||||
| index 01d4ffe408a84..fbe41fefbb2bd 100644 | ||||
| index ee09e16753ff0..256a24a0c6ebd 100644 | ||||
| --- ui/views/widget/desktop_aura/desktop_window_tree_host_linux.h | ||||
| +++ ui/views/widget/desktop_aura/desktop_window_tree_host_linux.h | ||||
| @@ -57,6 +57,8 @@ class VIEWS_EXPORT DesktopWindowTreeHostLinux | ||||
| @@ -59,6 +59,8 @@ class VIEWS_EXPORT DesktopWindowTreeHostLinux | ||||
|    // Disables event listening to make |dialog| modal. | ||||
|    base::OnceClosure DisableEventListening(); | ||||
|   | ||||
| @@ -223,7 +223,7 @@ index 01d4ffe408a84..fbe41fefbb2bd 100644 | ||||
|   protected: | ||||
|    // Overridden from DesktopWindowTreeHost: | ||||
|    void Init(const Widget::InitParams& params) override; | ||||
| @@ -66,6 +68,8 @@ class VIEWS_EXPORT DesktopWindowTreeHostLinux | ||||
| @@ -68,6 +70,8 @@ class VIEWS_EXPORT DesktopWindowTreeHostLinux | ||||
|        const gfx::Vector2d& drag_offset, | ||||
|        Widget::MoveLoopSource source, | ||||
|        Widget::MoveLoopEscapeBehavior escape_behavior) override; | ||||
| @@ -232,7 +232,7 @@ index 01d4ffe408a84..fbe41fefbb2bd 100644 | ||||
|   | ||||
|    // PlatformWindowDelegate: | ||||
|    void DispatchEvent(ui::Event* event) override; | ||||
| @@ -114,6 +118,9 @@ class VIEWS_EXPORT DesktopWindowTreeHostLinux | ||||
| @@ -116,6 +120,9 @@ class VIEWS_EXPORT DesktopWindowTreeHostLinux | ||||
|   | ||||
|    uint32_t modal_dialog_counter_ = 0; | ||||
|   | ||||
| @@ -243,7 +243,7 @@ index 01d4ffe408a84..fbe41fefbb2bd 100644 | ||||
|    base::WeakPtrFactory<DesktopWindowTreeHostLinux> weak_factory_{this}; | ||||
|  }; | ||||
| diff --git ui/views/widget/desktop_aura/desktop_window_tree_host_platform.cc ui/views/widget/desktop_aura/desktop_window_tree_host_platform.cc | ||||
| index 91bee2b0173c6..c0ccd724d4bcc 100644 | ||||
| index 9092e91e37b7d..9d749f2508eb0 100644 | ||||
| --- ui/views/widget/desktop_aura/desktop_window_tree_host_platform.cc | ||||
| +++ ui/views/widget/desktop_aura/desktop_window_tree_host_platform.cc | ||||
| @@ -286,8 +286,8 @@ void DesktopWindowTreeHostPlatform::Init(const Widget::InitParams& params) { | ||||
| @@ -359,7 +359,7 @@ index 2e4bacce52a45..76916c5d21cb9 100644 | ||||
|    // the implementation of ::ShowCursor() is based on a counter, so making this | ||||
|    // member static ensures that ::ShowCursor() is always called exactly once | ||||
| diff --git ui/views/widget/widget.cc ui/views/widget/widget.cc | ||||
| index 6e1bc593b0082..4c5925f946616 100644 | ||||
| index 2f552f72074e3..3f057242d198c 100644 | ||||
| --- ui/views/widget/widget.cc | ||||
| +++ ui/views/widget/widget.cc | ||||
| @@ -368,7 +368,8 @@ void Widget::Init(InitParams params) { | ||||
| @@ -372,7 +372,7 @@ index 6e1bc593b0082..4c5925f946616 100644 | ||||
|   | ||||
|    if (params.opacity == views::Widget::InitParams::WindowOpacity::kInferred && | ||||
|        params.type != views::Widget::InitParams::TYPE_WINDOW) { | ||||
| @@ -472,13 +473,21 @@ void Widget::Init(InitParams params) { | ||||
| @@ -480,14 +481,22 @@ void Widget::Init(InitParams params) { | ||||
|   | ||||
|      if (show_state == ui::SHOW_STATE_MAXIMIZED) { | ||||
|        Maximize(); | ||||
| @@ -385,17 +385,18 @@ index 6e1bc593b0082..4c5925f946616 100644 | ||||
|      } | ||||
|    } else if (delegate) { | ||||
|      SetContentsView(delegate->TransferOwnershipOfContentsView()); | ||||
| -    SetInitialBoundsForFramelessWindow(bounds); | ||||
| +    if (params.parent_widget != gfx::kNullAcceleratedWidget) { | ||||
| +      // Set the bounds directly instead of applying an inset. | ||||
| +      SetBounds(bounds); | ||||
| +    } else { | ||||
| +      SetInitialBoundsForFramelessWindow(bounds); | ||||
| +    } | ||||
|      if (should_set_initial_bounds) { | ||||
| -      SetInitialBoundsForFramelessWindow(bounds); | ||||
| +      if (params.parent_widget != gfx::kNullAcceleratedWidget) { | ||||
| +        // Set the bounds directly instead of applying an inset. | ||||
| +        SetBounds(bounds); | ||||
| +      } else { | ||||
| +        SetInitialBoundsForFramelessWindow(bounds); | ||||
| +      } | ||||
|      } | ||||
|    } | ||||
|   | ||||
|    if (base::FeatureList::IsEnabled(features::kWidgetLayering)) { | ||||
| @@ -1615,10 +1624,16 @@ void Widget::OnNativeWidgetParentChanged(gfx::NativeView parent) { | ||||
| @@ -1631,10 +1640,16 @@ void Widget::OnNativeWidgetParentChanged(gfx::NativeView parent) { | ||||
|  } | ||||
|   | ||||
|  gfx::Size Widget::GetMinimumSize() const { | ||||
| @@ -413,7 +414,7 @@ index 6e1bc593b0082..4c5925f946616 100644 | ||||
|  } | ||||
|   | ||||
| diff --git ui/views/widget/widget.h ui/views/widget/widget.h | ||||
| index 6d10ae19965c3..6eba4e7492e81 100644 | ||||
| index 419b75d0608b2..d772dc17d165c 100644 | ||||
| --- ui/views/widget/widget.h | ||||
| +++ ui/views/widget/widget.h | ||||
| @@ -351,6 +351,8 @@ class VIEWS_EXPORT Widget : public internal::NativeWidgetDelegate, | ||||
| @@ -455,10 +456,10 @@ index 3b9b00b7d79ae..e759e3c1a9f34 100644 | ||||
|        if (native_widget_delegate->IsDialogBox()) { | ||||
|          *style |= DS_MODALFRAME; | ||||
| diff --git ui/views/win/hwnd_message_handler.cc ui/views/win/hwnd_message_handler.cc | ||||
| index a386fb0594530..edc5dc99de31d 100644 | ||||
| index f43aa724b2a8e..2782c80694a70 100644 | ||||
| --- ui/views/win/hwnd_message_handler.cc | ||||
| +++ ui/views/win/hwnd_message_handler.cc | ||||
| @@ -953,8 +953,12 @@ bool HWNDMessageHandler::IsActive() const { | ||||
| @@ -955,8 +955,12 @@ bool HWNDMessageHandler::IsActive() const { | ||||
|    // In headless mode return expected activation state instead of the | ||||
|    // actual one. This ensures that onfocus/onblur notifications work | ||||
|    // as expected and no unexpected throttling occurs. | ||||
| @@ -472,7 +473,7 @@ index a386fb0594530..edc5dc99de31d 100644 | ||||
|  } | ||||
|   | ||||
|  bool HWNDMessageHandler::IsMinimized() const { | ||||
| @@ -3346,10 +3350,13 @@ LRESULT HWNDMessageHandler::HandleMouseEventInternal(UINT message, | ||||
| @@ -3353,10 +3357,13 @@ LRESULT HWNDMessageHandler::HandleMouseEventInternal(UINT message, | ||||
|    } else if (event.type() == ui::ET_MOUSEWHEEL) { | ||||
|      ui::MouseWheelEvent mouse_wheel_event(msg); | ||||
|      // Reroute the mouse wheel to the window under the pointer if applicable. | ||||
|   | ||||
| @@ -80,10 +80,10 @@ index 8af69cac78b74..9f74e511c263d 100644 | ||||
|   private: | ||||
|    const HWND hwnd_; | ||||
| diff --git components/viz/service/BUILD.gn components/viz/service/BUILD.gn | ||||
| index 72d9d594a9370..f95511fc9ca89 100644 | ||||
| index d3a1ba02c0924..cf74aba62b079 100644 | ||||
| --- components/viz/service/BUILD.gn | ||||
| +++ components/viz/service/BUILD.gn | ||||
| @@ -228,6 +228,8 @@ viz_component("service") { | ||||
| @@ -230,6 +230,8 @@ viz_component("service") { | ||||
|      "transitions/transferable_resource_tracker.cc", | ||||
|      "transitions/transferable_resource_tracker.h", | ||||
|      "viz_service_export.h", | ||||
|   | ||||
| @@ -1,8 +1,8 @@ | ||||
| diff --git content/browser/web_contents/web_contents_impl.cc content/browser/web_contents/web_contents_impl.cc | ||||
| index 6f1581c517bf6..5c4004b963ef6 100644 | ||||
| index 355f0d796d3c6..d8c047d6173e3 100644 | ||||
| --- content/browser/web_contents/web_contents_impl.cc | ||||
| +++ content/browser/web_contents/web_contents_impl.cc | ||||
| @@ -3324,6 +3324,12 @@ void WebContentsImpl::Init(const WebContents::CreateParams& params, | ||||
| @@ -3348,6 +3348,12 @@ void WebContentsImpl::Init(const WebContents::CreateParams& params, | ||||
|        params.main_frame_name, GetOpener(), primary_main_frame_policy, | ||||
|        base::UnguessableToken::Create()); | ||||
|   | ||||
| @@ -15,7 +15,7 @@ index 6f1581c517bf6..5c4004b963ef6 100644 | ||||
|    std::unique_ptr<WebContentsViewDelegate> delegate = | ||||
|        GetContentClient()->browser()->GetWebContentsViewDelegate(this); | ||||
|   | ||||
| @@ -3334,6 +3340,7 @@ void WebContentsImpl::Init(const WebContents::CreateParams& params, | ||||
| @@ -3358,6 +3364,7 @@ void WebContentsImpl::Init(const WebContents::CreateParams& params, | ||||
|      view_ = CreateWebContentsView(this, std::move(delegate), | ||||
|                                    &render_view_host_delegate_view_); | ||||
|    } | ||||
| @@ -23,7 +23,7 @@ index 6f1581c517bf6..5c4004b963ef6 100644 | ||||
|    CHECK(render_view_host_delegate_view_); | ||||
|    CHECK(view_.get()); | ||||
|   | ||||
| @@ -3523,6 +3530,9 @@ void WebContentsImpl::RenderWidgetCreated( | ||||
| @@ -3548,6 +3555,9 @@ void WebContentsImpl::RenderWidgetCreated( | ||||
|    OPTIONAL_TRACE_EVENT1("content", "WebContentsImpl::RenderWidgetCreated", | ||||
|                          "render_widget_host", render_widget_host); | ||||
|    created_widgets_.insert(render_widget_host); | ||||
| @@ -33,7 +33,18 @@ index 6f1581c517bf6..5c4004b963ef6 100644 | ||||
|  } | ||||
|   | ||||
|  void WebContentsImpl::RenderWidgetDeleted( | ||||
| @@ -4279,6 +4289,15 @@ FrameTree* WebContentsImpl::CreateNewWindow( | ||||
| @@ -3868,6 +3878,10 @@ void WebContentsImpl::SetWindowShowState(ui::WindowShowState state) { | ||||
|   | ||||
|  ui::WindowShowState WebContentsImpl::GetWindowShowState() { | ||||
|    aura::Window* window = GetTopLevelNativeWindow(); | ||||
| +  if (!window) { | ||||
| +    // |window| will be nullptr with CEF windowless rendering. | ||||
| +    return ui::SHOW_STATE_DEFAULT; | ||||
| +  } | ||||
|    return wm::GetWindowState(window); | ||||
|  } | ||||
|  #endif | ||||
| @@ -4335,6 +4349,15 @@ FrameTree* WebContentsImpl::CreateNewWindow( | ||||
|      create_params.picture_in_picture_options = *(params.pip_options); | ||||
|    } | ||||
|   | ||||
| @@ -49,7 +60,7 @@ index 6f1581c517bf6..5c4004b963ef6 100644 | ||||
|    // Check whether there is an available prerendered page for this navigation if | ||||
|    // this is not for guest. If it exists, take WebContents pre-created for | ||||
|    // hosting the prerendered page instead of creating new WebContents. | ||||
| @@ -8286,6 +8305,9 @@ void WebContentsImpl::SetFocusedFrame(FrameTreeNode* node, | ||||
| @@ -8342,6 +8365,9 @@ void WebContentsImpl::SetFocusedFrame(FrameTreeNode* node, | ||||
|    } | ||||
|   | ||||
|    CloseListenerManager::DidChangeFocusedFrame(this); | ||||
| @@ -60,7 +71,7 @@ index 6f1581c517bf6..5c4004b963ef6 100644 | ||||
|   | ||||
|  void WebContentsImpl::DidCallFocus() { | ||||
| diff --git content/public/browser/web_contents.h content/public/browser/web_contents.h | ||||
| index f02cd75e7ad4c..8a3761e505d2d 100644 | ||||
| index d3d0b0aab60e9..79938331d05f1 100644 | ||||
| --- content/public/browser/web_contents.h | ||||
| +++ content/public/browser/web_contents.h | ||||
| @@ -98,10 +98,12 @@ class BrowserContext; | ||||
|   | ||||
| @@ -1,8 +1,8 @@ | ||||
| diff --git third_party/blink/public/platform/platform.h third_party/blink/public/platform/platform.h | ||||
| index 132096c44cf32..7828efe4197ee 100644 | ||||
| index cfb8b2634af81..d7c120ea753c3 100644 | ||||
| --- third_party/blink/public/platform/platform.h | ||||
| +++ third_party/blink/public/platform/platform.h | ||||
| @@ -774,6 +774,11 @@ class BLINK_PLATFORM_EXPORT Platform { | ||||
| @@ -780,6 +780,11 @@ class BLINK_PLATFORM_EXPORT Platform { | ||||
|    } | ||||
|  #endif | ||||
|   | ||||
|   | ||||
| @@ -11,7 +11,7 @@ index 8a18ecf567cd3..9697d43bbbfb9 100644 | ||||
|    // Cancels and hides the current popup (datetime, select...) if any. | ||||
|    virtual void CancelPagePopup() = 0; | ||||
| diff --git third_party/blink/renderer/core/exported/web_view_impl.cc third_party/blink/renderer/core/exported/web_view_impl.cc | ||||
| index 1043f13dd1d47..896d479022df7 100644 | ||||
| index acb43e9f5471e..d78498411ec92 100644 | ||||
| --- third_party/blink/renderer/core/exported/web_view_impl.cc | ||||
| +++ third_party/blink/renderer/core/exported/web_view_impl.cc | ||||
| @@ -249,8 +249,13 @@ void WebView::SetUseExternalPopupMenus(bool use_external_popup_menus) { | ||||
|   | ||||
| @@ -1,9 +1,9 @@ | ||||
| diff --git chrome/browser/feedback/system_logs/log_sources/chrome_internal_log_source.cc chrome/browser/feedback/system_logs/log_sources/chrome_internal_log_source.cc | ||||
| index 70be25ddddf1d..8aa1b6f33d7fb 100644 | ||||
| index a7ab5cf0c3cd0..8a8014df43457 100644 | ||||
| --- chrome/browser/feedback/system_logs/log_sources/chrome_internal_log_source.cc | ||||
| +++ chrome/browser/feedback/system_logs/log_sources/chrome_internal_log_source.cc | ||||
| @@ -19,10 +19,12 @@ | ||||
|  #include "base/strings/stringprintf.h" | ||||
| @@ -18,10 +18,12 @@ | ||||
|  #include "base/strings/string_util.h" | ||||
|  #include "base/system/sys_info.h" | ||||
|  #include "base/task/thread_pool.h" | ||||
| +#include "base/threading/thread_restrictions.h" | ||||
| @@ -15,7 +15,7 @@ index 70be25ddddf1d..8aa1b6f33d7fb 100644 | ||||
|  #include "chrome/browser/browser_process.h" | ||||
|  #include "chrome/browser/extensions/chrome_content_browser_client_extensions_part.h" | ||||
|  #include "chrome/browser/google/google_brand.h" | ||||
| @@ -399,7 +401,11 @@ void ChromeInternalLogSource::Fetch(SysLogsSourceCallback callback) { | ||||
| @@ -422,7 +424,11 @@ void ChromeInternalLogSource::Fetch(SysLogsSourceCallback callback) { | ||||
|    response->emplace(kOsVersionTag, os_version); | ||||
|  #endif | ||||
|   | ||||
| @@ -28,7 +28,7 @@ index 70be25ddddf1d..8aa1b6f33d7fb 100644 | ||||
|    PopulateExtensionInfoLogs(response.get()); | ||||
|    PopulatePowerApiLogs(response.get()); | ||||
|  #if BUILDFLAG(IS_WIN) | ||||
| @@ -479,8 +485,12 @@ void ChromeInternalLogSource::PopulateExtensionInfoLogs( | ||||
| @@ -504,8 +510,12 @@ void ChromeInternalLogSource::PopulateExtensionInfoLogs( | ||||
|    if (!profile) | ||||
|      return; | ||||
|   | ||||
| @@ -41,7 +41,7 @@ index 70be25ddddf1d..8aa1b6f33d7fb 100644 | ||||
|    std::string extensions_list; | ||||
|    for (const scoped_refptr<const extensions::Extension>& extension : | ||||
|         extension_registry->enabled_extensions()) { | ||||
| @@ -584,6 +594,8 @@ void ChromeInternalLogSource::PopulateOnboardingTime( | ||||
| @@ -606,6 +616,8 @@ void ChromeInternalLogSource::PopulateOnboardingTime( | ||||
|  #if BUILDFLAG(IS_WIN) | ||||
|  void ChromeInternalLogSource::PopulateUsbKeyboardDetected( | ||||
|      SystemLogsResponse* response) { | ||||
|   | ||||
| @@ -1,8 +1,8 @@ | ||||
| diff --git sandbox/policy/win/sandbox_win.cc sandbox/policy/win/sandbox_win.cc | ||||
| index 3add6ba6997a3..c6cedeed4da7b 100644 | ||||
| index fc31388dc3232..c0e303c816042 100644 | ||||
| --- sandbox/policy/win/sandbox_win.cc | ||||
| +++ sandbox/policy/win/sandbox_win.cc | ||||
| @@ -988,6 +988,13 @@ ResultCode SandboxWin::StartSandboxedProcess( | ||||
| @@ -997,6 +997,13 @@ ResultCode SandboxWin::StartSandboxedProcess( | ||||
|      const base::HandlesToInheritVector& handles_to_inherit, | ||||
|      SandboxDelegate* delegate, | ||||
|      base::Process* process) { | ||||
|   | ||||
		Reference in New Issue
	
	Block a user