// Copyright 2015 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
package org.chromium.chrome.browser.flags;
import org.chromium.base.BaseFeatures;
import org.chromium.base.FeatureMap;
import org.chromium.base.MutableBooleanParamWithSafeDefault;
import org.chromium.base.MutableFlagWithSafeDefault;
import org.chromium.base.MutableIntParamWithSafeDefault;
import org.chromium.base.cached_flags.AllCachedFieldTrialParameters;
import org.chromium.base.cached_flags.BooleanCachedFieldTrialParameter;
import org.chromium.base.cached_flags.CachedFlag;
import org.chromium.base.cached_flags.DoubleCachedFieldTrialParameter;
import org.chromium.base.cached_flags.IntCachedFieldTrialParameter;
import org.chromium.base.cached_flags.StringCachedFieldTrialParameter;
import java.util.List;
import java.util.Map;
/**
* A list of feature flags exposed to Java.
*
* <p>This class lists flags exposed to Java as String constants. They should match
* |kFeaturesExposedToJava| in chrome/browser/flags/android/chrome_feature_list.cc.
*
* <p>This class also provides convenience methods to access values of flags and their field trial
* parameters through {@link ChromeFeatureMap}.
*
* <p>Chrome-layer {@link CachedFlag}s are instantiated here as well.
*/
public abstract class ChromeFeatureList {
/** Prevent instantiation. */
private ChromeFeatureList() {}
/**
* Convenience method to check Chrome-layer feature flags, see {@link
* FeatureMap#isEnabledInNative(String)}.
*
* <p>Note: Features queried through this API must be added to the array
* |kFeaturesExposedToJava| in chrome/browser/flags/android/chrome_feature_list.cc
*/
public static boolean isEnabled(String featureName) {
return ChromeFeatureMap.isEnabled(featureName);
}
/**
* Convenience method to get Chrome-layer feature field trial params, see {@link
* FeatureMap#getFieldTrialParamByFeature(String, String)}.
*
* <p>Note: Features queried through this API must be added to the array
* |kFeaturesExposedToJava| in chrome/browser/flags/android/chrome_feature_list.cc
*/
public static String getFieldTrialParamByFeature(String featureName, String paramName) {
return ChromeFeatureMap.getInstance().getFieldTrialParamByFeature(featureName, paramName);
}
/**
* Convenience method to get Chrome-layer feature field trial params, see {@link
* FeatureMap#getFieldTrialParamByFeatureAsBoolean(String, String, boolean)}.
*
* <p>Note: Features queried through this API must be added to the array
* |kFeaturesExposedToJava| in chrome/browser/flags/android/chrome_feature_list.cc
*/
public static boolean getFieldTrialParamByFeatureAsBoolean(
String featureName, String paramName, boolean defaultValue) {
return ChromeFeatureMap.getInstance()
.getFieldTrialParamByFeatureAsBoolean(featureName, paramName, defaultValue);
}
/**
* Convenience method to get Chrome-layer feature field trial params, see {@link
* FeatureMap#getFieldTrialParamByFeatureAsInt(String, String, int)}.
*
* <p>Note: Features queried through this API must be added to the array
* |kFeaturesExposedToJava| in chrome/browser/flags/android/chrome_feature_list.cc
*/
public static int getFieldTrialParamByFeatureAsInt(
String featureName, String paramName, int defaultValue) {
return ChromeFeatureMap.getInstance()
.getFieldTrialParamByFeatureAsInt(featureName, paramName, defaultValue);
}
/**
* Convenience method to get Chrome-layer feature field trial params, see {@link
* FeatureMap#getFieldTrialParamByFeatureAsDouble(String, String, double)}.
*
* <p>Note: Features queried through this API must be added to the array
* |kFeaturesExposedToJava| in chrome/browser/flags/android/chrome_feature_list.cc
*/
public static double getFieldTrialParamByFeatureAsDouble(
String featureName, String paramName, double defaultValue) {
return ChromeFeatureMap.getInstance()
.getFieldTrialParamByFeatureAsDouble(featureName, paramName, defaultValue);
}
/**
* Convenience method to get Chrome-layer feature field trial params, see {@link
* FeatureMap#getFieldTrialParamsForFeature(String)}.
*
* <p>Note: Features queried through this API must be added to the array
* |kFeaturesExposedToJava| in chrome/browser/flags/android/chrome_feature_list.cc
*/
public static Map<String, String> getFieldTrialParamsForFeature(String featureName) {
return ChromeFeatureMap.getInstance().getFieldTrialParamsForFeature(featureName);
}
public static AllCachedFieldTrialParameters newAllCachedFieldTrialParameters(
String featureName) {
return new AllCachedFieldTrialParameters(ChromeFeatureMap.getInstance(), featureName);
}
public static BooleanCachedFieldTrialParameter newBooleanCachedFieldTrialParameter(
String featureName, String variationName, boolean defaultValue) {
return new BooleanCachedFieldTrialParameter(
ChromeFeatureMap.getInstance(), featureName, variationName, defaultValue);
}
public static DoubleCachedFieldTrialParameter newDoubleCachedFieldTrialParameter(
String featureName, String variationName, double defaultValue) {
return new DoubleCachedFieldTrialParameter(
ChromeFeatureMap.getInstance(), featureName, variationName, defaultValue);
}
public static IntCachedFieldTrialParameter newIntCachedFieldTrialParameter(
String featureName, String variationName, int defaultValue) {
return new IntCachedFieldTrialParameter(
ChromeFeatureMap.getInstance(), featureName, variationName, defaultValue);
}
public static StringCachedFieldTrialParameter newStringCachedFieldTrialParameter(
String featureName, String variationName, String defaultValue) {
return new StringCachedFieldTrialParameter(
ChromeFeatureMap.getInstance(), featureName, variationName, defaultValue);
}
private static CachedFlag newCachedFlag(String featureName, boolean defaultValue) {
return newCachedFlag(featureName, defaultValue, defaultValue);
}
private static CachedFlag newCachedFlag(
String featureName, boolean defaultValue, boolean defaultValueInTests) {
return new CachedFlag(
ChromeFeatureMap.getInstance(), featureName, defaultValue, defaultValueInTests);
}
private static MutableFlagWithSafeDefault newMutableFlagWithSafeDefault(
String featureName, boolean defaultValue) {
return ChromeFeatureMap.getInstance().mutableFlagWithSafeDefault(featureName, defaultValue);
}
// Feature names.
/* Alphabetical: */
public static final String ACCOUNT_REAUTHENTICATION_RECENT_TIME_WINDOW =
"AccountReauthenticationRecentTimeWindow";
public static final String ADAPTIVE_BUTTON_IN_TOP_TOOLBAR_TRANSLATE =
"AdaptiveButtonInTopToolbarTranslate";
public static final String ADAPTIVE_BUTTON_IN_TOP_TOOLBAR_ADD_TO_BOOKMARKS =
"AdaptiveButtonInTopToolbarAddToBookmarks";
public static final String ADAPTIVE_BUTTON_IN_TOP_TOOLBAR_CUSTOMIZATION_V2 =
"AdaptiveButtonInTopToolbarCustomizationV2";
public static final String ALLOW_NEW_INCOGNITO_TAB_INTENTS = "AllowNewIncognitoTabIntents";
public static final String ANDROID_APP_INTEGRATION = "AndroidAppIntegration";
public static final String ANDROID_ELEGANT_TEXT_HEIGHT = "AndroidElegantTextHeight";
public static final String ANDROID_GOOGLE_SANS_TEXT = "AndroidGoogleSansText";
public static final String ANDROID_HUB_FLOATING_ACTION_BUTTON =
"AndroidHubFloatingActionButton";
public static final String ANDROID_HUB_V2 = "AndroidHubV2";
public static final String ANDROID_IMPROVED_BOOKMARKS = "AndroidImprovedBookmarks";
public static final String ANDROID_NO_VISIBLE_HINT_FOR_DIFFERENT_TLD =
"AndroidNoVisibleHintForDifferentTLD";
public static final String ANDROID_TAB_DECLUTTER = "AndroidTabDeclutter";
public static final String ANDROID_TAB_DECLUTTER_ARCHIVE_ALL_BUT_ACTIVE =
"AndroidTabDeclutterArchiveAllButActiveTab";
public static final String ANDROID_TAB_DECLUTTER_DEDUPE_TAB_IDS_KILL_SWITCH =
"AndroidTabDeclutterDedupeTabIdsKillSwitch";
public static final String ANDROID_TAB_DECLUTTER_RESCUE_KILLSWITCH =
"AndroidTabDeclutterRescueKillswitch";
public static final String ANIMATED_IMAGE_DRAG_SHADOW = "AnimatedImageDragShadow";
public static final String APP_SPECIFIC_HISTORY = "AppSpecificHistory";
public static final String ASYNC_NOTIFICATION_MANAGER = "AsyncNotificationManager";
public static final String AUTOFILL_ADDRESS_PROFILE_SAVE_PROMPT_NICKNAME_SUPPORT =
"AutofillAddressProfileSavePromptNicknameSupport";
public static final String AUTOFILL_ALLOW_NON_HTTP_ACTIVATION =
"AutofillAllowNonHttpActivation";
public static final String AUTOFILL_ENABLE_CARD_ART_IMAGE = "AutofillEnableCardArtImage";
public static final String AUTOFILL_ENABLE_CARD_BENEFITS_FOR_AMERICAN_EXPRESS =
"AutofillEnableCardBenefitsForAmericanExpress";
public static final String AUTOFILL_ENABLE_CARD_BENEFITS_FOR_CAPITAL_ONE =
"AutofillEnableCardBenefitsForCapitalOne";
public static final String AUTOFILL_ENABLE_CARD_PRODUCT_NAME = "AutofillEnableCardProductName";
public static final String AUTOFILL_ENABLE_LOCAL_IBAN = "AutofillEnableLocalIban";
public static final String AUTOFILL_ENABLE_MOVING_GPAY_LOGO_TO_THE_RIGHT_ON_CLANK =
"AutofillEnableMovingGPayLogoToTheRightOnClank";
public static final String AUTOFILL_ENABLE_NEW_CARD_ART_AND_NETWORK_IMAGES =
"AutofillEnableNewCardArtAndNetworkImages";
public static final String AUTOFILL_ENABLE_CARD_ART_SERVER_SIDE_STRETCHING =
"AutofillEnableCardArtServerSideStretching";
public static final String AUTOFILL_ENABLE_CVC_STORAGE = "AutofillEnableCvcStorageAndFilling";
public static final String AUTOFILL_ENABLE_RANKING_FORMULA_ADDRESS_PROFILES =
"AutofillEnableRankingFormulaAddressProfiles";
public static final String AUTOFILL_ENABLE_RANKING_FORMULA_CREDIT_CARDS =
"AutofillEnableRankingFormulaCreditCards";
public static final String AUTOFILL_ENABLE_SAVE_CARD_LOADING_AND_CONFIRMATION =
"AutofillEnableSaveCardLoadingAndConfirmation";
public static final String AUTOFILL_ENABLE_SYNCING_OF_PIX_BANK_ACCOUNTS =
"AutofillEnableSyncingOfPixBankAccounts";
public static final String AUTOFILL_ENABLE_VCN_ENROLL_LOADING_AND_CONFIRMATION =
"AutofillEnableVcnEnrollLoadingAndConfirmation";
public static final String AUTOFILL_ENABLE_VERVE_CARD_SUPPORT =
"AutofillEnableVerveCardSupport";
public static final String AUTOFILL_ENABLE_VIRTUAL_CARD_METADATA =
"AutofillEnableVirtualCardMetadata";
public static final String AUTOFILL_VIRTUAL_VIEW_STRUCTURE_ANDROID =
"AutofillVirtualViewStructureAndroid";
public static final String AUTOFILL_ENABLE_SECURITY_TOUCH_EVENT_FILTERING_ANDROID =
"AutofillEnableSecurityTouchEventFilteringAndroid";
public static final String AUXILIARY_SEARCH_THIRD_PARTY = "AuxiliarySearchThirdParty";
public static final String AVOID_SELECTED_TAB_FOCUS_ON_LAYOUT_DONE_SHOWING =
"AvoidSelectedTabFocusOnLayoutDoneShowing";
public static final String BACKGROUND_THREAD_POOL = "BackgroundThreadPool";
public static final String BACK_FORWARD_CACHE = "BackForwardCache";
public static final String BACK_FORWARD_TRANSITIONS = "BackForwardTransitions";
public static final String BACK_GESTURE_ACTIVITY_TAB_PROVIDER =
"BackGestureActivityTabProvider";
public static final String BACK_GESTURE_MOVE_TO_BACK_DURING_STARTUP =
"BackGestureMoveToBackDuringStartup";
public static final String BACK_GESTURE_REFACTOR = "BackGestureRefactorAndroid";
public static final String BACK_TO_HOME_ANIMATION = "BackToHomeAnimation";
public static final String BCIV_WITH_SUPPRESSION = "AndroidBcivWithSuppression";
public static final String BLOCK_INTENTS_WHILE_LOCKED = "BlockIntentsWhileLocked";
public static final String BOARDING_PASS_DETECTOR = "BoardingPassDetector";
public static final String BOTTOM_BROWSER_CONTROLS_REFACTOR = "BottomBrowserControlsRefactor";
public static final String BROWSER_CONTROLS_EARLY_RESIZE = "BrowserControlsEarlyResize";
public static final String BROWSER_CONTROLS_IN_VIZ = "AndroidBrowserControlsInViz";
public static final String BROWSING_DATA_MODEL = "BrowsingDataModel";
public static final String CACHE_ACTIVITY_TASKID = "CacheActivityTaskID";
public static final String CAPTIVE_PORTAL_CERTIFICATE_LIST = "CaptivePortalCertificateList";
public static final String CCT_AUTH_TAB = "CCTAuthTab";
public static final String CCT_AUTO_TRANSLATE = "CCTAutoTranslate";
public static final String CCT_BEFORE_UNLOAD = "CCTBeforeUnload";
public static final String CCT_CLIENT_DATA_HEADER = "CCTClientDataHeader";
public static final String CCT_EPHEMERAL_MODE = "CCTEphemeralMode";
public static final String CCT_EXTEND_TRUSTED_CDN_PUBLISHER = "CCTExtendTrustedCdnPublisher";
public static final String CCT_FEATURE_USAGE = "CCTFeatureUsage";
public static final String CCT_INCOGNITO_AVAILABLE_TO_THIRD_PARTY =
"CCTIncognitoAvailableToThirdParty";
public static final String CCT_MINIMIZED = "CCTMinimized";
public static final String CCT_MINIMIZED_ENABLED_BY_DEFAULT = "CCTMinimizedEnabledByDefault";
public static final String CCT_NAVIGATIONAL_PREFETCH = "CCTNavigationalPrefetch";
public static final String CCT_NESTED_SECURITY_ICON = "CCTNestedSecurityIcon";
public static final String CCT_INTENT_FEATURE_OVERRIDES = "CCTIntentFeatureOverrides";
public static final String CCT_GOOGLE_BOTTOM_BAR = "CCTGoogleBottomBar";
public static final String CCT_GOOGLE_BOTTOM_BAR_VARIANT_LAYOUTS =
"CCTGoogleBottomBarVariantLayouts";
// NOTE: Do not query this feature directly, use
// WarmupManager#isCCTPrewarmTabFeatureEnabled.
public static final String CCT_PREWARM_TAB = "CCTPrewarmTab";
public static final String CCT_REPORT_PARALLEL_REQUEST_STATUS =
"CCTReportParallelRequestStatus";
public static final String CCT_RESIZABLE_FOR_THIRD_PARTIES = "CCTResizableForThirdParties";
public static final String CCT_REVAMPED_BRANDING = "CCTRevampedBranding";
public static final String CCT_TAB_MODAL_DIALOG = "CCTTabModalDialog";
public static final String CHROME_SURVEY_NEXT_ANDROID = "ChromeSurveyNextAndroid";
public static final String CHROME_SHARE_PAGE_INFO = "ChromeSharePageInfo";
public static final String COLLECT_ANDROID_FRAME_TIMELINE_METRICS =
"CollectAndroidFrameTimelineMetrics";
public static final String COMMAND_LINE_ON_NON_ROOTED = "CommandLineOnNonRooted";
public static final String COMMERCE_MERCHANT_VIEWER = "CommerceMerchantViewer";
public static final String COMMERCE_PRICE_TRACKING = "CommercePriceTracking";
public static final String CONTEXTUAL_PAGE_ACTIONS = "ContextualPageActions";
public static final String CONTEXTUAL_PAGE_ACTION_READER_MODE =
"ContextualPageActionReaderMode";
public static final String CONTEXTUAL_SEARCH_DISABLE_ONLINE_DETECTION =
"ContextualSearchDisableOnlineDetection";
public static final String CONTEXTUAL_SEARCH_SUPPRESS_SHORT_VIEW =
"ContextualSearchSuppressShortView";
public static final String CONTEXT_MENU_SYS_UI_MATCHES_ACTIVITY =
"ContextMenuSysUiMatchesActivity";
public static final String CONTEXT_MENU_TRANSLATE_WITH_GOOGLE_LENS =
"ContextMenuTranslateWithGoogleLens";
public static final String COOKIE_DEPRECATION_FACILITATED_TESTING =
"CookieDeprecationFacilitatedTesting";
public static final String CORMORANT = "Cormorant";
public static final String CROSS_DEVICE_TAB_PANE_ANDROID = "CrossDeviceTabPaneAndroid";
public static final String DARKEN_WEBSITES_CHECKBOX_IN_THEMES_SETTING =
"DarkenWebsitesCheckboxInThemesSetting";
public static final String DATA_SHARING = "DataSharing";
public static final String DEFAULT_BROWSER_PROMO_ANDROID = "DefaultBrowserPromoAndroid";
public static final String DELAY_TEMP_STRIP_REMOVAL = "DelayTempStripRemoval";
public static final String DEVICE_AUTHENTICATOR_ANDROIDX = "DeviceAuthenticatorAndroidx";
public static final String DETAILED_LANGUAGE_SETTINGS = "DetailedLanguageSettings";
public static final String DISABLE_INSTANCE_LIMIT = "DisableInstanceLimit";
public static final String DISCO_FEED_ENDPOINT = "DiscoFeedEndpoint";
public static final String DOWNLOADS_MIGRATE_TO_JOBS_API = "DownloadsMigrateToJobsAPI";
public static final String DRAG_DROP_INTO_OMNIBOX = "DragDropIntoOmnibox";
public static final String DRAG_DROP_TAB_TEARING = "DragDropTabTearing";
public static final String DRAG_DROP_TAB_TEARING_ENABLE_OEM = "DragDropTabTearingEnableOEM";
public static final String DRAW_CUTOUT_EDGE_TO_EDGE = "DrawCutoutEdgeToEdge";
public static final String DRAW_EDGE_TO_EDGE = "DrawEdgeToEdge";
public static final String DRAW_KEY_NATIVE_EDGE_TO_EDGE = "DrawKeyNativeEdgeToEdge";
public static final String DRAW_NATIVE_EDGE_TO_EDGE = "DrawNativeEdgeToEdge";
public static final String DRAW_WEB_EDGE_TO_EDGE = "DrawWebEdgeToEdge";
public static final String EDGE_TO_EDGE_BOTTOM_CHIN = "EdgeToEdgeBottomChin";
public static final String EDUCATIONAL_TIP_MODULE = "EducationalTipModule";
public static final String ENABLE_DISCOUNT_INFO_API = "EnableDiscountInfoApi";
public static final String ENABLE_PASSWORDS_ACCOUNT_STORAGE_FOR_NON_SYNCING_USERS =
"EnablePasswordsAccountStorageForNonSyncingUsers";
public static final String EXPERIMENTS_FOR_AGSA = "ExperimentsForAgsa";
public static final String FEED_CONTAINMENT = "FeedContainment";
public static final String FEED_FOLLOW_UI_UPDATE = "FeedFollowUiUpdate";
public static final String FEED_IMAGE_MEMORY_CACHE_SIZE_PERCENTAGE =
"FeedImageMemoryCacheSizePercentage";
public static final String FEED_LOADING_PLACEHOLDER = "FeedLoadingPlaceholder";
public static final String FEED_POSITION_ANDROID = "FeedPositionAndroid";
public static final String FEED_SHOW_SIGN_IN_COMMAND = "FeedShowSignInCommand";
public static final String FILLING_PASSWORDS_FROM_ANY_ORIGIN = "FillingPasswordsFromAnyOrigin";
public static final String FINGERPRINTING_PROTECTION_UX = "FingerprintingProtectionUx";
public static final String FINGERPRINTING_PROTECTION_USER_BYPASS =
"FingerprintingProtectionUserBypass";
public static final String FOCUS_OMNIBOX_IN_INCOGNITO_TAB_INTENTS =
"FocusOmniboxInIncognitoTabIntents";
public static final String FORCE_DISABLE_EXTENDED_SYNC_PROMOS =
"ForceDisableExtendedSyncPromos";
public static final String FORCE_LIST_TAB_SWITCHER = "ForceListTabSwitcher";
public static final String FORCE_STARTUP_SIGNIN_PROMO = "ForceStartupSigninPromo";
public static final String FORCE_WEB_CONTENTS_DARK_MODE = "WebContentsForceDark";
public static final String FULLSCREEN_INSETS_API_MIGRATION = "FullscreenInsetsApiMigration";
public static final String FULLSCREEN_INSETS_API_MIGRATION_ON_AUTOMOTIVE =
"FullscreenInsetsApiMigrationOnAutomotive";
public static final String GTS_CLOSE_TAB_ANIMATION = "GtsCloseTabAnimation";
public static final String HASH_PREFIX_REAL_TIME_LOOKUPS =
"SafeBrowsingHashPrefixRealTimeLookups";
public static final String HISTORY_JOURNEYS = "Journeys";
public static final String INCOGNITO_REAUTHENTICATION_FOR_ANDROID =
"IncognitoReauthenticationForAndroid";
public static final String INCOGNITO_SCREENSHOT = "IncognitoScreenshot";
public static final String INTEREST_FEED_V2_HEARTS = "InterestFeedV2Hearts";
public static final String IP_PROTECTION_V1 = "IpProtectionV1";
public static final String IP_PROTECTION_UX = "IpProtectionUx";
public static final String IP_PROTECTION_USER_BYPASS = "IpProtectionUserBypass";
public static final String KID_FRIENDLY_CONTENT_FEED = "KidFriendlyContentFeed";
public static final String LENS_ON_QUICK_ACTION_SEARCH_WIDGET = "LensOnQuickActionSearchWidget";
public static final String LINKED_SERVICES_SETTING = "LinkedServicesSetting";
public static final String LOADING_PREDICTOR_LIMIT_PRECONNECT_SOCKET_COUNT =
"LoadingPredictorLimitPreconnectSocketCount";
public static final String LOGO_POLISH = "LogoPolish";
public static final String LOGO_POLISH_ANIMATION_KILL_SWITCH = "LogoPolishAnimationKillSwitch";
public static final String LOOKALIKE_NAVIGATION_URL_SUGGESTIONS_UI =
"LookalikeUrlNavigationSuggestionsUI";
public static final String MAGIC_STACK_ANDROID = "MagicStackAndroid";
public static final String MAYLAUNCHURL_USES_SEPARATE_STORAGE_PARTITION =
"MayLaunchUrlUsesSeparateStoragePartition";
public static final String MESSAGES_FOR_ANDROID_ADS_BLOCKED = "MessagesForAndroidAdsBlocked";
public static final String MOST_VISITED_TILES_RESELECT = "MostVisitedTilesReselect";
public static final String MUlTI_INSTANCE_APPLICATION_STATUS_CLEANUP =
"MultiInstanceApplicationStatusCleanup";
public static final String NAV_BAR_COLOR_MATCHES_TAB_BACKGROUND =
"NavBarColorMatchesTabBackground";
public static final String NEW_TAB_SEARCH_ENGINE_URL_ANDROID = "NewTabSearchEngineUrlAndroid";
public static final String NEW_TAB_PAGE_ANDROID_TRIGGER_FOR_PRERENDER2 =
"NewTabPageAndroidTriggerForPrerender2";
public static final String NOTIFICATION_ONE_TAP_UNSUBSCRIBE = "NotificationOneTapUnsubscribe";
public static final String NOTIFICATION_PERMISSION_VARIANT = "NotificationPermissionVariant";
public static final String NOTIFICATION_PERMISSION_BOTTOM_SHEET =
"NotificationPermissionBottomSheet";
public static final String OMAHA_MIN_SDK_VERSION_ANDROID = "OmahaMinSdkVersionAndroid";
public static final String OMNIBOX_CACHE_SUGGESTION_RESOURCES =
"OmniboxCacheSuggestionResources";
public static final String AVOID_RELAYOUT_DURING_FOCUS_ANIMATION =
"AvoidRelayoutDuringFocusAnimation";
public static final String OMNIBOX_UPDATED_CONNECTION_SECURITY_INDICATORS =
"OmniboxUpdatedConnectionSecurityIndicators";
public static final String OPTIMIZATION_GUIDE_PUSH_NOTIFICATIONS =
"OptimizationGuidePushNotifications";
public static final String PAGE_INFO_ABOUT_THIS_SITE_MORE_LANGS =
"PageInfoAboutThisSiteMoreLangs";
public static final String PAINT_PREVIEW_DEMO = "PaintPreviewDemo";
public static final String PARTNER_CUSTOMIZATIONS_UMA = "PartnerCustomizationsUma";
public static final String PERMISSION_DEDICATED_CPSS_SETTING_ANDROID =
"PermissionDedicatedCpssSettingAndroid";
public static final String PLUS_ADDRESSES_ENABLED = "PlusAddressesEnabled";
public static final String PLUS_ADDRESS_LOADING_STATES_ANDROID =
"PlusAddressLoadingStatesAndroid";
public static final String PREFETCH_BROWSER_INITIATED_TRIGGERS =
"PrefetchBrowserInitiatedTriggers";
public static final String PRERENDER2 = "Prerender2";
public static final String PRECONNECT_ON_TAB_CREATION = "PreconnectOnTabCreation";
public static final String PRICE_CHANGE_MODULE = "PriceChangeModule";
public static final String PRICE_INSIGHTS = "PriceInsights";
public static final String PRIVACY_GUIDE_ANDROID_3 = "PrivacyGuideAndroid3";
public static final String PRIVACY_GUIDE_PRELOAD_ANDROID = "PrivacyGuidePreloadAndroid";
public static final String PRIVACY_SANDBOX_ACTIVITY_TYPE_STORAGE =
"PrivacySandboxActivityTypeStorage";
public static final String PRIVACY_SANDBOX_ADS_NOTICE_CCT = "PrivacySandboxAdsNoticeCCT";
public static final String PRIVACY_SANDBOX_FPS_UI = "PrivacySandboxFirstPartySetsUI";
public static final String PRIVACY_SANDBOX_RELATED_WEBSITE_SETS_UI =
"PrivacySandboxRelatedWebsiteSetsUi";
public static final String PRIVACY_SANDBOX_SETTINGS_4 = "PrivacySandboxSettings4";
public static final String PRIVACY_SANDBOX_PRIVACY_GUIDE_AD_TOPICS =
"PrivacySandboxPrivacyGuideAdTopics";
public static final String PRIVACY_SANDBOX_PRIVACY_POLICY = "PrivacySandboxPrivacyPolicy";
public static final String PRIVACY_SANDBOX_PROACTIVE_TOPICS_BLOCKING =
"PrivacySandboxProactiveTopicsBlocking";
public static final String PRIVATE_STATE_TOKENS = "PrivateStateTokens";
public static final String PUSH_MESSAGING_DISALLOW_SENDER_IDS =
"PushMessagingDisallowSenderIDs";
public static final String PWA_UPDATE_DIALOG_FOR_ICON = "PwaUpdateDialogForIcon";
public static final String PWA_RESTORE_UI = "PwaRestoreUi";
public static final String PWA_RESTORE_UI_AT_STARTUP = "PwaRestoreUiAtStartup";
public static final String QUICK_DELETE_FOR_ANDROID = "QuickDeleteForAndroid";
public static final String QUICK_DELETE_ANDROID_FOLLOWUP = "QuickDeleteAndroidFollowup";
public static final String QUICK_DELETE_ANDROID_SURVEY = "QuickDeleteAndroidSurvey";
public static final String QUIET_NOTIFICATION_PROMPTS = "QuietNotificationPrompts";
public static final String READALOUD = "ReadAloud";
public static final String READALOUD_BACKGROUND_PLAYBACK = "ReadAloudBackgroundPlayback";
public static final String READALOUD_IN_OVERFLOW_MENU_IN_CCT = "ReadAloudInOverflowMenuInCCT";
public static final String READALOUD_IN_MULTI_WINDOW = "ReadAloudInMultiWindow";
public static final String READALOUD_PLAYBACK = "ReadAloudPlayback";
public static final String READALOUD_TAP_TO_SEEK = "ReadAloudTapToSeek";
public static final String READALOUD_IPH_MENU_BUTTON_HIGHLIGHT_CCT =
"ReadAloudIPHMenuButtonHighlightCCT";
public static final String READER_MODE_IN_CCT = "ReaderModeInCCT";
public static final String READING_LIST_ENABLE_SYNC_TRANSPORT_MODE_UPON_SIGNIN =
"ReadingListEnableSyncTransportModeUponSignIn";
public static final String RECORD_SUPPRESSION_METRICS = "RecordSuppressionMetrics";
public static final String REDIRECT_EXPLICIT_CTA_INTENTS_TO_EXISTING_ACTIVITY =
"RedirectExplicitCTAIntentsToExistingActivity";
public static final String REENGAGEMENT_NOTIFICATION = "ReengagementNotification";
public static final String RELATED_SEARCHES_SWITCH = "RelatedSearchesSwitch";
public static final String RELATED_SEARCHES_ALL_LANGUAGE = "RelatedSearchesAllLanguage";
public static final String RENAME_JOURNEYS = "RenameJourneys";
public static final String REPLACE_SYNC_PROMOS_WITH_SIGN_IN_PROMOS =
"ReplaceSyncPromosWithSignInPromos";
public static final String SAFETY_HUB = "SafetyHub";
public static final String SAFETY_HUB_ANDROID_SURVEY = "SafetyHubAndroidSurvey";
public static final String SAFETY_HUB_FOLLOWUP = "SafetyHubFollowup";
public static final String SAFETY_HUB_MAGIC_STACK = "SafetyHubMagicStack";
public static final String SAFE_BROWSING_DELAYED_WARNINGS = "SafeBrowsingDelayedWarnings";
public static final String SEARCH_IN_CCT = "SearchInCCT";
public static final String SEARCH_IN_CCT_ALTERNATE_TAP_HANDLING =
"SearchInCCTAlternateTapHandling";
public static final String SEARCH_ENGINE_CHOICE = "SearchEngineChoice";
public static final String SHARE_CUSTOM_ACTIONS_IN_CCT = "ShareCustomActionsInCCT";
public static final String SEARCH_RESUMPTION_MODULE_ANDROID = "SearchResumptionModuleAndroid";
public static final String SEED_ACCOUNTS_REVAMP = "SeedAccountsRevamp";
public static final String SEGMENTATION_PLATFORM_ANDROID_HOME_MODULE_RANKER =
"SegmentationPlatformAndroidHomeModuleRanker";
public static final String SEGMENTATION_PLATFORM_ANDROID_HOME_MODULE_RANKER_V2 =
"SegmentationPlatformAndroidHomeModuleRankerV2";
public static final String SEND_TAB_TO_SELF_V2 = "SendTabToSelfV2";
public static final String SMALLER_TAB_STRIP_TITLE_LIMIT = "SmallerTabStripTitleLimit";
public static final String SMART_SUGGESTION_FOR_LARGE_DOWNLOADS =
"SmartSuggestionForLargeDownloads";
public static final String SPLIT_CACHE_BY_NETWORK_ISOLATION_KEY =
"SplitCacheByNetworkIsolationKey";
public static final String START_SURFACE_RETURN_TIME = "StartSurfaceReturnTime";
public static final String STOP_APP_INDEXING_REPORT = "StopAppIndexingReport";
public static final String SUGGESTION_ANSWERS_COLOR_REVERSE = "SuggestionAnswersColorReverse";
public static final String SUPPRESS_TOOLBAR_CAPTURES = "SuppressToolbarCaptures";
public static final String SUPPRESS_TOOLBAR_CAPTURES_AT_GESTURE_END =
"SuppressToolbarCapturesAtGestureEnd";
public static final String SYNC_ANDROID_LIMIT_NTP_PROMO_IMPRESSIONS =
"SyncAndroidLimitNTPPromoImpressions";
public static final String ENABLE_BATCH_UPLOAD_FROM_SETTINGS = "EnableBatchUploadFromSettings";
public static final String SYNC_ENABLE_CONTACT_INFO_DATA_TYPE_IN_TRANSPORT_MODE =
"SyncEnableContactInfoDataTypeInTransportMode";
public static final String TAB_DRAG_DROP_ANDROID = "TabDragDropAndroid";
public static final String TAB_GROUP_CREATION_DIALOG_ANDROID = "TabGroupCreationDialogAndroid";
public static final String TAB_GROUP_PANE_ANDROID = "TabGroupPaneAndroid";
public static final String TAB_GROUP_PARITY_ANDROID = "TabGroupParityAndroid";
public static final String TAB_GROUP_SYNC_ANDROID = "TabGroupSyncAndroid";
public static final String TAB_GROUP_SYNC_AUTO_OPEN_KILL_SWITCH =
"TabGroupSyncAutoOpenKillSwitch";
public static final String TAB_RESUMPTION_MODULE_ANDROID = "TabResumptionModuleAndroid";
public static final String TAB_STRIP_GROUP_COLLAPSE = "TabStripGroupCollapseAndroid";
public static final String TAB_STRIP_GROUP_INDICATORS = "TabStripGroupIndicatorsAndroid";
public static final String TAB_STRIP_GROUP_CONTEXT_MENU = "TabStripGroupContextMenuAndroid";
public static final String TAB_STRIP_INCOGNITO_MIGRATION = "TabStripIncognitoMigration";
public static final String TAB_STRIP_LAYOUT_OPTIMIZATION = "TabStripLayoutOptimization";
public static final String TAB_STRIP_STARTUP_REFACTORING = "TabStripStartupRefactoring";
public static final String TAB_STRIP_TRANSITION_IN_DESKTOP_WINDOW =
"TabStripTransitionInDesktopWindow";
public static final String TABLET_TAB_SWITCHER_LONG_PRESS_MENU =
"TabletTabSwitcherLongPressMenu";
public static final String TABLET_TOOLBAR_REORDERING = "TabletToolbarReordering";
public static final String TAB_STATE_FLAT_BUFFER = "TabStateFlatBuffer";
public static final String TAB_WINDOW_MANAGER_INDEX_REASSIGNMENT_ACTIVITY_FINISHING =
"TabWindowManagerIndexReassignmentActivityFinishing";
public static final String TAB_WINDOW_MANAGER_INDEX_REASSIGNMENT_ACTIVITY_IN_SAME_TASK =
"TabWindowManagerIndexReassignmentActivityInSameTask";
public static final String TAB_WINDOW_MANAGER_INDEX_REASSIGNMENT_ACTIVITY_NOT_IN_APP_TASKS =
"TabWindowManagerIndexReassignmentActivityNotInAppTasks";
public static final String TAB_WINDOW_MANAGER_REPORT_INDICES_MISMATCH =
"TabWindowManagerReportIndicesMismatch";
public static final String TEST_DEFAULT_DISABLED = "TestDefaultDisabled";
public static final String TEST_DEFAULT_ENABLED = "TestDefaultEnabled";
public static final String TINKER_TANK_BOTTOM_SHEET = "TinkerTankBottomSheet";
public static final String TOOLBAR_PHONE_CLEANUP = "ToolbarPhoneCleanup";
public static final String TOOLBAR_SCROLL_ABLATION = "AndroidToolbarScrollAblation";
public static final String TRACE_BINDER_IPC = "TraceBinderIpc";
public static final String TRACKING_PROTECTION_3PCD = "TrackingProtection3pcd";
public static final String TRACKING_PROTECTION_USER_BYPASS_PWA =
"TrackingProtectionUserBypassPwa";
public static final String TRACKING_PROTECTION_USER_BYPASS_PWA_TRIGGER =
"TrackingProtectionUserBypassPwaTrigger";
public static final String TRANSLATE_MESSAGE_UI = "TranslateMessageUI";
public static final String TRANSLATE_TFLITE = "TFLiteLanguageDetectionEnabled";
public static final String
UNIFIED_PASSWORD_MANAGER_LOCAL_PASSWORDS_ANDROID_ACCESS_LOSS_WARNING =
"UnifiedPasswordManagerLocalPasswordsAndroidAccessLossWarning";
public static final String UNIFIED_PASSWORD_MANAGER_LOCAL_PWD_MIGRATION_WARNING =
"UnifiedPasswordManagerLocalPasswordsMigrationWarning";
public static final String UNO_PHASE_2_FOLLOW_UP = "UnoPhase2FollowUp";
public static final String USE_CHIME_ANDROID_SDK = "UseChimeAndroidSdk";
public static final String USE_LIBUNWINDSTACK_NATIVE_UNWINDER_ANDROID =
"UseLibunwindstackNativeUnwinderAndroid";
public static final String VERTICAL_AUTOMOTIVE_BACK_BUTTON_TOOLBAR =
"VerticalAutomotiveBackButtonToolbar";
public static final String VISITED_URL_RANKING_SERVICE = "VisitedURLRankingService";
public static final String VOICE_SEARCH_AUDIO_CAPTURE_POLICY = "VoiceSearchAudioCapturePolicy";
public static final String WEB_APK_ALLOW_ICON_UPDATE = "WebApkAllowIconUpdate";
public static final String WEB_APK_BACKUP_AND_RESTORE_BACKEND = "WebApkBackupAndRestoreBackend";
public static final String WEB_APK_INSTALL_FAILURE_NOTIFICATION =
"WebApkInstallFailureNotification";
public static final String WEB_APK_MIN_SHELL_APK_VERSION = "WebApkMinShellVersion";
public static final String WEB_AUTHN_ENABLE_CABLE_AUTHENTICATOR =
"WebAuthenticationEnableAndroidCableAuthenticator";
public static final String WEB_FEED_AWARENESS = "WebFeedAwareness";
public static final String WEB_FEED_ONBOARDING = "WebFeedOnboarding";
public static final String WEB_FEED_SORT = "WebFeedSort";
public static final String WEB_OTP_CROSS_DEVICE_SIMPLE_STRING = "WebOtpCrossDeviceSimpleString";
public static final String XSURFACE_METRICS_REPORTING = "XsurfaceMetricsReporting";
public static final String POST_GET_MEMORY_PRESSURE_TO_BACKGROUND =
BaseFeatures.POST_GET_MY_MEMORY_STATE_TO_BACKGROUND;
/* Alphabetical: */
public static final CachedFlag sAccountReauthenticationRecentTimeWindow =
newCachedFlag(ACCOUNT_REAUTHENTICATION_RECENT_TIME_WINDOW, true);
public static final CachedFlag sAndroidAppIntegration =
newCachedFlag(ANDROID_APP_INTEGRATION, false);
public static final CachedFlag sAuxiliarySearchThirdParty =
newCachedFlag(AUXILIARY_SEARCH_THIRD_PARTY, false);
public static final CachedFlag sAndroidElegantTextHeight =
newCachedFlag(ANDROID_ELEGANT_TEXT_HEIGHT, false);
public static final CachedFlag sAndroidGoogleSansText =
newCachedFlag(ANDROID_GOOGLE_SANS_TEXT, true);
public static final CachedFlag sAndroidHubFloatingActionButton =
newCachedFlag(
ANDROID_HUB_FLOATING_ACTION_BUTTON,
/* defaultValue= */ false,
/* defaultValueInTests= */ true);
public static final CachedFlag sAndroidHubV2 = newCachedFlag(ANDROID_HUB_V2, false);
public static final CachedFlag sAndroidTabDeclutterDedupeTabIdsKillSwitch =
newCachedFlag(ANDROID_TAB_DECLUTTER_DEDUPE_TAB_IDS_KILL_SWITCH, true);
public static final CachedFlag sAppSpecificHistory = newCachedFlag(APP_SPECIFIC_HISTORY, true);
public static final CachedFlag sAsyncNotificationManager =
newCachedFlag(ASYNC_NOTIFICATION_MANAGER, false);
public static final CachedFlag sBackGestureActivityTabProvider =
newCachedFlag(BACK_GESTURE_ACTIVITY_TAB_PROVIDER, false);
public static final CachedFlag sBackGestureMoveToBackDuringStartup =
newCachedFlag(BACK_GESTURE_MOVE_TO_BACK_DURING_STARTUP, true);
public static final CachedFlag sBackGestureRefactorAndroid =
newCachedFlag(BACK_GESTURE_REFACTOR, true);
public static final CachedFlag sBackToHomeAnimation =
newCachedFlag(BACK_TO_HOME_ANIMATION, true);
public static final CachedFlag sBlockIntentsWhileLocked =
newCachedFlag(BLOCK_INTENTS_WHILE_LOCKED, false);
public static final CachedFlag sCctAuthTab = newCachedFlag(CCT_AUTH_TAB, false);
public static final CachedFlag sCctAutoTranslate = newCachedFlag(CCT_AUTO_TRANSLATE, true);
public static final CachedFlag sCctFeatureUsage = newCachedFlag(CCT_FEATURE_USAGE, false);
public static final CachedFlag sCctEphemeralMode = newCachedFlag(CCT_EPHEMERAL_MODE, false);
public static final CachedFlag sCctIncognitoAvailableToThirdParty =
newCachedFlag(CCT_INCOGNITO_AVAILABLE_TO_THIRD_PARTY, false);
public static final CachedFlag sCctIntentFeatureOverrides =
newCachedFlag(CCT_INTENT_FEATURE_OVERRIDES, true);
public static final CachedFlag sCctMinimized = newCachedFlag(CCT_MINIMIZED, true);
public static final CachedFlag sCctNavigationalPrefetch =
newCachedFlag(CCT_NAVIGATIONAL_PREFETCH, false);
public static final CachedFlag sCctGoogleBottomBar =
newCachedFlag(CCT_GOOGLE_BOTTOM_BAR, false);
public static final CachedFlag sCctGoogleBottomBarVariantLayouts =
newCachedFlag(CCT_GOOGLE_BOTTOM_BAR_VARIANT_LAYOUTS, false);
public static final CachedFlag sCctResizableForThirdParties =
newCachedFlag(CCT_RESIZABLE_FOR_THIRD_PARTIES, true);
public static final CachedFlag sCctRevampedBranding =
newCachedFlag(CCT_REVAMPED_BRANDING, false);
public static final CachedFlag sCctNestedSecurityIcon =
newCachedFlag(CCT_NESTED_SECURITY_ICON, false);
public static final CachedFlag sCctTabModalDialog = newCachedFlag(CCT_TAB_MODAL_DIALOG, true);
public static final CachedFlag sCollectAndroidFrameTimelineMetrics =
newCachedFlag(COLLECT_ANDROID_FRAME_TIMELINE_METRICS, false);
public static final CachedFlag sCommandLineOnNonRooted =
newCachedFlag(COMMAND_LINE_ON_NON_ROOTED, false);
public static final CachedFlag sCrossDeviceTabPaneAndroid =
newCachedFlag(CROSS_DEVICE_TAB_PANE_ANDROID, false);
public static final CachedFlag sDelayTempStripRemoval =
newCachedFlag(DELAY_TEMP_STRIP_REMOVAL, false);
public static final CachedFlag sDisableInstanceLimit =
newCachedFlag(DISABLE_INSTANCE_LIMIT, false);
public static final CachedFlag sDragDropIntoOmnibox =
newCachedFlag(DRAG_DROP_INTO_OMNIBOX, false);
public static final CachedFlag sDownloadsMigrateToJobsAPI =
newCachedFlag(DOWNLOADS_MIGRATE_TO_JOBS_API, false);
public static final CachedFlag sDrawEdgeToEdge = newCachedFlag(DRAW_EDGE_TO_EDGE, false);
public static final CachedFlag sDrawKeyNativeEdgeToEdge =
newCachedFlag(DRAW_KEY_NATIVE_EDGE_TO_EDGE, false);
public static final CachedFlag sDrawNativeEdgeToEdge =
newCachedFlag(DRAW_NATIVE_EDGE_TO_EDGE, false);
public static final CachedFlag sDrawWebEdgeToEdge = newCachedFlag(DRAW_WEB_EDGE_TO_EDGE, false);
public static final CachedFlag sEdgeToEdgeBottomChin =
newCachedFlag(EDGE_TO_EDGE_BOTTOM_CHIN, false);
public static final CachedFlag sEducationalTipModule =
newCachedFlag(EDUCATIONAL_TIP_MODULE, false);
public static final CachedFlag sEnableDiscountInfoApi =
newCachedFlag(ENABLE_DISCOUNT_INFO_API, false);
public static final CachedFlag sExperimentsForAgsa = newCachedFlag(EXPERIMENTS_FOR_AGSA, true);
public static final CachedFlag sFeedLoadingPlaceholder =
newCachedFlag(FEED_LOADING_PLACEHOLDER, false);
public static final CachedFlag sForceListTabSwitcher =
newCachedFlag(FORCE_LIST_TAB_SWITCHER, false);
public static final CachedFlag sFullscreenInsetsApiMigration =
newCachedFlag(FULLSCREEN_INSETS_API_MIGRATION, false);
public static final CachedFlag sFullscreenInsetsApiMigrationOnAutomotive =
newCachedFlag(FULLSCREEN_INSETS_API_MIGRATION_ON_AUTOMOTIVE, true);
public static final CachedFlag sIncognitoReauthenticationForAndroid =
newCachedFlag(INCOGNITO_REAUTHENTICATION_FOR_ANDROID, true);
public static final CachedFlag sLogoPolish = newCachedFlag(LOGO_POLISH, true);
public static final CachedFlag sLogoPolishAnimationKillSwitch =
newCachedFlag(LOGO_POLISH_ANIMATION_KILL_SWITCH, true);
public static final CachedFlag sMagicStackAndroid = newCachedFlag(MAGIC_STACK_ANDROID, true);
public static final CachedFlag sMostVisitedTilesReselect =
newCachedFlag(MOST_VISITED_TILES_RESELECT, false);
public static final CachedFlag sMultiInstanceApplicationStatusCleanup =
newCachedFlag(MUlTI_INSTANCE_APPLICATION_STATUS_CLEANUP, false);
public static final CachedFlag sNavBarColorMatchesTabBackground =
newCachedFlag(NAV_BAR_COLOR_MATCHES_TAB_BACKGROUND, true);
public static final CachedFlag sNewTabPageAndroidTriggerForPrerender2 =
newCachedFlag(NEW_TAB_PAGE_ANDROID_TRIGGER_FOR_PRERENDER2, false);
public static final CachedFlag sPriceChangeModule = newCachedFlag(PRICE_CHANGE_MODULE, true);
public static final CachedFlag sPriceInsights = newCachedFlag(PRICE_INSIGHTS, false);
public static final CachedFlag sPrivacyGuideAndroid3 =
newCachedFlag(PRIVACY_GUIDE_ANDROID_3, false);
public static final CachedFlag sPrivacyGuidePreloadAndroid =
newCachedFlag(PRIVACY_GUIDE_PRELOAD_ANDROID, false);
public static final CachedFlag sOptimizationGuidePushNotifications =
newCachedFlag(OPTIMIZATION_GUIDE_PUSH_NOTIFICATIONS, false);
public static final CachedFlag sPaintPreviewDemo = newCachedFlag(PAINT_PREVIEW_DEMO, false);
public static final CachedFlag sPostGetMyMemoryStateToBackground =
newCachedFlag(POST_GET_MEMORY_PRESSURE_TO_BACKGROUND, false);
public static final CachedFlag sPrefetchBrowserInitiatedTriggers =
newCachedFlag(PREFETCH_BROWSER_INITIATED_TRIGGERS, false);
public static final CachedFlag sRedirectExplicitCTAIntentsToExistingActivity =
newCachedFlag(REDIRECT_EXPLICIT_CTA_INTENTS_TO_EXISTING_ACTIVITY, true);
public static final CachedFlag sSafetyHubMagicStack =
newCachedFlag(SAFETY_HUB_MAGIC_STACK, false);
public static final CachedFlag sSearchEngineChoice = newCachedFlag(SEARCH_ENGINE_CHOICE, false);
public static final CachedFlag sSearchInCCT = newCachedFlag(SEARCH_IN_CCT, false);
public static final CachedFlag sSearchInCCTAlternateTapHandling =
newCachedFlag(SEARCH_IN_CCT_ALTERNATE_TAP_HANDLING, false);
public static final CachedFlag sSmallerTabStripTitleLimit =
newCachedFlag(SMALLER_TAB_STRIP_TITLE_LIMIT, true);
public static final CachedFlag sStartSurfaceReturnTime =
newCachedFlag(START_SURFACE_RETURN_TIME, true);
public static final CachedFlag sTabDragDropAsWindowAndroid =
newCachedFlag(TAB_DRAG_DROP_ANDROID, false);
public static final CachedFlag sTabGroupCreationDialogAndroid =
newCachedFlag(TAB_GROUP_CREATION_DIALOG_ANDROID, false);
public static final CachedFlag sTabGroupPaneAndroid =
newCachedFlag(TAB_GROUP_PANE_ANDROID, false);
public static final CachedFlag sTabGroupParityAndroid =
newCachedFlag(TAB_GROUP_PARITY_ANDROID, true);
public static final CachedFlag sTabResumptionModuleAndroid =
newCachedFlag(TAB_RESUMPTION_MODULE_ANDROID, false);
public static final CachedFlag sTabStateFlatBuffer =
newCachedFlag(TAB_STATE_FLAT_BUFFER, false);
public static final CachedFlag sTabStripIncognitoMigration =
newCachedFlag(TAB_STRIP_INCOGNITO_MIGRATION, false);
public static final CachedFlag sTabStripLayoutOptimization =
newCachedFlag(TAB_STRIP_LAYOUT_OPTIMIZATION, true);
public static final CachedFlag sTabStripStartupRefactoring =
newCachedFlag(TAB_STRIP_STARTUP_REFACTORING, true);
public static final CachedFlag sTabletToolbarReordering =
newCachedFlag(TABLET_TOOLBAR_REORDERING, false);
public static final CachedFlag sTabStripGroupCollapse =
newCachedFlag(TAB_STRIP_GROUP_COLLAPSE, false);
public static final CachedFlag sTabStripGroupIndicators =
newCachedFlag(TAB_STRIP_GROUP_INDICATORS, true);
public static final CachedFlag sTabWindowManagerIndexReassignmentActivityFinishing =
newCachedFlag(TAB_WINDOW_MANAGER_INDEX_REASSIGNMENT_ACTIVITY_FINISHING, true);
public static final CachedFlag sTabWindowManagerIndexReassignmentActivityInSameTask =
newCachedFlag(TAB_WINDOW_MANAGER_INDEX_REASSIGNMENT_ACTIVITY_IN_SAME_TASK, true);
public static final CachedFlag sTabWindowManagerIndexReassignmentActivityNotInAppTasks =
newCachedFlag(TAB_WINDOW_MANAGER_INDEX_REASSIGNMENT_ACTIVITY_NOT_IN_APP_TASKS, true);
public static final CachedFlag sTabWindowManagerReportIndicesMismatch =
newCachedFlag(TAB_WINDOW_MANAGER_REPORT_INDICES_MISMATCH, true);
public static final CachedFlag sTestDefaultDisabled =
newCachedFlag(TEST_DEFAULT_DISABLED, false);
public static final CachedFlag sTestDefaultEnabled = newCachedFlag(TEST_DEFAULT_ENABLED, true);
public static final CachedFlag sTraceBinderIpc =
newCachedFlag(
TRACE_BINDER_IPC, /* defaultValue= */ false, /* defaultValueInTests= */ true);
public static final CachedFlag sUseChimeAndroidSdk =
newCachedFlag(USE_CHIME_ANDROID_SDK, false);
public static final CachedFlag sUseLibunwindstackNativeUnwinderAndroid =
newCachedFlag(USE_LIBUNWINDSTACK_NATIVE_UNWINDER_ANDROID, true);
public static final CachedFlag sVerticalAutomotiveBackButtonToolbar =
newCachedFlag(VERTICAL_AUTOMOTIVE_BACK_BUTTON_TOOLBAR, true);
public static final CachedFlag sWebApkMinShellApkVersion =
newCachedFlag(WEB_APK_MIN_SHELL_APK_VERSION, true);
public static final List<CachedFlag> sFlagsCachedFullBrowser =
List.of(
sAccountReauthenticationRecentTimeWindow,
sAndroidAppIntegration,
sAndroidElegantTextHeight,
sAndroidGoogleSansText,
sAndroidHubFloatingActionButton,
sAndroidTabDeclutterDedupeTabIdsKillSwitch,
sAndroidHubV2,
sAppSpecificHistory,
sAsyncNotificationManager,
sAuxiliarySearchThirdParty,
sBackGestureActivityTabProvider,
sBackGestureMoveToBackDuringStartup,
sBackGestureRefactorAndroid,
sBackToHomeAnimation,
sBlockIntentsWhileLocked,
sCctAuthTab,
sCctAutoTranslate,
sCctEphemeralMode,
sCctFeatureUsage,
sCctIncognitoAvailableToThirdParty,
sCctIntentFeatureOverrides,
sCctMinimized,
sCctNavigationalPrefetch,
sCctGoogleBottomBar,
sCctGoogleBottomBarVariantLayouts,
sCctResizableForThirdParties,
sCctRevampedBranding,
sCctNestedSecurityIcon,
sCctTabModalDialog,
sCollectAndroidFrameTimelineMetrics,
sCommandLineOnNonRooted,
sCrossDeviceTabPaneAndroid,
sDelayTempStripRemoval,
sDisableInstanceLimit,
sDragDropIntoOmnibox,
sDownloadsMigrateToJobsAPI,
sDrawEdgeToEdge,
sDrawKeyNativeEdgeToEdge,
sDrawNativeEdgeToEdge,
sDrawWebEdgeToEdge,
sEdgeToEdgeBottomChin,
sEducationalTipModule,
sEnableDiscountInfoApi,
sFeedLoadingPlaceholder,
sForceListTabSwitcher,
sFullscreenInsetsApiMigration,
sFullscreenInsetsApiMigrationOnAutomotive,
sIncognitoReauthenticationForAndroid,
sLogoPolish,
sLogoPolishAnimationKillSwitch,
sMagicStackAndroid,
sMostVisitedTilesReselect,
sMultiInstanceApplicationStatusCleanup,
sNavBarColorMatchesTabBackground,
sNewTabPageAndroidTriggerForPrerender2,
sPriceChangeModule,
sPriceInsights,
sPrivacyGuideAndroid3,
sPrivacyGuidePreloadAndroid,
sOptimizationGuidePushNotifications,
sPaintPreviewDemo,
sPostGetMyMemoryStateToBackground,
sPrefetchBrowserInitiatedTriggers,
sRedirectExplicitCTAIntentsToExistingActivity,
sSafetyHubMagicStack,
sSearchEngineChoice,
sSearchInCCT,
sSearchInCCTAlternateTapHandling,
sSmallerTabStripTitleLimit,
sStartSurfaceReturnTime,
sTabDragDropAsWindowAndroid,
sTabGroupCreationDialogAndroid,
sTabGroupPaneAndroid,
sTabGroupParityAndroid,
sTabResumptionModuleAndroid,
sTabStateFlatBuffer,
sTabStripGroupCollapse,
sTabStripGroupIndicators,
sTabStripIncognitoMigration,
sTabStripLayoutOptimization,
sTabStripStartupRefactoring,
sTabletToolbarReordering,
sTabWindowManagerIndexReassignmentActivityFinishing,
sTabWindowManagerIndexReassignmentActivityInSameTask,
sTabWindowManagerIndexReassignmentActivityNotInAppTasks,
sTabWindowManagerReportIndicesMismatch,
sTraceBinderIpc,
sUseChimeAndroidSdk,
sUseLibunwindstackNativeUnwinderAndroid,
sVerticalAutomotiveBackButtonToolbar,
sWebApkMinShellApkVersion);
public static final List<CachedFlag> sFlagsCachedInMinimalBrowser =
List.of(sExperimentsForAgsa);
public static final List<CachedFlag> sTestCachedFlags =
List.of(sTestDefaultDisabled, sTestDefaultEnabled);
public static final Map<String, CachedFlag> sAllCachedFlags =
CachedFlag.createCachedFlagMap(
List.of(
sFlagsCachedFullBrowser,
sFlagsCachedInMinimalBrowser,
sTestCachedFlags));
// MutableFlagWithSafeDefault instances.
/* Alphabetical: */
public static final MutableFlagWithSafeDefault sAdaptiveButtonInTopToolbarCustomizationV2 =
newMutableFlagWithSafeDefault(ADAPTIVE_BUTTON_IN_TOP_TOOLBAR_CUSTOMIZATION_V2, false);
public static final MutableFlagWithSafeDefault sAndroidImprovedBookmarks =
newMutableFlagWithSafeDefault(ANDROID_IMPROVED_BOOKMARKS, false);
public static final MutableFlagWithSafeDefault sAndroidTabDeclutter =
newMutableFlagWithSafeDefault(ANDROID_TAB_DECLUTTER, false);
public static final MutableFlagWithSafeDefault sAndroidTabDeclutterArchiveAllButActiveTab =
newMutableFlagWithSafeDefault(ANDROID_TAB_DECLUTTER_ARCHIVE_ALL_BUT_ACTIVE, false);
public static final MutableFlagWithSafeDefault sAndroidTabDeclutterRescueKillSwitch =
newMutableFlagWithSafeDefault(ANDROID_TAB_DECLUTTER_RESCUE_KILLSWITCH, true);
public static final MutableFlagWithSafeDefault sBottomBrowserControlsRefactor =
newMutableFlagWithSafeDefault(BOTTOM_BROWSER_CONTROLS_REFACTOR, true);
public static final MutableFlagWithSafeDefault sBcivWithSuppression =
newMutableFlagWithSafeDefault(BCIV_WITH_SUPPRESSION, false);
public static final MutableFlagWithSafeDefault sBrowserControlsInViz =
newMutableFlagWithSafeDefault(BROWSER_CONTROLS_IN_VIZ, true);
public static final MutableFlagWithSafeDefault sBrowserControlsEarlyResize =
newMutableFlagWithSafeDefault(BROWSER_CONTROLS_EARLY_RESIZE, false);
public static final MutableFlagWithSafeDefault sGtsCloseTabAnimation =
newMutableFlagWithSafeDefault(GTS_CLOSE_TAB_ANIMATION, false);
public static final MutableFlagWithSafeDefault sIncognitoScreenshot =
newMutableFlagWithSafeDefault(INCOGNITO_SCREENSHOT, false);
public static final MutableFlagWithSafeDefault sNoVisibleHintForDifferentTLD =
newMutableFlagWithSafeDefault(ANDROID_NO_VISIBLE_HINT_FOR_DIFFERENT_TLD, true);
public static final MutableFlagWithSafeDefault sQuickDeleteForAndroid =
newMutableFlagWithSafeDefault(QUICK_DELETE_FOR_ANDROID, true);
public static final MutableFlagWithSafeDefault sQuickDeleteAndroidFollowup =
newMutableFlagWithSafeDefault(QUICK_DELETE_ANDROID_FOLLOWUP, false);
public static final MutableFlagWithSafeDefault sQuickDeleteAndroidSurvey =
newMutableFlagWithSafeDefault(QUICK_DELETE_ANDROID_SURVEY, false);
public static final MutableFlagWithSafeDefault sReadAloudTapToSeek =
newMutableFlagWithSafeDefault(READALOUD_TAP_TO_SEEK, false);
public static final MutableFlagWithSafeDefault sReaderModeCct =
newMutableFlagWithSafeDefault(READER_MODE_IN_CCT, false);
public static final MutableFlagWithSafeDefault sRecordSuppressionMetrics =
newMutableFlagWithSafeDefault(RECORD_SUPPRESSION_METRICS, true);
public static final MutableFlagWithSafeDefault sSafetyHub =
newMutableFlagWithSafeDefault(SAFETY_HUB, false);
public static final MutableFlagWithSafeDefault sSafetyHubAndroidSurvey =
newMutableFlagWithSafeDefault(SAFETY_HUB_ANDROID_SURVEY, false);
public static final MutableFlagWithSafeDefault sSafetyHubFollowup =
newMutableFlagWithSafeDefault(SAFETY_HUB_FOLLOWUP, false);
public static final MutableFlagWithSafeDefault sSuppressionToolbarCaptures =
newMutableFlagWithSafeDefault(SUPPRESS_TOOLBAR_CAPTURES, false);
public static final MutableFlagWithSafeDefault sSuppressToolbarCapturesAtGestureEnd =
newMutableFlagWithSafeDefault(SUPPRESS_TOOLBAR_CAPTURES_AT_GESTURE_END, false);
public static final MutableFlagWithSafeDefault sToolbarScrollAblation =
newMutableFlagWithSafeDefault(TOOLBAR_SCROLL_ABLATION, false);
public static final MutableFlagWithSafeDefault sVoiceSearchAudioCapturePolicy =
newMutableFlagWithSafeDefault(VOICE_SEARCH_AUDIO_CAPTURE_POLICY, false);
// Mutable*ParamWithSafeDefault instances.
/* Alphabetical: */
public static final MutableBooleanParamWithSafeDefault
sGtsCloseTabAnimationCloseAllQuickDeleteAnimation =
sGtsCloseTabAnimation.newBooleanParam(
"close_all_quick_delete_animation", false);
public static final MutableBooleanParamWithSafeDefault
sGtsCloseTabAnimationRearrangeStandardEasing =
sGtsCloseTabAnimation.newBooleanParam("rearrange_standard_easing", false);
public static final MutableBooleanParamWithSafeDefault sShouldBlockCapturesForFullscreenParam =
sSuppressionToolbarCaptures.newBooleanParam("block_for_fullscreen", false);
public static final MutableBooleanParamWithSafeDefault sAndroidTabDeclutterArchiveEnabled =
sAndroidTabDeclutter.newBooleanParam("android_tab_declutter_archive_enabled", true);
public static final MutableIntParamWithSafeDefault sAndroidTabDeclutterArchiveTimeDeltaHours =
sAndroidTabDeclutter.newIntParam(
"android_tab_declutter_archive_time_delta_hours", 7 * 24);
public static final MutableBooleanParamWithSafeDefault sAndroidTabDeclutterAutoDeleteEnabled =
sAndroidTabDeclutter.newBooleanParam(
"android_tab_declutter_auto_delete_enabled", false);
public static final MutableIntParamWithSafeDefault
sAndroidTabDeclutterAutoDeleteTimeDeltaHours =
sAndroidTabDeclutter.newIntParam(
"android_tab_declutter_auto_delete_time_delta_hours", 60 * 24);
public static final MutableIntParamWithSafeDefault sAndroidTabDeclutterIntervalTimeDeltaHours =
sAndroidTabDeclutter.newIntParam(
"android_tab_declutter_interval_time_delta_hours", 7 * 24);
public static final MutableIntParamWithSafeDefault
sAndroidTabDeclutterIphMessageDismissThreshold =
sAndroidTabDeclutter.newIntParam(
"android_tab_declutter_iph_message_dismiss_threshold", 3);
public static final MutableBooleanParamWithSafeDefault
sDisableBottomControlsStackerYOffsetDispatching =
sBottomBrowserControlsRefactor.newBooleanParam(
"disable_bottom_controls_stacker_y_offset", true);
}