summaryrefslogtreecommitdiffstats
path: root/chromium/components/webapps/browser/features.h
blob: 3f4a3234881dfcac625c479d786ba8fe024ab0ad (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
// 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.

#ifndef COMPONENTS_WEBAPPS_BROWSER_FEATURES_H_
#define COMPONENTS_WEBAPPS_BROWSER_FEATURES_H_

#include "base/feature_list.h"
#include "base/metrics/field_trial_params.h"
#include "base/time/time.h"
#include "build/build_config.h"

namespace webapps {
namespace features {

// Default amount of days after which the guardrail information about user
// cancellations and dismissals on the ML promoted installation dialog is
// automatically cleared. To understand more on how this works, please refer to
// `kMlPromoGuardrails` in web_app_pref_guardrails.h.
inline constexpr int kTotalDaysToStoreMLGuardrails = 180;

// Min icon size when using favicon to install webapp.
inline constexpr int kMinimumFaviconSize = 48;

#if BUILDFLAG(IS_ANDROID)
BASE_DECLARE_FEATURE(kWebApkInstallFailureNotification);
BASE_DECLARE_FEATURE(kInstallMessageThrottle);
#endif  // BUILDFLAG(IS_ANDROID)

// ML Installability promotion flags and all the feature params.
BASE_DECLARE_FEATURE(kWebAppsEnableMLModelForPromotion);
extern const base::FeatureParam<double> kWebAppsMLGuardrailResultReportProb;
extern const base::FeatureParam<double> kWebAppsMLModelUserDeclineReportProb;
extern const base::FeatureParam<int> kMaxDaysForMLPromotionGuardrailStorage;

BASE_DECLARE_FEATURE(kCheckWebAppExistenceAsync);

}  // namespace features
}  // namespace webapps

#endif  // COMPONENTS_WEBAPPS_BROWSER_FEATURES_H_