// 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_ENABLED_BY_DEFAULT); // Enables or disables the installable ambient badge message. BASE_FEATURE(kInstallPromptGlobalGuardrails, "InstallPromptGlobalGuardrails", base::FEATURE_DISABLED_BY_DEFAULT); extern const base::FeatureParam kInstallPromptGlobalGuardrails_DismissCount{&kInstallPromptGlobalGuardrails, "dismiss_count", 3}; extern const base::FeatureParam kInstallPromptGlobalGuardrails_DismissPeriod{ &kInstallPromptGlobalGuardrails, "dismiss_period", base::Days(7)}; extern const base::FeatureParam kInstallPromptGlobalGuardrails_IgnoreCount{ &kInstallPromptGlobalGuardrails, "ignore_count", 3}; extern const base::FeatureParam kInstallPromptGlobalGuardrails_IgnorePeriod{&kInstallPromptGlobalGuardrails, "ignore_period", base::Days(3)}; // Enables WebAPK Install Failure Notification. BASE_FEATURE(kWebApkInstallFailureNotification, "WebApkInstallFailureNotification", 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); // 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 kBannerParamsEngagementTotalKey{ &kAppBannerTriggering, "site_engagement_total", kDefaultTotalEngagementToTrigger}; extern const base::FeatureParam kBannerParamsDaysAfterBannerDismissedKey{ &kAppBannerTriggering, "days_after_dismiss", kMinimumBannerBlockedToBannerShown}; extern const base::FeatureParam kBannerParamsDaysAfterBannerIgnoredKey{ &kAppBannerTriggering, "days_after_ignore", kMinimumDaysBetweenBannerShows}; BASE_FEATURE(kWebAppsEnableMLModelForPromotion, "WebAppsEnableMLModelForPromotion", base::FEATURE_DISABLED_BY_DEFAULT); extern const base::FeatureParam kWebAppsMLGuardrailResultReportProb( &kWebAppsEnableMLModelForPromotion, "guardrail_report_prob", 0); extern const base::FeatureParam kWebAppsMLModelUserDeclineReportProb( &kWebAppsEnableMLModelForPromotion, "model_and_user_decline_report_prob", 0); extern const base::FeatureParam kMaxDaysForMLPromotionGuardrailStorage( &kWebAppsEnableMLModelForPromotion, "max_days_to_store_guardrails", kTotalDaysToStoreMLGuardrails); // Allows installing a web app with fallback manifest values. BASE_FEATURE(kUniversalInstallManifest, "UniversalInstallManifest", base::FEATURE_DISABLED_BY_DEFAULT); // Allows installing a web app with fallback manifest values on root scope pages // without manifest. BASE_FEATURE(kUniversalInstallRootScopeNoManifest, "UniversalInstallRootScopeNoManifest", base::FEATURE_DISABLED_BY_DEFAULT); // Allows installing a web app when no icon provided by the manifest. BASE_FEATURE(kUniversalInstallIcon, "UniversalInstallIcon", base::FEATURE_DISABLED_BY_DEFAULT); extern const base::FeatureParam kMinimumFaviconSize{&kUniversalInstallIcon, "size", 48}; } // namespace features } // namespace webapps