blob: e0dd24a9884717654ac5f71bdba3f750f1b5e367 [file] [log] [blame]
Avi Drissman8ba1bad2022-09-13 19:22:361// Copyright 2020 The Chromium Authors
Ehimare Okoyomon2eccb6072020-05-12 12:22:272// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
Olesia Marukhno46ccd432021-12-03 08:50:275#include "components/page_info/core/features.h"
Ehimare Okoyomon2eccb6072020-05-12 12:22:276
Christian Dullweber48eacbd2024-01-29 10:11:377#include <string_view>
Christian Dullweber94b26012023-03-16 10:52:248#include "base/containers/contains.h"
Christian Dullweber48eacbd2024-01-29 10:11:379#include "base/containers/fixed_flat_set.h"
Ehimare Okoyomon2eccb6072020-05-12 12:22:2710#include "base/feature_list.h"
11#include "base/metrics/field_trial_params.h"
Xiaohan Wangd9e3b1f02022-01-14 14:48:3512#include "build/build_config.h"
Christian Dullweber329dad32022-04-20 17:45:3813#include "ui/base/l10n/l10n_util.h"
Ehimare Okoyomon2eccb6072020-05-12 12:22:2714
15namespace page_info {
Christian Dullweber48eacbd2024-01-29 10:11:3716constexpr auto kDefaultLangs = base::MakeFixedFlatSet<std::string_view>({
17 "ar", "bg", "ca", "cs", "da", "de", "el", "en", "es", "et",
18 "fi", "fr", "he", "hi", "hr", "hu", "id", "it", "ja", "ko",
19 "lt", "lv", "nb", "nl", "pl", "pt", "ro", "ru", "sk", "sl",
20 "sr", "sv", "sw", "th", "tr", "uk", "vi", "zh",
21});
Christian Dullweber94b26012023-03-16 10:52:2422
Christian Dullweber329dad32022-04-20 17:45:3823extern bool IsAboutThisSiteFeatureEnabled(const std::string& locale) {
Christian Dullweber94b26012023-03-16 10:52:2424 std::string lang = l10n_util::GetLanguage(locale);
Christian Dullweber48eacbd2024-01-29 10:11:3725 if (base::Contains(kDefaultLangs, lang)) {
Christian Dullweber686e52c2023-06-15 08:52:1826 return base::FeatureList::IsEnabled(kPageInfoAboutThisSite);
Christian Dullweber329dad32022-04-20 17:45:3827 }
Christian Dullweber686e52c2023-06-15 08:52:1828 return base::FeatureList::IsEnabled(kPageInfoAboutThisSiteMoreLangs);
Christian Dullweber329dad32022-04-20 17:45:3829}
Olesia Marukhno0fc754b2021-09-17 15:05:0630
Christian Dullweber686e52c2023-06-15 08:52:1831BASE_FEATURE(kPageInfoAboutThisSite,
32 "PageInfoAboutThisSite",
Daniel Chengd2879972022-09-26 09:12:2033 base::FEATURE_ENABLED_BY_DEFAULT);
Christian Dullweber686e52c2023-06-15 08:52:1834BASE_FEATURE(kPageInfoAboutThisSiteMoreLangs,
35 "PageInfoAboutThisSiteMoreLangs",
Daniel Chengd2879972022-09-26 09:12:2036 base::FEATURE_DISABLED_BY_DEFAULT);
Christian Dullweber329dad32022-04-20 17:45:3837
Christian Dullweber686e52c2023-06-15 08:52:1838const base::FeatureParam<bool> kShowSampleContent{&kPageInfoAboutThisSite,
Christian Dullweber8303ced2022-01-28 13:53:2239 "ShowSampleContent", false};
Christian Dullweberd933ad52021-10-28 09:31:2340
Xiaohan Wangd9e3b1f02022-01-14 14:48:3541#if !BUILDFLAG(IS_ANDROID)
Daniel Chengd2879972022-09-26 09:12:2042BASE_FEATURE(kPageInfoHistoryDesktop,
43 "PageInfoHistoryDesktop",
44 base::FEATURE_DISABLED_BY_DEFAULT);
Zofia Salata1f9c6ae2022-07-21 16:23:3145
Daniel Chengd2879972022-09-26 09:12:2046BASE_FEATURE(kPageInfoHideSiteSettings,
47 "PageInfoHideSiteSettings",
48 base::FEATURE_DISABLED_BY_DEFAULT);
Zofia Salata2a841f52022-07-27 10:55:1049
Olesia Marukhno72f47472021-12-13 16:53:3750#endif
51
Olesia Marukhno4d09c9072021-04-08 09:43:2352} // namespace page_info