diff options
author | Allan Sandfeld Jensen <allan.jensen@qt.io> | 2022-09-29 16:16:15 +0200 |
---|---|---|
committer | Allan Sandfeld Jensen <allan.jensen@qt.io> | 2022-11-09 10:04:06 +0000 |
commit | a95a7417ad456115a1ef2da4bb8320531c0821f1 (patch) | |
tree | edcd59279e486d2fd4a8f88a7ed025bcf925c6e6 /chromium/components/feature_engagement | |
parent | 33fc33aa94d4add0878ec30dc818e34e1dd3cc2a (diff) | |
download | qtwebengine-chromium-a95a7417ad456115a1ef2da4bb8320531c0821f1.tar.gz |
BASELINE: Update Chromium to 106.0.5249.126
Change-Id: Ib0bb21c437a7d1686e21c33f2d329f2ac425b7ab
Reviewed-on: https://codereview.qt-project.org/c/qt/qtwebengine-chromium/+/438936
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
Diffstat (limited to 'chromium/components/feature_engagement')
22 files changed, 153 insertions, 159 deletions
diff --git a/chromium/components/feature_engagement/OWNERS b/chromium/components/feature_engagement/OWNERS index 354f99dd084..52ee6138617 100644 --- a/chromium/components/feature_engagement/OWNERS +++ b/chromium/components/feature_engagement/OWNERS @@ -2,6 +2,7 @@ dtrainor@chromium.org nyquist@chromium.org shaktisahu@chromium.org +# For mobile platforms: per-file ...event_constants.*=twellington@chromium.org per-file ...feature_configurations.cc=twellington@chromium.org per-file ...feature_constants.*=twellington@chromium.org @@ -9,3 +10,8 @@ per-file ...feature_list.*=twellington@chromium.org per-file ...EventConstants.java=twellington@chromium.org per-file ...FeatureConstants.java=twellington@chromium.org +# For User Education/Feature Engagement on desktop platforms: +per-file ...event_constants.*=dfried@chromium.org +per-file ...feature_configurations.cc=dfried@chromium.org +per-file ...feature_constants.*=dfried@chromium.org +per-file ...feature_list.*=dfried@chromium.org diff --git a/chromium/components/feature_engagement/internal/android/tracker_impl_android.h b/chromium/components/feature_engagement/internal/android/tracker_impl_android.h index 9a686747acf..1400dd78740 100644 --- a/chromium/components/feature_engagement/internal/android/tracker_impl_android.h +++ b/chromium/components/feature_engagement/internal/android/tracker_impl_android.h @@ -12,16 +12,13 @@ #include "base/android/callback_android.h" #include "base/android/jni_android.h" #include "base/android/scoped_java_ref.h" +#include "base/feature_list.h" #include "base/memory/raw_ptr.h" #include "base/supports_user_data.h" #include "components/feature_engagement/internal/tracker_impl.h" #include "components/feature_engagement/public/feature_list.h" #include "components/feature_engagement/public/tracker.h" -namespace base { -struct Feature; -} // namespace base - namespace feature_engagement { // JNI bridge between DisplayLockHandleAndroid in Java and C++. diff --git a/chromium/components/feature_engagement/internal/availability_model.h b/chromium/components/feature_engagement/internal/availability_model.h index da8870c1bec..2912bf1a5f8 100644 --- a/chromium/components/feature_engagement/internal/availability_model.h +++ b/chromium/components/feature_engagement/internal/availability_model.h @@ -8,12 +8,9 @@ #include <stdint.h> #include "base/callback_forward.h" +#include "base/feature_list.h" #include "third_party/abseil-cpp/absl/types/optional.h" -namespace base { -struct Feature; -} // namespace base - namespace feature_engagement { // An AvailabilityModel tracks when each feature was made available to an diff --git a/chromium/components/feature_engagement/internal/availability_model_impl.h b/chromium/components/feature_engagement/internal/availability_model_impl.h index fe96da41f90..607e04e94ce 100644 --- a/chromium/components/feature_engagement/internal/availability_model_impl.h +++ b/chromium/components/feature_engagement/internal/availability_model_impl.h @@ -12,14 +12,11 @@ #include <string> #include "base/callback.h" +#include "base/feature_list.h" #include "base/memory/weak_ptr.h" #include "components/feature_engagement/internal/availability_model.h" #include "components/feature_engagement/internal/persistent_availability_store.h" -namespace base { -struct Feature; -} // namespace base - namespace feature_engagement { // An AvailabilityModel which supports loading data from an // PersistentAvailabilityStore. diff --git a/chromium/components/feature_engagement/internal/chrome_variations_configuration.h b/chromium/components/feature_engagement/internal/chrome_variations_configuration.h index 4406bca5e69..989fdec36bb 100644 --- a/chromium/components/feature_engagement/internal/chrome_variations_configuration.h +++ b/chromium/components/feature_engagement/internal/chrome_variations_configuration.h @@ -5,13 +5,10 @@ #ifndef COMPONENTS_FEATURE_ENGAGEMENT_INTERNAL_CHROME_VARIATIONS_CONFIGURATION_H_ #define COMPONENTS_FEATURE_ENGAGEMENT_INTERNAL_CHROME_VARIATIONS_CONFIGURATION_H_ +#include "base/feature_list.h" #include "components/feature_engagement/public/configuration.h" #include "components/feature_engagement/public/feature_list.h" -namespace base { -struct Feature; -} // namespace base - namespace feature_engagement { // A ChromeVariationsConfiguration provides a configuration that is parsed from diff --git a/chromium/components/feature_engagement/internal/condition_validator.h b/chromium/components/feature_engagement/internal/condition_validator.h index facd64dc12a..34ff47ae571 100644 --- a/chromium/components/feature_engagement/internal/condition_validator.h +++ b/chromium/components/feature_engagement/internal/condition_validator.h @@ -11,14 +11,11 @@ #include <string> #include <vector> +#include "base/feature_list.h" #include "components/feature_engagement/public/configuration.h" #include "components/feature_engagement/public/feature_list.h" #include "third_party/abseil-cpp/absl/types/optional.h" -namespace base { -struct Feature; -} // namespace base - namespace feature_engagement { struct FeatureConfig; class AvailabilityModel; diff --git a/chromium/components/feature_engagement/internal/editable_configuration.h b/chromium/components/feature_engagement/internal/editable_configuration.h index ede2531f121..1b7bd9fd023 100644 --- a/chromium/components/feature_engagement/internal/editable_configuration.h +++ b/chromium/components/feature_engagement/internal/editable_configuration.h @@ -5,12 +5,9 @@ #ifndef COMPONENTS_FEATURE_ENGAGEMENT_INTERNAL_EDITABLE_CONFIGURATION_H_ #define COMPONENTS_FEATURE_ENGAGEMENT_INTERNAL_EDITABLE_CONFIGURATION_H_ +#include "base/feature_list.h" #include "components/feature_engagement/public/configuration.h" -namespace base { -struct Feature; -} // namespace base - namespace feature_engagement { // An EditableConfiguration provides a configuration that can be configured diff --git a/chromium/components/feature_engagement/internal/never_availability_model.cc b/chromium/components/feature_engagement/internal/never_availability_model.cc index dc8c5b0e6f1..f71297faa63 100644 --- a/chromium/components/feature_engagement/internal/never_availability_model.cc +++ b/chromium/components/feature_engagement/internal/never_availability_model.cc @@ -15,7 +15,7 @@ namespace feature_engagement { -NeverAvailabilityModel::NeverAvailabilityModel() : ready_(false) {} +NeverAvailabilityModel::NeverAvailabilityModel() = default; NeverAvailabilityModel::~NeverAvailabilityModel() = default; @@ -24,7 +24,7 @@ void NeverAvailabilityModel::Initialize(OnInitializedCallback callback, base::ThreadTaskRunnerHandle::Get()->PostTask( FROM_HERE, base::BindOnce(&NeverAvailabilityModel::ForwardedOnInitializedCallback, - base::Unretained(this), std::move(callback))); + weak_ptr_factory_.GetWeakPtr(), std::move(callback))); } bool NeverAvailabilityModel::IsReady() const { diff --git a/chromium/components/feature_engagement/internal/never_availability_model.h b/chromium/components/feature_engagement/internal/never_availability_model.h index 3d4c8f8f95e..fff9f88d9ad 100644 --- a/chromium/components/feature_engagement/internal/never_availability_model.h +++ b/chromium/components/feature_engagement/internal/never_availability_model.h @@ -7,6 +7,7 @@ #include <stdint.h> +#include "base/memory/weak_ptr.h" #include "components/feature_engagement/internal/availability_model.h" namespace feature_engagement { @@ -36,7 +37,9 @@ class NeverAvailabilityModel : public AvailabilityModel { void ForwardedOnInitializedCallback(OnInitializedCallback callback); // Whether the model has been successfully initialized. - bool ready_; + bool ready_ = false; + + base::WeakPtrFactory<NeverAvailabilityModel> weak_ptr_factory_{this}; }; } // namespace feature_engagement diff --git a/chromium/components/feature_engagement/internal/never_availability_model_unittest.cc b/chromium/components/feature_engagement/internal/never_availability_model_unittest.cc index e3fce69a0cb..982a8f376e4 100644 --- a/chromium/components/feature_engagement/internal/never_availability_model_unittest.cc +++ b/chromium/components/feature_engagement/internal/never_availability_model_unittest.cc @@ -22,7 +22,8 @@ const base::Feature kAvailabilityTestFeatureBar{ class NeverAvailabilityModelTest : public ::testing::Test { public: - NeverAvailabilityModelTest() = default; + NeverAvailabilityModelTest() + : availability_model_(std::make_unique<NeverAvailabilityModel>()) {} NeverAvailabilityModelTest(const NeverAvailabilityModelTest&) = delete; NeverAvailabilityModelTest& operator=(const NeverAvailabilityModelTest&) = @@ -31,7 +32,7 @@ class NeverAvailabilityModelTest : public ::testing::Test { void OnInitializedCallback(bool success) { success_ = success; } protected: - NeverAvailabilityModel availability_model_; + std::unique_ptr<NeverAvailabilityModel> availability_model_; absl::optional<bool> success_; private: @@ -42,34 +43,47 @@ class NeverAvailabilityModelTest : public ::testing::Test { TEST_F(NeverAvailabilityModelTest, ShouldNeverHaveData) { EXPECT_EQ(absl::nullopt, - availability_model_.GetAvailability(kAvailabilityTestFeatureFoo)); + availability_model_->GetAvailability(kAvailabilityTestFeatureFoo)); EXPECT_EQ(absl::nullopt, - availability_model_.GetAvailability(kAvailabilityTestFeatureBar)); + availability_model_->GetAvailability(kAvailabilityTestFeatureBar)); - availability_model_.Initialize( + availability_model_->Initialize( base::BindOnce(&NeverAvailabilityModelTest::OnInitializedCallback, base::Unretained(this)), 14u); base::RunLoop().RunUntilIdle(); EXPECT_EQ(absl::nullopt, - availability_model_.GetAvailability(kAvailabilityTestFeatureFoo)); + availability_model_->GetAvailability(kAvailabilityTestFeatureFoo)); EXPECT_EQ(absl::nullopt, - availability_model_.GetAvailability(kAvailabilityTestFeatureBar)); + availability_model_->GetAvailability(kAvailabilityTestFeatureBar)); } TEST_F(NeverAvailabilityModelTest, ShouldBeReadyAfterInitialization) { - EXPECT_FALSE(availability_model_.IsReady()); - availability_model_.Initialize( + EXPECT_FALSE(availability_model_->IsReady()); + availability_model_->Initialize( base::BindOnce(&NeverAvailabilityModelTest::OnInitializedCallback, base::Unretained(this)), 14u); - EXPECT_FALSE(availability_model_.IsReady()); + EXPECT_FALSE(availability_model_->IsReady()); EXPECT_FALSE(success_.has_value()); base::RunLoop().RunUntilIdle(); - EXPECT_TRUE(availability_model_.IsReady()); + EXPECT_TRUE(availability_model_->IsReady()); ASSERT_TRUE(success_.has_value()); EXPECT_TRUE(success_.value()); } +TEST_F(NeverAvailabilityModelTest, DestroyedBeforeInitialization) { + EXPECT_FALSE(availability_model_->IsReady()); + // Initialize performs asynchronous tasks that are posted to the task queue. + // However the class may be torn down before they have a chance to complete. + availability_model_->Initialize( + base::BindOnce(&NeverAvailabilityModelTest::OnInitializedCallback, + base::Unretained(this)), + 14u); + availability_model_.reset(); + base::RunLoop().RunUntilIdle(); + ASSERT_FALSE(success_.has_value()); +} + } // namespace feature_engagement diff --git a/chromium/components/feature_engagement/internal/never_condition_validator.h b/chromium/components/feature_engagement/internal/never_condition_validator.h index b5f6c15a621..21e04698b7c 100644 --- a/chromium/components/feature_engagement/internal/never_condition_validator.h +++ b/chromium/components/feature_engagement/internal/never_condition_validator.h @@ -5,14 +5,11 @@ #ifndef COMPONENTS_FEATURE_ENGAGEMENT_INTERNAL_NEVER_CONDITION_VALIDATOR_H_ #define COMPONENTS_FEATURE_ENGAGEMENT_INTERNAL_NEVER_CONDITION_VALIDATOR_H_ +#include "base/feature_list.h" #include "components/feature_engagement/internal/condition_validator.h" #include "components/feature_engagement/public/feature_list.h" #include "third_party/abseil-cpp/absl/types/optional.h" -namespace base { -struct Feature; -} // namespace base - namespace feature_engagement { class AvailabilityModel; class DisplayLockController; diff --git a/chromium/components/feature_engagement/internal/once_condition_validator.h b/chromium/components/feature_engagement/internal/once_condition_validator.h index aa8791f8fc0..b337e4dafa3 100644 --- a/chromium/components/feature_engagement/internal/once_condition_validator.h +++ b/chromium/components/feature_engagement/internal/once_condition_validator.h @@ -7,14 +7,11 @@ #include <unordered_set> +#include "base/feature_list.h" #include "components/feature_engagement/internal/condition_validator.h" #include "components/feature_engagement/public/feature_list.h" #include "third_party/abseil-cpp/absl/types/optional.h" -namespace base { -struct Feature; -} // namespace base - namespace feature_engagement { class AvailabilityModel; class DisplayLockController; diff --git a/chromium/components/feature_engagement/internal/single_invalid_configuration.h b/chromium/components/feature_engagement/internal/single_invalid_configuration.h index f55ad4d3d73..c0a1fc2fbee 100644 --- a/chromium/components/feature_engagement/internal/single_invalid_configuration.h +++ b/chromium/components/feature_engagement/internal/single_invalid_configuration.h @@ -8,12 +8,9 @@ #include <string> #include <unordered_set> +#include "base/feature_list.h" #include "components/feature_engagement/public/configuration.h" -namespace base { -struct Feature; -} // namespace base - namespace feature_engagement { // An Configuration that always returns the same single invalid configuration, diff --git a/chromium/components/feature_engagement/public/configuration.h b/chromium/components/feature_engagement/public/configuration.h index 9692303bf07..e73c7c64196 100644 --- a/chromium/components/feature_engagement/public/configuration.h +++ b/chromium/components/feature_engagement/public/configuration.h @@ -11,12 +11,9 @@ #include <string> #include <vector> +#include "base/feature_list.h" #include "third_party/abseil-cpp/absl/types/optional.h" -namespace base { -struct Feature; -} - namespace feature_engagement { // A ComparatorType describes the relationship between two numbers. diff --git a/chromium/components/feature_engagement/public/event_constants.cc b/chromium/components/feature_engagement/public/event_constants.cc index 94bc287358e..9d6bad7bd70 100644 --- a/chromium/components/feature_engagement/public/event_constants.cc +++ b/chromium/components/feature_engagement/public/event_constants.cc @@ -29,6 +29,7 @@ const char kGlobalMediaControlsOpened[] = "global_media_controls_opened"; const char kFocusModeOpened[] = "focus_mode_opened"; const char kFocusModeConditionsMet[] = "focus_mode_conditions_met"; +const char kSideSearchAutoTriggered[] = "side_search_auto_triggered"; const char kSideSearchOpened[] = "side_search_opened"; const char kTabSearchOpened[] = "tab_search_opened"; @@ -59,6 +60,8 @@ const char kDesktopVersionRequested[] = "desktop_version_requested"; const char kDefaultSiteViewShown[] = "default_site_view_shown"; const char kPasswordSuggestionsShown[] = "password_suggestions_shown"; const char kPasswordSuggestionSelected[] = "password_suggestion_selected"; +const char kOverflowMenuNoHorizontalScrollOrAction[] = + "overflow_menu_no_horizontal_scroll_or_action"; #endif // BUILDFLAG(IS_IOS) #if BUILDFLAG(IS_ANDROID) diff --git a/chromium/components/feature_engagement/public/event_constants.h b/chromium/components/feature_engagement/public/event_constants.h index c7a23e83729..e69d4e8e26e 100644 --- a/chromium/components/feature_engagement/public/event_constants.h +++ b/chromium/components/feature_engagement/public/event_constants.h @@ -51,6 +51,8 @@ extern const char kFocusModeOpened[]; // All conditions for show Focus Mode IPH were met. extern const char kFocusModeConditionsMet[]; +// The side search panel was automatically triggered. +extern const char kSideSearchAutoTriggered[]; // The Side search panel was opened by the user. extern const char kSideSearchOpened[]; @@ -109,6 +111,10 @@ extern const char kPasswordSuggestionsShown[]; // The user has selected an Autofill password suggestion. extern const char kPasswordSuggestionSelected[]; +// The user has exited the overflow menu without scrolling horizontally and +// without taking an action. +extern const char kOverflowMenuNoHorizontalScrollOrAction[]; + #endif // BUILDFLAG(IS_IOS) // Android. diff --git a/chromium/components/feature_engagement/public/feature_configurations.cc b/chromium/components/feature_engagement/public/feature_configurations.cc index 5af929179d5..ab84cf339a8 100644 --- a/chromium/components/feature_engagement/public/feature_configurations.cc +++ b/chromium/components/feature_engagement/public/feature_configurations.cc @@ -231,37 +231,38 @@ absl::optional<FeatureConfig> GetClientSideFeatureConfig( Comparator(LESS_THAN, 3), 90, 360)); return config; } - if (kIPHAddToHomescreenMessageFeature.name == feature->name) { - // A config that allows the Add to homescreen message IPH to be shown: - // * Once per 15 days - // * Up to 2 times but only if unused in the last 15 days. + if (kIPHContextualPageActionsPriceTrackingActionChipFeature.name == + feature->name) { + // A config that allows the Price Tracking Action Chip to be shown: + // * 3 times per session. + // * 5 times per day. + // * 10 times per week. absl::optional<FeatureConfig> config = FeatureConfig(); config->valid = true; config->availability = Comparator(ANY, 0); - config->session_rate = Comparator(EQUAL, 0); - config->trigger = EventConfig("add_to_homescreen_message_iph_trigger", - Comparator(LESS_THAN, 2), 90, 90); - config->used = EventConfig("add_to_homescreen_dialog_shown", - Comparator(EQUAL, 0), 90, 90); + config->session_rate = Comparator(LESS_THAN, 3); + config->trigger = EventConfig( + "contextual_page_actions_price_tracking_action_chip_iph_trigger", + Comparator(LESS_THAN, 5), 1, 360); config->event_configs.insert(EventConfig( - "add_to_homescreen_message_iph_trigger", Comparator(EQUAL, 0), 15, 90)); + "contextual_page_actions_price_tracking_action_chip_iph_trigger", + Comparator(LESS_THAN, 10), 7, 360)); return config; } - if (kIPHAddToHomescreenTextBubbleFeature.name == feature->name) { - // A config that allows the Add to homescreen text bubble IPH to be shown: + if (kIPHAddToHomescreenMessageFeature.name == feature->name) { + // A config that allows the Add to homescreen message IPH to be shown: // * Once per 15 days // * Up to 2 times but only if unused in the last 15 days. absl::optional<FeatureConfig> config = FeatureConfig(); config->valid = true; config->availability = Comparator(ANY, 0); config->session_rate = Comparator(EQUAL, 0); - config->trigger = EventConfig("add_to_homescreen_text_bubble_iph_trigger", + config->trigger = EventConfig("add_to_homescreen_message_iph_trigger", Comparator(LESS_THAN, 2), 90, 90); config->used = EventConfig("add_to_homescreen_dialog_shown", Comparator(EQUAL, 0), 90, 90); - config->event_configs.insert( - EventConfig("add_to_homescreen_text_bubble_iph_trigger", - Comparator(EQUAL, 0), 15, 90)); + config->event_configs.insert(EventConfig( + "add_to_homescreen_message_iph_trigger", Comparator(EQUAL, 0), 15, 90)); return config; } @@ -516,6 +517,25 @@ absl::optional<FeatureConfig> GetClientSideFeatureConfig( Comparator(EQUAL, 0), 15, 90)); return config; } + if (kIPHShoppingListMenuItemFeature.name == feature->name) { + // Allows a shopping list menu item IPH to be displayed at most: + // * Once per week. + // * Up to 3 times per year. + // * And only as long as the user has never initiated price tracking from + // the menu. + absl::optional<FeatureConfig> config = FeatureConfig(); + config->valid = true; + config->availability = Comparator(ANY, 0); + config->session_rate = Comparator(EQUAL, 1); + config->trigger = EventConfig("shopping_list_menu_item_iph_triggered", + Comparator(EQUAL, 0), 7, 7); + config->event_configs.insert( + EventConfig("shopping_list_menu_item_iph_triggered", + Comparator(LESS_THAN, 3), 360, 360)); + config->used = EventConfig("shopping_list_track_price_from_menu", + Comparator(EQUAL, 0), 360, 360); + return config; + } if (kIPHTabSwitcherButtonFeature.name == feature->name) { absl::optional<FeatureConfig> config = FeatureConfig(); config->valid = true; @@ -698,28 +718,6 @@ absl::optional<FeatureConfig> GetClientSideFeatureConfig( return config; } - if (kIPHStartSurfaceTabSwitcherHomeButton.name == feature->name) { - // A config that allows the StartSurfaceTabSwitcherHomeButton IPH to be - // shown: - // * Once per day - // * Up to 7 times but only if the home button is not clicked when IPH is - // showing. - absl::optional<FeatureConfig> config = FeatureConfig(); - config->valid = true; - config->availability = Comparator(ANY, 0); - config->session_rate = Comparator(ANY, 0); - config->trigger = - EventConfig("start_surface_tab_switcher_home_button_iph_trigger", - Comparator(LESS_THAN, 7), k10YearsInDays, k10YearsInDays); - config->used = - EventConfig("start_surface_tab_switcher_home_button_clicked", - Comparator(EQUAL, 0), k10YearsInDays, k10YearsInDays); - config->event_configs.insert( - EventConfig("start_surface_tab_switcher_home_button_iph_trigger", - Comparator(EQUAL, 0), 1, 360)); - return config; - } - if (kIPHSharedHighlightingReceiverFeature.name == feature->name) { // A config that allows the shared highlighting message IPH to be shown // when a user receives a highlight: @@ -886,6 +884,23 @@ absl::optional<FeatureConfig> GetClientSideFeatureConfig( Comparator(EQUAL, 0), 60, 60); return config; } + + if (kIPHRequestDesktopSiteAppMenuFeature.name == feature->name) { + // A config that allows the RDS site-level setting user education prompt to + // be shown: + // * If the user has used the RDS (tab-level) setting on the app menu at + // least once. + // * If the prompt has never been shown before. + absl::optional<FeatureConfig> config = FeatureConfig(); + config->valid = true; + config->availability = Comparator(ANY, 0); + config->session_rate = Comparator(ANY, 0); + config->used = EventConfig("app_menu_desktop_site_for_tab_clicked", + Comparator(GREATER_THAN_OR_EQUAL, 1), 180, 180); + config->trigger = EventConfig("request_desktop_site_app_menu_iph_trigger", + Comparator(EQUAL, 0), 180, 180); + return config; + } #endif // BUILDFLAG(IS_ANDROID) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || \ diff --git a/chromium/components/feature_engagement/public/feature_configurations.h b/chromium/components/feature_engagement/public/feature_configurations.h index fe119a55216..f81910918f6 100644 --- a/chromium/components/feature_engagement/public/feature_configurations.h +++ b/chromium/components/feature_engagement/public/feature_configurations.h @@ -5,12 +5,9 @@ #ifndef COMPONENTS_FEATURE_ENGAGEMENT_PUBLIC_FEATURE_CONFIGURATIONS_H_ #define COMPONENTS_FEATURE_ENGAGEMENT_PUBLIC_FEATURE_CONFIGURATIONS_H_ +#include "base/feature_list.h" #include "third_party/abseil-cpp/absl/types/optional.h" -namespace base { -struct Feature; -} // namespace base - namespace feature_engagement { struct FeatureConfig; diff --git a/chromium/components/feature_engagement/public/feature_constants.cc b/chromium/components/feature_engagement/public/feature_constants.cc index d0a13bec40e..e31968e4bfa 100644 --- a/chromium/components/feature_engagement/public/feature_constants.cc +++ b/chromium/components/feature_engagement/public/feature_constants.cc @@ -4,6 +4,7 @@ #include "components/feature_engagement/public/feature_constants.h" +#include "base/feature_list.h" #include "build/build_config.h" namespace feature_engagement { @@ -46,6 +47,8 @@ const base::Feature kIPHReadingListInSidePanelFeature{ "IPH_ReadingListInSidePanel", base::FEATURE_DISABLED_BY_DEFAULT}; const base::Feature kIPHReopenTabFeature{"IPH_ReopenTab", base::FEATURE_DISABLED_BY_DEFAULT}; +const base::Feature kIPHSideSearchAutoTriggeringFeature{ + "IPH_SideSearchAutoTriggering", base::FEATURE_DISABLED_BY_DEFAULT}; const base::Feature kIPHSideSearchFeature{"IPH_SideSearch", base::FEATURE_DISABLED_BY_DEFAULT}; const base::Feature kIPHTabSearchFeature{"IPH_TabSearch", @@ -60,6 +63,9 @@ const base::Feature kIPHProfileSwitchFeature{"IPH_ProfileSwitch", base::FEATURE_ENABLED_BY_DEFAULT}; const base::Feature kIPHIntentChipFeature{"IPH_IntentChip", base::FEATURE_DISABLED_BY_DEFAULT}; +const base::Feature kIPHWebUiHelpBubbleTestFeature( + "IPH_WebUiHelpBubbleTest", + base::FEATURE_DISABLED_BY_DEFAULT); #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) @@ -76,8 +82,6 @@ const base::Feature base::FEATURE_DISABLED_BY_DEFAULT}; const base::Feature kIPHAddToHomescreenMessageFeature{ "IPH_AddToHomescreenMessage", base::FEATURE_ENABLED_BY_DEFAULT}; -const base::Feature kIPHAddToHomescreenTextBubbleFeature{ - "IPH_AddToHomescreenTextBubble", base::FEATURE_ENABLED_BY_DEFAULT}; const base::Feature kIPHAutoDarkOptOutFeature{"IPH_AutoDarkOptOut", base::FEATURE_ENABLED_BY_DEFAULT}; const base::Feature kIPHAutoDarkUserEducationMessageFeature{ @@ -87,6 +91,9 @@ const base::Feature kIPHAutoDarkUserEducationMessageOptInFeature{ const base::Feature kIPHContextualPageActionsPriceTrackingFeature{ "IPH_ContextualPageActions_PriceTracking", base::FEATURE_ENABLED_BY_DEFAULT}; +const base::Feature kIPHContextualPageActionsPriceTrackingActionChipFeature{ + "IPH_ContextualPageActions_PriceTrackingActionChip", + base::FEATURE_ENABLED_BY_DEFAULT}; const base::Feature kIPHCrowFeature{"IPH_Crow", base::FEATURE_DISABLED_BY_DEFAULT}; const base::Feature kIPHDataSaverDetailFeature{ @@ -107,21 +114,6 @@ const base::Feature kIPHChromeHomeExpandFeature{ "IPH_ChromeHomeExpand", base::FEATURE_DISABLED_BY_DEFAULT}; const base::Feature kIPHChromeHomePullToRefreshFeature{ "IPH_ChromeHomePullToRefresh", base::FEATURE_DISABLED_BY_DEFAULT}; -const base::Feature kIPHContextualSearchTranslationEnableFeature{ - "IPH_ContextualSearchTranslationEnable", base::FEATURE_DISABLED_BY_DEFAULT}; -const base::Feature kIPHContextualSearchWebSearchFeature{ - "IPH_ContextualSearchWebSearch", base::FEATURE_DISABLED_BY_DEFAULT}; -const base::Feature kIPHContextualSearchPromoteTapFeature{ - "IPH_ContextualSearchPromoteTap", base::FEATURE_DISABLED_BY_DEFAULT}; -const base::Feature kIPHContextualSearchPromotePanelOpenFeature{ - "IPH_ContextualSearchPromotePanelOpen", base::FEATURE_DISABLED_BY_DEFAULT}; -const base::Feature kIPHContextualSearchOptInFeature{ - "IPH_ContextualSearchOptIn", base::FEATURE_DISABLED_BY_DEFAULT}; -const base::Feature kIPHContextualSearchTappedButShouldLongpressFeature{ - "IPH_ContextualSearchTappedButShouldLongpress", - base::FEATURE_DISABLED_BY_DEFAULT}; -const base::Feature kIPHContextualSearchInPanelHelpFeature{ - "IPH_ContextualSearchInPanelHelp", base::FEATURE_DISABLED_BY_DEFAULT}; const base::Feature kIPHDownloadSettingsFeature{ "IPH_DownloadSettings", base::FEATURE_DISABLED_BY_DEFAULT}; const base::Feature kIPHDownloadInfoBarDownloadContinuingFeature{ @@ -138,6 +130,8 @@ const base::Feature kIPHReadLaterAppMenuBookmarksFeature{ "IPH_ReadLaterAppMenuBookmarks", base::FEATURE_ENABLED_BY_DEFAULT}; const base::Feature kIPHReadLaterBottomSheetFeature{ "IPH_ReadLaterBottomSheet", base::FEATURE_ENABLED_BY_DEFAULT}; +const base::Feature kIPHRequestDesktopSiteAppMenuFeature{ + "IPH_RequestDesktopSiteAppMenu", base::FEATURE_ENABLED_BY_DEFAULT}; const base::Feature kIPHShoppingListSaveFlowFeature{ "IPH_ShoppingListSaveFlow", base::FEATURE_ENABLED_BY_DEFAULT}; const base::Feature kIPHEphemeralTabFeature{"IPH_EphemeralTab", @@ -213,6 +207,8 @@ const base::Feature kIPHPageInfoStoreInfoFeature{ "IPH_PageInfoStoreInfo", base::FEATURE_DISABLED_BY_DEFAULT}; const base::Feature kIPHPreviewsOmniboxUIFeature{ "IPH_PreviewsOmniboxUI", base::FEATURE_ENABLED_BY_DEFAULT}; +const base::Feature kIPHPriceDropNTPFeature{"IPH_PriceDropNTP", + base::FEATURE_DISABLED_BY_DEFAULT}; const base::Feature kIPHShoppingListMenuItemFeature{ "IPH_ShoppingListMenuItem", base::FEATURE_ENABLED_BY_DEFAULT}; const base::Feature kIPHTabGroupsQuicklyComparePagesFeature{ @@ -267,8 +263,6 @@ const base::Feature kIPHSharedHighlightingBuilder{ "IPH_SharedHighlightingBuilder", base::FEATURE_DISABLED_BY_DEFAULT}; const base::Feature kIPHSharedHighlightingReceiverFeature{ "IPH_SharedHighlightingReceiver", base::FEATURE_DISABLED_BY_DEFAULT}; -const base::Feature kIPHStartSurfaceTabSwitcherHomeButton{ - "IPH_StartSurfaceTabSwitcherHomeButton", base::FEATURE_ENABLED_BY_DEFAULT}; const base::Feature kIPHSharingHubWebnotesStylizeFeature{ "IPH_SharingHubWebnotesStylize", base::FEATURE_ENABLED_BY_DEFAULT}; #endif // BUILDFLAG(IS_ANDROID) @@ -296,6 +290,8 @@ const base::Feature kIPHPasswordSuggestionsFeature{ "IPH_PasswordSuggestions", base::FEATURE_DISABLED_BY_DEFAULT}; const base::Feature kIPHFollowWhileBrowsingFeature{ "IPH_FollowWhileBrowsing", base::FEATURE_DISABLED_BY_DEFAULT}; +const base::Feature kIPHOverflowMenuTipFeature{ + "IPH_OverflowMenuTip", base::FEATURE_DISABLED_BY_DEFAULT}; #endif // BUILDFLAG(IS_IOS) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || \ diff --git a/chromium/components/feature_engagement/public/feature_constants.h b/chromium/components/feature_engagement/public/feature_constants.h index 6dc3e390fe9..1e177c4cefd 100644 --- a/chromium/components/feature_engagement/public/feature_constants.h +++ b/chromium/components/feature_engagement/public/feature_constants.h @@ -45,12 +45,14 @@ extern const base::Feature kIPHReadingListEntryPointFeature; extern const base::Feature kIPHIntentChipFeature; extern const base::Feature kIPHReadingListInSidePanelFeature; extern const base::Feature kIPHReopenTabFeature; +extern const base::Feature kIPHSideSearchAutoTriggeringFeature; extern const base::Feature kIPHSideSearchFeature; extern const base::Feature kIPHTabSearchFeature; extern const base::Feature kIPHWebUITabStripFeature; extern const base::Feature kIPHDesktopSnoozeFeature; extern const base::Feature kIPHDesktopPwaInstallFeature; extern const base::Feature kIPHProfileSwitchFeature; +extern const base::Feature kIPHWebUiHelpBubbleTestFeature; #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) @@ -65,11 +67,12 @@ extern const base::Feature extern const base::Feature kIPHAdaptiveButtonInTopToolbarCustomizationVoiceSearchFeature; extern const base::Feature kIPHAddToHomescreenMessageFeature; -extern const base::Feature kIPHAddToHomescreenTextBubbleFeature; extern const base::Feature kIPHAutoDarkOptOutFeature; extern const base::Feature kIPHAutoDarkUserEducationMessageFeature; extern const base::Feature kIPHAutoDarkUserEducationMessageOptInFeature; extern const base::Feature kIPHContextualPageActionsPriceTrackingFeature; +extern const base::Feature + kIPHContextualPageActionsPriceTrackingActionChipFeature; extern const base::Feature kIPHCrowFeature; extern const base::Feature kIPHDataSaverDetailFeature; extern const base::Feature kIPHDataSaverMilestonePromoFeature; @@ -80,13 +83,6 @@ extern const base::Feature kIPHDownloadPageFeature; extern const base::Feature kIPHDownloadPageScreenshotFeature; extern const base::Feature kIPHChromeHomeExpandFeature; extern const base::Feature kIPHChromeHomePullToRefreshFeature; -extern const base::Feature kIPHContextualSearchTranslationEnableFeature; -extern const base::Feature kIPHContextualSearchWebSearchFeature; -extern const base::Feature kIPHContextualSearchPromoteTapFeature; -extern const base::Feature kIPHContextualSearchPromotePanelOpenFeature; -extern const base::Feature kIPHContextualSearchOptInFeature; -extern const base::Feature kIPHContextualSearchTappedButShouldLongpressFeature; -extern const base::Feature kIPHContextualSearchInPanelHelpFeature; extern const base::Feature kIPHDownloadSettingsFeature; extern const base::Feature kIPHDownloadInfoBarDownloadContinuingFeature; extern const base::Feature kIPHDownloadInfoBarDownloadsAreFasterFeature; @@ -129,11 +125,13 @@ extern const base::Feature kIPHNewTabPageHomeButtonFeature; extern const base::Feature kIPHPageInfoFeature; extern const base::Feature kIPHPageInfoStoreInfoFeature; extern const base::Feature kIPHPreviewsOmniboxUIFeature; +extern const base::Feature kIPHPriceDropNTPFeature; extern const base::Feature kIPHQuietNotificationPromptsFeature; extern const base::Feature kIPHReadLaterContextMenuFeature; extern const base::Feature kIPHReadLaterAppMenuBookmarkThisPageFeature; extern const base::Feature kIPHReadLaterAppMenuBookmarksFeature; extern const base::Feature kIPHReadLaterBottomSheetFeature; +extern const base::Feature kIPHRequestDesktopSiteAppMenuFeature; extern const base::Feature kIPHShoppingListMenuItemFeature; extern const base::Feature kIPHShoppingListSaveFlowFeature; extern const base::Feature kIPHTabGroupsQuicklyComparePagesFeature; @@ -162,7 +160,6 @@ extern const base::Feature kIPHWebFeedFollowFeature; extern const base::Feature kIPHWebFeedPostFollowDialogFeature; extern const base::Feature kIPHSharedHighlightingBuilder; extern const base::Feature kIPHSharedHighlightingReceiverFeature; -extern const base::Feature kIPHStartSurfaceTabSwitcherHomeButton; extern const base::Feature kIPHSharingHubWebnotesStylizeFeature; #endif // BUILDFLAG(IS_ANDROID) @@ -178,6 +175,7 @@ extern const base::Feature kIPHDiscoverFeedHeaderFeature; extern const base::Feature kIPHDefaultSiteViewFeature; extern const base::Feature kIPHPasswordSuggestionsFeature; extern const base::Feature kIPHFollowWhileBrowsingFeature; +extern const base::Feature kIPHOverflowMenuTipFeature; #endif // BUILDFLAG(IS_IOS) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || \ diff --git a/chromium/components/feature_engagement/public/feature_list.cc b/chromium/components/feature_engagement/public/feature_list.cc index ab905b12f67..52f48cbfeb7 100644 --- a/chromium/components/feature_engagement/public/feature_list.cc +++ b/chromium/components/feature_engagement/public/feature_list.cc @@ -20,7 +20,6 @@ const base::Feature* const kAllFeatures[] = { &kIPHAdaptiveButtonInTopToolbarCustomizationShareFeature, &kIPHAdaptiveButtonInTopToolbarCustomizationVoiceSearchFeature, &kIPHAddToHomescreenMessageFeature, - &kIPHAddToHomescreenTextBubbleFeature, &kIPHAutoDarkOptOutFeature, &kIPHAutoDarkUserEducationMessageFeature, &kIPHAutoDarkUserEducationMessageOptInFeature, @@ -37,13 +36,7 @@ const base::Feature* const kAllFeatures[] = { &kIPHChromeReengagementNotification2Feature, &kIPHChromeReengagementNotification3Feature, &kIPHContextualPageActionsPriceTrackingFeature, - &kIPHContextualSearchTranslationEnableFeature, - &kIPHContextualSearchWebSearchFeature, - &kIPHContextualSearchPromoteTapFeature, - &kIPHContextualSearchPromotePanelOpenFeature, - &kIPHContextualSearchOptInFeature, - &kIPHContextualSearchTappedButShouldLongpressFeature, - &kIPHContextualSearchInPanelHelpFeature, + &kIPHContextualPageActionsPriceTrackingActionChipFeature, &kIPHCrowFeature, &kIPHDownloadSettingsFeature, &kIPHDownloadInfoBarDownloadContinuingFeature, @@ -76,12 +69,14 @@ const base::Feature* const kAllFeatures[] = { &kIPHPageInfoFeature, &kIPHPageInfoStoreInfoFeature, &kIPHPreviewsOmniboxUIFeature, + &kIPHPriceDropNTPFeature, &kIPHPwaInstallAvailableFeature, &kIPHQuietNotificationPromptsFeature, &kIPHReadLaterContextMenuFeature, &kIPHReadLaterAppMenuBookmarkThisPageFeature, &kIPHReadLaterAppMenuBookmarksFeature, &kIPHReadLaterBottomSheetFeature, + &kIPHRequestDesktopSiteAppMenuFeature, &kIPHShoppingListMenuItemFeature, &kIPHShoppingListSaveFlowFeature, &kIPHTabGroupsQuicklyComparePagesFeature, @@ -106,7 +101,6 @@ const base::Feature* const kAllFeatures[] = { &kIPHWebFeedPostFollowDialogFeature, &kIPHSharedHighlightingBuilder, &kIPHSharedHighlightingReceiverFeature, - &kIPHStartSurfaceTabSwitcherHomeButton, &kIPHSharingHubWebnotesStylizeFeature, #endif // BUILDFLAG(IS_ANDROID) #if BUILDFLAG(IS_IOS) @@ -121,6 +115,7 @@ const base::Feature* const kAllFeatures[] = { &kIPHDefaultSiteViewFeature, &kIPHPasswordSuggestionsFeature, &kIPHFollowWhileBrowsingFeature, + &kIPHOverflowMenuTipFeature, #endif // BUILDFLAG(IS_IOS) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || \ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) @@ -134,6 +129,7 @@ const base::Feature* const kAllFeatures[] = { &kIPHReadingListEntryPointFeature, &kIPHReadingListInSidePanelFeature, &kIPHReopenTabFeature, + &kIPHSideSearchAutoTriggeringFeature, &kIPHSideSearchFeature, &kIPHTabSearchFeature, &kIPHWebUITabStripFeature, @@ -141,6 +137,7 @@ const base::Feature* const kAllFeatures[] = { &kIPHProfileSwitchFeature, &kIPHDesktopSharedHighlightingFeature, &kIPHIntentChipFeature, + &kIPHWebUiHelpBubbleTestFeature, #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) diff --git a/chromium/components/feature_engagement/public/feature_list.h b/chromium/components/feature_engagement/public/feature_list.h index 83105819f3c..0b9843167e2 100644 --- a/chromium/components/feature_engagement/public/feature_list.h +++ b/chromium/components/feature_engagement/public/feature_list.h @@ -54,8 +54,6 @@ DEFINE_VARIATION_PARAM( "IPH_AdaptiveButtonInTopToolbarCustomization_VoiceSearch"); DEFINE_VARIATION_PARAM(kIPHAddToHomescreenMessageFeature, "IPH_AddToHomescreenMessage"); -DEFINE_VARIATION_PARAM(kIPHAddToHomescreenTextBubbleFeature, - "IPH_AddToHomescreenTextBubble"); DEFINE_VARIATION_PARAM(kIPHAutoDarkOptOutFeature, "IPH_AutoDarkOptOut"); DEFINE_VARIATION_PARAM(kIPHAutoDarkUserEducationMessageFeature, "IPH_AutoDarkUserEducationMessage"); @@ -63,6 +61,8 @@ DEFINE_VARIATION_PARAM(kIPHAutoDarkUserEducationMessageOptInFeature, "IPH_AutoDarkUserEducationMessageOptIn"); DEFINE_VARIATION_PARAM(kIPHContextualPageActionsPriceTrackingFeature, "IPH_ContextualPageActions_PriceTracking"); +DEFINE_VARIATION_PARAM(kIPHContextualPageActionsPriceTrackingActionChipFeature, + "IPH_ContextualPageActions_PriceTrackingActionChip"); DEFINE_VARIATION_PARAM(kIPHCrowFeature, "IPH_Crow"); DEFINE_VARIATION_PARAM(kIPHDataSaverDetailFeature, "IPH_DataSaverDetail"); DEFINE_VARIATION_PARAM(kIPHDataSaverMilestonePromoFeature, @@ -82,20 +82,6 @@ DEFINE_VARIATION_PARAM(kIPHChromeReengagementNotification2Feature, "IPH_ChromeReengagementNotification2"); DEFINE_VARIATION_PARAM(kIPHChromeReengagementNotification3Feature, "IPH_ChromeReengagementNotification3"); -DEFINE_VARIATION_PARAM(kIPHContextualSearchTranslationEnableFeature, - "IPH_ContextualSearchTranslationEnable"); -DEFINE_VARIATION_PARAM(kIPHContextualSearchWebSearchFeature, - "IPH_ContextualSearchWebSearch"); -DEFINE_VARIATION_PARAM(kIPHContextualSearchPromoteTapFeature, - "IPH_ContextualSearchPromoteTap"); -DEFINE_VARIATION_PARAM(kIPHContextualSearchPromotePanelOpenFeature, - "IPH_ContextualSearchPromotePanelOpen"); -DEFINE_VARIATION_PARAM(kIPHContextualSearchOptInFeature, - "IPH_ContextualSearchOptIn"); -DEFINE_VARIATION_PARAM(kIPHContextualSearchTappedButShouldLongpressFeature, - "IPH_ContextualSearchTappedButShouldLongpress"); -DEFINE_VARIATION_PARAM(kIPHContextualSearchInPanelHelpFeature, - "IPH_ContextualSearchInPanelHelp"); DEFINE_VARIATION_PARAM(kIPHDownloadSettingsFeature, "IPH_DownloadSettings"); DEFINE_VARIATION_PARAM(kIPHDownloadInfoBarDownloadContinuingFeature, "IPH_DownloadInfoBarDownloadContinuing"); @@ -149,6 +135,7 @@ DEFINE_VARIATION_PARAM(kIPHNewTabPageButtonFeature, "IPH_NewTabPageHomeButton"); DEFINE_VARIATION_PARAM(kIPHPageInfoFeature, "IPH_PageInfo"); DEFINE_VARIATION_PARAM(kIPHPageInfoStoreInfoFeature, "IPH_PageInfoStoreInfo"); DEFINE_VARIATION_PARAM(kIPHPreviewsOmniboxUIFeature, "IPH_PreviewsOmniboxUI"); +DEFINE_VARIATION_PARAM(kIPHPriceDropNTPFeature, "IPH_PriceDropNTP"); DEFINE_VARIATION_PARAM(kIPHPwaInstallAvailableFeature, "IPH_PwaInstallAvailableFeature"); DEFINE_VARIATION_PARAM(kIPHQuietNotificationPromptsFeature, @@ -161,6 +148,8 @@ DEFINE_VARIATION_PARAM(kIPHReadLaterAppMenuBookmarksFeature, "IPH_ReadLaterAppMenuBookmarks"); DEFINE_VARIATION_PARAM(kIPHReadLaterBottomSheetFeature, "IPH_ReadLaterBottomSheet"); +DEFINE_VARIATION_PARAM(kIPHRequestDesktopSiteAppMenuFeature, + "IPH_RequestDesktopSiteAppMenu"); DEFINE_VARIATION_PARAM(kIPHShoppingListMenuItemFeature, "IPH_ShoppingListMenuItem"); DEFINE_VARIATION_PARAM(kIPHShoppingListSaveFlowFeature, @@ -202,8 +191,6 @@ DEFINE_VARIATION_PARAM(kIPHSharedHighlightingBuilder, "IPH_SharedHighlightingBuilder"); DEFINE_VARIATION_PARAM(kIPHSharedHighlightingReceiverFeature, "IPH_SharedHighlightingReceiver"); -DEFINE_VARIATION_PARAM(kIPHStartSurfaceTabSwitcherHomeButton, - "IPH_StartSurfaceTabSwitcherHomeButton"); DEFINE_VARIATION_PARAM(kIPHSharingHubWebnotesStylizeFeature, "IPH_SharingHubWebnotesStylize"); #endif // BUILDFLAG(IS_ANDROID) @@ -225,6 +212,7 @@ DEFINE_VARIATION_PARAM(kIPHPasswordSuggestionsFeature, "IPH_PasswordSuggestions"); DEFINE_VARIATION_PARAM(kIPHFollowWhileBrowsingFeature, "IPH_FollowWhileBrowsing"); +DEFINE_VARIATION_PARAM(kIPHOverflowMenuTipFeature, "IPH_OverflowMenuTip"); #endif // BUILDFLAG(IS_IOS) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || \ @@ -244,6 +232,8 @@ DEFINE_VARIATION_PARAM(kIPHReadingListEntryPointFeature, DEFINE_VARIATION_PARAM(kIPHReadingListInSidePanelFeature, "IPH_ReadingListInSidePanel"); DEFINE_VARIATION_PARAM(kIPHReopenTabFeature, "IPH_ReopenTab"); +DEFINE_VARIATION_PARAM(kIPHSideSearchAutoTriggeringFeature, + "IPH_SideSearchAutoTriggering"); DEFINE_VARIATION_PARAM(kIPHSideSearchFeature, "IPH_SideSearch"); DEFINE_VARIATION_PARAM(kIPHTabAudioMutingFeature, "IPH_TabAudioMuting"); DEFINE_VARIATION_PARAM(kIPHTabSearchFeature, "IPH_TabSearch"); @@ -253,6 +243,8 @@ DEFINE_VARIATION_PARAM(kIPHProfileSwitchFeature, "IPH_ProfileSwitch"); DEFINE_VARIATION_PARAM(kIPHDesktopSharedHighlightingFeature, "IPH_DesktopSharedHighlighting"); DEFINE_VARIATION_PARAM(kIPHIntentChipFeature, "IPH_IntentChip"); +DEFINE_VARIATION_PARAM(kIPHWebUiHelpBubbleTestFeature, + "IPH_WebUiHelpBubbleTest"); #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) @@ -279,7 +271,6 @@ constexpr flags_ui::FeatureEntry::FeatureVariation VARIATION_ENTRY( kIPHAdaptiveButtonInTopToolbarCustomizationVoiceSearchFeature), VARIATION_ENTRY(kIPHAddToHomescreenMessageFeature), - VARIATION_ENTRY(kIPHAddToHomescreenTextBubbleFeature), VARIATION_ENTRY(kIPHAutoDarkOptOutFeature), VARIATION_ENTRY(kIPHAutoDarkUserEducationMessageFeature), VARIATION_ENTRY(kIPHAutoDarkUserEducationMessageOptInFeature), @@ -297,13 +288,6 @@ constexpr flags_ui::FeatureEntry::FeatureVariation VARIATION_ENTRY(kIPHChromeReengagementNotification1Feature), VARIATION_ENTRY(kIPHChromeReengagementNotification2Feature), VARIATION_ENTRY(kIPHChromeReengagementNotification3Feature), - VARIATION_ENTRY(kIPHContextualSearchTranslationEnableFeature), - VARIATION_ENTRY(kIPHContextualSearchWebSearchFeature), - VARIATION_ENTRY(kIPHContextualSearchPromoteTapFeature), - VARIATION_ENTRY(kIPHContextualSearchPromotePanelOpenFeature), - VARIATION_ENTRY(kIPHContextualSearchOptInFeature), - VARIATION_ENTRY(kIPHContextualSearchTappedButShouldLongpressFeature), - VARIATION_ENTRY(kIPHContextualSearchInPanelHelpFeature), VARIATION_ENTRY(kIPHDownloadSettingsFeature), VARIATION_ENTRY(kIPHDownloadInfoBarDownloadContinuingFeature), VARIATION_ENTRY(kIPHDownloadInfoBarDownloadsAreFasterFeature), @@ -321,12 +305,14 @@ constexpr flags_ui::FeatureEntry::FeatureVariation VARIATION_ENTRY(kIPHPageInfoFeature), VARIATION_ENTRY(kIPHPageInfoStoreInfoFeature), VARIATION_ENTRY(kIPHPreviewsOmniboxUIFeature), + VARIATION_ENTRY(kIPHPriceDropNTPFeature), VARIATION_ENTRY(kIPHPwaInstallAvailableFeature), VARIATION_ENTRY(kIPHQuietNotificationPromptsFeature), VARIATION_ENTRY(kIPHReadLaterContextMenuFeature), VARIATION_ENTRY(kIPHReadLaterAppMenuBookmarkThisPageFeature), VARIATION_ENTRY(kIPHReadLaterAppMenuBookmarksFeature), VARIATION_ENTRY(kIPHReadLaterBottomSheetFeature), + VARIATION_ENTRY(kIPHRequestDesktopSiteAppMenuFeature), VARIATION_ENTRY(kIPHShoppingListMenuItemFeature), VARIATION_ENTRY(kIPHShoppingListSaveFlowFeature), VARIATION_ENTRY(kIPHTabGroupsQuicklyComparePagesFeature), @@ -363,6 +349,7 @@ constexpr flags_ui::FeatureEntry::FeatureVariation VARIATION_ENTRY(kIPHDefaultSiteViewFeature), VARIATION_ENTRY(kIPHPasswordSuggestionsFeature), VARIATION_ENTRY(kIPHFollowWhileBrowsingFeature), + VARIATION_ENTRY(kIPHOverflowMenuTipFeature), #elif BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) VARIATION_ENTRY(kIPHDesktopTabGroupsNewGroupFeature), @@ -375,6 +362,7 @@ constexpr flags_ui::FeatureEntry::FeatureVariation VARIATION_ENTRY(kIPHReadingListEntryPointFeature), VARIATION_ENTRY(kIPHReadingListInSidePanelFeature), VARIATION_ENTRY(kIPHReopenTabFeature), + VARIATION_ENTRY(kIPHSideSearchAutoTriggeringFeature), VARIATION_ENTRY(kIPHSideSearchFeature), VARIATION_ENTRY(kIPHTabAudioMutingFeature), VARIATION_ENTRY(kIPHTabSearchFeature), @@ -383,6 +371,7 @@ constexpr flags_ui::FeatureEntry::FeatureVariation VARIATION_ENTRY(kIPHProfileSwitchFeature), VARIATION_ENTRY(kIPHDesktopSharedHighlightingFeature), VARIATION_ENTRY(kIPHIntentChipFeature), + VARIATION_ENTRY(kIPHWebUiHelpBubbleTestFeature), #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) |