Commit cb8865da authored by Natalie Chouinard's avatar Natalie Chouinard Committed by Commit Bot

Cache ChromeStartupDelegate flags

Expose ChromeStartupDelegate feature flag to Java (missed in
https://crrev.com/c/2523359) and cache flag and variations so they can
be accessed before the native FeatureList is initialized.

Bug: 1143402
Change-Id: I1f624009e00bc6d40bbef39b6a093cb15a60c50a
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2529701Reviewed-by: default avatarTheresa  <twellington@chromium.org>
Commit-Queue: Natalie Chouinard <chouinard@chromium.org>
Cr-Commit-Position: refs/heads/master@{#825965}
parent fc896c04
...@@ -13,6 +13,7 @@ import org.chromium.chrome.browser.firstrun.FirstRunUtils; ...@@ -13,6 +13,7 @@ import org.chromium.chrome.browser.firstrun.FirstRunUtils;
import org.chromium.chrome.browser.flags.CachedFeatureFlags; import org.chromium.chrome.browser.flags.CachedFeatureFlags;
import org.chromium.chrome.browser.flags.CachedFieldTrialParameter; import org.chromium.chrome.browser.flags.CachedFieldTrialParameter;
import org.chromium.chrome.browser.flags.ChromeFeatureList; import org.chromium.chrome.browser.flags.ChromeFeatureList;
import org.chromium.chrome.browser.init.ChromeStartupDelegate;
import org.chromium.chrome.browser.tasks.ConditionalTabStripUtils; import org.chromium.chrome.browser.tasks.ConditionalTabStripUtils;
import org.chromium.chrome.browser.tasks.ReturnToChromeExperimentsUtil; import org.chromium.chrome.browser.tasks.ReturnToChromeExperimentsUtil;
import org.chromium.chrome.browser.tasks.tab_management.TabUiFeatureUtilities; import org.chromium.chrome.browser.tasks.tab_management.TabUiFeatureUtilities;
...@@ -50,6 +51,7 @@ public class ChromeCachedFlags { ...@@ -50,6 +51,7 @@ public class ChromeCachedFlags {
List<String> featuresToCache = Arrays.asList( List<String> featuresToCache = Arrays.asList(
ChromeFeatureList.ANDROID_MANAGED_BY_MENU_ITEM, ChromeFeatureList.ANDROID_MANAGED_BY_MENU_ITEM,
ChromeFeatureList.ANDROID_PARTNER_CUSTOMIZATION_PHENOTYPE, ChromeFeatureList.ANDROID_PARTNER_CUSTOMIZATION_PHENOTYPE,
ChromeFeatureList.CHROME_STARTUP_DELEGATE,
ChromeFeatureList.CLOSE_TAB_SUGGESTIONS, ChromeFeatureList.CLOSE_TAB_SUGGESTIONS,
ChromeFeatureList.CRITICAL_PERSISTED_TAB_DATA, ChromeFeatureList.CRITICAL_PERSISTED_TAB_DATA,
ChromeFeatureList.COMMAND_LINE_ON_NON_ROOTED, ChromeFeatureList.COMMAND_LINE_ON_NON_ROOTED,
...@@ -82,6 +84,7 @@ public class ChromeCachedFlags { ...@@ -82,6 +84,7 @@ public class ChromeCachedFlags {
List<CachedFieldTrialParameter> fieldTrialsToCache = Arrays.asList( List<CachedFieldTrialParameter> fieldTrialsToCache = Arrays.asList(
AppMenuPropertiesDelegateImpl.ACTION_BAR_VARIATION, AppMenuPropertiesDelegateImpl.ACTION_BAR_VARIATION,
AppMenuPropertiesDelegateImpl.THREE_BUTTON_ACTION_BAR_VARIATION, AppMenuPropertiesDelegateImpl.THREE_BUTTON_ACTION_BAR_VARIATION,
ChromeStartupDelegate.ENABLED,
ConditionalTabStripUtils.CONDITIONAL_TAB_STRIP_INFOBAR_LIMIT, ConditionalTabStripUtils.CONDITIONAL_TAB_STRIP_INFOBAR_LIMIT,
ConditionalTabStripUtils.CONDITIONAL_TAB_STRIP_INFOBAR_PERIOD, ConditionalTabStripUtils.CONDITIONAL_TAB_STRIP_INFOBAR_PERIOD,
ConditionalTabStripUtils.CONDITIONAL_TAB_STRIP_SESSION_TIME_MS, ConditionalTabStripUtils.CONDITIONAL_TAB_STRIP_SESSION_TIME_MS,
......
...@@ -4,9 +4,17 @@ ...@@ -4,9 +4,17 @@
package org.chromium.chrome.browser.init; package org.chromium.chrome.browser.init;
import org.chromium.chrome.browser.flags.BooleanCachedFieldTrialParameter;
import org.chromium.chrome.browser.flags.ChromeFeatureList;
/** /**
* Delegate for Chrome startup initialization, implemented downstream. * Delegate for Chrome startup initialization, implemented downstream.
*/ */
public class ChromeStartupDelegate { public class ChromeStartupDelegate {
public static final String ENABLED_PARAM = "enabled";
public static final BooleanCachedFieldTrialParameter ENABLED =
new BooleanCachedFieldTrialParameter(
ChromeFeatureList.CHROME_STARTUP_DELEGATE, ENABLED_PARAM, false);
public void init() {} public void init() {}
} }
...@@ -138,6 +138,7 @@ const base::Feature* kFeaturesExposedToJava[] = { ...@@ -138,6 +138,7 @@ const base::Feature* kFeaturesExposedToJava[] = {
&kChromeShareScreenshot, &kChromeShareScreenshot,
&kChromeSharingHub, &kChromeSharingHub,
&kChromeSharingHubV15, &kChromeSharingHubV15,
&kChromeStartupDelegate,
&kCommandLineOnNonRooted, &kCommandLineOnNonRooted,
&kConditionalTabStripAndroid, &kConditionalTabStripAndroid,
&kContentSuggestionsScrollToLoad, &kContentSuggestionsScrollToLoad,
......
...@@ -49,6 +49,7 @@ public class CachedFeatureFlags { ...@@ -49,6 +49,7 @@ public class CachedFeatureFlags {
{ {
put(ChromeFeatureList.ANDROID_MANAGED_BY_MENU_ITEM, true); put(ChromeFeatureList.ANDROID_MANAGED_BY_MENU_ITEM, true);
put(ChromeFeatureList.ANDROID_PARTNER_CUSTOMIZATION_PHENOTYPE, true); put(ChromeFeatureList.ANDROID_PARTNER_CUSTOMIZATION_PHENOTYPE, true);
put(ChromeFeatureList.CHROME_STARTUP_DELEGATE, false);
put(ChromeFeatureList.CONDITIONAL_TAB_STRIP_ANDROID, false); put(ChromeFeatureList.CONDITIONAL_TAB_STRIP_ANDROID, false);
put(ChromeFeatureList.HORIZONTAL_TAB_SWITCHER_ANDROID, false); put(ChromeFeatureList.HORIZONTAL_TAB_SWITCHER_ANDROID, false);
put(ChromeFeatureList.SERVICE_MANAGER_FOR_DOWNLOAD, true); put(ChromeFeatureList.SERVICE_MANAGER_FOR_DOWNLOAD, true);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment