| // Copyright 2020 The Chromium Authors |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #include "components/webapps/browser/features.h" |
| |
| #include "base/feature_list.h" |
| |
| namespace webapps { |
| namespace features { |
| |
| #if BUILDFLAG(IS_ANDROID) |
| BASE_FEATURE(kAddToHomescreenMessaging, |
| "AddToHomescreenMessaging", |
| base::FEATURE_DISABLED_BY_DEFAULT); |
| |
| BASE_FEATURE(kAmbientBadgeSuppressFirstVisit, |
| "AmbientBadgeSuppressFirstVisit", |
| base::FEATURE_DISABLED_BY_DEFAULT); |
| |
| extern const base::FeatureParam<base::TimeDelta> |
| kAmbientBadgeSuppressFirstVisit_Period{&kAmbientBadgeSuppressFirstVisit, |
| "period", base::Days(30)}; |
| |
| // Enables or disables the installable ambient badge infobar. |
| BASE_FEATURE(kInstallableAmbientBadgeInfoBar, |
| "InstallableAmbientBadgeInfoBar", |
| base::FEATURE_ENABLED_BY_DEFAULT); |
| |
| // Enables or disables the installable ambient badge message. |
| BASE_FEATURE(kInstallableAmbientBadgeMessage, |
| "InstallableAmbientBadgeMessage", |
| base::FEATURE_DISABLED_BY_DEFAULT); |
| |
| // The capacity of cached domains which do not show message again if |
| // users do not accept the message. |
| extern const base::FeatureParam<int> |
| kInstallableAmbientBadgeMessage_ThrottleDomainsCapacity{ |
| &kInstallableAmbientBadgeMessage, |
| "installable_ambient_badge_message_throttle_domains_capacity", 100}; |
| |
| // Enables or disables the installable ambient badge message. |
| BASE_FEATURE(kInstallPromptGlobalGuardrails, |
| "InstallPromptGlobalGuardrails", |
| base::FEATURE_DISABLED_BY_DEFAULT); |
| extern const base::FeatureParam<int> |
| kInstallPromptGlobalGuardrails_DismissCount{&kInstallPromptGlobalGuardrails, |
| "dismiss_count", 3}; |
| extern const base::FeatureParam<base::TimeDelta> |
| kInstallPromptGlobalGuardrails_DismissPeriod{ |
| &kInstallPromptGlobalGuardrails, "dismiss_period", base::Days(7)}; |
| extern const base::FeatureParam<int> kInstallPromptGlobalGuardrails_IgnoreCount{ |
| &kInstallPromptGlobalGuardrails, "ignore_count", 3}; |
| extern const base::FeatureParam<base::TimeDelta> |
| kInstallPromptGlobalGuardrails_IgnorePeriod{&kInstallPromptGlobalGuardrails, |
| "ignore_period", base::Days(3)}; |
| |
| // Enables WebAPK Install Failure Notification. |
| BASE_FEATURE(kWebApkInstallFailureNotification, |
| "WebApkInstallFailureNotification", |
| base::FEATURE_DISABLED_BY_DEFAULT); |
| |
| // Allow user to retry install WebAPK with the failure notification if the |
| // initial install failed. This needs to be used with |
| // |kWebApkInstallFailureNotification| Enabled. |
| BASE_FEATURE(kWebApkInstallFailureRetry, |
| "WebApkInstallFailureRetry", |
| base::FEATURE_DISABLED_BY_DEFAULT); |
| #endif // BUILDFLAG(IS_ANDROID) |
| |
| // When the user clicks "Create Shortcut" in the dot menu, the current page is |
| // used as start-url, instead of the manifest-supplied value. |
| // This allows subpages of web apps to be bookmarked via shortcuts |
| // separately from their parent app. |
| // For installing the parent app, the existing "Install Site" should be used |
| // instead. With this feature, "Install Site" now also shows up for websites |
| // without service worker, as long as they have a manifest. |
| BASE_FEATURE(kCreateShortcutIgnoresManifest, |
| "CreateShortcutIgnoresManifest", |
| base::FEATURE_DISABLED_BY_DEFAULT); |
| |
| // Enables showing a detailed install dialog for user installs. |
| BASE_FEATURE(kDesktopPWAsDetailedInstallDialog, |
| "DesktopPWAsDetailedInstallDialog", |
| base::FEATURE_ENABLED_BY_DEFAULT); |
| |
| // Use segmentation to decide whether install prompt should be shown. |
| BASE_FEATURE(kInstallPromptSegmentation, |
| "InstallPromptSegmentation", |
| base::FEATURE_DISABLED_BY_DEFAULT); |
| |
| // Keys to use when querying the variations params. |
| BASE_FEATURE(kAppBannerTriggering, |
| "AppBannerTriggering", |
| base::FEATURE_DISABLED_BY_DEFAULT); |
| extern const base::FeatureParam<double> kBannerParamsEngagementTotalKey{ |
| &kAppBannerTriggering, "site_engagement_total", |
| kDefaultTotalEngagementToTrigger}; |
| extern const base::FeatureParam<int> kBannerParamsDaysAfterBannerDismissedKey{ |
| &kAppBannerTriggering, "days_after_dismiss", |
| kMinimumBannerBlockedToBannerShown}; |
| extern const base::FeatureParam<int> kBannerParamsDaysAfterBannerIgnoredKey{ |
| &kAppBannerTriggering, "days_after_ignore", kMinimumDaysBetweenBannerShows}; |
| |
| BASE_FEATURE(kWebAppsMlUkmCollection, |
| "WebAppsMlUkmCollection", |
| base::FEATURE_DISABLED_BY_DEFAULT); |
| |
| } // namespace features |
| } // namespace webapps |