Revert "Reland "Revert "Enable the tab search toolbar button on top of tree"""
This reverts commit ad20bd0624fb34e04e07a6fc85bc0db8431f33b1.
Reason for revert: Seems to be causing failures https://ci.chromium.org/ui/p/chromium/builders/ci/Win10%20Tests%20x64/106583/overview and https://ci.chromium.org/ui/p/chrome/builders/ci/linux-chromeos-chrome/56116/overview
Original change's description:
> Reland "Revert "Enable the tab search toolbar button on top of tree""
>
> This reverts commit cf1445a0b75053262d7161c2a56ee19dc59491c2.
>
> Reason for revert: Reland with fixes to explicitly enable features in
> certain tests.
>
> Passing tests:
> https://ci.chromium.org/ui/inv/u-agale-2026-01-22-15-33-00-dfa14a0fc6b4f308
> https://ci.chromium.org/ui/inv/u-agale-2026-01-22-16-35-00-d4237842e23ebd3c
> https://ci.chromium.org/ui/inv/u-agale-2026-01-22-16-39-00-5683ded652d1058c
> https://ci.chromium.org/ui/inv/u-agale-2026-01-22-14-39-00-eb242560103daec3
>
> Original change's description:
> > Revert "Revert "Enable the tab search toolbar button on top of tree""
> >
> > This reverts commit 780d1cf5c49a03e7e76e91345f79eeea506f83ba.
> >
> > Reason for revert: causing test failure https://ci.chromium.org/ui/p/chrome/builders/ci/linux64-rel-ready/61987/overview
> >
> > Original change's description:
> > > Revert "Enable the tab search toolbar button on top of tree"
> > >
> > > This reverts commit 2b2053332bf837d141e520f3ea43f9e16d744ce3.
> > >
> > > Reason for revert: Delaying the full launch
> > >
> > > Original change's description:
> > > > Enable the tab search toolbar button on top of tree
> > > >
> > > > Change-Id: I370e9128137d696ed8d4f6ecdfbd4b8225bc5b7d
> > > > Bug: 471062209, 471184045
> > > > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7301209
> > > > Reviewed-by: David Pennington <dpenning@chromium.org>
> > > > Reviewed-by: Carlos Knippschild <carlosk@chromium.org>
> > > > Commit-Queue: Alison Gale <agale@chromium.org>
> > > > Cr-Commit-Position: refs/heads/main@{#1562157}
> > >
> > > Bypass-Check-License: Restoring deleted file
> > > Bug: 471062209, 471184045, 476427521
> > > Change-Id: I29371b2f2d3b132a1b19cf1e67b3a4c18bd4c12c
> > > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7496812
> > > Commit-Queue: Alison Gale <agale@chromium.org>
> > > Reviewed-by: David Pennington <dpenning@chromium.org>
> > > Reviewed-by: Carlos Knippschild <carlosk@chromium.org>
> > > Cr-Commit-Position: refs/heads/main@{#1572419}
> >
> > Bug: 471062209, 471184045, 476427521
> > No-Presubmit: true
> > No-Tree-Checks: true
> > No-Try: true
> > Change-Id: Iad36d3797a709be2868b93c5b83c635c33c780ab
> > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7505970
> > Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
> > Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
> > Auto-Submit: Xinghui Lu <xinghuilu@chromium.org>
> > Owners-Override: Xinghui Lu <xinghuilu@chromium.org>
> > Cr-Commit-Position: refs/heads/main@{#1572481}
>
> Bug: 471062209, 471184045, 476427521
> Change-Id: I57e7756438de20573d501dbcdd4dbe3f3df5e470
> Bypass-Check-License: Reverting files
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7504383
> Reviewed-by: Carlos Knippschild <carlosk@chromium.org>
> Reviewed-by: David Pennington <dpenning@chromium.org>
> Commit-Queue: Alison Gale <agale@chromium.org>
> Cr-Commit-Position: refs/heads/main@{#1573182}
Bug: 471062209, 471184045, 476427521
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Change-Id: I49ebed3ba07beed7bf198c2b7b980fa47a0fd257
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7512527
Commit-Queue: Riley Tatum <rtatum@google.com>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Reviewed-by: Alison Gale <agale@chromium.org>
Owners-Override: Riley Tatum <rtatum@google.com>
Reviewed-by: David Pennington <dpenning@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1573358}
diff --git a/chrome/browser/glic/browser_ui/glic_button_controller_unittest.cc b/chrome/browser/glic/browser_ui/glic_button_controller_unittest.cc
index 734803b..6f7e39a 100644
--- a/chrome/browser/glic/browser_ui/glic_button_controller_unittest.cc
+++ b/chrome/browser/glic/browser_ui/glic_button_controller_unittest.cc
@@ -150,12 +150,7 @@
void SetUp() override {
// Enable kGlic and kTabstripComboButton by default for testing.
scoped_feature_list_.InitWithFeatures(
- {
- features::kGlic,
- features::kGlicRollout,
- features::kTabstripComboButton,
- },
- {});
+ {features::kGlic, features::kGlicRollout}, {});
raw_ptr<TestingProfileManager> testing_profile_manager =
TestingBrowserProcess::GetGlobal()->SetUpGlobalFeaturesForTesting(
diff --git a/chrome/browser/glic/fre/glic_fre_controller_unittest.cc b/chrome/browser/glic/fre/glic_fre_controller_unittest.cc
index a6604dc5..e6b3107 100644
--- a/chrome/browser/glic/fre/glic_fre_controller_unittest.cc
+++ b/chrome/browser/glic/fre/glic_fre_controller_unittest.cc
@@ -28,7 +28,7 @@
public:
GlicFreControllerTest() {
scoped_feature_list_.InitWithFeatures(
- /*enabled_features=*/{features::kGlic, features::kTabstripComboButton},
+ /*enabled_features=*/{features::kGlic},
/*disabled_features=*/{});
}
diff --git a/chrome/browser/glic/public/glic_enabling_unittest.cc b/chrome/browser/glic/public/glic_enabling_unittest.cc
index 7b1efccb..7f68ddf 100644
--- a/chrome/browser/glic/public/glic_enabling_unittest.cc
+++ b/chrome/browser/glic/public/glic_enabling_unittest.cc
@@ -61,7 +61,6 @@
scoped_feature_list_.InitWithFeatures(
{
features::kGlic,
- features::kTabstripComboButton,
#if BUILDFLAG(IS_CHROMEOS)
chromeos::features::kFeatureManagementGlic,
#endif // BUILDFLAG(IS_CHROMEOS)
@@ -210,7 +209,6 @@
/*enabled_features=*/
{
features::kGlic,
- features::kTabstripComboButton,
#if BUILDFLAG(IS_CHROMEOS)
chromeos::features::kFeatureManagementGlic,
#endif // BUILDFLAG(IS_CHROMEOS)
@@ -273,8 +271,7 @@
// Disable rollout check and user status check complexities for these tests.
// We already have kGlic enabled from the base class.
scoped_feature_list_.InitWithFeatures(
- /*enabled_features=*/{features::kGlicRollout,
- features::kTabstripComboButton},
+ /*enabled_features=*/{features::kGlicRollout},
/*disabled_features=*/{features::kGlicUserStatusCheck});
// Make sure we have a primary account so we don't fail the "capable" check.
@@ -345,16 +342,14 @@
GlicEnablingProfileReadyStateTestBase::SetUp();
if (GetParam()) {
scoped_feature_list_.InitWithFeatures(
- /*enabled_features=*/
- {features::kGlicTrustFirstOnboarding, features::kGlicMultiInstance,
- mojom::features::kGlicMultiTab, features::kGlicMultitabUnderlines,
- features::kTabstripComboButton},
+ /*enabled_features=*/{features::kGlicTrustFirstOnboarding,
+ features::kGlicMultiInstance,
+ mojom::features::kGlicMultiTab,
+ features::kGlicMultitabUnderlines},
/*disabled_features=*/{});
} else {
- scoped_feature_list_.InitWithFeatures(
- /*enabled_features=*/
- {features::kTabstripComboButton}, /*disabled_features=*/
- {features::kGlicTrustFirstOnboarding});
+ scoped_feature_list_.InitAndDisableFeature(
+ features::kGlicTrustFirstOnboarding);
}
}
diff --git a/chrome/browser/glic/test_support/glic_test_environment.cc b/chrome/browser/glic/test_support/glic_test_environment.cc
index 2cc9d48..947295e 100644
--- a/chrome/browser/glic/test_support/glic_test_environment.cc
+++ b/chrome/browser/glic/test_support/glic_test_environment.cc
@@ -112,7 +112,6 @@
std::vector<base::test::FeatureRef> GetDefaultEnabledGlicTestFeatures() {
return {features::kGlic, features::kGlicRollout,
- features::kTabstripComboButton,
#if BUILDFLAG(IS_CHROMEOS)
chromeos::features::kFeatureManagementGlic
#endif // BUILDFLAG(IS_CHROMEOS)
diff --git a/chrome/browser/ui/toolbar/app_menu_model_unittest.cc b/chrome/browser/ui/toolbar/app_menu_model_unittest.cc
index b920f44..6786a1b 100644
--- a/chrome/browser/ui/toolbar/app_menu_model_unittest.cc
+++ b/chrome/browser/ui/toolbar/app_menu_model_unittest.cc
@@ -344,9 +344,7 @@
#if BUILDFLAG(ENABLE_GLIC)
TEST_F(AppMenuModelTest, GlicItem) {
feature_list_.Reset();
- feature_list_.InitWithFeatures(
- {features::kGlic, features::kGlicRollout, features::kTabstripComboButton},
- {});
+ feature_list_.InitWithFeatures({features::kGlic, features::kGlicRollout}, {});
TestLogMetricsAppMenuModel model(this, browser());
model.Init();
@@ -709,25 +707,7 @@
EXPECT_FALSE(new_model.GetLabelAt(menu_index).empty());
}
-class TabSearchMenuModelTest : public AppMenuModelTest {
- public:
- TabSearchMenuModelTest() = default;
- ~TabSearchMenuModelTest() override = default;
-
- void SetUp() override {
- scoped_feature_list_.InitWithFeaturesAndParameters(
- /*enabled_features=*/
- {{features::kTabstripComboButton,
- {{"tab_search_toolbar_button", "true"}}}},
- /*disabled_features=*/{});
- AppMenuModelTest::SetUp();
- }
-
- private:
- base::test::ScopedFeatureList scoped_feature_list_;
-};
-
-TEST_F(TabSearchMenuModelTest, TabSearchItem) {
+TEST_F(AppMenuModelTest, TabSearchItem) {
AppMenuModel model(this, browser());
model.Init();
ToolsMenuModel toolModel(&model, browser());
diff --git a/chrome/browser/ui/ui_features.cc b/chrome/browser/ui/ui_features.cc
index 0c21b156..3e2daaf0 100644
--- a/chrome/browser/ui/ui_features.cc
+++ b/chrome/browser/ui/ui_features.cc
@@ -499,30 +499,9 @@
"tab_search_toolbar_button",
true);
-static std::string GetCountryCode() {
- if (!g_browser_process || !g_browser_process->variations_service()) {
- return std::string();
- }
- std::string country_code =
- g_browser_process->variations_service()->GetStoredPermanentCountry();
- if (country_code.empty()) {
- country_code = g_browser_process->variations_service()->GetLatestCountry();
- }
- return country_code;
-}
-
+// TODO(crbug.com/471062209): Clean up all callers of this function.
bool HasTabSearchToolbarButton() {
- static const bool is_tab_search_moving = [] {
- if (GetCountryCode() == "us" &&
- base::FeatureList::IsEnabled(
- features::kLaunchedTabSearchToolbarButton)) {
- return true;
- }
- return base::FeatureList::IsEnabled(features::kTabstripComboButton) &&
- features::kTabSearchToolbarButton.Get();
- }();
-
- return is_tab_search_moving;
+ return true;
}
BASE_FEATURE(kNonMilestoneUpdateToast, base::FEATURE_ENABLED_BY_DEFAULT);
diff --git a/chrome/browser/ui/views/frame/horizontal_tab_strip_region_view_browsertest.cc b/chrome/browser/ui/views/frame/horizontal_tab_strip_region_view_browsertest.cc
index 16b5189..a2de549f 100644
--- a/chrome/browser/ui/views/frame/horizontal_tab_strip_region_view_browsertest.cc
+++ b/chrome/browser/ui/views/frame/horizontal_tab_strip_region_view_browsertest.cc
@@ -292,34 +292,3 @@
EXPECT_FALSE(
tab_strip()->tab_at(tab_strip()->GetModelCount() - 1)->GetVisible());
}
-
-class HorizontalTabStripRegionViewWithTabstripTabSearchTest
- : public HorizontalTabStripRegionViewTest {
- public:
- void SetUpCommandLine(base::CommandLine* command_line) override {
- scoped_feature_list_.InitWithFeaturesAndParameters(
- {}, {features::kLaunchedTabSearchToolbarButton,
- features::kTabstripComboButton});
- HorizontalTabStripRegionViewTest::SetUpCommandLine(command_line);
- }
-
- private:
- base::test::ScopedFeatureList scoped_feature_list_;
-};
-
-IN_PROC_BROWSER_TEST_F(HorizontalTabStripRegionViewWithTabstripTabSearchTest,
- TabSearchPositionLoggedOnConstruction) {
- using TabSearchPositionEnum =
- HorizontalTabStripRegionView::TabSearchPositionEnum;
- const bool tab_search_trailing_tabstrip =
- tabs::GetTabSearchPosition(browser()->profile()) ==
- tabs::TabSearchPosition::kTrailingHorizontalTabstrip;
- TabSearchPositionEnum expected_enum_val =
- tab_search_trailing_tabstrip ? TabSearchPositionEnum::kTrailing
- : TabSearchPositionEnum::kLeading;
-
- base::HistogramTester histogram_tester;
- tab_strip_region_view()->LogTabSearchPositionForTesting(); // IN-TEST
- histogram_tester.ExpectUniqueSample("Tabs.TabSearch.PositionInTabstrip2",
- expected_enum_val, 1);
-}
diff --git a/chrome/browser/ui/views/frame/horizontal_tab_strip_region_view_interactive_uitest.cc b/chrome/browser/ui/views/frame/horizontal_tab_strip_region_view_interactive_uitest.cc
index 560e7cff..f28439b 100644
--- a/chrome/browser/ui/views/frame/horizontal_tab_strip_region_view_interactive_uitest.cc
+++ b/chrome/browser/ui/views/frame/horizontal_tab_strip_region_view_interactive_uitest.cc
@@ -67,8 +67,7 @@
public:
HorizontalTabStripRegionViewBrowserTest() {
scoped_feature_list_.InitWithFeatures(
- /*enabled_features=*/{features::kTabstripComboButton,
- features::kLaunchedTabSearchToolbarButton},
+ /*enabled_features=*/{},
/*disabled_features=*/{});
}
HorizontalTabStripRegionViewBrowserTest(const HorizontalTabStripRegionViewBrowserTest&) = delete;
diff --git a/chrome/browser/ui/views/tabs/tab_search_button_browsertest.cc b/chrome/browser/ui/views/tabs/tab_search_button_browsertest.cc
deleted file mode 100644
index 9e4fa4d1..0000000
--- a/chrome/browser/ui/views/tabs/tab_search_button_browsertest.cc
+++ /dev/null
@@ -1,112 +0,0 @@
-// Copyright 2020 The Chromium Authors
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#include "chrome/browser/ui/views/tabs/tab_search_button.h"
-
-#include <vector>
-
-#include "base/feature_list.h"
-#include "base/run_loop.h"
-#include "base/task/single_thread_task_runner.h"
-#include "base/test/scoped_feature_list.h"
-#include "build/build_config.h"
-#include "chrome/browser/ui/browser.h"
-#include "chrome/browser/ui/browser_element_identifiers.h"
-#include "chrome/browser/ui/browser_tabstrip.h"
-#include "chrome/browser/ui/test/test_browser_dialog.h"
-#include "chrome/browser/ui/ui_features.h"
-#include "chrome/browser/ui/views/bubble/webui_bubble_dialog_view.h"
-#include "chrome/browser/ui/views/bubble/webui_bubble_manager.h"
-#include "chrome/browser/ui/views/frame/browser_view.h"
-#include "chrome/browser/ui/views/interaction/browser_elements_views.h"
-#include "chrome/browser/ui/views/tab_search_bubble_host.h"
-#include "chrome/browser/ui/views/tabs/tab_search_button.h"
-#include "chrome/common/chrome_features.h"
-#include "chrome/common/webui_url_constants.h"
-#include "chrome/test/base/in_process_browser_test.h"
-#include "content/public/test/browser_test.h"
-#include "ui/views/test/button_test_api.h"
-
-class TabSearchButtonBrowserTest : public InProcessBrowserTest {
- public:
- TabSearchButtonBrowserTest() {
- feature_list_.InitWithFeaturesAndParameters(
- {{features::kTabstripComboButton,
- {{"tab_search_toolbar_button", "false"}}}},
- {});
- }
-
- BrowserView* browser_view() {
- return BrowserView::GetBrowserViewForBrowser(browser());
- }
-
- TabSearchButton* tab_search_button() {
- return BrowserElementsViews::From(browser())->GetViewAs<TabSearchButton>(
- kTabSearchButtonElementId);
- }
-
- TabSearchBubbleHost* tab_search_bubble_host() {
- return browser_view()->GetTabSearchBubbleHost();
- }
-
- WebUIBubbleManager* bubble_manager() {
- return tab_search_bubble_host()->webui_bubble_manager_for_testing();
- }
-
- void RunUntilBubbleWidgetDestroyed() {
- ASSERT_NE(nullptr, bubble_manager()->GetBubbleWidget());
- base::RunLoop run_loop;
- base::SingleThreadTaskRunner::GetCurrentDefault()->PostTask(
- FROM_HERE, run_loop.QuitClosure());
- run_loop.Run();
- ASSERT_EQ(nullptr, bubble_manager()->GetBubbleWidget());
- }
-
- private:
- base::test::ScopedFeatureList feature_list_;
-};
-
-IN_PROC_BROWSER_TEST_F(TabSearchButtonBrowserTest, ButtonClickCreatesBubble) {
- ASSERT_EQ(nullptr, bubble_manager()->GetBubbleWidget());
- views::test::ButtonTestApi(tab_search_button()).NotifyDefaultMouseClick();
- ASSERT_NE(nullptr, bubble_manager()->GetBubbleWidget());
-
- tab_search_bubble_host()->CloseTabSearchBubble();
- ASSERT_TRUE(bubble_manager()->GetBubbleWidget()->IsClosed());
-
- RunUntilBubbleWidgetDestroyed();
-}
-
-class TabSearchButtonBrowserUITest : public DialogBrowserTest {
- public:
- TabSearchButtonBrowserUITest() {
- feature_list_.InitWithFeaturesAndParameters(
- {{features::kTabstripComboButton,
- {{"tab_search_toolbar_button", "false"}}}},
- {});
- }
-
- // DialogBrowserTest:
- void ShowUi(const std::string& name) override {
- AppendTab(chrome::kChromeUISettingsURL);
- AppendTab(chrome::kChromeUIHistoryURL);
- AppendTab(chrome::kChromeUIBookmarksURL);
- auto* tab_search_button =
- BrowserElementsViews::From(browser())->GetViewAs<TabSearchButton>(
- kTabSearchButtonElementId);
- views::test::ButtonTestApi(tab_search_button).NotifyDefaultMouseClick();
- }
-
- void AppendTab(std::string url) {
- chrome::AddTabAt(browser(), GURL(url), -1, true);
- }
-
- private:
- base::test::ScopedFeatureList feature_list_;
-};
-
-// Invokes a tab search bubble.
-IN_PROC_BROWSER_TEST_F(TabSearchButtonBrowserUITest, InvokeUi_default) {
- ShowAndVerifyUi();
-}
diff --git a/chrome/browser/ui/views/tabs/tab_search_container_browsertest.cc b/chrome/browser/ui/views/tabs/tab_search_container_browsertest.cc
deleted file mode 100644
index d352e84..0000000
--- a/chrome/browser/ui/views/tabs/tab_search_container_browsertest.cc
+++ /dev/null
@@ -1,550 +0,0 @@
-// Copyright 2023 The Chromium Authors
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#include "chrome/browser/ui/views/tabs/tab_search_container.h"
-
-#include "base/feature_list.h"
-#include "base/test/metrics/histogram_tester.h"
-#include "base/test/scoped_feature_list.h"
-#include "chrome/browser/optimization_guide/browser_test_util.h"
-#include "chrome/browser/profiles/profile.h"
-#include "chrome/browser/signin/identity_manager_factory.h"
-#include "chrome/browser/ui/browser.h"
-#include "chrome/browser/ui/browser_element_identifiers.h"
-#include "chrome/browser/ui/tabs/organization/tab_organization_service.h"
-#include "chrome/browser/ui/tabs/organization/tab_organization_utils.h"
-#include "chrome/browser/ui/tabs/tab_strip_model.h"
-#include "chrome/browser/ui/ui_features.h"
-#include "chrome/browser/ui/views/frame/browser_view.h"
-#include "chrome/browser/ui/views/interaction/browser_elements_views.h"
-#include "chrome/browser/ui/views/tabs/tab_search_button.h"
-#include "chrome/common/chrome_features.h"
-#include "chrome/test/base/in_process_browser_test.h"
-#include "chrome/test/views/chrome_views_test_base.h"
-#include "components/optimization_guide/core/model_execution/model_execution_features.h"
-#include "components/optimization_guide/core/optimization_guide_features.h"
-#include "components/signin/public/identity_manager/identity_test_utils.h"
-#include "content/public/test/browser_test.h"
-#include "testing/gtest/include/gtest/gtest.h"
-#include "ui/base/ui_base_features.h"
-#include "ui/events/test/event_generator.h"
-#include "ui/gfx/animation/slide_animation.h"
-#include "ui/views/test/views_test_utils.h"
-#include "ui/views/view_utils.h"
-
-namespace {
-
-using ::testing::AssertionFailure;
-using ::testing::AssertionResult;
-using ::testing::AssertionSuccess;
-
-class TabSearchContainerBrowserTest : public InProcessBrowserTest {
- public:
- TabSearchContainerBrowserTest() {
- feature_list_.InitWithFeatures(
- {features::kTabOrganization, features::kTabstripDeclutter},
- {features::kTabstripComboButton});
- TabOrganizationUtils::GetInstance()->SetIgnoreOptGuideForTesting(true);
- }
-
- TabStripModel* tab_strip_model() { return browser()->tab_strip_model(); }
-
- BrowserView* browser_view() {
- return BrowserView::GetBrowserViewForBrowser(browser());
- }
-
- TabSearchContainer* tab_search_container() {
- return BrowserElementsViews::From(browser())->GetViewAs<TabSearchContainer>(
- kTabSearchContainerElementId);
- }
-
- // Returns an assertion result that the expansion animation is closing.
- AssertionResult ExpansionAnimationIsClosing() {
- if (!tab_search_container()) {
- return AssertionFailure() << "tab_search_container is null.";
- }
- if (!tab_search_container()->animation_session_for_testing()) {
- return AssertionFailure() << "animation_session_for_testing is null.";
- }
- if (!tab_search_container()
- ->animation_session_for_testing()
- ->expansion_animation()) {
- return AssertionFailure() << "expansion_animation is null.";
- }
- return tab_search_container()
- ->animation_session_for_testing()
- ->expansion_animation()
- ->IsClosing()
- ? AssertionSuccess()
- : AssertionFailure() << "expansion_animation is not closing.";
- }
-
- protected:
- void ResetAnimation(int value) {
- if (tab_search_container()->animation_session_for_testing()) {
- tab_search_container()
- ->animation_session_for_testing()
- ->ResetOpacityAnimationForTesting(value);
- }
- if (tab_search_container()->animation_session_for_testing()) {
- tab_search_container()
- ->animation_session_for_testing()
- ->ResetExpansionAnimationForTesting(value);
- }
- if (tab_search_container()->animation_session_for_testing()) {
- tab_search_container()
- ->animation_session_for_testing()
- ->ResetFlatEdgeAnimationForTesting(value);
- }
- }
-
- private:
- base::test::ScopedFeatureList feature_list_;
-};
-
-// TODO(crbug.com/413441658): Flaky on Windows 10 builds.
-#if BUILDFLAG(IS_WIN)
-#define MAYBE_TogglesActionUIState DISABLED_TogglesActionUIState
-#else
-#define MAYBE_TogglesActionUIState TogglesActionUIState
-#endif
-IN_PROC_BROWSER_TEST_F(TabSearchContainerBrowserTest,
- MAYBE_TogglesActionUIState) {
- ASSERT_FALSE(tab_search_container()->animation_session_for_testing());
-
- TabOrganizationService* service =
- tab_search_container()->tab_organization_service_for_testing();
-
- tab_search_container()->SetLockedExpansionModeForTesting(
- LockedExpansionMode::kNone, nullptr);
- tab_strip_model()->ForceShowingModalUIForTesting(false);
- service->OnTriggerOccured(browser());
-
- ASSERT_TRUE(tab_search_container()
- ->animation_session_for_testing()
- ->expansion_animation()
- ->IsShowing());
-}
-
-// TODO(crbug.com/413441658): Flaky on Windows 10 builds.
-#if BUILDFLAG(IS_WIN)
-#define MAYBE_TogglesActionUIStateOnlyInCorrectBrowser \
- DISABLED_TogglesActionUIStateOnlyInCorrectBrowser
-#else
-#define MAYBE_TogglesActionUIStateOnlyInCorrectBrowser \
- TogglesActionUIStateOnlyInCorrectBrowser
-#endif
-IN_PROC_BROWSER_TEST_F(TabSearchContainerBrowserTest,
- MAYBE_TogglesActionUIStateOnlyInCorrectBrowser) {
- Browser* const second_browser = CreateBrowser(browser()->profile());
- TabSearchContainer* const second_search_container =
- BrowserElementsViews::From(second_browser)
- ->GetViewAs<TabSearchContainer>(kTabSearchContainerElementId);
-
- ASSERT_FALSE(second_search_container->animation_session_for_testing());
-
- TabOrganizationService* service =
- tab_search_container()->tab_organization_service_for_testing();
- // Same profile -> same service.
- ASSERT_EQ(service,
- second_search_container->tab_organization_service_for_testing());
-
- tab_search_container()->SetLockedExpansionModeForTesting(
- LockedExpansionMode::kNone, nullptr);
- tab_strip_model()->ForceShowingModalUIForTesting(false);
- second_search_container->SetLockedExpansionModeForTesting(
- LockedExpansionMode::kNone, nullptr);
- second_browser->tab_strip_model()->ForceShowingModalUIForTesting(false);
- service->OnTriggerOccured(browser());
-
- EXPECT_TRUE(tab_search_container()
- ->animation_session_for_testing()
- ->expansion_animation()
- ->IsShowing());
- EXPECT_FALSE(second_search_container->animation_session_for_testing());
-}
-
-// TODO(crbug.com/413441658): Flaky on Windows 10 builds.
-#if BUILDFLAG(IS_WIN)
-#define MAYBE_DoesntShowIfTabStripModalUIExists \
- DISABLED_DoesntShowIfTabStripModalUIExists
-#else
-#define MAYBE_DoesntShowIfTabStripModalUIExists \
- DoesntShowIfTabStripModalUIExists
-#endif
-IN_PROC_BROWSER_TEST_F(TabSearchContainerBrowserTest,
- MAYBE_DoesntShowIfTabStripModalUIExists) {
- ASSERT_FALSE(tab_search_container()->animation_session_for_testing());
-
- tab_strip_model()->ForceShowingModalUIForTesting(true);
- tab_search_container()->SetLockedExpansionModeForTesting(
- LockedExpansionMode::kNone, nullptr);
- tab_search_container()->ShowTabOrganization(
- tab_search_container()->auto_tab_group_button());
-
- EXPECT_FALSE(tab_search_container()->animation_session_for_testing());
-
- tab_strip_model()->ForceShowingModalUIForTesting(false);
- tab_search_container()->ShowTabOrganization(
- tab_search_container()->auto_tab_group_button());
-
- EXPECT_TRUE(tab_search_container()
- ->animation_session_for_testing()
- ->expansion_animation()
- ->IsShowing());
-}
-
-// TODO(crbug.com/413441658): Flaky on Windows 10 builds.
-#if BUILDFLAG(IS_WIN)
-#define MAYBE_BlocksTabStripModalUIWhileShown \
- DISABLED_BlocksTabStripModalUIWhileShown
-#else
-#define MAYBE_BlocksTabStripModalUIWhileShown BlocksTabStripModalUIWhileShown
-#endif
-IN_PROC_BROWSER_TEST_F(TabSearchContainerBrowserTest,
- MAYBE_BlocksTabStripModalUIWhileShown) {
- ASSERT_TRUE(browser()->tab_strip_model()->CanShowModalUI());
-
- tab_search_container()->SetLockedExpansionModeForTesting(
- LockedExpansionMode::kNone, nullptr);
- tab_search_container()->ShowTabOrganization(
- tab_search_container()->auto_tab_group_button());
-
- EXPECT_FALSE(browser()->tab_strip_model()->CanShowModalUI());
-
- ResetAnimation(1);
-
- tab_search_container()->GetWidget()->LayoutRootViewIfNecessary();
-
- EXPECT_FALSE(browser()->tab_strip_model()->CanShowModalUI());
-
- tab_search_container()->HideTabOrganization(
- tab_search_container()->auto_tab_group_button());
-
- EXPECT_FALSE(browser()->tab_strip_model()->CanShowModalUI());
-
- ResetAnimation(0);
-
- tab_search_container()->GetWidget()->LayoutRootViewIfNecessary();
-
- EXPECT_TRUE(browser()->tab_strip_model()->CanShowModalUI());
-}
-
-IN_PROC_BROWSER_TEST_F(TabSearchContainerBrowserTest, DelaysShow) {
- ASSERT_FALSE(tab_search_container()->animation_session_for_testing());
-
- tab_search_container()->SetLockedExpansionModeForTesting(
- LockedExpansionMode::kWillShow,
- tab_search_container()->auto_tab_group_button());
- tab_search_container()->ShowTabOrganization(
- tab_search_container()->auto_tab_group_button());
-
- ASSERT_FALSE(tab_search_container()->animation_session_for_testing());
-
- tab_search_container()->SetLockedExpansionModeForTesting(
- LockedExpansionMode::kNone, nullptr);
-
- ASSERT_TRUE(tab_search_container()
- ->animation_session_for_testing()
- ->expansion_animation()
- ->IsShowing());
-}
-
-// TODO(crbug.com/413441658): Flaky on Windows 10 builds.
-#if BUILDFLAG(IS_WIN)
-#define MAYBE_DelaysHide DISABLED_DelaysHide
-#else
-#define MAYBE_DelaysHide DelaysHide
-#endif
-IN_PROC_BROWSER_TEST_F(TabSearchContainerBrowserTest, MAYBE_DelaysHide) {
- ASSERT_FALSE(tab_search_container()->animation_session_for_testing());
-
- tab_search_container()->ShowTabOrganization(
- tab_search_container()->auto_tab_group_button());
- ResetAnimation(1);
- tab_search_container()->GetWidget()->LayoutRootViewIfNecessary();
-
- ASSERT_FALSE(tab_search_container()->animation_session_for_testing());
-
- tab_search_container()->SetLockedExpansionModeForTesting(
- LockedExpansionMode::kWillHide,
- tab_search_container()->auto_tab_group_button());
- tab_search_container()->HideTabOrganization(
- tab_search_container()->auto_tab_group_button());
-
- ASSERT_FALSE(tab_search_container()->animation_session_for_testing());
-
- tab_search_container()->SetLockedExpansionModeForTesting(
- LockedExpansionMode::kNone, nullptr);
-
- EXPECT_TRUE(ExpansionAnimationIsClosing());
-}
-
-// TODO(crbug.com/413441658): Flaky on Windows 10 builds.
-#if BUILDFLAG(IS_WIN)
-#define MAYBE_ImmediatelyHidesWhenOrganizeButtonClicked \
- DISABLED_ImmediatelyHidesWhenOrganizeButtonClicked
-#else
-#define MAYBE_ImmediatelyHidesWhenOrganizeButtonClicked \
- ImmediatelyHidesWhenOrganizeButtonClicked
-#endif
-IN_PROC_BROWSER_TEST_F(TabSearchContainerBrowserTest,
- MAYBE_ImmediatelyHidesWhenOrganizeButtonClicked) {
- tab_search_container()->ShowTabOrganization(
- tab_search_container()->auto_tab_group_button());
- ResetAnimation(1);
- tab_search_container()->GetWidget()->LayoutRootViewIfNecessary();
-
- tab_search_container()->SetLockedExpansionModeForTesting(
- LockedExpansionMode::kWillHide,
- tab_search_container()->auto_tab_group_button());
-
- tab_search_container()->OnAutoTabGroupButtonClicked();
-
- EXPECT_TRUE(ExpansionAnimationIsClosing());
-}
-
-// TODO(crbug.com/413441658): Flaky on Windows 10 builds.
-#if BUILDFLAG(IS_WIN)
-#define MAYBE_ImmediatelyHidesWhenOrganizeButtonDismissed \
- DISABLED_ImmediatelyHidesWhenOrganizeButtonDismissed
-#else
-#define MAYBE_ImmediatelyHidesWhenOrganizeButtonDismissed \
- ImmediatelyHidesWhenOrganizeButtonDismissed
-#endif
-IN_PROC_BROWSER_TEST_F(TabSearchContainerBrowserTest,
- MAYBE_ImmediatelyHidesWhenOrganizeButtonDismissed) {
- tab_search_container()->ShowTabOrganization(
- tab_search_container()->auto_tab_group_button());
- ResetAnimation(1);
- tab_search_container()->GetWidget()->LayoutRootViewIfNecessary();
-
- tab_search_container()->SetLockedExpansionModeForTesting(
- LockedExpansionMode::kWillHide,
- tab_search_container()->auto_tab_group_button());
-
- tab_search_container()->OnAutoTabGroupButtonDismissed();
-
- EXPECT_TRUE(ExpansionAnimationIsClosing());
-}
-
-// TODO(crbug.com/414839512): Fix flaky test.
-#if BUILDFLAG(IS_WIN)
-#define MAYBE_DelayedHidesWhenOrganizeButtonTimesOut \
- DISABLED_DelayedHidesWhenOrganizeButtonTimesOut
-#else
-#define MAYBE_DelayedHidesWhenOrganizeButtonTimesOut \
- DelayedHidesWhenOrganizeButtonTimesOut
-#endif
-IN_PROC_BROWSER_TEST_F(TabSearchContainerBrowserTest,
- MAYBE_DelayedHidesWhenOrganizeButtonTimesOut) {
- // RunScheduledLayout() is needed due to widget auto-resize.
- views::test::RunScheduledLayout(tab_search_container());
-
- tab_search_container()->ShowTabOrganization(
- tab_search_container()->auto_tab_group_button());
- ResetAnimation(1);
- tab_search_container()->GetWidget()->LayoutRootViewIfNecessary();
-
- tab_search_container()->SetLockedExpansionModeForTesting(
- LockedExpansionMode::kWillHide,
- tab_search_container()->auto_tab_group_button());
-
- tab_search_container()->OnOrganizeButtonTimeout(
- tab_search_container()->auto_tab_group_button());
-
- EXPECT_FALSE(tab_search_container()->animation_session_for_testing());
-
- tab_search_container()->SetLockedExpansionModeForTesting(
- LockedExpansionMode::kNone,
- tab_search_container()->auto_tab_group_button());
-
- EXPECT_TRUE(ExpansionAnimationIsClosing());
-}
-
-IN_PROC_BROWSER_TEST_F(TabSearchContainerBrowserTest,
- LogsSuccessWhenAutoTabGroupsButtonClicked) {
- base::HistogramTester histogram_tester;
-
- tab_search_container()->ShowTabOrganization(
- tab_search_container()->auto_tab_group_button());
- ResetAnimation(1);
- tab_search_container()->GetWidget()->LayoutRootViewIfNecessary();
-
- TabOrganizationService* service =
- tab_search_container()->tab_organization_service_for_testing();
-
- service->OnTriggerOccured(browser());
-
- tab_search_container()->OnAutoTabGroupButtonClicked();
-}
-
-IN_PROC_BROWSER_TEST_F(TabSearchContainerBrowserTest,
- LogsFailureWhenAutoTabGroupsButtonDismissed) {
- base::HistogramTester histogram_tester;
-
- tab_search_container()->ShowTabOrganization(
- tab_search_container()->auto_tab_group_button());
- ResetAnimation(1);
- tab_search_container()->GetWidget()->LayoutRootViewIfNecessary();
-
- TabOrganizationService* service =
- tab_search_container()->tab_organization_service_for_testing();
-
- service->OnTriggerOccured(browser());
-
- tab_search_container()->OnAutoTabGroupButtonDismissed();
-}
-
-// TODO(crbug.com/413441658): Flaky on Windows 10 builds.
-#if BUILDFLAG(IS_WIN)
-#define MAYBE_LogsFailureWhenAutoTabGroupsButtonTimeout \
- DISABLED_LogsFailureWhenAutoTabGroupsButtonTimeout
-#else
-#define MAYBE_LogsFailureWhenAutoTabGroupsButtonTimeout \
- LogsFailureWhenAutoTabGroupsButtonTimeout
-#endif
-IN_PROC_BROWSER_TEST_F(TabSearchContainerBrowserTest,
- MAYBE_LogsFailureWhenAutoTabGroupsButtonTimeout) {
- base::HistogramTester histogram_tester;
-
- tab_search_container()->ShowTabOrganization(
- tab_search_container()->auto_tab_group_button());
- ResetAnimation(1);
- tab_search_container()->GetWidget()->LayoutRootViewIfNecessary();
-
- TabOrganizationService* service =
- tab_search_container()->tab_organization_service_for_testing();
-
- service->OnTriggerOccured(browser());
-
- tab_search_container()->OnOrganizeButtonTimeout(
- tab_search_container()->auto_tab_group_button());
-}
-
-// TODO(crbug.com/413441658): Flaky on Windows 10 builds.
-#if BUILDFLAG(IS_WIN)
-#define MAYBE_HidesAutoTabGroupButtonFromHalfway \
- DISABLED_HidesAutoTabGroupButtonFromHalfway
-#else
-#define MAYBE_HidesAutoTabGroupButtonFromHalfway \
- HidesAutoTabGroupButtonFromHalfway
-#endif
-IN_PROC_BROWSER_TEST_F(TabSearchContainerBrowserTest,
- MAYBE_HidesAutoTabGroupButtonFromHalfway) {
- ASSERT_FALSE(tab_search_container()->animation_session_for_testing());
-
- tab_search_container()->ShowTabOrganization(
- tab_search_container()->auto_tab_group_button());
-
- ASSERT_TRUE(tab_search_container()
- ->animation_session_for_testing()
- ->expansion_animation()
- ->IsShowing());
-
- gfx::SlideAnimation* expansion_animation =
- tab_search_container()
- ->animation_session_for_testing()
- ->expansion_animation();
-
- gfx::AnimationTestApi animation_api(expansion_animation);
- base::TimeTicks now = base::TimeTicks::Now();
- animation_api.SetStartTime(now);
- animation_api.Step(now + (expansion_animation->GetSlideDuration() / 2));
-
- double expanded_value = expansion_animation->GetCurrentValue();
- tab_search_container()->GetWidget()->LayoutRootViewIfNecessary();
-
- tab_search_container()->HideTabOrganization(
- tab_search_container()->auto_tab_group_button());
-
- EXPECT_TRUE(ExpansionAnimationIsClosing());
-
- EXPECT_EQ(tab_search_container()
- ->animation_session_for_testing()
- ->expansion_animation()
- ->GetCurrentValue(),
- expanded_value);
-}
-
-// TODO(crbug.com/414839512): Fix flaky test.
-#if BUILDFLAG(IS_WIN)
-#define MAYBE_ShowsDeclutterChip DISABLED_ShowsDeclutterChip
-#else
-#define MAYBE_ShowsDeclutterChip ShowsDeclutterChip
-#endif
-IN_PROC_BROWSER_TEST_F(TabSearchContainerBrowserTest,
- MAYBE_ShowsDeclutterChip) {
- ASSERT_FALSE(tab_search_container()->animation_session_for_testing());
-
- tab_search_container()->ShowTabOrganization(
- tab_search_container()->tab_declutter_button());
-
- ASSERT_TRUE(tab_search_container()
- ->animation_session_for_testing()
- ->expansion_animation()
- ->IsShowing());
-}
-
-// TODO(crbug.com/413441658): Flaky on Windows 10 builds.
-#if BUILDFLAG(IS_WIN)
-#define MAYBE_ShowsAndHidesDeclutterChip DISABLED_ShowsAndHidesDeclutterChip
-#else
-#define MAYBE_ShowsAndHidesDeclutterChip ShowsAndHidesDeclutterChip
-#endif
-IN_PROC_BROWSER_TEST_F(TabSearchContainerBrowserTest,
- MAYBE_ShowsAndHidesDeclutterChip) {
- ASSERT_FALSE(tab_search_container()->animation_session_for_testing());
-
- tab_search_container()->ShowTabOrganization(
- tab_search_container()->tab_declutter_button());
-
- ASSERT_TRUE(tab_search_container()
- ->animation_session_for_testing()
- ->expansion_animation()
- ->IsShowing());
-
- // Finish showing declutter chip.
- ResetAnimation(1);
- tab_search_container()->GetWidget()->LayoutRootViewIfNecessary();
-
- // Hide the declutter chip.
- tab_search_container()->HideTabOrganization(
- tab_search_container()->tab_declutter_button());
-
- EXPECT_TRUE(ExpansionAnimationIsClosing());
-}
-
-// TODO(crbug.com/413441658): Flaky on Windows 10 builds.
-#if BUILDFLAG(IS_WIN)
-#define MAYBE_DoesNotShowDeclutterChipWhenAutoTabGroupChipIsShown \
- DISABLED_DoesNotShowDeclutterChipWhenAutoTabGroupChipIsShown
-#else
-#define MAYBE_DoesNotShowDeclutterChipWhenAutoTabGroupChipIsShown \
- DoesNotShowDeclutterChipWhenAutoTabGroupChipIsShown
-#endif
-IN_PROC_BROWSER_TEST_F(
- TabSearchContainerBrowserTest,
- MAYBE_DoesNotShowDeclutterChipWhenAutoTabGroupChipIsShown) {
- ASSERT_FALSE(tab_search_container()->animation_session_for_testing());
-
- // Show the auto-tab group chip.
- tab_search_container()->ShowTabOrganization(
- tab_search_container()->auto_tab_group_button());
-
- ASSERT_TRUE(tab_search_container()
- ->animation_session_for_testing()
- ->expansion_animation()
- ->IsShowing());
- ResetAnimation(1);
- tab_search_container()->GetWidget()->LayoutRootViewIfNecessary();
-
- // Try to show the declutter chip while auto-tab group chip is already shown.
- tab_search_container()->ShowTabOrganization(
- tab_search_container()->tab_declutter_button());
-
- ASSERT_FALSE(tab_search_container()->animation_session_for_testing());
-}
-
-} // namespace
diff --git a/chrome/browser/ui/views/tabs/tab_search_container_unittest.cc b/chrome/browser/ui/views/tabs/tab_search_container_unittest.cc
deleted file mode 100644
index 2d604d1..0000000
--- a/chrome/browser/ui/views/tabs/tab_search_container_unittest.cc
+++ /dev/null
@@ -1,169 +0,0 @@
-// Copyright 2023 The Chromium Authors
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#include "chrome/browser/ui/views/tabs/tab_search_container.h"
-
-#include <memory>
-
-#include "base/feature_list.h"
-#include "base/test/scoped_feature_list.h"
-#include "chrome/browser/ui/browser_window/public/browser_window_features.h"
-#include "chrome/browser/ui/browser_window/public/browser_window_interface.h"
-#include "chrome/browser/ui/browser_window/test/mock_browser_window_interface.h"
-#include "chrome/browser/ui/tabs/organization/tab_declutter_controller.h"
-#include "chrome/browser/ui/tabs/organization/tab_organization_service.h"
-#include "chrome/browser/ui/tabs/organization/tab_organization_utils.h"
-#include "chrome/browser/ui/tabs/test_tab_strip_model_delegate.h"
-#include "chrome/browser/ui/ui_features.h"
-#include "chrome/browser/ui/views/frame/browser_view.h"
-#include "chrome/browser/ui/views/tabs/fake_tab_slot_controller.h"
-#include "chrome/browser/ui/views/tabs/tab_search_button.h"
-#include "chrome/browser/ui/views/tabs/tab_strip_nudge_button.h"
-#include "chrome/common/chrome_features.h"
-#include "chrome/test/base/testing_profile.h"
-#include "chrome/test/views/chrome_views_test_base.h"
-#include "components/optimization_guide/core/model_execution/model_execution_features.h"
-#include "components/optimization_guide/core/optimization_guide_features.h"
-#include "fake_base_tab_strip_controller.h"
-#include "testing/gtest/include/gtest/gtest.h"
-#include "ui/base/ui_base_features.h"
-#include "ui/base/unowned_user_data/user_data_factory.h"
-#include "ui/gfx/animation/animation_test_api.h"
-
-class FakeBaseTabStripControllerWithBWI : public FakeBaseTabStripController {
- public:
- explicit FakeBaseTabStripControllerWithBWI(
- BrowserWindowInterface* browser_window_interface)
- : browser_window_interface_(browser_window_interface) {}
-
- BrowserWindowInterface* GetBrowserWindowInterface() override {
- return browser_window_interface_;
- }
-
- private:
- raw_ptr<BrowserWindowInterface> browser_window_interface_;
-};
-
-class TabSearchContainerTest : public ChromeViewsTestBase {
- public:
- void SetUp() override {
- ChromeViewsTestBase::SetUp();
-
- TabOrganizationUtils::GetInstance()->SetIgnoreOptGuideForTesting(true);
- scoped_feature_list_.InitWithFeatures(
- {features::kTabOrganization},
- {features::kTabstripComboButton, features::kTabstripDeclutter});
-
- tab_strip_model_ = std::make_unique<TabStripModel>(
- &tab_strip_model_delegate_, profile_.get());
-
- browser_window_interface_ = std::make_unique<MockBrowserWindowInterface>();
- ON_CALL(*browser_window_interface_, GetTabStripModel())
- .WillByDefault(::testing::Return(tab_strip_model_.get()));
- ON_CALL(*browser_window_interface_, GetProfile())
- .WillByDefault(::testing::Return(profile_.get()));
- ON_CALL(*browser_window_interface_, GetFeatures())
- .WillByDefault(testing::ReturnRef(browser_window_features_));
- ON_CALL(testing::Const(*browser_window_interface_), GetFeatures())
- .WillByDefault(testing::ReturnRef(browser_window_features_));
- ON_CALL(*browser_window_interface_, GetUnownedUserDataHost())
- .WillByDefault(testing::ReturnRef(user_data_host_));
-
- tab_strip_ = std::make_unique<TabStrip>(
- std::make_unique<FakeBaseTabStripControllerWithBWI>(
- browser_window_interface_.get()));
-
- tab_declutter_controller_ = std::make_unique<tabs::TabDeclutterController>(
- browser_window_interface_.get());
-
- locked_expansion_view_ = std::make_unique<views::View>();
- container_before_tab_strip_ = std::make_unique<TabSearchContainer>(
- true, locked_expansion_view_.get(), tab_strip_.get());
- container_after_tab_strip_ = std::make_unique<TabSearchContainer>(
- false, locked_expansion_view_.get(), tab_strip_.get());
- }
-
- protected:
- void ResetAnimation(int value) {
- if (container_before_tab_strip_->animation_session_for_testing()) {
- container_before_tab_strip_->animation_session_for_testing()
- ->ResetOpacityAnimationForTesting(value);
- }
- if (container_before_tab_strip_->animation_session_for_testing()) {
- container_before_tab_strip_->animation_session_for_testing()
- ->ResetExpansionAnimationForTesting(value);
- }
- if (container_before_tab_strip_->animation_session_for_testing()) {
- container_before_tab_strip_->animation_session_for_testing()
- ->ResetFlatEdgeAnimationForTesting(value);
- }
- }
-
- std::unique_ptr<TestingProfile> profile_ = std::make_unique<TestingProfile>();
- base::test::ScopedFeatureList scoped_feature_list_;
- ui::UnownedUserDataHost user_data_host_;
- std::unique_ptr<TabStripModel> tab_strip_model_;
- std::unique_ptr<tabs::TabDeclutterController> tab_declutter_controller_;
- TestTabStripModelDelegate tab_strip_model_delegate_;
- std::unique_ptr<MockBrowserWindowInterface> browser_window_interface_;
- std::unique_ptr<TabStrip> tab_strip_;
- std::unique_ptr<views::View> locked_expansion_view_;
- std::unique_ptr<TabSearchContainer> container_before_tab_strip_;
- std::unique_ptr<TabSearchContainer> container_after_tab_strip_;
-
- BrowserWindowFeatures browser_window_features_;
-
- // Some of these tests rely on animation being enabled. This forces
- // animation on even if it's turned off in the OS.
- gfx::AnimationTestApi::RenderModeResetter animation_mode_reset_{
- gfx::AnimationTestApi::SetRichAnimationRenderMode(
- gfx::Animation::RichAnimationRenderMode::FORCE_ENABLED)};
-};
-
-TEST_F(TabSearchContainerTest, OrdersButtonsCorrectly) {
- ASSERT_EQ(container_before_tab_strip_->tab_search_button(),
- container_before_tab_strip_->children()[0]);
- ASSERT_EQ(container_before_tab_strip_->auto_tab_group_button(),
- container_before_tab_strip_->children()[1]);
-
- ASSERT_EQ(container_after_tab_strip_->auto_tab_group_button(),
- container_after_tab_strip_->children()[0]);
- ASSERT_EQ(container_after_tab_strip_->tab_search_button(),
- container_after_tab_strip_->children()[1]);
-}
-
-TEST_F(TabSearchContainerTest, ButtonsHaveFlatEdges) {
- ASSERT_EQ(
- Edge::kRight,
- container_before_tab_strip_->tab_search_button()->animated_flat_edge());
- ASSERT_EQ(Edge::kLeft, container_before_tab_strip_->auto_tab_group_button()
- ->animated_flat_edge());
-
- ASSERT_EQ(
- Edge::kLeft,
- container_after_tab_strip_->tab_search_button()->animated_flat_edge());
- ASSERT_EQ(Edge::kRight, container_after_tab_strip_->auto_tab_group_button()
- ->animated_flat_edge());
-}
-
-TEST_F(TabSearchContainerTest, AnimatesToExpanded) {
- // Should be collapsed by default
- ASSERT_EQ(nullptr,
- container_before_tab_strip_->animation_session_for_testing());
-
- ASSERT_EQ(0, container_before_tab_strip_->auto_tab_group_button()
- ->width_factor_for_testing());
-
- container_before_tab_strip_->ShowTabOrganization(
- container_before_tab_strip_->auto_tab_group_button());
-
- ASSERT_TRUE(container_before_tab_strip_->animation_session_for_testing()
- ->expansion_animation()
- ->IsShowing());
-
- ResetAnimation(1);
-
- ASSERT_EQ(1, container_before_tab_strip_->auto_tab_group_button()
- ->width_factor_for_testing());
-}
diff --git a/chrome/browser/ui/views/toolbar/tab_search_toolbar_button_interactive_uitest.cc b/chrome/browser/ui/views/toolbar/tab_search_toolbar_button_interactive_uitest.cc
index afc93a9..b6660f7 100644
--- a/chrome/browser/ui/views/toolbar/tab_search_toolbar_button_interactive_uitest.cc
+++ b/chrome/browser/ui/views/toolbar/tab_search_toolbar_button_interactive_uitest.cc
@@ -26,9 +26,7 @@
class TabSearchToolbarButtonInteractiveUiTest : public InteractiveBrowserTest {
public:
- TabSearchToolbarButtonInteractiveUiTest() {
- scoped_feature_list_.InitAndEnableFeature(features::kTabstripComboButton);
- }
+ TabSearchToolbarButtonInteractiveUiTest() = default;
~TabSearchToolbarButtonInteractiveUiTest() override = default;
auto SendTabSearchKeyPress(ui::ElementIdentifier target) {
@@ -40,9 +38,6 @@
ui::EF_CONTROL_DOWN | ui::EF_SHIFT_DOWN);
#endif
}
-
- private:
- base::test::ScopedFeatureList scoped_feature_list_;
};
// This test verifies the TabSearch functionality when pinned.
diff --git a/chrome/test/BUILD.gn b/chrome/test/BUILD.gn
index 7768516..b918eccb 100644
--- a/chrome/test/BUILD.gn
+++ b/chrome/test/BUILD.gn
@@ -3799,8 +3799,6 @@
"../browser/ui/views/tabs/fake_base_tab_strip_controller.cc",
"../browser/ui/views/tabs/fake_base_tab_strip_controller.h",
"../browser/ui/views/tabs/recent_activity_bubble_dialog_view_browsertest.cc",
- "../browser/ui/views/tabs/tab_search_button_browsertest.cc",
- "../browser/ui/views/tabs/tab_search_container_browsertest.cc",
"../browser/ui/views/tabs/tab_strip_action_container_browsertest.cc",
"../browser/ui/views/tabs/tab_strip_browsertest.cc",
"../browser/ui/views/user_education/browser_help_bubble_browsertest.cc",
@@ -4192,7 +4190,6 @@
"../browser/ui/views/tab_search_bubble_ui_browsertest.cc",
"../browser/ui/views/web_apps/web_app_integration_browsertest_win.cc",
]
- sources -= [ "../browser/ui/views/tabs/tab_search_button_browsertest.cc" ]
# encrypted_media_browsertest uses Windows Media Foundation APIs.
libs = [
@@ -10705,7 +10702,6 @@
"../browser/ui/views/tabs/tab_group_views_unittest.cc",
"../browser/ui/views/tabs/tab_hover_card_bubble_view_unittest.cc",
"../browser/ui/views/tabs/tab_hover_card_controller_unittest.cc",
- "../browser/ui/views/tabs/tab_search_container_unittest.cc",
"../browser/ui/views/tabs/tab_strip_control_button_unittest.cc",
"../browser/ui/views/tabs/tab_strip_layout_unittest.cc",
"../browser/ui/views/tabs/tab_strip_nudge_button_unittest.cc",