[iOS] Add flag for the default omnibox position in promos

Bug: 1503638
Change-Id: Ia4d56aebdd0b276e0e07647e89b61a1354153bef
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5049984
Commit-Queue: Ewann PellĂ© <[email protected]>
Auto-Submit: Christian Xu <[email protected]>
Reviewed-by: Ewann PellĂ© <[email protected]>
Commit-Queue: Christian Xu <[email protected]>
Cr-Commit-Position: refs/heads/main@{#1227430}
diff --git a/ios/chrome/browser/flags/about_flags.mm b/ios/chrome/browser/flags/about_flags.mm
index cbeb0d6..09b039c 100644
--- a/ios/chrome/browser/flags/about_flags.mm
+++ b/ios/chrome/browser/flags/about_flags.mm
@@ -630,6 +630,20 @@
      nullptr},
 };
 
+const FeatureEntry::FeatureParam kBottomOmniboxPromoDefaultPositionTop[] = {
+    {kBottomOmniboxPromoDefaultPositionParam,
+     kBottomOmniboxPromoDefaultPositionParamTop}};
+const FeatureEntry::FeatureParam kBottomOmniboxPromoDefaultPositionBottom[] = {
+    {kBottomOmniboxPromoDefaultPositionParam,
+     kBottomOmniboxPromoDefaultPositionParamBottom}};
+const FeatureEntry::FeatureVariation
+    kBottomOmniboxPromoDefaultPositionVariations[] = {
+        {"Top", kBottomOmniboxPromoDefaultPositionTop,
+         std::size(kBottomOmniboxPromoDefaultPositionTop), nullptr},
+        {"Bottom", kBottomOmniboxPromoDefaultPositionBottom,
+         std::size(kBottomOmniboxPromoDefaultPositionBottom), nullptr},
+};
+
 const FeatureEntry::Choice kReplaceSyncPromosWithSignInPromosChoices[] = {
     {"Default", "", ""},
     {"Disabled", "disable-features",
@@ -1664,6 +1678,14 @@
      FEATURE_WITH_PARAMS_VALUE_TYPE(kBottomOmniboxPromoAppLaunch,
                                     kBottomOmniboxPromoVariations,
                                     "BottomOmniboxPromoAppLaunch")},
+    {"bottom-omnibox-promo-default-position",
+     flag_descriptions::kBottomOmniboxPromoDefaultPositionName,
+     flag_descriptions::kBottomOmniboxPromoDefaultPositionDescription,
+     flags_ui::kOsIos,
+     FEATURE_WITH_PARAMS_VALUE_TYPE(
+         kBottomOmniboxPromoDefaultPosition,
+         kBottomOmniboxPromoDefaultPositionVariations,
+         "BottomOmniboxPromoDefaultPosition")},
 };
 
 bool SkipConditionalFeatureEntry(const flags_ui::FeatureEntry& entry) {