diff --git a/CHROMIUM_BUILD_COMPATIBILITY.txt b/CHROMIUM_BUILD_COMPATIBILITY.txt index cc13b9682..2f24407e8 100644 --- a/CHROMIUM_BUILD_COMPATIBILITY.txt +++ b/CHROMIUM_BUILD_COMPATIBILITY.txt @@ -7,6 +7,6 @@ # https://bitbucket.org/chromiumembedded/cef/wiki/BranchesAndBuilding { - 'chromium_checkout': 'refs/tags/126.0.6478.17', + 'chromium_checkout': 'refs/tags/126.0.6478.26', 'depot_tools_checkout': '7d95eb2eb0' } diff --git a/patch/patches/browser_security_policy_1081397.patch b/patch/patches/browser_security_policy_1081397.patch index 3198e343f..7308d5d06 100644 --- a/patch/patches/browser_security_policy_1081397.patch +++ b/patch/patches/browser_security_policy_1081397.patch @@ -20,10 +20,10 @@ index 7822aeab4826a..fa72112bfee98 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 e3dd21898b85e..2176fde9c1764 100644 +index f62d0f627536a..02e5d50e4afe8 100644 --- content/browser/renderer_host/navigation_request.cc +++ content/browser/renderer_host/navigation_request.cc -@@ -7958,10 +7958,22 @@ NavigationRequest::GetOriginForURLLoaderFactoryBeforeResponseWithDebugInfo( +@@ -7953,10 +7953,22 @@ NavigationRequest::GetOriginForURLLoaderFactoryBeforeResponseWithDebugInfo( bool use_opaque_origin = (sandbox_flags & network::mojom::WebSandboxFlags::kOrigin) == network::mojom::WebSandboxFlags::kOrigin; @@ -47,7 +47,7 @@ index e3dd21898b85e..2176fde9c1764 100644 } return origin_and_debug_info; -@@ -8069,6 +8081,15 @@ NavigationRequest::GetOriginForURLLoaderFactoryAfterResponseWithDebugInfo() { +@@ -8064,6 +8076,15 @@ NavigationRequest::GetOriginForURLLoaderFactoryAfterResponseWithDebugInfo() { DetermineInitiatorRelationship(initiator_rfh, frame_tree_node_->current_frame_host())); diff --git a/patch/patches/chrome_browser.patch b/patch/patches/chrome_browser.patch index 83ef90cbf..e4d40f71f 100644 --- a/patch/patches/chrome_browser.patch +++ b/patch/patches/chrome_browser.patch @@ -1,5 +1,5 @@ diff --git chrome/browser/BUILD.gn chrome/browser/BUILD.gn -index 0aa28eb70fd94..b84808bad61bb 100644 +index 0be27cd41b866..18f20a7f36972 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 0aa28eb70fd94..b84808bad61bb 100644 import("//chrome/browser/buildflags.gni") import("//chrome/browser/downgrade/buildflags.gni") import("//chrome/common/features.gni") -@@ -2093,6 +2094,7 @@ static_library("browser") { +@@ -2097,6 +2098,7 @@ static_library("browser") { "//build/config/chromebox_for_meetings:buildflags", "//build/config/compiler:compiler_buildflags", "//cc", @@ -18,7 +18,7 @@ index 0aa28eb70fd94..b84808bad61bb 100644 "//chrome:extra_resources", "//chrome:resources", "//chrome:strings", -@@ -2792,6 +2794,10 @@ static_library("browser") { +@@ -2795,6 +2797,10 @@ static_library("browser") { ] } diff --git a/patch/patches/chrome_browser_browser.patch b/patch/patches/chrome_browser_browser.patch index 94589a8f9..607f7a429 100644 --- a/patch/patches/chrome_browser_browser.patch +++ b/patch/patches/chrome_browser_browser.patch @@ -74,7 +74,7 @@ index e857e2363da9e..3dd4db8ae4267 100644 } diff --git chrome/browser/ui/BUILD.gn chrome/browser/ui/BUILD.gn -index 63f233cba4da5..cddea88e97512 100644 +index e4c38df62e93e..6956a4a6e19ca 100644 --- chrome/browser/ui/BUILD.gn +++ chrome/browser/ui/BUILD.gn @@ -8,6 +8,7 @@ import("//build/config/compiler/compiler.gni") @@ -113,7 +113,7 @@ index 63f233cba4da5..cddea88e97512 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", -@@ -5115,8 +5123,6 @@ static_library("ui") { +@@ -5117,8 +5125,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", @@ -122,7 +122,7 @@ index 63f233cba4da5..cddea88e97512 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", -@@ -6967,6 +6973,7 @@ static_library("ui") { +@@ -6969,6 +6975,7 @@ static_library("ui") { if (enable_printing) { deps += [ "//components/printing/browser", @@ -131,7 +131,7 @@ index 63f233cba4da5..cddea88e97512 100644 ] } diff --git chrome/browser/ui/browser.cc chrome/browser/ui/browser.cc -index a1d50c2e47056..5519a1c7714d5 100644 +index f6302e83d3b00..c617cc4a4a640 100644 --- chrome/browser/ui/browser.cc +++ chrome/browser/ui/browser.cc @@ -269,6 +269,25 @@ @@ -184,7 +184,7 @@ index a1d50c2e47056..5519a1c7714d5 100644 } /////////////////////////////////////////////////////////////////////////////// -@@ -1170,6 +1199,8 @@ void Browser::WindowFullscreenStateChanged() { +@@ -1174,6 +1203,8 @@ void Browser::WindowFullscreenStateChanged() { ->WindowFullscreenStateChanged(); command_controller_->FullscreenStateChanged(); UpdateBookmarkBarState(BOOKMARK_BAR_STATE_CHANGE_TOGGLE_FULLSCREEN); @@ -193,7 +193,7 @@ index a1d50c2e47056..5519a1c7714d5 100644 } void Browser::FullscreenTopUIStateChanged() { -@@ -1511,6 +1542,14 @@ content::KeyboardEventProcessingResult Browser::PreHandleKeyboardEvent( +@@ -1515,6 +1546,14 @@ content::KeyboardEventProcessingResult Browser::PreHandleKeyboardEvent( if (exclusive_access_manager_->HandleUserKeyEvent(event)) return content::KeyboardEventProcessingResult::HANDLED; @@ -208,7 +208,7 @@ index a1d50c2e47056..5519a1c7714d5 100644 return window()->PreHandleKeyboardEvent(event); } -@@ -1518,8 +1557,18 @@ bool Browser::HandleKeyboardEvent(content::WebContents* source, +@@ -1522,8 +1561,18 @@ bool Browser::HandleKeyboardEvent(content::WebContents* source, const NativeWebKeyboardEvent& event) { DevToolsWindow* devtools_window = DevToolsWindow::GetInstanceForInspectedWebContents(source); @@ -229,7 +229,7 @@ index a1d50c2e47056..5519a1c7714d5 100644 } bool Browser::TabsNeedBeforeUnloadFired() const { -@@ -1695,6 +1744,16 @@ WebContents* Browser::OpenURLFromTab( +@@ -1699,6 +1748,16 @@ WebContents* Browser::OpenURLFromTab( } #endif // BUILDFLAG(IS_CHROMEOS_ASH) @@ -246,7 +246,7 @@ index a1d50c2e47056..5519a1c7714d5 100644 NavigateParams nav_params(this, params.url, params.transition); nav_params.FillNavigateParamsFromOpenURLParams(params); nav_params.source_contents = source; -@@ -1857,6 +1916,8 @@ void Browser::LoadingStateChanged(WebContents* source, +@@ -1861,6 +1920,8 @@ void Browser::LoadingStateChanged(WebContents* source, bool should_show_loading_ui) { ScheduleUIUpdate(source, content::INVALIDATE_TYPE_LOAD); UpdateWindowForLoadingStateChanged(source, should_show_loading_ui); @@ -255,7 +255,7 @@ index a1d50c2e47056..5519a1c7714d5 100644 } void Browser::CloseContents(WebContents* source) { -@@ -1885,6 +1946,8 @@ void Browser::SetContentsBounds(WebContents* source, const gfx::Rect& bounds) { +@@ -1889,6 +1950,8 @@ void Browser::SetContentsBounds(WebContents* source, const gfx::Rect& bounds) { } void Browser::UpdateTargetURL(WebContents* source, const GURL& url) { @@ -264,7 +264,7 @@ index a1d50c2e47056..5519a1c7714d5 100644 if (!GetStatusBubble()) return; -@@ -1892,6 +1955,17 @@ void Browser::UpdateTargetURL(WebContents* source, const GURL& url) { +@@ -1896,6 +1959,17 @@ void Browser::UpdateTargetURL(WebContents* source, const GURL& url) { GetStatusBubble()->SetURL(url); } @@ -282,7 +282,7 @@ index a1d50c2e47056..5519a1c7714d5 100644 void Browser::ContentsMouseEvent(WebContents* source, const ui::Event& event) { const ui::EventType type = event.type(); const bool exited = type == ui::ET_MOUSE_EXITED; -@@ -1919,6 +1993,19 @@ bool Browser::TakeFocus(content::WebContents* source, bool reverse) { +@@ -1923,6 +1997,19 @@ bool Browser::TakeFocus(content::WebContents* source, bool reverse) { return false; } @@ -302,7 +302,7 @@ index a1d50c2e47056..5519a1c7714d5 100644 void Browser::BeforeUnloadFired(WebContents* web_contents, bool proceed, bool* proceed_to_fire_unload) { -@@ -2018,12 +2105,24 @@ void Browser::WebContentsCreated(WebContents* source_contents, +@@ -2022,12 +2109,24 @@ void Browser::WebContentsCreated(WebContents* source_contents, // Make the tab show up in the task manager. task_manager::WebContentsTags::CreateForTabContents(new_contents); @@ -327,7 +327,7 @@ index a1d50c2e47056..5519a1c7714d5 100644 // Don't show the page hung dialog when a HTML popup hangs because // the dialog will take the focus and immediately close the popup. RenderWidgetHostView* view = render_widget_host->GetView(); -@@ -2036,6 +2135,13 @@ void Browser::RendererUnresponsive( +@@ -2040,6 +2139,13 @@ void Browser::RendererUnresponsive( void Browser::RendererResponsive( WebContents* source, content::RenderWidgetHost* render_widget_host) { @@ -341,7 +341,7 @@ index a1d50c2e47056..5519a1c7714d5 100644 RenderWidgetHostView* view = render_widget_host->GetView(); if (view && !render_widget_host->GetView()->IsHTMLFormPopup()) { TabDialogs::FromWebContents(source)->HideHungRendererDialog( -@@ -2089,6 +2195,11 @@ void Browser::DraggableRegionsChanged( +@@ -2093,6 +2199,11 @@ void Browser::DraggableRegionsChanged( if (app_controller_) { app_controller_->DraggableRegionsChanged(regions, contents); } @@ -353,7 +353,7 @@ index a1d50c2e47056..5519a1c7714d5 100644 } void Browser::DidFinishNavigation( -@@ -2169,11 +2280,15 @@ void Browser::EnterFullscreenModeForTab( +@@ -2173,11 +2284,15 @@ void Browser::EnterFullscreenModeForTab( const blink::mojom::FullscreenOptions& options) { exclusive_access_manager_->fullscreen_controller()->EnterFullscreenModeForTab( requesting_frame, options.display_id); @@ -369,7 +369,7 @@ index a1d50c2e47056..5519a1c7714d5 100644 } bool Browser::IsFullscreenForTabOrPending(const WebContents* web_contents) { -@@ -2373,6 +2488,15 @@ void Browser::RequestMediaAccessPermission( +@@ -2377,6 +2492,15 @@ void Browser::RequestMediaAccessPermission( content::WebContents* web_contents, const content::MediaStreamRequest& request, content::MediaResponseCallback callback) { @@ -385,7 +385,7 @@ index a1d50c2e47056..5519a1c7714d5 100644 const extensions::Extension* extension = GetExtensionForOrigin(profile_, request.security_origin); MediaCaptureDevicesDispatcher::GetInstance()->ProcessMediaAccessRequest( -@@ -2917,9 +3041,11 @@ void Browser::RemoveScheduledUpdatesFor(WebContents* contents) { +@@ -2921,9 +3045,11 @@ void Browser::RemoveScheduledUpdatesFor(WebContents* contents) { // Browser, Getters for UI (private): StatusBubble* Browser::GetStatusBubble() { @@ -398,7 +398,7 @@ index a1d50c2e47056..5519a1c7714d5 100644 } // We hide the status bar for web apps windows as this matches native -@@ -2927,6 +3053,12 @@ StatusBubble* Browser::GetStatusBubble() { +@@ -2931,6 +3057,12 @@ StatusBubble* Browser::GetStatusBubble() { // mode, as the minimal browser UI includes the status bar. if (web_app::AppBrowserController::IsWebApp(this) && !app_controller()->HasMinimalUiButtons()) { @@ -411,7 +411,7 @@ index a1d50c2e47056..5519a1c7714d5 100644 return nullptr; } -@@ -3076,6 +3208,8 @@ void Browser::SetAsDelegate(WebContents* web_contents, bool set_delegate) { +@@ -3080,6 +3212,8 @@ void Browser::SetAsDelegate(WebContents* web_contents, bool set_delegate) { BookmarkTabHelper::FromWebContents(web_contents)->RemoveObserver(this); web_contents_collection_.StopObserving(web_contents); } @@ -420,7 +420,7 @@ index a1d50c2e47056..5519a1c7714d5 100644 } void Browser::TabDetachedAtImpl(content::WebContents* contents, -@@ -3230,6 +3364,14 @@ bool Browser::PictureInPictureBrowserSupportsWindowFeature( +@@ -3234,6 +3368,14 @@ bool Browser::PictureInPictureBrowserSupportsWindowFeature( bool Browser::SupportsWindowFeatureImpl(WindowFeature feature, bool check_can_support) const { @@ -436,7 +436,7 @@ index a1d50c2e47056..5519a1c7714d5 100644 case TYPE_NORMAL: return NormalBrowserSupportsWindowFeature(feature, check_can_support); diff --git chrome/browser/ui/browser.h chrome/browser/ui/browser.h -index af562dfe07909..c81b2b05a85df 100644 +index a8581389a1a44..43f864f7210e8 100644 --- chrome/browser/ui/browser.h +++ chrome/browser/ui/browser.h @@ -22,6 +22,7 @@ @@ -501,7 +501,7 @@ index af562dfe07909..c81b2b05a85df 100644 // Get the FindBarController for this browser, creating it if it does not // yet exist. FindBarController* GetFindBarController(); -@@ -947,10 +974,18 @@ class Browser : public TabStripModelObserver, +@@ -948,10 +975,18 @@ class Browser : public TabStripModelObserver, void SetContentsBounds(content::WebContents* source, const gfx::Rect& bounds) override; void UpdateTargetURL(content::WebContents* source, const GURL& url) override; @@ -520,7 +520,7 @@ index af562dfe07909..c81b2b05a85df 100644 void BeforeUnloadFired(content::WebContents* source, bool proceed, bool* proceed_to_fire_unload) override; -@@ -1292,6 +1327,10 @@ class Browser : public TabStripModelObserver, +@@ -1293,6 +1328,10 @@ class Browser : public TabStripModelObserver, // This Browser's window. raw_ptr window_; @@ -531,7 +531,7 @@ index af562dfe07909..c81b2b05a85df 100644 std::unique_ptr const tab_strip_model_delegate_; std::unique_ptr const tab_strip_model_; -@@ -1358,6 +1397,8 @@ class Browser : public TabStripModelObserver, +@@ -1359,6 +1398,8 @@ class Browser : public TabStripModelObserver, const std::string initial_workspace_; bool initial_visible_on_all_workspaces_state_; diff --git a/patch/patches/chrome_browser_context_menus.patch b/patch/patches/chrome_browser_context_menus.patch index d03b1a6a4..1c551fa23 100644 --- a/patch/patches/chrome_browser_context_menus.patch +++ b/patch/patches/chrome_browser_context_menus.patch @@ -1,5 +1,5 @@ diff --git chrome/browser/renderer_context_menu/render_view_context_menu.cc chrome/browser/renderer_context_menu/render_view_context_menu.cc -index e9e957b6bf1af..cc883c667f110 100644 +index 4f866d176dccf..c2abc6231c727 100644 --- chrome/browser/renderer_context_menu/render_view_context_menu.cc +++ chrome/browser/renderer_context_menu/render_view_context_menu.cc @@ -359,6 +359,18 @@ base::OnceCallback* GetMenuShownCallback() { @@ -32,7 +32,7 @@ index e9e957b6bf1af..cc883c667f110 100644 id = CollapseCommandsForUMA(id); const auto& map = GetIdcToUmaMap(type); auto it = map.find(id); -@@ -872,6 +888,14 @@ RenderViewContextMenu::RenderViewContextMenu( +@@ -879,6 +895,14 @@ RenderViewContextMenu::RenderViewContextMenu( pdf_ocr_submenu_model_ = std::make_unique(this); #endif // BUILDFLAG(ENABLE_SCREEN_AI_SERVICE) @@ -47,7 +47,7 @@ index e9e957b6bf1af..cc883c667f110 100644 observers_.AddObserver(&autofill_context_menu_manager_); } -@@ -1347,6 +1371,12 @@ void RenderViewContextMenu::InitMenu() { +@@ -1354,6 +1378,12 @@ void RenderViewContextMenu::InitMenu() { autofill::SuggestionHidingReason::kContextMenuOpened); } } @@ -60,7 +60,7 @@ index e9e957b6bf1af..cc883c667f110 100644 } Profile* RenderViewContextMenu::GetProfile() const { -@@ -3571,6 +3601,26 @@ void RenderViewContextMenu::RegisterExecutePluginActionCallbackForTesting( +@@ -3578,6 +3608,26 @@ void RenderViewContextMenu::RegisterExecutePluginActionCallbackForTesting( execute_plugin_action_callback_ = std::move(cb); } diff --git a/patch/patches/chrome_runtime.patch b/patch/patches/chrome_runtime.patch index 47c42f9e8..c23325bc2 100644 --- a/patch/patches/chrome_runtime.patch +++ b/patch/patches/chrome_runtime.patch @@ -594,7 +594,7 @@ index 6c9208d7b7907..77f049cc7483c 100644 #endif diff --git chrome/browser/prefs/browser_prefs.cc chrome/browser/prefs/browser_prefs.cc -index 750d634f641b1..86220ec515c0c 100644 +index 21f6c6f5edc95..3a5a83dac9f27 100644 --- chrome/browser/prefs/browser_prefs.cc +++ chrome/browser/prefs/browser_prefs.cc @@ -16,6 +16,7 @@ @@ -616,7 +616,7 @@ index 750d634f641b1..86220ec515c0c 100644 #if BUILDFLAG(ENABLE_EXTENSIONS) #include "chrome/browser/accessibility/animation_policy_prefs.h" #include "chrome/browser/apps/platform_apps/shortcut_manager.h" -@@ -1820,7 +1825,8 @@ void RegisterLocalState(PrefRegistrySimple* registry) { +@@ -1827,7 +1832,8 @@ void RegisterLocalState(PrefRegistrySimple* registry) { #endif // BUILDFLAG(GOOGLE_CHROME_BRANDING) #endif // BUILDFLAG(IS_WIN) @@ -626,7 +626,7 @@ index 750d634f641b1..86220ec515c0c 100644 downgrade::RegisterPrefs(registry); #endif -@@ -1864,6 +1870,11 @@ void RegisterLocalState(PrefRegistrySimple* registry) { +@@ -1871,6 +1877,11 @@ void RegisterLocalState(PrefRegistrySimple* registry) { // This is intentionally last. RegisterLocalStatePrefsForMigration(registry); @@ -638,7 +638,7 @@ index 750d634f641b1..86220ec515c0c 100644 } // Register prefs applicable to all profiles. -@@ -2317,6 +2328,10 @@ void RegisterUserProfilePrefs(user_prefs::PrefRegistrySyncable* registry, +@@ -2326,6 +2337,10 @@ void RegisterUserProfilePrefs(user_prefs::PrefRegistrySyncable* registry, const std::string& locale) { RegisterProfilePrefs(registry, locale); diff --git a/patch/patches/content_2015.patch b/patch/patches/content_2015.patch index 8eee1595b..9e61528a1 100644 --- a/patch/patches/content_2015.patch +++ b/patch/patches/content_2015.patch @@ -12,10 +12,10 @@ index 2068552edfba8..6ef07a0a5b7fa 100644 version.Set("V8-Version", V8_VERSION_STRING); std::string host = info.GetHeaderValue("host"); diff --git content/browser/loader/navigation_url_loader_impl.cc content/browser/loader/navigation_url_loader_impl.cc -index eef1951861e8b..4800ef3400623 100644 +index 4909784a9f1e3..ef4e4414a0a9b 100644 --- content/browser/loader/navigation_url_loader_impl.cc +++ content/browser/loader/navigation_url_loader_impl.cc -@@ -850,7 +850,7 @@ NavigationURLLoaderImpl::CreateNonNetworkLoaderFactory( +@@ -852,7 +852,7 @@ NavigationURLLoaderImpl::CreateNonNetworkLoaderFactory( mojo::PendingRemote terminal_external_protocol; bool handled = GetContentClient()->browser()->HandleExternalProtocol( @@ -24,7 +24,7 @@ index eef1951861e8b..4800ef3400623 100644 frame_tree_node->frame_tree_node_id(), navigation_ui_data, request_info.is_primary_main_frame, frame_tree_node->IsInFencedFrameTree(), request_info.sandbox_flags, -@@ -862,6 +862,21 @@ NavigationURLLoaderImpl::CreateNonNetworkLoaderFactory( +@@ -864,6 +864,21 @@ NavigationURLLoaderImpl::CreateNonNetworkLoaderFactory( *request_info.initiator_document_token) : nullptr, &terminal_external_protocol);