| // Copyright 2014 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #ifndef IOS_CHROME_BROWSER_EXPERIMENTAL_FLAGS_H_ |
| #define IOS_CHROME_BROWSER_EXPERIMENTAL_FLAGS_H_ |
| |
| #include <string> |
| |
| // This file can be empty. Its purpose is to contain the relatively short lived |
| // declarations required for experimental flags. |
| |
| namespace experimental_flags { |
| |
| enum GaiaEnvironment { |
| GAIA_ENVIRONMENT_PROD, |
| GAIA_ENVIRONMENT_STAGING, |
| GAIA_ENVIRONMENT_TEST, |
| }; |
| |
| enum WhatsNewPromoStatus { |
| WHATS_NEW_DEFAULT = 0, // Not forced to enable a promo. |
| WHATS_NEW_APP_RATING, // Force enable App Rating Promo. |
| WHATS_NEW_MOVE_TO_DOCK_TIP, // Force enable Move To Dock Tip promo. |
| WHATS_NEW_PROMO_STATUS_COUNT, // Count of Whats New Promo Statuses. |
| }; |
| |
| // Whether the First Run UI will be always be displayed. |
| bool AlwaysDisplayFirstRun(); |
| |
| GaiaEnvironment GetGaiaEnvironment(); |
| |
| // Returns the host name for an alternative Origin Server host for use by |
| // |BrandCode| startup ping. Returns empty string if there is no alternative |
| // host specified. |
| std::string GetOriginServerHost(); |
| |
| // Returns the promo force enabled, as determined by the experimental flags. |
| // If |WHATS_NEW_DEFAULT| is returned, no promo is force enabled. |
| WhatsNewPromoStatus GetWhatsNewPromoStatus(); |
| |
| // Whether the lru snapshot cache experiment is enabled. |
| bool IsLRUSnapshotCacheEnabled(); |
| |
| // Whether memory debugging tools are enabled. |
| bool IsMemoryDebuggingEnabled(); |
| |
| // Whether startup crash is enabled. |
| bool IsStartupCrashEnabled(); |
| |
| // Whether the new Clear Browsing Data UI is enabled. |
| bool IsNewClearBrowsingDataUIEnabled(); |
| |
| // Whether a new version of FeedbackKit is the preferred feedback UI provider. |
| bool IsNewFeedbackKitEnabled(); |
| |
| // Whether SSOService is configured for new version of FeedbackKit. |
| bool IsNewFeedbackKitEnabledWithSSOService(); |
| |
| // Whether the 3rd party keyboard omnibox workaround is enabled. |
| bool IsThirdPartyKeyboardWorkaroundEnabled(); |
| |
| // Whether RecentTabs UI Reboot is enabled. |
| bool IsRecentTabsUIRebootEnabled(); |
| |
| // Whether the Bookmarks UI Reboot is enabled. |
| bool IsBookmarksUIRebootEnabled(); |
| |
| // Whether the Reading List UI Reboot is enabled. |
| bool IsReadingListUIRebootEnabled(); |
| |
| // Whether the Collections UI Reboot is enabled. |
| bool IsCollectionsUIRebootEnabled(); |
| |
| // Whether the Settings UI Reboot is enabled. |
| bool IsSettingsUIRebootEnabled(); |
| |
| // Whether the application group sandbox must be cleared before starting. |
| // Calling this method will reset the flag to false, so the sandbox is cleared |
| // only once. |
| bool MustClearApplicationGroupSandbox(); |
| |
| } // namespace experimental_flags |
| |
| #endif // IOS_CHROME_BROWSER_EXPERIMENTAL_FLAGS_H_ |