Feature flag for reordering bookmarks + blending bookmarks / folders

Bug: 160194
Change-Id: I1110d0aa83b2bbb17cdc97816ece14875a6f693c
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1666704
Commit-Queue: Jenna Himawan <[email protected]>
Reviewed-by: Matthew Jones <[email protected]>
Reviewed-by: Theresa <[email protected]>
Cr-Commit-Position: refs/heads/master@{#671164}
diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
index 847c504..149156ea 100644
--- a/chrome/browser/about_flags.cc
+++ b/chrome/browser/about_flags.cc
@@ -1663,6 +1663,9 @@
     {"enable-search-ready-omnibox", flag_descriptions::kSearchReadyOmniboxName,
      flag_descriptions::kSearchReadyOmniboxDescription, kOsAndroid,
      FEATURE_VALUE_TYPE(chrome::android::kSearchReadyOmniboxFeature)},
+    {"enable-bookmark-reorder", flag_descriptions::kReorderBookmarksName,
+     flag_descriptions::kReorderBookmarksDescription, kOsAndroid,
+     FEATURE_VALUE_TYPE(chrome::android::kReorderBookmarks)},
 #endif  // OS_ANDROID
     {"in-product-help-demo-mode-choice",
      flag_descriptions::kInProductHelpDemoModeChoiceName,
diff --git a/chrome/browser/android/chrome_feature_list.cc b/chrome/browser/android/chrome_feature_list.cc
index 464cfa3aa..c8c8a9f 100644
--- a/chrome/browser/android/chrome_feature_list.cc
+++ b/chrome/browser/android/chrome_feature_list.cc
@@ -156,6 +156,7 @@
     &kProgressBarThrottleFeature,
     &kReachedCodeProfiler,
     &kReaderModeInCCT,
+    &kReorderBookmarks,
     &kRevampedContextMenu,
     &kSearchReadyOmniboxFeature,
     &kSearchEnginePromoExistingDevice,
@@ -489,6 +490,9 @@
 const base::Feature kReaderModeInCCT{"ReaderModeInCCT",
                                      base::FEATURE_ENABLED_BY_DEFAULT};
 
+const base::Feature kReorderBookmarks{"ReorderBookmarks",
+                                      base::FEATURE_DISABLED_BY_DEFAULT};
+
 const base::Feature kRevampedContextMenu{"RevampedContextMenu",
                                          base::FEATURE_DISABLED_BY_DEFAULT};
 
diff --git a/chrome/browser/android/chrome_feature_list.h b/chrome/browser/android/chrome_feature_list.h
index 8393201..19448cb 100644
--- a/chrome/browser/android/chrome_feature_list.h
+++ b/chrome/browser/android/chrome_feature_list.h
@@ -93,6 +93,7 @@
 extern const base::Feature kPhotoPickerVideoSupport;
 extern const base::Feature kProgressBarThrottleFeature;
 extern const base::Feature kReachedCodeProfiler;
+extern const base::Feature kReorderBookmarks;
 extern const base::Feature kReaderModeInCCT;
 extern const base::Feature kRevampedContextMenu;
 extern const base::Feature kSearchEnginePromoExistingDevice;
diff --git a/chrome/browser/flag-metadata.json b/chrome/browser/flag-metadata.json
index 664cbaf..5e763e3 100644
--- a/chrome/browser/flag-metadata.json
+++ b/chrome/browser/flag-metadata.json
@@ -2758,6 +2758,11 @@
     "expiry_milestone": -1
   },
   {
+    "name": "enable-bookmark-reorder",
+    "owners": ["[email protected]", "twellington" ],
+    "expiry_milestone": 80
+  },
+  {
     "name": "enable-virtual-desks",
     "owners": [ "afakhry" ],
     // This is a flag to enable or disable the Virtual Desks feature.
diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descriptions.cc
index 22c8a6a..7645d36 100644
--- a/chrome/browser/flag_descriptions.cc
+++ b/chrome/browser/flag_descriptions.cc
@@ -1565,6 +1565,11 @@
 const char kRendererSideResourceSchedulerDescription[] =
     "Migrate some ResourceScheduler functionalities to renderer";
 
+const char kReorderBookmarksName[] = "Reorder bookmarks";
+const char kReorderBookmarksDescription[] =
+    "Allows the user to reorder their bookmarks from their Android device. "
+    "The bookmark ordering will be synced across devices.";
+
 const char kRequestTabletSiteName[] =
     "Request tablet site option in the settings menu";
 const char kRequestTabletSiteDescription[] =
diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h
index ae89863..d0993f0 100644
--- a/chrome/browser/flag_descriptions.h
+++ b/chrome/browser/flag_descriptions.h
@@ -935,6 +935,9 @@
 extern const char kRendererSideResourceSchedulerName[];
 extern const char kRendererSideResourceSchedulerDescription[];
 
+extern const char kReorderBookmarksName[];
+extern const char kReorderBookmarksDescription[];
+
 extern const char kRequestTabletSiteName[];
 extern const char kRequestTabletSiteDescription[];