diff --git a/CHROMIUM_BUILD_COMPATIBILITY.txt b/CHROMIUM_BUILD_COMPATIBILITY.txt index 4d351d98f..c83aef8ca 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/121.0.6167.16', + 'chromium_checkout': 'refs/tags/121.0.6167.57', 'depot_tools_checkout': '6444de14d1' } diff --git a/patch/patches/chrome_browser.patch b/patch/patches/chrome_browser.patch index 0529d5689..f356506be 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 6572022524828..f39800b4a7da2 100644 +index 655429c1daa7b..1fa943bd41787 100644 --- chrome/browser/BUILD.gn +++ chrome/browser/BUILD.gn @@ -11,6 +11,7 @@ import("//build/config/compiler/pgo/pgo.gni") diff --git a/patch/patches/chrome_browser_background_mode_1100085.patch b/patch/patches/chrome_browser_background_mode_1100085.patch index 34e31b0b0..5479362bc 100644 --- a/patch/patches/chrome_browser_background_mode_1100085.patch +++ b/patch/patches/chrome_browser_background_mode_1100085.patch @@ -52,7 +52,7 @@ index af96779d25b87..4ef9f7945136c 100644 std::unique_ptr manager) override; #endif diff --git chrome/browser/lifetime/browser_close_manager.cc chrome/browser/lifetime/browser_close_manager.cc -index 1fbc225de7b84..55847e48ed0c2 100644 +index f9f2936904a4a..a44a00b978a2b 100644 --- chrome/browser/lifetime/browser_close_manager.cc +++ chrome/browser/lifetime/browser_close_manager.cc @@ -157,12 +157,14 @@ void BrowserCloseManager::CloseBrowsers() { diff --git a/patch/patches/chrome_browser_browser.patch b/patch/patches/chrome_browser_browser.patch index f88506d59..3372c709c 100644 --- a/patch/patches/chrome_browser_browser.patch +++ b/patch/patches/chrome_browser_browser.patch @@ -75,7 +75,7 @@ index d64ccdc765368..5e8f892ff793d 100644 } diff --git chrome/browser/ui/BUILD.gn chrome/browser/ui/BUILD.gn -index fc880e0dd1eb8..d8b3e4e21d092 100644 +index 085d8472a7e0e..979ac6fb517dd 100644 --- chrome/browser/ui/BUILD.gn +++ chrome/browser/ui/BUILD.gn @@ -9,6 +9,7 @@ import("//build/config/compiler/compiler.gni") @@ -105,7 +105,7 @@ index fc880e0dd1eb8..d8b3e4e21d092 100644 "//chrome:resources", "//chrome:strings", "//chrome/app:chrome_dll_resources", -@@ -2863,6 +2869,8 @@ static_library("ui") { +@@ -2873,6 +2879,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", @@ -114,7 +114,7 @@ index fc880e0dd1eb8..d8b3e4e21d092 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", -@@ -4874,8 +4882,6 @@ static_library("ui") { +@@ -4884,8 +4892,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", @@ -123,7 +123,7 @@ index fc880e0dd1eb8..d8b3e4e21d092 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", -@@ -6605,6 +6611,7 @@ static_library("ui") { +@@ -6615,6 +6621,7 @@ static_library("ui") { if (enable_printing) { deps += [ "//components/printing/browser", diff --git a/patch/patches/chrome_runtime_views.patch b/patch/patches/chrome_runtime_views.patch index b7f2666fa..80408da6d 100644 --- a/patch/patches/chrome_runtime_views.patch +++ b/patch/patches/chrome_runtime_views.patch @@ -1,5 +1,5 @@ diff --git chrome/browser/ui/browser_command_controller.cc chrome/browser/ui/browser_command_controller.cc -index 7d57988659286..576550dd75111 100644 +index 2abd329e1ba7d..e812968372741 100644 --- chrome/browser/ui/browser_command_controller.cc +++ chrome/browser/ui/browser_command_controller.cc @@ -400,6 +400,7 @@ bool BrowserCommandController::ExecuteCommandWithDisposition( @@ -41,10 +41,10 @@ index 7d57988659286..576550dd75111 100644 bool BrowserCommandController::IsWebAppOrCustomTab() const { diff --git chrome/browser/ui/toolbar/app_menu_model.cc chrome/browser/ui/toolbar/app_menu_model.cc -index 6ce427cb564af..8a59dc84c75ec 100644 +index 751877c018c32..f33f9ae768e74 100644 --- chrome/browser/ui/toolbar/app_menu_model.cc +++ chrome/browser/ui/toolbar/app_menu_model.cc -@@ -596,6 +596,57 @@ SaveAndShareSubMenuModel::SaveAndShareSubMenuModel( +@@ -597,6 +597,57 @@ SaveAndShareSubMenuModel::SaveAndShareSubMenuModel( } } @@ -102,7 +102,7 @@ index 6ce427cb564af..8a59dc84c75ec 100644 } // namespace //////////////////////////////////////////////////////////////////////////////// -@@ -1481,7 +1532,7 @@ bool AppMenuModel::IsCommandIdChecked(int command_id) const { +@@ -1496,7 +1547,7 @@ bool AppMenuModel::IsCommandIdChecked(int command_id) const { return false; } @@ -111,7 +111,7 @@ index 6ce427cb564af..8a59dc84c75ec 100644 GlobalError* error = GlobalErrorServiceFactory::GetForProfile(browser_->profile()) ->GetGlobalErrorByMenuItemCommandID(command_id); -@@ -1496,6 +1547,30 @@ bool AppMenuModel::IsCommandIdEnabled(int command_id) const { +@@ -1511,6 +1562,30 @@ bool AppMenuModel::IsCommandIdEnabled(int command_id) const { } } @@ -142,7 +142,7 @@ index 6ce427cb564af..8a59dc84c75ec 100644 bool AppMenuModel::IsCommandIdAlerted(int command_id) const { if (command_id == IDC_VIEW_PASSWORDS || command_id == IDC_SHOW_PASSWORD_MANAGER) { -@@ -1689,11 +1764,15 @@ void AppMenuModel::Build() { +@@ -1676,11 +1751,15 @@ void AppMenuModel::Build() { kDefaultIconSize)); } @@ -163,7 +163,7 @@ index 6ce427cb564af..8a59dc84c75ec 100644 AddItemWithStringId(IDC_PRINT, IDS_PRINT); -@@ -1799,9 +1878,13 @@ void AppMenuModel::Build() { +@@ -1786,9 +1865,13 @@ void AppMenuModel::Build() { kMoreToolsMenuItem); if (!features::IsChromeRefresh2023()) { @@ -180,7 +180,7 @@ index 6ce427cb564af..8a59dc84c75ec 100644 } if (!features::IsChromeRefresh2023()) { -@@ -1889,6 +1972,11 @@ void AppMenuModel::Build() { +@@ -1876,6 +1959,11 @@ void AppMenuModel::Build() { SetCommandIcon(this, IDC_EXIT, kExitMenuIcon); } @@ -193,7 +193,7 @@ index 6ce427cb564af..8a59dc84c75ec 100644 } diff --git chrome/browser/ui/toolbar/app_menu_model.h chrome/browser/ui/toolbar/app_menu_model.h -index 55425f15d49fa..06cb8ed2acaa1 100644 +index a82bbe396356c..5c783ac0f3767 100644 --- chrome/browser/ui/toolbar/app_menu_model.h +++ chrome/browser/ui/toolbar/app_menu_model.h @@ -215,6 +215,7 @@ class AppMenuModel : public ui::SimpleMenuModel, @@ -363,10 +363,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 79a1220f51d81..1f43f36cc2743 100644 +index 4273a5f004935..a46cdb993474b 100644 --- chrome/browser/ui/views/frame/browser_view.cc +++ chrome/browser/ui/views/frame/browser_view.cc -@@ -342,11 +342,10 @@ using content::NativeWebKeyboardEvent; +@@ -343,11 +343,10 @@ using content::NativeWebKeyboardEvent; using content::WebContents; using web_modal::WebContentsModalDialogHost; @@ -381,7 +381,7 @@ index 79a1220f51d81..1f43f36cc2743 100644 #if BUILDFLAG(IS_CHROMEOS_ASH) // UMA histograms that record animation smoothness for tab loading animation. -@@ -861,11 +860,21 @@ class BrowserView::AccessibilityModeObserver : public ui::AXModeObserver { +@@ -862,11 +861,21 @@ class BrowserView::AccessibilityModeObserver : public ui::AXModeObserver { /////////////////////////////////////////////////////////////////////////////// // BrowserView, public: @@ -402,9 +402,9 @@ index 79a1220f51d81..1f43f36cc2743 100644 + browser_ = std::move(browser); + // Store the actions so that the access is available for other classes. - if (base::FeatureList::IsEnabled(features::kSidePanelPinning)) { + if (features::IsSidePanelPinningEnabled()) { browser_->SetUserData(BrowserActions::UserDataKey(), -@@ -962,8 +971,15 @@ BrowserView::BrowserView(std::unique_ptr browser) +@@ -963,8 +972,15 @@ BrowserView::BrowserView(std::unique_ptr browser) contents_container->SetLayoutManager(std::make_unique( devtools_web_view_, contents_web_view_)); @@ -422,7 +422,7 @@ index 79a1220f51d81..1f43f36cc2743 100644 contents_separator_ = top_container_->AddChildView(std::make_unique()); -@@ -1037,7 +1053,9 @@ BrowserView::~BrowserView() { +@@ -1038,7 +1054,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. @@ -432,7 +432,7 @@ index 79a1220f51d81..1f43f36cc2743 100644 // Stop the animation timer explicitly here to avoid running it in a nested // message loop, which may run by Browser destructor. -@@ -1051,12 +1069,14 @@ BrowserView::~BrowserView() { +@@ -1052,12 +1070,14 @@ BrowserView::~BrowserView() { // child views and it is an observer for avatar toolbar button if any. autofill_bubble_handler_.reset(); @@ -447,7 +447,7 @@ index 79a1220f51d81..1f43f36cc2743 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. -@@ -1074,7 +1094,9 @@ BrowserView::~BrowserView() { +@@ -1075,7 +1095,9 @@ BrowserView::~BrowserView() { // `SidePanelUI::RemoveSidePanelUIForBrowser()` deletes the // SidePanelCoordinator. @@ -457,7 +457,7 @@ index 79a1220f51d81..1f43f36cc2743 100644 } // static -@@ -1949,9 +1971,14 @@ void BrowserView::OnExclusiveAccessUserInput() { +@@ -1950,9 +1972,14 @@ void BrowserView::OnExclusiveAccessUserInput() { bool BrowserView::ShouldHideUIForFullscreen() const { // Immersive mode needs UI for the slide-down top panel. @@ -473,7 +473,7 @@ index 79a1220f51d81..1f43f36cc2743 100644 return frame_->GetFrameView()->ShouldHideTopUIForFullscreen(); } -@@ -3060,7 +3087,8 @@ DownloadShelf* BrowserView::GetDownloadShelf() { +@@ -3065,7 +3092,8 @@ DownloadShelf* BrowserView::GetDownloadShelf() { } DownloadBubbleUIController* BrowserView::GetDownloadBubbleUIController() { @@ -483,7 +483,7 @@ index 79a1220f51d81..1f43f36cc2743 100644 if (auto* download_button = toolbar_button_provider_->GetDownloadButton()) return download_button->bubble_controller(); return nullptr; -@@ -3611,7 +3639,8 @@ void BrowserView::ReparentTopContainerForEndOfImmersive() { +@@ -3616,7 +3644,8 @@ void BrowserView::ReparentTopContainerForEndOfImmersive() { if (top_container()->parent() == this) return; @@ -493,7 +493,7 @@ index 79a1220f51d81..1f43f36cc2743 100644 top_container()->DestroyLayer(); AddChildViewAt(top_container(), 0); EnsureFocusOrder(); -@@ -4073,11 +4102,38 @@ void BrowserView::GetAccessiblePanes(std::vector* panes) { +@@ -4078,11 +4107,38 @@ void BrowserView::GetAccessiblePanes(std::vector* panes) { bool BrowserView::ShouldDescendIntoChildForEventHandling( gfx::NativeView child, const gfx::Point& location) { @@ -534,7 +534,7 @@ index 79a1220f51d81..1f43f36cc2743 100644 // Draggable regions are defined relative to the web contents. gfx::Point point_in_contents_web_view_coords(location); views::View::ConvertPointToTarget(GetWidget()->GetRootView(), -@@ -4086,7 +4142,7 @@ bool BrowserView::ShouldDescendIntoChildForEventHandling( +@@ -4091,7 +4147,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. @@ -543,7 +543,7 @@ index 79a1220f51d81..1f43f36cc2743 100644 point_in_contents_web_view_coords.x(), point_in_contents_web_view_coords.y()) || WidgetOwnedByAnchorContainsPoint(point_in_contents_web_view_coords); -@@ -4194,8 +4250,10 @@ void BrowserView::Layout() { +@@ -4199,8 +4255,10 @@ void BrowserView::Layout() { // TODO(jamescook): Why was this in the middle of layout code? toolbar_->location_bar()->omnibox_view()->SetFocusBehavior( @@ -556,7 +556,7 @@ index 79a1220f51d81..1f43f36cc2743 100644 #if BUILDFLAG(IS_CHROMEOS_ASH) // In chromeOS ash we round the bottom two corners of the browser frame by -@@ -4273,6 +4331,11 @@ void BrowserView::AddedToWidget() { +@@ -4278,6 +4336,11 @@ void BrowserView::AddedToWidget() { SetThemeProfileForWindow(GetNativeWindow(), browser_->profile()); #endif @@ -568,7 +568,7 @@ index 79a1220f51d81..1f43f36cc2743 100644 toolbar_->Init(); // TODO(pbos): Investigate whether the side panels should be creatable when -@@ -4321,13 +4384,9 @@ void BrowserView::AddedToWidget() { +@@ -4326,13 +4389,9 @@ void BrowserView::AddedToWidget() { EnsureFocusOrder(); @@ -584,7 +584,7 @@ index 79a1220f51d81..1f43f36cc2743 100644 using_native_frame_ = frame_->ShouldUseNativeFrame(); MaybeInitializeWebUITabStrip(); -@@ -4744,7 +4803,8 @@ void BrowserView::ProcessFullscreen(bool fullscreen, +@@ -4749,7 +4808,8 @@ void BrowserView::ProcessFullscreen(bool fullscreen, // Undo our anti-jankiness hacks and force a re-layout. in_process_fullscreen_ = false; ToolbarSizeChanged(false); @@ -594,7 +594,7 @@ index 79a1220f51d81..1f43f36cc2743 100644 } bool BrowserView::ShouldUseImmersiveFullscreenForUrl(const GURL& url) const { -@@ -5142,6 +5202,8 @@ Profile* BrowserView::GetProfile() { +@@ -5147,6 +5207,8 @@ Profile* BrowserView::GetProfile() { } void BrowserView::UpdateUIForTabFullscreen() { @@ -603,7 +603,7 @@ index 79a1220f51d81..1f43f36cc2743 100644 frame()->GetFrameView()->UpdateFullscreenTopUI(); } -@@ -5164,6 +5226,8 @@ void BrowserView::HideDownloadShelf() { +@@ -5169,6 +5231,8 @@ void BrowserView::HideDownloadShelf() { } bool BrowserView::CanUserExitFullscreen() const { @@ -853,7 +853,7 @@ index 9536b049aeb9d..30f3091939675 100644 } diff --git chrome/browser/ui/views/toolbar/toolbar_view.cc chrome/browser/ui/views/toolbar/toolbar_view.cc -index f7f763cac17f4..788185cc57cae 100644 +index f43c6d4d5f030..cd85d5ddda2d8 100644 --- chrome/browser/ui/views/toolbar/toolbar_view.cc +++ chrome/browser/ui/views/toolbar/toolbar_view.cc @@ -190,7 +190,7 @@ class TabstripLikeBackground : public views::Background { @@ -938,13 +938,12 @@ index f7f763cac17f4..788185cc57cae 100644 send_tab_to_self_button = std::make_unique( browser_view_); -@@ -443,7 +460,8 @@ void ToolbarView::Init() { +@@ -443,7 +460,7 @@ void ToolbarView::Init() { send_tab_to_self_button_ = container_view_->AddChildView(std::move(send_tab_to_self_button)); -- if (!base::FeatureList::IsEnabled(features::kSidePanelPinning)) { -+ if (!base::FeatureList::IsEnabled(features::kSidePanelPinning) && -+ BUTTON_VISIBLE(kSidePanel)) { +- if (!features::IsSidePanelPinningEnabled()) { ++ if (!features::IsSidePanelPinningEnabled() && BUTTON_VISIBLE(kSidePanel)) { if (companion::IsCompanionFeatureEnabled()) { side_panel_container_ = container_view_->AddChildView( std::make_unique(browser_view_)); diff --git a/patch/patches/web_contents_1257_1565.patch b/patch/patches/web_contents_1257_1565.patch index a87e7697d..927ae2d55 100644 --- a/patch/patches/web_contents_1257_1565.patch +++ b/patch/patches/web_contents_1257_1565.patch @@ -1,5 +1,5 @@ diff --git content/browser/web_contents/web_contents_impl.cc content/browser/web_contents/web_contents_impl.cc -index be3b154fa5155..9887b0e3d0419 100644 +index df5ea398bdca4..83a5b827f321b 100644 --- content/browser/web_contents/web_contents_impl.cc +++ content/browser/web_contents/web_contents_impl.cc @@ -3450,6 +3450,12 @@ void WebContentsImpl::Init(const WebContents::CreateParams& params, @@ -33,7 +33,7 @@ index be3b154fa5155..9887b0e3d0419 100644 } void WebContentsImpl::RenderWidgetDeleted( -@@ -4455,6 +4465,15 @@ FrameTree* WebContentsImpl::CreateNewWindow( +@@ -4460,6 +4470,15 @@ FrameTree* WebContentsImpl::CreateNewWindow( create_params.picture_in_picture_options = *(params.pip_options); } @@ -49,7 +49,7 @@ index be3b154fa5155..9887b0e3d0419 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. -@@ -8613,6 +8632,9 @@ void WebContentsImpl::SetFocusedFrame(FrameTreeNode* node, +@@ -8618,6 +8637,9 @@ void WebContentsImpl::SetFocusedFrame(FrameTreeNode* node, } CloseListenerManager::DidChangeFocusedFrame(this);