Mark arc-native-bridge-experiment as non-expiring
Bug: None
Test: None
Change-Id: Ife43b9b735044d9eabde1ca5574d252c919f5691
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1768828
Reviewed-by: Avi Drissman <[email protected]>
Reviewed-by: Scott Violet <[email protected]>
Commit-Queue: Lev Rumyantsev <[email protected]>
Cr-Commit-Position: refs/heads/master@{#690835}
diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
index 50837efd..d6b936d 100644
--- a/chrome/browser/about_flags.cc
+++ b/chrome/browser/about_flags.cc
@@ -2531,10 +2531,9 @@
flag_descriptions::kArcFilePickerExperimentName,
flag_descriptions::kArcFilePickerExperimentDescription, kOsCrOS,
FEATURE_VALUE_TYPE(arc::kFilePickerExperimentFeature)},
- {"arc-native-bridge-experiment",
- flag_descriptions::kArcNativeBridgeExperimentName,
- flag_descriptions::kArcNativeBridgeExperimentDescription, kOsCrOS,
- FEATURE_VALUE_TYPE(arc::kNativeBridgeExperimentFeature)},
+ {"arc-native-bridge-toggle", flag_descriptions::kArcNativeBridgeToggleName,
+ flag_descriptions::kArcNativeBridgeToggleDescription, kOsCrOS,
+ FEATURE_VALUE_TYPE(arc::kNativeBridgeToggleFeature)},
{"arc-print-spooler-experiment",
flag_descriptions::kArcPrintSpoolerExperimentName,
flag_descriptions::kArcPrintSpoolerExperimentDescription, kOsCrOS,
diff --git a/chrome/browser/chromeos/dbus/chrome_features_service_provider.cc b/chrome/browser/chromeos/dbus/chrome_features_service_provider.cc
index 25661e4c..9279d2f 100644
--- a/chrome/browser/chromeos/dbus/chrome_features_service_provider.cc
+++ b/chrome/browser/chromeos/dbus/chrome_features_service_provider.cc
@@ -121,7 +121,7 @@
&arc::kBootCompletedBroadcastFeature,
&arc::kCustomTabsExperimentFeature,
&arc::kFilePickerExperimentFeature,
- &arc::kNativeBridgeExperimentFeature,
+ &arc::kNativeBridgeToggleFeature,
&arc::kPrintSpoolerExperimentFeature,
};
diff --git a/chrome/browser/flag-metadata.json b/chrome/browser/flag-metadata.json
index 443af491..3fa514a 100644
--- a/chrome/browser/flag-metadata.json
+++ b/chrome/browser/flag-metadata.json
@@ -123,9 +123,11 @@
"expiry_milestone": 76
},
{
- "name": "arc-native-bridge-experiment",
+ "name": "arc-native-bridge-toggle",
"owners": [ "[email protected]" ],
- "expiry_milestone": 76
+ // Used on ChromeOS to compare and debug different ARC native-bridge
+ // implementations which are normally used on different platforms.
+ "expiry_milestone": -1
},
{
"name": "arc-print-spooler-experiment",
diff --git a/chrome/browser/flag-never-expire-list.json b/chrome/browser/flag-never-expire-list.json
index b2fd37173..ccba741 100644
--- a/chrome/browser/flag-never-expire-list.json
+++ b/chrome/browser/flag-never-expire-list.json
@@ -14,6 +14,7 @@
// test (AboutFlagsTest.OnlyPermittedFlagsNeverExpire).
[
"allow-previews",
+ "arc-native-bridge-toggle",
"ash-debug-shortcuts",
"ash-enable-unified-desktop",
"data-saver-server-previews",
diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descriptions.cc
index 0187c5c6..8efed91 100644
--- a/chrome/browser/flag_descriptions.cc
+++ b/chrome/browser/flag_descriptions.cc
@@ -3044,10 +3044,10 @@
const char kArcFilePickerExperimentDescription[] =
"Enables using Chrome OS file picker in ARC.";
-const char kArcNativeBridgeExperimentName[] =
- "Enable native bridge experiment for ARC";
-const char kArcNativeBridgeExperimentDescription[] =
- "Enables experimental native bridge feature.";
+const char kArcNativeBridgeToggleName[] =
+ "Toggle between native bridge implementations for ARC";
+const char kArcNativeBridgeToggleDescription[] =
+ "Toggle between native bridge implementations for ARC.";
const char kArcPrintSpoolerExperimentName[] =
"Enable print spooler experiment for ARC";
diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h
index edea588..b55c818 100644
--- a/chrome/browser/flag_descriptions.h
+++ b/chrome/browser/flag_descriptions.h
@@ -1814,8 +1814,8 @@
extern const char kArcFilePickerExperimentName[];
extern const char kArcFilePickerExperimentDescription[];
-extern const char kArcNativeBridgeExperimentName[];
-extern const char kArcNativeBridgeExperimentDescription[];
+extern const char kArcNativeBridgeToggleName[];
+extern const char kArcNativeBridgeToggleDescription[];
extern const char kArcPrintSpoolerExperimentName[];
extern const char kArcPrintSpoolerExperimentDescription[];
diff --git a/components/arc/arc_features.cc b/components/arc/arc_features.cc
index 867da0e..719b98f23 100644
--- a/components/arc/arc_features.cc
+++ b/components/arc/arc_features.cc
@@ -48,10 +48,11 @@
const base::Feature kFilePickerExperimentFeature{
"ArcFilePickerExperiment", base::FEATURE_ENABLED_BY_DEFAULT};
-// Controls experimental native bridge feature for ARC.
-const base::Feature kNativeBridgeExperimentFeature {
- "ArcNativeBridgeExperiment", base::FEATURE_ENABLED_BY_DEFAULT
-};
+// Toggles between native bridge implementations for ARC.
+// Note, that we keep the original feature name to preserve
+// corresponding metrics.
+const base::Feature kNativeBridgeToggleFeature{
+ "ArcNativeBridgeExperiment", base::FEATURE_ENABLED_BY_DEFAULT};
// Controls experimental print spooler feature for ARC.
const base::Feature kPrintSpoolerExperimentFeature{
diff --git a/components/arc/arc_features.h b/components/arc/arc_features.h
index 4f9b39d..c696665 100644
--- a/components/arc/arc_features.h
+++ b/components/arc/arc_features.h
@@ -21,7 +21,7 @@
extern const base::Feature kEnableRegularToChildTransitionFeature;
extern const base::Feature kEnableUnifiedAudioFocusFeature;
extern const base::Feature kFilePickerExperimentFeature;
-extern const base::Feature kNativeBridgeExperimentFeature;
+extern const base::Feature kNativeBridgeToggleFeature;
extern const base::Feature kPrintSpoolerExperimentFeature;
extern const base::Feature kSmartTextSelectionFeature;
extern const base::Feature kUsbHostFeature;
diff --git a/components/arc/session/arc_session_impl.cc b/components/arc/session/arc_session_impl.cc
index 7a31cfb..0a45db11 100644
--- a/components/arc/session/arc_session_impl.cc
+++ b/components/arc/session/arc_session_impl.cc
@@ -365,7 +365,7 @@
state_ = State::STARTING_MINI_INSTANCE;
StartArcMiniContainerRequest request;
request.set_native_bridge_experiment(
- base::FeatureList::IsEnabled(arc::kNativeBridgeExperimentFeature));
+ base::FeatureList::IsEnabled(arc::kNativeBridgeToggleFeature));
request.set_arc_file_picker_experiment(
base::FeatureList::IsEnabled(arc::kFilePickerExperimentFeature));
// Enable Custom Tabs only on Dev and Cannary, and only when Mash is enabled.