blob: 0ae434c2dc484950cd5f9ea259982804c7973159 [file] [log] [blame]
Avi Drissman4a8573c2022-09-09 19:35:541// Copyright 2012 The Chromium Authors
[email protected]ad2a3ded2010-08-27 13:19:052// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
Alan Cutter50eb0e92021-08-31 15:26:255// Instructions for adding new entries to this file:
6// https://chromium.googlesource.com/chromium/src/+/main/docs/how_to_add_your_feature_flag.md#step-2_adding-the-feature-flag-to-the-chrome_flags-ui
7
[email protected]1a47d7e2010-10-15 00:37:248#include "chrome/browser/about_flags.h"
[email protected]ad2a3ded2010-08-27 13:19:059
[email protected]ad2a3ded2010-08-27 13:19:0510#include <iterator>
11#include <map>
Tom McKeed47f7ed62020-04-06 13:53:4012#include <memory>
[email protected]ad2a3ded2010-08-27 13:19:0513#include <set>
[email protected]83e9fa702013-02-25 19:30:4414#include <utility>
[email protected]ad2a3ded2010-08-27 13:19:0515
Trent Aptedc5e504d2017-10-26 23:19:2616#include "base/base_switches.h"
[email protected]ad2a3ded2010-08-27 13:19:0517#include "base/command_line.h"
asvitkine03007d02015-10-21 22:50:0618#include "base/feature_list.h"
Avi Drissman02e49e582023-01-07 01:23:1819#include "base/functional/bind.h"
20#include "base/functional/callback.h"
mgiuca49ae7c72015-12-04 04:36:4821#include "base/i18n/base_i18n_switches.h"
[email protected]3b63f8f42011-03-28 01:54:1522#include "base/memory/singleton.h"
Ilya Sherman982457e62017-12-13 02:19:3623#include "base/metrics/histogram_functions.h"
Lei Zhang9cb338a2021-07-14 21:56:1724#include "base/no_destructor.h"
[email protected]3ea1b182013-02-08 22:38:4125#include "base/strings/string_number_conversions.h"
[email protected]135cb802013-06-09 16:44:2026#include "base/strings/utf_string_conversions.h"
Etienne Pierre-dorayb6e0b672022-07-06 17:17:3627#include "base/task/task_features.h"
[email protected]ad2a3ded2010-08-27 13:19:0528#include "base/values.h"
Nico Webereaa08412019-08-14 01:24:3729#include "build/branding_buildflags.h"
avie4d7b6f2015-12-26 00:59:1830#include "build/build_config.h"
Matt Amert2df4f1452019-12-09 04:59:4931#include "cc/base/features.h"
[email protected]681ccff2013-03-18 06:13:5232#include "cc/base/switches.h"
Ahmed Fakhry4f567e692018-10-16 15:51:0833#include "chrome/browser/browser_features.h"
Erik Chen92f2f0d2023-03-13 00:09:4834#include "chrome/browser/browser_process.h"
Shakti Sahue7597fd2023-04-05 23:32:3935#include "chrome/browser/companion/core/features.h"
Pierre St Juste9bc615e32023-05-26 01:58:3236#include "chrome/browser/companion/visual_search/features.h"
Jonathan Njeunje9dc4e6c2023-04-10 03:05:3237#include "chrome/browser/dips/dips_features.h"
Norge Vizcay5f6bfb42022-06-10 08:33:1438#include "chrome/browser/fast_checkout/fast_checkout_features.h"
Shakti Sahuedcbaef2022-01-18 19:54:2139#include "chrome/browser/feature_guide/notifications/feature_notification_guide_service.h"
vabr0215a8e2017-03-28 12:47:3440#include "chrome/browser/flag_descriptions.h"
Elly Fong-Jones43624372023-02-16 19:36:1141#include "chrome/browser/follow/follow_features.h"
rajendrant41f3f1b2020-12-16 10:29:3142#include "chrome/browser/login_detection/login_detection_util.h"
George Benz37338b72022-05-02 23:28:0343#include "chrome/browser/media/router/discovery/access_code/access_code_cast_constants.h"
George Benz57b4f6a2022-12-06 22:57:1844#include "chrome/browser/media/router/discovery/access_code/access_code_cast_feature.h"
Tarun Bansale08c0492020-10-20 18:41:0345#include "chrome/browser/navigation_predictor/navigation_predictor_features.h"
Tarun Bansal0c4a7d42020-05-11 19:19:3346#include "chrome/browser/navigation_predictor/search_engine_preconnector.h"
Eric Orth9a14dca2020-04-02 20:07:4747#include "chrome/browser/net/stub_resolver_config_reader.h"
48#include "chrome/browser/net/system_network_context_manager.h"
Xing Liu1919ec232019-07-22 20:38:0449#include "chrome/browser/notifications/scheduler/public/features.h"
Christian Dullwebera0b16c1872022-09-22 09:44:0250#include "chrome/browser/page_info/page_info_features.h"
Kamila5e9935682022-08-05 12:43:2951#include "chrome/browser/permissions/notifications_permission_revocation_config.h"
Balazs Engedy715b0ec2019-12-04 15:11:4552#include "chrome/browser/permissions/quiet_notification_permission_ui_config.h"
Alexandr Ilinf0500ed32017-09-27 21:12:3653#include "chrome/browser/predictors/loading_predictor_config.h"
Ryan Sturm0c7162f72022-09-16 15:13:4154#include "chrome/browser/preloading/prefetch/search_prefetch/field_trial_settings.h"
Sebastien Marchandd33f7dc2018-06-22 22:07:0655#include "chrome/browser/resource_coordinator/tab_manager_features.h"
Elly Fong-Jones0c55976a2021-10-06 18:04:3056#include "chrome/browser/share/share_features.h"
Himanshu Jajudbcee232019-06-17 19:41:4957#include "chrome/browser/sharing/features.h"
Kristi Parkaedd01f2021-04-02 23:40:0758#include "chrome/browser/sharing_hub/sharing_hub_features.h"
Nohemi Fernandez4c0d33f2022-07-01 08:57:5859#include "chrome/browser/signin/signin_features.h"
Mattias Nissler380cf4f2021-03-22 15:50:4660#include "chrome/browser/site_isolation/about_flags.h"
Calder Kitagawa204d6402023-02-22 18:16:5761#include "chrome/browser/thumbnail/cc/features.h"
Roger Tinkoff13c3aba12022-06-01 18:38:5162#include "chrome/browser/ui/browser_navigator_params.h"
Charlene Yan0724dc562019-04-12 17:57:4163#include "chrome/browser/ui/ui_features.h"
Elly Fong-Jones99d8cdad2019-08-27 15:48:4564#include "chrome/browser/unexpire_flags.h"
Elly Fong-Jones4054f142020-04-17 17:12:3365#include "chrome/browser/unexpire_flags_gen.h"
Martin Kreichgauer4c6070762022-03-29 16:27:2266#include "chrome/browser/webauthn/webauthn_switches.h"
Scott Violet6200d332018-02-23 21:29:2367#include "chrome/common/buildflags.h"
sdefresne9fb67692015-08-03 18:48:2268#include "chrome/common/channel_info.h"
[email protected]d208f4d82011-05-23 21:52:0369#include "chrome/common/chrome_content_client.h"
georgesak45ee3532016-01-08 03:39:5470#include "chrome/common/chrome_features.h"
[email protected]ad2a3ded2010-08-27 13:19:0571#include "chrome/common/chrome_switches.h"
Cattalyya Nuengsigkapian1fd3bcb2021-09-29 21:58:2272#include "chromeos/ui/wm/features.h"
Donn Denman59729812018-01-09 01:27:0273#include "components/assist_ranker/predictor_config_definitions.h"
mathp8a74a992016-08-03 16:21:1774#include "components/autofill/core/browser/autofill_experiments.h"
Mathieu Perreaulta24d0c22017-11-10 01:22:0075#include "components/autofill/core/common/autofill_features.h"
Jared Sauld998539f2019-03-19 15:11:1776#include "components/autofill/core/common/autofill_payments_features.h"
[email protected]58bc1c32013-12-16 22:52:0777#include "components/autofill/core/common/autofill_switches.h"
csashia447acf2017-05-19 22:05:2978#include "components/autofill/core/common/autofill_util.h"
maxbogue26f40222016-09-16 20:22:1879#include "components/browser_sync/browser_sync_switches.h"
Jenny Blessing45326bf2019-08-29 23:50:3780#include "components/browsing_data/core/features.h"
Matt Jonesa8bfcc22022-02-01 19:53:0881#include "components/commerce/core/commerce_feature_list.h"
Matt Jones125dfb42022-02-11 17:23:4282#include "components/commerce/core/flag_descriptions.h"
Roman Arora595d5712021-09-24 18:06:0583#include "components/component_updater/component_updater_command_line_config_policy.h"
84#include "components/component_updater/component_updater_switches.h"
Neil Coronadoa0f571b82021-11-23 18:45:3985#include "components/content_settings/core/common/features.h"
Josh Simmonsf2851f52022-07-29 18:28:3386#include "components/contextual_search/core/browser/contextual_search_field_trial.h"
Donn Denman63d169f2019-03-08 23:34:5087#include "components/contextual_search/core/browser/public.h"
Aran Gilmanc9a22c572019-09-06 16:47:5088#include "components/dom_distiller/core/dom_distiller_features.h"
cjhopman951bb612015-04-22 01:42:3889#include "components/dom_distiller/core/dom_distiller_switches.h"
Min Qind461ee462018-03-09 19:39:1590#include "components/download/public/common/download_features.h"
blundella5e3240a2016-01-05 11:30:4391#include "components/error_page/common/error_page_switches.h"
Tommy Nyquistc1d6dea12017-07-26 20:37:2392#include "components/feature_engagement/public/feature_constants.h"
93#include "components/feature_engagement/public/feature_list.h"
Theresa920e0ed2018-03-07 18:12:4494#include "components/feed/feed_feature_list.h"
vabr0215a8e2017-03-28 12:47:3495#include "components/flags_ui/feature_entry.h"
sdefresne246c5642015-11-16 21:47:2996#include "components/flags_ui/feature_entry_macros.h"
Michael Crouse1c9adba2020-07-08 17:39:0197#include "components/flags_ui/flags_state.h"
droger888be0b2015-10-01 14:28:5298#include "components/flags_ui/flags_storage.h"
Nate Fischer03103b92020-06-05 19:30:5099#include "components/flags_ui/flags_ui_metrics.h"
sdefresne0e566342015-11-24 08:55:46100#include "components/flags_ui/flags_ui_switches.h"
Erik Chen92f2f0d2023-03-13 00:09:48101#include "components/flags_ui/pref_service_flags_storage.h"
Colin Blundella33d59b2021-03-10 10:02:38102#include "components/heavy_ad_intervention/heavy_ad_features.h"
Moe Ahmadi359d0722022-05-16 23:17:33103#include "components/history/core/browser/features.h"
Sophie Changd30f4dc4f2022-10-18 16:10:17104#include "components/history_clusters/core/config.h"
Tommy Licfb4e0c2021-12-07 21:54:46105#include "components/history_clusters/core/features.h"
Sophie Chang9f2f0712022-03-03 19:40:41106#include "components/history_clusters/core/on_device_clustering_features.h"
Tanja Gornakb0985dd2018-10-11 17:24:40107#include "components/invalidation/impl/invalidation_switches.h"
Anthony Vallee-Dubois265c5692018-06-01 15:57:14108#include "components/language/core/common/language_experiments.h"
Duncan Mercer80e99102022-12-28 21:30:27109#include "components/lens/buildflags.h"
Ali Stanfield980a7492021-07-21 19:21:26110#include "components/lens/lens_features.h"
Jordan Baylesb3160b262021-08-18 00:33:01111#include "components/mirroring/service/mirroring_features.h"
Derek Schuff71d9a922019-04-24 21:36:00112#include "components/nacl/common/buildflags.h"
113#include "components/nacl/common/nacl_switches.h"
Matt Menke64b9fc72017-07-29 02:22:45114#include "components/network_session_configurator/common/network_features.h"
mmenke68a50212017-06-12 20:20:31115#include "components/network_session_configurator/common/network_switches.h"
Hiroki Nakagawafea75fae2021-02-03 10:34:52116#include "components/no_state_prefetch/browser/no_state_prefetch_field_trial.h"
Kristi Park01ca1252019-05-10 22:39:05117#include "components/ntp_tiles/features.h"
chiliecd23802016-12-07 10:27:11118#include "components/offline_pages/core/offline_page_feature.h"
manukhf3a1a162023-06-09 16:17:38119#include "components/omnibox/browser/omnibox_feature_configs.h"
jdonnelly3d2d65e92017-02-23 21:33:59120#include "components/omnibox/browser/omnibox_field_trial.h"
Tomasz Wiszkowskid938a1112019-03-06 18:01:57121#include "components/omnibox/common/omnibox_features.h"
Patrick Nolandd50e38b2023-06-14 22:32:11122#include "components/open_from_clipboard/clipboard_recent_content_features.h"
Sophie Changd71cd7c2021-01-12 17:53:39123#include "components/optimization_guide/core/optimization_guide_features.h"
rajendrant277b1ba2022-02-18 01:59:36124#include "components/optimization_guide/core/optimization_guide_switches.h"
Tommy C. Lidf33ea612023-03-29 23:04:52125#include "components/page_image_service/features.h"
Olesia Marukhno46ccd432021-12-03 08:50:27126#include "components/page_info/core/features.h"
ckitagawa8dad53d2020-01-07 16:03:35127#include "components/paint_preview/buildflags/buildflags.h"
128#include "components/paint_preview/features/features.h"
Vasilii Sukhanovd64f314e2023-07-05 09:15:48129#include "components/password_manager/core/browser/features/password_features.h"
pritam.nikam906f9ae2015-12-07 18:36:39130#include "components/password_manager/core/common/password_manager_features.h"
Mathieu Perreault51339b82017-07-20 17:06:05131#include "components/payments/core/features.h"
Charles Meng17ba75d2022-08-23 18:45:28132#include "components/performance_manager/public/features.h"
Olesia Marukhno1b981ad2020-11-12 17:55:38133#include "components/permissions/features.h"
Yann Dago70afb65d2019-08-06 15:50:53134#include "components/policy/core/common/features.h"
Brandon Wylie130e5792023-02-23 23:59:38135#include "components/power_bookmarks/core/power_bookmark_features.h"
Theodore Olsauskas-Warren474cdb52023-01-04 10:16:34136#include "components/privacy_sandbox/privacy_sandbox_features.h"
Min Qindb99e6f2020-04-29 06:37:26137#include "components/query_tiles/switches.h"
Caroline Rising98e6ca12f2020-10-27 02:50:47138#include "components/reading_list/features/reading_list_switches.h"
Colin Blundell6292006a2021-06-30 09:22:58139#include "components/safe_browsing/core/common/features.h"
Moe Ahmadiec90a242020-10-29 18:54:13140#include "components/search/ntp_features.h"
Colin Blundell7657b402020-02-25 09:46:50141#include "components/security_interstitials/content/stateful_ssl_host_state_delegate.h"
estark04c3307c2016-12-20 08:47:17142#include "components/security_state/core/security_state.h"
Shakti Sahu28a76012022-05-30 15:29:14143#include "components/segmentation_platform/public/features.h"
Jeffrey Cohen9f3e6092019-03-21 21:55:01144#include "components/send_tab_to_self/features.h"
erikchen34810df02018-04-05 21:40:38145#include "components/services/heap_profiling/public/cpp/switches.h"
Gayane Petrosyan65380732021-01-15 01:09:53146#include "components/shared_highlighting/core/common/shared_highlighting_features.h"
Mihai Sardarescu0060dff2019-10-22 11:14:58147#include "components/signin/core/browser/dice_account_reconcilor_delegate.h"
Colin Blundell3517170e2019-07-11 08:16:34148#include "components/signin/public/base/signin_buildflags.h"
149#include "components/signin/public/base/signin_switches.h"
Clark DuVallaadc244c2020-06-06 03:47:14150#include "components/site_isolation/features.h"
timvolodine34b1ffd2016-09-01 12:45:23151#include "components/spellcheck/common/spellcheck_features.h"
Scott Violetd7983c52018-03-03 00:24:41152#include "components/spellcheck/spellcheck_buildflags.h"
[email protected]1099454d2023-01-31 14:35:11153#include "components/supervised_user/core/common/buildflags.h"
Victor Hugo Vianna Silvaa48aa01c2022-02-09 20:38:23154#include "components/sync/base/command_line_switches.h"
155#include "components/sync/base/features.h"
primianoccb26c62016-06-01 21:50:02156#include "components/tracing/common/tracing_switches.h"
ftangee708962016-05-07 00:39:28157#include "components/translate/core/browser/translate_prefs.h"
Philippe Hamel7fdaa452017-09-29 17:22:49158#include "components/translate/core/browser/translate_ranker_impl.h"
Doug Arnettc52291a2020-05-07 18:52:30159#include "components/translate/core/common/translate_util.h"
Mike Wasserman8f8b0852018-12-03 22:08:10160#include "components/ui_devtools/switches.h"
James Leeed090a1b2023-03-16 22:51:58161#include "components/variations/service/google_groups_updater_service.h"
Erik Chen92f2f0d2023-03-13 00:09:48162#include "components/variations/variations_switches.h"
sdefresne9fb67692015-08-03 18:48:22163#include "components/version_info/version_info.h"
kylechar7051c092018-02-05 20:31:39164#include "components/viz/common/features.h"
kylechar0a233f92019-03-08 16:50:54165#include "components/viz/common/switches.h"
Phillis Tangdc765bbd2022-08-10 22:41:26166#include "components/webapps/browser/features.h"
Evan Stadedc8b4822021-01-22 02:28:10167#include "components/webapps/common/switches.h"
rseseka8dcaa92015-11-23 17:55:09168#include "content/public/common/content_features.h"
brettw90e92602015-10-10 00:12:40169#include "content/public/common/content_switches.h"
reillyg6204d732017-02-13 22:24:56170#include "device/base/features.h"
Zhengping Jiang706c2272022-07-13 05:50:34171#include "device/bluetooth/bluez/bluez_features.h"
Manish Mandlikdd93b612022-08-12 01:08:19172#include "device/bluetooth/chromeos_platform_features.h"
Sonny Sasaka94725212021-12-17 01:37:30173#include "device/bluetooth/floss/floss_features.h"
Adam Langley64bc04232019-03-30 21:05:56174#include "device/fido/features.h"
Qiaofei Yebeb9a232020-07-22 23:47:04175#include "device/gamepad/public/cpp/gamepad_features.h"
Scott Violetc8240b02018-03-08 22:03:59176#include "device/vr/buildflags/buildflags.h"
177#include "extensions/buildflags/buildflags.h"
Andres Calderon Jaramillo605253d2018-09-05 15:46:35178#include "gpu/config/gpu_finch_features.h"
ericrk41a1579e2017-02-10 20:56:28179#include "gpu/config/gpu_switches.h"
warxe993ec32016-10-18 21:37:47180#include "media/audio/audio_features.h"
[email protected]e2e8e322012-09-12 04:37:02181#include "media/base/media_switches.h"
Hirokazu Honda8ef07cd2020-04-17 03:36:38182#include "media/capture/capture_switches.h"
Scott Violeta35f9a42018-03-22 22:00:44183#include "media/media_buildflags.h"
yhiranobbea6272015-09-17 07:09:03184#include "media/midi/midi_switches.h"
Alessio Bazzica056e05f2021-09-21 16:30:23185#include "media/webrtc/webrtc_features.h"
Brian Geffon12b581a2021-02-03 23:48:03186#include "mojo/core/embedder/features.h"
David Benjamin570460e2018-10-16 06:01:29187#include "net/base/features.h"
Asanka Herathd37426e2019-10-29 22:11:10188#include "net/net_buildflags.h"
tbansald3e08ca62017-05-04 19:51:09189#include "net/nqe/effective_connection_type.h"
Thanh Lea98f12f2017-12-18 19:35:30190#include "net/nqe/network_quality_estimator_params.h"
Adam Ricec786ad8a2018-05-22 09:49:15191#include "net/websockets/websocket_basic_handshake_stream.h"
Lei Zhangfc8ec942018-11-17 02:53:36192#include "pdf/buildflags.h"
Scott Violet02e38b92018-03-27 23:42:14193#include "ppapi/buildflags/buildflags.h"
Scott Violet318a55f2018-03-30 19:08:19194#include "printing/buildflags/buildflags.h"
Robert Sesek7d0b49b2020-07-08 18:31:27195#include "sandbox/policy/features.h"
196#include "sandbox/policy/switches.h"
ke.hea91facd2017-04-12 05:11:50197#include "services/device/public/cpp/device_features.h"
Becca Hughesac86cd442019-01-09 23:49:54198#include "services/media_session/public/cpp/features.h"
Yutaka Hiranod8789f92018-01-30 09:59:51199#include "services/network/public/cpp/features.h"
John Abd-El-Malek91243b32018-01-19 06:08:33200#include "services/network/public/cpp/network_switches.h"
Alexander Timina812932f2022-06-29 23:39:34201#include "services/tracing/public/cpp/tracing_features.h"
Lexi Stavrakosd9e64e12020-07-21 21:52:10202#include "storage/browser/quota/quota_features.h"
Matt Falkenhagen5cc652792018-06-21 10:34:33203#include "third_party/blink/public/common/features.h"
Mason Freed7e294a82023-06-05 23:46:14204#include "third_party/blink/public/common/features_generated.h"
Aran Gilman5e9672bed2019-08-02 19:07:49205#include "third_party/blink/public/common/forcedark/forcedark_switches.h"
Dave Tapuska9bcf6cc2020-06-25 15:15:01206#include "third_party/blink/public/common/switches.h"
Adam Ettenbergerdcf51b42019-09-23 19:33:41207#include "ui/accessibility/accessibility_features.h"
Chris Halle952239e2018-11-06 06:49:52208#include "ui/accessibility/accessibility_switches.h"
Trent Apted9efc4532017-10-23 11:09:38209#include "ui/base/ui_base_features.h"
[email protected]c9c73ad42012-04-18 03:35:59210#include "ui/base/ui_base_switches.h"
loyso4345c8e2016-02-11 05:16:21211#include "ui/compositor/compositor_switches.h"
Ahmed Fakhry15d707e2019-02-22 23:54:21212#include "ui/display/display_features.h"
[email protected]bf3f4592014-03-31 19:50:44213#include "ui/display/display_switches.h"
Ella Gebee81c92018-08-14 15:51:09214#include "ui/events/blink/blink_features.h"
[email protected]a6147a22013-09-26 06:55:09215#include "ui/events/event_switches.h"
[email protected]0d3b9dd2012-11-14 04:14:48216#include "ui/gfx/switches.h"
Scott Violetfd6ee112019-01-10 19:05:32217#include "ui/gl/buildflags.h"
Peng Huang723f26e2021-06-04 01:55:10218#include "ui/gl/gl_features.h"
[email protected]c9e2cbbb2012-05-12 21:17:27219#include "ui/gl/gl_switches.h"
chaopengd3ca34feb2017-04-20 17:11:22220#include "ui/native_theme/native_theme_features.h"
Sarah Bloomd391ba82021-08-31 03:47:06221#include "ui/ui_features.h"
Mustafa Emre Acerc6b51352022-11-18 18:43:51222#include "url/url_features.h"
[email protected]9a224572013-05-12 23:08:56223
Xiaohan Wang064b68cd2022-01-19 19:12:28224#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)
Brian Geffonc3bdd6d2019-08-21 22:48:31225#include "base/allocator/buildflags.h"
226#endif
227
Xiaohan Wang064b68cd2022-01-19 19:12:28228#if BUILDFLAG(IS_CHROMEOS)
Youssef Esmatc732bf82022-05-27 00:47:19229#include "base/process/process.h"
Tim Sergeante9c45c42022-03-17 21:53:52230#include "chrome/browser/apps/intent_helper/intent_picker_features.h"
Samuel Huang885fb15b2021-11-08 19:16:52231#include "chromeos/constants/chromeos_features.h"
Jenny Zhangfcf6f0e2021-10-08 22:16:21232#endif
233
Xiaohan Wang064b68cd2022-01-19 19:12:28234#if BUILDFLAG(IS_ANDROID)
Bo Liude36ab62023-02-24 20:08:29235#include "cc/slim/features.h" // nogncheck
Henrique Nakashima476b0b52020-01-24 22:28:03236#include "chrome/browser/flags/android/chrome_feature_list.h"
Xing Liuf84cb1a2020-08-10 19:06:35237#include "chrome/browser/notifications/chime/android/features.h"
Illia Klimov352f34a2022-08-18 13:45:13238#include "chrome/browser/push_messaging/push_messaging_features.h"
Finnur Thorarinsson9293db32021-01-13 09:56:09239#include "components/browser_ui/photo_picker/android/features.h"
Lei Zhang7c0c5892023-06-29 15:24:21240#include "components/browser_ui/site_settings/android/features.h"
Sebastien9f7d94c2021-06-14 22:41:04241#include "components/content_creation/notes/core/note_features.h"
Lei Zhang7c0c5892023-06-29 15:24:21242#include "components/external_intents/android/external_intents_features.h"
243#include "components/messages/android/messages_feature.h"
Scott Littlec0f9a472022-03-23 19:23:22244#include "components/translate/content/android/translate_message.h"
Michael van Ouwerkerk99b42f42023-04-24 16:15:41245#include "ui/android/ui_android_features.h"
Xiaohan Wang064b68cd2022-01-19 19:12:28246#else // BUILDFLAG(IS_ANDROID)
George Benz37338b72022-05-02 23:28:03247#include "chrome/browser/media/router/discovery/access_code/access_code_cast_sink_service.h"
Derek Cheng34478382018-04-07 00:32:59248#include "chrome/browser/media/router/media_router_feature.h"
Song Fangzhencda4af62021-09-09 05:24:02249#include "chrome/browser/web_applications/preinstalled_app_install_features.h"
Caroline Rising19c84902023-02-27 23:46:00250#include "components/user_notes/user_notes_features.h"
Xiaohan Wang064b68cd2022-01-19 19:12:28251#endif // BUILDFLAG(IS_ANDROID)
[email protected]3dfb4012014-06-11 07:33:38252
Yuta Hijikata235fc62b2020-12-08 03:48:32253#if BUILDFLAG(IS_CHROMEOS_ASH)
Yao Li978b1252021-11-16 01:51:34254#include "ash/components/arc/arc_features.h"
Yao Lic9cd767d2021-11-16 02:17:47255#include "ash/components/arc/arc_util.h"
Henrique Ferreiroe8c9449b2021-02-04 00:52:40256#include "ash/constants/ash_features.h"
Henrique Ferreirof3fbcea22021-02-05 23:12:19257#include "ash/constants/ash_switches.h"
Lei Zhang6a5010a2023-02-14 02:14:50258#include "ash/public/cpp/app_list/app_list_features.h"
259#include "ash/public/cpp/keyboard/keyboard_switches.h"
Jesse Melhuish433dff22023-06-06 21:25:26260#include "chrome/browser/ash/accessibility/accessibility_manager.h"
Lei Zhang6a5010a2023-02-14 02:14:50261#include "chrome/browser/ash/android_sms/android_sms_switches.h"
262#include "chrome/browser/ash/app_list/search/search_features.h"
David Munro5e67bf12023-05-22 07:07:16263#include "chrome/browser/ash/bruschetta/bruschetta_util.h"
Stefan Kuhne83523c22021-10-20 17:30:03264#include "chrome/browser/ash/crosapi/browser_manager.h"
Yeunjoo Choi9d056222021-03-08 05:34:28265#include "chrome/browser/ash/crosapi/browser_util.h"
Fergus Dall9d0e95a2021-07-30 08:10:11266#include "chrome/browser/ash/crostini/crostini_util.h"
Lei Zhang6a5010a2023-02-14 02:14:50267#include "chrome/browser/ash/file_suggest/item_suggest_cache.h"
Erik Chen92f2f0d2023-03-13 00:09:48268#include "chrome/browser/ash/ownership/owner_settings_service_ash.h"
269#include "chrome/browser/ash/ownership/owner_settings_service_ash_factory.h"
270#include "chrome/browser/ash/settings/about_flags.h"
Peter Boström6324b792022-09-28 23:15:56271#include "chrome/browser/component_updater/cros_component_installer_chromeos.h"
Erik Chen366873d62022-03-08 23:11:38272#include "chrome/browser/memory/memory_ablation_study.h"
Josh Nohle928fdb62020-11-03 18:54:23273#include "chrome/browser/nearby_sharing/common/nearby_share_features.h"
Stefan Kuhne83523c22021-10-20 17:30:03274#include "chrome/common/webui_url_constants.h"
Yeunjoo Choi3f43ca62022-05-16 03:05:46275#include "chromeos/ash/components/assistant/buildflags.h"
Brian Geffon297843f2022-06-27 16:33:43276#include "chromeos/ash/components/memory/swap_configuration.h"
Yeunjoo Choi2d3704c12022-06-21 02:44:34277#include "chromeos/ash/services/assistant/public/cpp/features.h"
Sammie Quon53afe7f2021-09-14 20:10:42278#include "components/app_restore/features.h"
Jonghyun Ahnee113d22021-09-10 20:48:26279#include "components/metrics/structured/structured_metrics_features.h" // nogncheck
Ricky Liang8df43372020-07-09 09:41:09280#include "media/capture/video/chromeos/video_capture_features_chromeos.h"
Jeroen Dhollander9b816f052022-05-11 15:03:42281#include "remoting/host/chromeos/features.h"
[email protected]6d98abf2013-06-17 23:35:51282#include "third_party/cros_system_api/switches/chrome_switches.h"
Michael Spangccfc6f972019-11-21 18:49:33283#include "ui/events/ozone/features.h"
Yuta Hijikata235fc62b2020-12-08 03:48:32284#endif // BUILDFLAG(IS_CHROMEOS_ASH)
[email protected]badba1ad2012-11-16 17:21:46285
Stefan Kuhne83523c22021-10-20 17:30:03286#if BUILDFLAG(IS_CHROMEOS_LACROS)
Andrea Orrue14d8fd82022-02-24 16:47:51287#include "base/i18n/icu_mergeable_data_file.h"
Stefan Kuhne83523c22021-10-20 17:30:03288#include "chrome/browser/lacros/lacros_url_handling.h"
289#include "chrome/common/webui_url_constants.h"
290#endif
291
Xiaohan Wang064b68cd2022-01-19 19:12:28292#if BUILDFLAG(IS_MAC)
taptedd1cb0bf2016-05-26 03:26:24293#include "chrome/browser/ui/browser_dialogs.h"
Leonard Grey2e90921c2021-12-02 22:46:13294#include "chrome/browser/ui/cocoa/screentime/screentime_features.h"
Xiaohan Wang064b68cd2022-01-19 19:12:28295#endif // BUILDFLAG(IS_MAC)
taptedd1cb0bf2016-05-26 03:26:24296
Alex Cooperbdd9a762023-01-24 23:29:54297#if BUILDFLAG(ENABLE_CARDBOARD)
298#include "device/vr/public/cpp/features.h"
299#endif // ENABLE_CARDBOARD
300
brettw00899e62016-11-12 02:10:17301#if BUILDFLAG(ENABLE_EXTENSIONS)
Anunoy Ghosh24ebac02023-06-14 19:32:19302#include "chrome/browser/extensions/cws_info_service.h"
Devlin Cronincac45cb2018-04-25 04:43:03303#include "extensions/common/extension_features.h"
thestigb012bc3d2014-09-18 22:57:13304#include "extensions/common/switches.h"
Xiaohan Wang064b68cd2022-01-19 19:12:28305#endif // BUILDFLAG(ENABLE_EXTENSIONS)
thestigb012bc3d2014-09-18 22:57:13306
Lei Zhangfc8ec942018-11-17 02:53:36307#if BUILDFLAG(ENABLE_PDF)
Lei Zhang802201c2018-11-14 18:16:28308#include "pdf/pdf_features.h"
309#endif
310
Daniel Hosseinian7b57a422019-06-11 23:52:32311#if BUILDFLAG(ENABLE_PRINTING)
Alan Screen113d0142020-01-31 06:11:21312#include "printing/printing_features.h"
Daniel Hosseinian7b57a422019-06-11 23:52:32313#endif
314
Aga Wronska344fa8282021-10-07 14:18:05315#if BUILDFLAG(ENABLE_SUPERVISED_USERS)
Nohemi Fernandez6f8379b62022-12-15 23:21:55316#include "components/supervised_user/core/common/features.h" // nogncheck
Aga Wronska344fa8282021-10-07 14:18:05317#endif // ENABLE_SUPERVISED_USERS
318
Alex Cooper1de79412023-01-24 19:24:15319#if BUILDFLAG(ENABLE_VR)
320#include "device/vr/public/cpp/features.h"
321#endif
322
Xiaohan Wang064b68cd2022-01-19 19:12:28323#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_ASH)
Alexander Dunaev43cfb2f2021-10-19 06:08:06324#include "ui/ozone/buildflags.h"
alexst24a14a322015-03-10 21:06:09325#include "ui/ozone/public/ozone_switches.h"
Xiaohan Wang064b68cd2022-01-19 19:12:28326#endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_ASH)
alexst24a14a322015-03-10 21:06:09327
Nicolas MacBeth53fa8142023-06-20 15:06:09328#if !BUILDFLAG(IS_ANDROID) && BUILDFLAG(GOOGLE_CHROME_BRANDING)
329#include "chrome/browser/promos/promos_features.h"
330#endif // !BUILDFLAG(IS_ANDROID) && BUILDFLAG(GOOGLE_CHROME_BRANDING)
331
Xiaohan Wang064b68cd2022-01-19 19:12:28332#if BUILDFLAG(IS_WIN)
Igor Ruvinovb1f7bea2022-11-08 23:20:50333#include "chrome/browser/enterprise/platform_auth/platform_auth_features.h"
Bret Sepulveda979c3c42018-03-21 18:56:39334#include "chrome/browser/win/titlebar_config.h"
Xiaohan Wang064b68cd2022-01-19 19:12:28335#endif
hubbee7499512017-04-05 22:35:04336
Collin Baker75a29462019-03-13 19:57:31337#if defined(TOOLKIT_VIEWS)
Sajad Maysamc30d6f82019-03-19 22:52:50338#include "ui/views/views_features.h"
339#include "ui/views/views_switches.h"
Collin Baker75a29462019-03-13 19:57:31340#endif // defined(TOOLKIT_VIEWS)
341
sdefresne246c5642015-11-16 21:47:29342using flags_ui::FeatureEntry;
Yann Dago78028712019-09-04 15:23:54343using flags_ui::kDeprecated;
Thanh Le2c279fbc2017-11-21 01:25:40344using flags_ui::kOsAndroid;
345using flags_ui::kOsCrOS;
346using flags_ui::kOsCrOSOwnerOnly;
Benjamin Lermane446caff2021-11-16 16:37:43347using flags_ui::kOsFuchsia;
Fred Shih87e6a562022-04-13 19:51:51348using flags_ui::kOsLacros;
Thanh Le2c279fbc2017-11-21 01:25:40349using flags_ui::kOsLinux;
sdefresne0e566342015-11-24 08:55:46350using flags_ui::kOsMac;
351using flags_ui::kOsWin;
[email protected]ad2a3ded2010-08-27 13:19:05352
sdefresne246c5642015-11-16 21:47:29353namespace about_flags {
[email protected]8a6ff28d2010-12-02 16:35:19354
[email protected]e2ddbc92010-10-15 20:02:07355namespace {
356
Benjamin Lermane446caff2021-11-16 16:37:43357const unsigned kOsAll =
Fred Shih87e6a562022-04-13 19:51:51358 kOsMac | kOsWin | kOsLinux | kOsCrOS | kOsAndroid | kOsFuchsia | kOsLacros;
359const unsigned kOsDesktop =
360 kOsMac | kOsWin | kOsLinux | kOsCrOS | kOsFuchsia | kOsLacros;
[email protected]ad2a3ded2010-08-27 13:19:05361
Jinsuk Kimabf62962020-12-16 03:10:06362#if defined(USE_AURA)
Fred Shih87e6a562022-04-13 19:51:51363const unsigned kOsAura = kOsWin | kOsLinux | kOsCrOS | kOsFuchsia | kOsLacros;
Jinsuk Kimabf62962020-12-16 03:10:06364#endif // USE_AURA
mfomitchev05cf8762017-03-15 23:46:29365
[email protected]c38e9802014-02-18 21:32:12366#if defined(USE_AURA)
Mohsen Izadi8c59ba52018-04-12 18:52:01367const FeatureEntry::Choice kPullToRefreshChoices[] = {
368 {flags_ui::kGenericExperimentChoiceDefault, "", ""},
369 {flags_ui::kGenericExperimentChoiceDisabled, switches::kPullToRefresh, "0"},
370 {flags_ui::kGenericExperimentChoiceEnabled, switches::kPullToRefresh, "1"},
371 {flag_descriptions::kPullToRefreshEnabledTouchscreen,
372 switches::kPullToRefresh, "2"}};
skymd6d2c8d32016-09-26 22:06:07373#endif // USE_AURA
[email protected]c38e9802014-02-18 21:32:12374
Daniele Castagna74ddb9c2018-06-21 22:59:02375const FeatureEntry::Choice kOverlayStrategiesChoices[] = {
376 {flag_descriptions::kOverlayStrategiesDefault, "", ""},
377 {flag_descriptions::kOverlayStrategiesNone,
378 switches::kEnableHardwareOverlays, ""},
379 {flag_descriptions::kOverlayStrategiesUnoccludedFullscreen,
380 switches::kEnableHardwareOverlays, "single-fullscreen"},
381 {flag_descriptions::kOverlayStrategiesUnoccluded,
382 switches::kEnableHardwareOverlays, "single-fullscreen,single-on-top"},
383 {flag_descriptions::kOverlayStrategiesOccludedAndUnoccluded,
384 switches::kEnableHardwareOverlays,
385 "single-fullscreen,single-on-top,underlay"},
386};
387
asvitkinee9ed35e2015-10-14 22:33:59388const FeatureEntry::Choice kTouchTextSelectionStrategyChoices[] = {
vabr0215a8e2017-03-28 12:47:34389 {flags_ui::kGenericExperimentChoiceDefault, "", ""},
390 {flag_descriptions::kTouchSelectionStrategyCharacter,
Michelle70a234d2022-09-26 01:11:29391 blink::switches::kTouchTextSelectionStrategy,
392 blink::switches::kTouchTextSelectionStrategy_Character},
vabr0215a8e2017-03-28 12:47:34393 {flag_descriptions::kTouchSelectionStrategyDirection,
Michelle70a234d2022-09-26 01:11:29394 blink::switches::kTouchTextSelectionStrategy,
395 blink::switches::kTouchTextSelectionStrategy_Direction}};
mfomitchev5ad034ec2015-04-24 21:57:27396
Xiaohan Wang064b68cd2022-01-19 19:12:28397#if BUILDFLAG(IS_WIN)
Jonah Ryan-Davis90ae3322021-09-21 17:34:48398const FeatureEntry::Choice kUseAngleChoicesWindows[] = {
Olli Etuaho122321192018-09-07 10:15:29399 {flag_descriptions::kUseAngleDefault, "", ""},
400 {flag_descriptions::kUseAngleGL, switches::kUseANGLE,
401 gl::kANGLEImplementationOpenGLName},
402 {flag_descriptions::kUseAngleD3D11, switches::kUseANGLE,
403 gl::kANGLEImplementationD3D11Name},
404 {flag_descriptions::kUseAngleD3D9, switches::kUseANGLE,
Nathan Zabriskie70c046f2019-10-16 01:19:02405 gl::kANGLEImplementationD3D9Name},
406 {flag_descriptions::kUseAngleD3D11on12, switches::kUseANGLE,
407 gl::kANGLEImplementationD3D11on12Name}};
Xiaohan Wang064b68cd2022-01-19 19:12:28408#elif BUILDFLAG(IS_MAC)
Jonah Ryan-Davis90ae3322021-09-21 17:34:48409const FeatureEntry::Choice kUseAngleChoicesMac[] = {
410 {flag_descriptions::kUseAngleDefault, "", ""},
411 {flag_descriptions::kUseAngleGL, switches::kUseANGLE,
412 gl::kANGLEImplementationOpenGLName},
413 {flag_descriptions::kUseAngleMetal, switches::kUseANGLE,
414 gl::kANGLEImplementationMetalName}};
Olli Etuaho122321192018-09-07 10:15:29415#endif
416
Alex Forrenceb42504892022-07-20 21:50:07417#if BUILDFLAG(IS_WIN)
418const FeatureEntry::FeatureParam kDXGIWaitableSwapChain1Frame = {
419 "DXGIWaitableSwapChainMaxQueuedFrames", "1"};
420
421const FeatureEntry::FeatureParam kDXGIWaitableSwapChain2Frames = {
422 "DXGIWaitableSwapChainMaxQueuedFrames", "2"};
423
424const FeatureEntry::FeatureParam kDXGIWaitableSwapChain3Frames = {
425 "DXGIWaitableSwapChainMaxQueuedFrames", "3"};
426
427const FeatureEntry::FeatureVariation kDXGIWaitableSwapChainVariations[] = {
428 {"Max 1 Frame", &kDXGIWaitableSwapChain1Frame, 1, nullptr},
429 {"Max 2 Frames", &kDXGIWaitableSwapChain2Frames, 1, nullptr},
430 {"Max 3 Frames", &kDXGIWaitableSwapChain3Frames, 1, nullptr}};
431#endif
432
Xiaohan Wang064b68cd2022-01-19 19:12:28433#if BUILDFLAG(IS_LINUX)
Alexander Dunaev43cfb2f2021-10-19 06:08:06434const FeatureEntry::Choice kOzonePlatformHintRuntimeChoices[] = {
435 {flag_descriptions::kOzonePlatformHintChoiceDefault, "", ""},
436 {flag_descriptions::kOzonePlatformHintChoiceAuto,
437 switches::kOzonePlatformHint, "auto"},
438#if BUILDFLAG(OZONE_PLATFORM_X11)
439 {flag_descriptions::kOzonePlatformHintChoiceX11,
440 switches::kOzonePlatformHint, "x11"},
441#endif
442#if BUILDFLAG(OZONE_PLATFORM_WAYLAND)
443 {flag_descriptions::kOzonePlatformHintChoiceWayland,
444 switches::kOzonePlatformHint, "wayland"},
445#endif
446};
447#endif
448
Alex Cooper01f110e2020-01-08 02:24:16449#if BUILDFLAG(ENABLE_VR)
450const FeatureEntry::Choice kWebXrForceRuntimeChoices[] = {
451 {flags_ui::kGenericExperimentChoiceDefault, "", ""},
452 {flag_descriptions::kWebXrRuntimeChoiceNone, switches::kWebXrForceRuntime,
453 switches::kWebXrRuntimeNone},
Alexander Cooper98a8edb2023-05-23 18:04:05454#if BUILDFLAG(ENABLE_CARDBOARD)
455 {flag_descriptions::kWebXrRuntimeChoiceCardboard,
456 switches::kWebXrForceRuntime, switches::kWebXrRuntimeCardboard},
457#endif
458#if BUILDFLAG(ENABLE_GVR_SERVICES)
459 {flag_descriptions::kWebXrRuntimeChoiceGVR, switches::kWebXrForceRuntime,
460 switches::kWebXrRuntimeGVR},
461#endif
Alex Cooper01f110e2020-01-08 02:24:16462#if BUILDFLAG(ENABLE_OPENXR)
463 {flag_descriptions::kWebXrRuntimeChoiceOpenXR, switches::kWebXrForceRuntime,
464 switches::kWebXrRuntimeOpenXr},
465#endif // ENABLE_OPENXR
Alex Cooper01f110e2020-01-08 02:24:16466};
467#endif // ENABLE_VR
468
Xiaohan Wang064b68cd2022-01-19 19:12:28469#if BUILDFLAG(IS_ANDROID)
Jinsuk Kim6fdac9242022-01-26 21:58:00470const FeatureEntry::FeatureParam kCCTResizablePolicyParamUseAllowlist[] = {
471 {"default_policy", "use-allowlist"}};
472const FeatureEntry::FeatureParam kCCTResizablePolicyParamUseDenylist[] = {
473 {"default_policy", "use-denylist"}};
474
475const FeatureEntry::FeatureVariation
476 kCCTResizableThirdPartiesDefaultPolicyVariations[] = {
477 {"Use Allowlist", kCCTResizablePolicyParamUseAllowlist,
Daniel Cheng7d9e3d52022-02-26 09:03:24478 std::size(kCCTResizablePolicyParamUseAllowlist), nullptr},
Jinsuk Kim6fdac9242022-01-26 21:58:00479 {"Use Denylist", kCCTResizablePolicyParamUseDenylist,
Daniel Cheng7d9e3d52022-02-26 09:03:24480 std::size(kCCTResizablePolicyParamUseDenylist), nullptr}};
Jinsuk Kim6fdac9242022-01-26 21:58:00481
Wenyu Fuabf67d472022-08-12 00:49:28482const FeatureEntry::FeatureParam kCCTBrandingTestFriendly[] = {
483 {"use_temporary_storage", "true"},
484 {"branding_cadence", "10000"} // 10 seconds
485};
486
487const FeatureEntry::FeatureVariation kCctBrandTransparencyVariations[] = {
488 {"Test friendly mode", kCCTBrandingTestFriendly,
489 std::size(kCCTBrandingTestFriendly), nullptr}};
490
Sinan Sahince2514f2022-12-01 02:51:33491const FeatureEntry::FeatureParam
492 kCCTRealTimeEngagementSignalsParamRealValues[] = {{"real_values", "true"}};
493const FeatureEntry::FeatureParam
494 kCCTRealTimeEngagementSignalsParamFakeValues[] = {{"real_values", "false"}};
495
496const FeatureEntry::FeatureVariation kCCTRealTimeEngagementSignalsVariations[] =
497 {{"Send real values", kCCTRealTimeEngagementSignalsParamRealValues,
498 std::size(kCCTRealTimeEngagementSignalsParamRealValues), nullptr},
499 {"Send fake values", kCCTRealTimeEngagementSignalsParamFakeValues,
500 std::size(kCCTRealTimeEngagementSignalsParamFakeValues), nullptr}};
501
Sinan Sahind9fa5c52023-03-02 02:57:04502const FeatureEntry::FeatureParam
Sinan Sahin1b4788fb2023-06-23 20:45:37503 kCCTRealTimeEngagementSignalsAlternativeImplParam300[] = {
504 {"time_can_update_after_end", "300"} // 300ms
Sinan Sahind9fa5c52023-03-02 02:57:04505};
506const FeatureEntry::FeatureParam
Sinan Sahin1b4788fb2023-06-23 20:45:37507 kCCTRealTimeEngagementSignalsAlternativeImplParam100[] = {
508 {"time_can_update_after_end", "100"} // 100ms
Sinan Sahind9fa5c52023-03-02 02:57:04509};
510
511const FeatureEntry::FeatureVariation
512 kCCTRealTimeEngagementSignalsAlternativeImplVariations[] = {
Sinan Sahin1b4788fb2023-06-23 20:45:37513 {"Allow 300ms for scroll updates after scroll-end",
514 kCCTRealTimeEngagementSignalsAlternativeImplParam300,
515 std::size(kCCTRealTimeEngagementSignalsAlternativeImplParam300),
516 nullptr},
Sinan Sahind9fa5c52023-03-02 02:57:04517 {"Allow 100ms for scroll updates after scroll-end",
518 kCCTRealTimeEngagementSignalsAlternativeImplParam100,
519 std::size(kCCTRealTimeEngagementSignalsAlternativeImplParam100),
Sinan Sahind9fa5c52023-03-02 02:57:04520 nullptr}};
521
asvitkinee9ed35e2015-10-14 22:33:59522const FeatureEntry::Choice kReaderModeHeuristicsChoices[] = {
vabr0215a8e2017-03-28 12:47:34523 {flags_ui::kGenericExperimentChoiceDefault, "", ""},
524 {flag_descriptions::kReaderModeHeuristicsMarkup,
525 switches::kReaderModeHeuristics,
526 switches::reader_mode_heuristics::kOGArticle},
527 {flag_descriptions::kReaderModeHeuristicsAdaboost,
528 switches::kReaderModeHeuristics,
529 switches::reader_mode_heuristics::kAdaBoost},
530 {flag_descriptions::kReaderModeHeuristicsAlwaysOn,
531 switches::kReaderModeHeuristics,
532 switches::reader_mode_heuristics::kAlwaysTrue},
533 {flag_descriptions::kReaderModeHeuristicsAlwaysOff,
534 switches::kReaderModeHeuristics, switches::reader_mode_heuristics::kNone},
wychen4b6112cc2017-07-07 18:15:11535 {flag_descriptions::kReaderModeHeuristicsAllArticles,
536 switches::kReaderModeHeuristics,
537 switches::reader_mode_heuristics::kAllArticles},
cjhopman951bb612015-04-22 01:42:38538};
Matthew Jonesd349741f2017-05-26 21:07:52539
Tommy Nyquist3c02e592018-10-18 23:36:44540const FeatureEntry::Choice kForceUpdateMenuTypeChoices[] = {
541 {flags_ui::kGenericExperimentChoiceDefault, "", ""},
542 {flag_descriptions::kUpdateMenuTypeNone, switches::kForceUpdateMenuType,
543 "none"},
544 {flag_descriptions::kUpdateMenuTypeUpdateAvailable,
545 switches::kForceUpdateMenuType, "update_available"},
546 {flag_descriptions::kUpdateMenuTypeUnsupportedOSVersion,
547 switches::kForceUpdateMenuType, "unsupported_os_version"},
548};
Tommy Nyquist5b7ac1a02022-08-16 16:56:00549
550const FeatureEntry::FeatureParam kOmahaMinSdkVersionAndroidMinSdk1[] = {
551 {"min_sdk_version", "1"}};
552const FeatureEntry::FeatureParam kOmahaMinSdkVersionAndroidMinSdk1000[] = {
553 {"min_sdk_version", "1000"}};
554const FeatureEntry::FeatureVariation kOmahaMinSdkVersionAndroidVariations[] = {
555 {flag_descriptions::kOmahaMinSdkVersionAndroidMinSdk1Description,
556 kOmahaMinSdkVersionAndroidMinSdk1,
557 std::size(kOmahaMinSdkVersionAndroidMinSdk1), nullptr},
558 {flag_descriptions::kOmahaMinSdkVersionAndroidMinSdk1000Description,
559 kOmahaMinSdkVersionAndroidMinSdk1000,
560 std::size(kOmahaMinSdkVersionAndroidMinSdk1000), nullptr},
561};
562
Xiaohan Wang064b68cd2022-01-19 19:12:28563#else // BUILDFLAG(IS_ANDROID)
Katie D1ca4328b2020-02-19 18:08:47564const FeatureEntry::FeatureParam kReaderModeOfferInSettings[] = {
565 {switches::kReaderModeDiscoverabilityParamName,
566 switches::kReaderModeOfferInSettings}};
Michael van Ouwerkerka5df1ec2018-10-11 11:57:40567
Katie D1ca4328b2020-02-19 18:08:47568const FeatureEntry::FeatureVariation kReaderModeDiscoverabilityVariations[] = {
569 {"available in settings", kReaderModeOfferInSettings,
Daniel Cheng7d9e3d52022-02-26 09:03:24570 std::size(kReaderModeOfferInSettings), nullptr}};
Xiaohan Wang064b68cd2022-01-19 19:12:28571#endif // BUILDFLAG(IS_ANDROID)
[email protected]d5874f12013-12-05 04:30:00572
Xiaohan Wang064b68cd2022-01-19 19:12:28573#if BUILDFLAG(IS_ANDROID)
bttk09c80462021-07-15 23:28:34574const FeatureEntry::FeatureParam kAdaptiveButton_AlwaysNone[] = {
575 {"mode", "always-none"}};
576const FeatureEntry::FeatureParam kAdaptiveButton_AlwaysNewTab[] = {
577 {"mode", "always-new-tab"}};
578const FeatureEntry::FeatureParam kAdaptiveButton_AlwaysShare[] = {
579 {"mode", "always-share"}};
580const FeatureEntry::FeatureParam kAdaptiveButton_AlwaysVoice[] = {
581 {"mode", "always-voice"}};
Salvador Guerreroa071de302023-03-18 00:34:27582const FeatureEntry::FeatureParam kAdaptiveButton_AlwaysTranslate[] = {
583 {"mode", "always-translate"}};
bttk8031f3fb2021-02-25 20:21:24584const FeatureEntry::FeatureVariation kAdaptiveButtonInTopToolbarVariations[] = {
bttk09c80462021-07-15 23:28:34585 {"Always None", kAdaptiveButton_AlwaysNone,
Daniel Cheng7d9e3d52022-02-26 09:03:24586 std::size(kAdaptiveButton_AlwaysNone), nullptr},
bttk09c80462021-07-15 23:28:34587 {"Always New Tab", kAdaptiveButton_AlwaysNewTab,
Daniel Cheng7d9e3d52022-02-26 09:03:24588 std::size(kAdaptiveButton_AlwaysNewTab), nullptr},
bttk09c80462021-07-15 23:28:34589 {"Always Share", kAdaptiveButton_AlwaysShare,
Daniel Cheng7d9e3d52022-02-26 09:03:24590 std::size(kAdaptiveButton_AlwaysShare), nullptr},
bttk09c80462021-07-15 23:28:34591 {"Always Voice", kAdaptiveButton_AlwaysVoice,
Daniel Cheng7d9e3d52022-02-26 09:03:24592 std::size(kAdaptiveButton_AlwaysVoice), nullptr},
Salvador Guerreroa071de302023-03-18 00:34:27593 {"Always Translate", kAdaptiveButton_AlwaysTranslate,
594 std::size(kAdaptiveButton_AlwaysTranslate), nullptr},
bttk8031f3fb2021-02-25 20:21:24595};
Shakti Sahuf17e0ed2021-06-08 02:21:19596
bttk09c80462021-07-15 23:28:34597const FeatureEntry::FeatureParam kAdaptiveButtonCustomization_NewTab[] = {
598 {"default_segment", "new-tab"},
Salvador Guerrerocd7b24bb2022-07-20 00:32:48599 {"show_ui_only_after_ready", "false"},
bttk09c80462021-07-15 23:28:34600 {"ignore_segmentation_results", "true"}};
601const FeatureEntry::FeatureParam kAdaptiveButtonCustomization_Share[] = {
602 {"default_segment", "share"},
Salvador Guerrerocd7b24bb2022-07-20 00:32:48603 {"show_ui_only_after_ready", "false"},
bttk09c80462021-07-15 23:28:34604 {"ignore_segmentation_results", "true"}};
605const FeatureEntry::FeatureParam kAdaptiveButtonCustomization_Voice[] = {
606 {"default_segment", "voice"},
Salvador Guerrerocd7b24bb2022-07-20 00:32:48607 {"show_ui_only_after_ready", "false"},
bttk09c80462021-07-15 23:28:34608 {"ignore_segmentation_results", "true"}};
Shakti Sahuf17e0ed2021-06-08 02:21:19609const FeatureEntry::FeatureVariation
610 kAdaptiveButtonInTopToolbarCustomizationVariations[] = {
bttk09c80462021-07-15 23:28:34611 {"New Tab", kAdaptiveButtonCustomization_NewTab,
Daniel Cheng7d9e3d52022-02-26 09:03:24612 std::size(kAdaptiveButtonCustomization_NewTab), nullptr},
bttk09c80462021-07-15 23:28:34613 {"Share", kAdaptiveButtonCustomization_Share,
Daniel Cheng7d9e3d52022-02-26 09:03:24614 std::size(kAdaptiveButtonCustomization_Share), nullptr},
bttk09c80462021-07-15 23:28:34615 {"Voice", kAdaptiveButtonCustomization_Voice,
Daniel Cheng7d9e3d52022-02-26 09:03:24616 std::size(kAdaptiveButtonCustomization_Voice), nullptr},
Shakti Sahuf17e0ed2021-06-08 02:21:19617};
Rong Tan3d807a17c2022-07-15 19:44:33618
Salvador Guerrero5ca5c7f2022-12-01 20:51:39619const FeatureEntry::FeatureParam kContextualPageActionsUiParams_Quiet[] = {
Salvador Guerrerocd7b24bb2022-07-20 00:32:48620 {"action_chip", "false"},
621};
Salvador Guerrero5ca5c7f2022-12-01 20:51:39622const FeatureEntry::FeatureParam kContextualPageActionsUiParams_ActionChip[] = {
623 {"action_chip", "true"},
624 {"action_chip_time_ms", "3000"},
Salvador Guerrerocd7b24bb2022-07-20 00:32:48625};
626const FeatureEntry::FeatureParam
Salvador Guerrero5ca5c7f2022-12-01 20:51:39627 kContextualPageActionsUiParams_ActionChip_6s[] = {
Salvador Guerrerocd7b24bb2022-07-20 00:32:48628 {"action_chip", "true"},
629 {"action_chip_time_ms", "6000"},
630};
631const FeatureEntry::FeatureParam
Salvador Guerrero5ca5c7f2022-12-01 20:51:39632 kContextualPageActionsUiParams_ActionChip_AltColor[] = {
Salvador Guerrerocd7b24bb2022-07-20 00:32:48633 {"action_chip", "true"},
634 {"action_chip_time_ms", "3000"},
635 {"action_chip_with_different_color", "true"},
636};
637const FeatureEntry::FeatureParam
Salvador Guerrero5ca5c7f2022-12-01 20:51:39638 kContextualPageActionsUiParams_ActionChip_AltColor_6s[] = {
Salvador Guerrerocd7b24bb2022-07-20 00:32:48639 {"action_chip", "true"},
640 {"action_chip_time_ms", "6000"},
641 {"action_chip_with_different_color", "true"},
642};
Salvador Guerrero5ca5c7f2022-12-01 20:51:39643
644const FeatureEntry::FeatureParam kContextualPageActions_DisableUi[]{
645 {"disable_ui", "true"},
646};
647const FeatureEntry::FeatureVariation kContextualPageActionsVariations[] = {
648 {"Disable UI", kContextualPageActions_DisableUi},
649};
650
Salvador Guerrerocd7b24bb2022-07-20 00:32:48651const FeatureEntry::FeatureVariation
652 kContextualPageActionPriceTrackingVariations[] = {
Salvador Guerrero5ca5c7f2022-12-01 20:51:39653 {"Quiet", kContextualPageActionsUiParams_Quiet,
654 std::size(kContextualPageActionsUiParams_Quiet), nullptr},
655 {"Action Chip", kContextualPageActionsUiParams_ActionChip,
656 std::size(kContextualPageActionsUiParams_ActionChip), nullptr},
657 {"Action Chip - 6s", kContextualPageActionsUiParams_ActionChip_6s,
658 std::size(kContextualPageActionsUiParams_ActionChip_6s), nullptr},
Salvador Guerrerocd7b24bb2022-07-20 00:32:48659 {"Action Chip - Alternative Color",
Salvador Guerrero5ca5c7f2022-12-01 20:51:39660 kContextualPageActionsUiParams_ActionChip_AltColor,
661 std::size(kContextualPageActionsUiParams_ActionChip_AltColor),
Salvador Guerrerocd7b24bb2022-07-20 00:32:48662 nullptr},
663 {"Action Chip - Alternative Color - 6s",
Salvador Guerrero5ca5c7f2022-12-01 20:51:39664 kContextualPageActionsUiParams_ActionChip_AltColor_6s,
665 std::size(kContextualPageActionsUiParams_ActionChip_AltColor_6s),
Salvador Guerrerocd7b24bb2022-07-20 00:32:48666 nullptr},
667};
668
Rong Tan3d807a17c2022-07-15 19:44:33669const FeatureEntry::FeatureParam
Salvador Guerrero5ca5c7f2022-12-01 20:51:39670 kContextualPageActionReaderMode_ActionChip_NotRateLimited[] = {
671 {"action_chip", "true"},
672 {"action_chip_time_ms", "3000"},
Salvador Guerrerode0ffc62022-11-02 17:59:51673 {"reader_mode_session_rate_limiting", "false"},
674};
Salvador Guerrerod2de3bf2023-03-09 00:42:40675const FeatureEntry::FeatureParam
676 kContextualPageActionReaderMode_ActionChip_NotRateLimited_6s[] = {
677 {"action_chip", "true"},
678 {"action_chip_time_ms", "6000"},
679 {"reader_mode_session_rate_limiting", "false"},
680};
Salvador Guerrerode0ffc62022-11-02 17:59:51681const FeatureEntry::FeatureVariation
682 kContextualPageActionReaderModeVariations[] = {
Salvador Guerrero5ca5c7f2022-12-01 20:51:39683 {"Quiet", kContextualPageActionsUiParams_Quiet,
684 std::size(kContextualPageActionsUiParams_Quiet), nullptr},
685 {"Action Chip", kContextualPageActionsUiParams_ActionChip,
686 std::size(kContextualPageActionsUiParams_ActionChip), nullptr},
687 {"Action Chip - 6s", kContextualPageActionsUiParams_ActionChip_6s,
688 std::size(kContextualPageActionsUiParams_ActionChip_6s), nullptr},
689 {"Action Chip - Alternative Color",
690 kContextualPageActionsUiParams_ActionChip_AltColor,
691 std::size(kContextualPageActionsUiParams_ActionChip_AltColor),
692 nullptr},
693 {"Action Chip - Alternative Color - 6s",
694 kContextualPageActionsUiParams_ActionChip_AltColor_6s,
695 std::size(kContextualPageActionsUiParams_ActionChip_AltColor_6s),
696 nullptr},
Salvador Guerrerod2de3bf2023-03-09 00:42:40697 {"Action Chip - Not rate limited - 3s",
Salvador Guerrero5ca5c7f2022-12-01 20:51:39698 kContextualPageActionReaderMode_ActionChip_NotRateLimited,
699 std::size(kContextualPageActionReaderMode_ActionChip_NotRateLimited),
700 nullptr},
Salvador Guerrerod2de3bf2023-03-09 00:42:40701 {"Action Chip - Not rate limited - 6s",
702 kContextualPageActionReaderMode_ActionChip_NotRateLimited_6s,
703 std::size(
704 kContextualPageActionReaderMode_ActionChip_NotRateLimited_6s),
705 nullptr},
Salvador Guerrerode0ffc62022-11-02 17:59:51706};
707
Xiaohan Wang064b68cd2022-01-19 19:12:28708#endif // BUILDFLAG(IS_ANDROID)
bttk8031f3fb2021-02-25 20:21:24709
Awad Osman0d0fa312023-02-09 19:06:40710#if !BUILDFLAG(IS_ANDROID)
711const FeatureEntry::FeatureParam kEsbIphBubbleAndCollapseSettingsEnableIph[] = {
712 {"EnableEsbIphBubble", "true"}};
713
714const FeatureEntry::FeatureParam
715 kEsbIphBubbleAndCollapseSettingsEnableCollapse[] = {
716 {"EnableEsbSettingCollapse", "true"}};
717
718const FeatureEntry::FeatureParam kEsbIphBubbleAndCollapseSettingsBothEnabled[] =
719 {{"EnableEsbIphBubble", "true"}, {"EnableEsbSettingCollapse", "true"}};
720
721const FeatureEntry::FeatureVariation
722 kEsbIphBubbleAndCollapseSettingsVariations[] = {
723 {"IPH and Settings Collapse",
724 kEsbIphBubbleAndCollapseSettingsBothEnabled,
725 std::size(kEsbIphBubbleAndCollapseSettingsBothEnabled), nullptr},
726 {"IPH Only", kEsbIphBubbleAndCollapseSettingsEnableIph,
727 std::size(kEsbIphBubbleAndCollapseSettingsEnableIph), nullptr},
728 {"Settings Collapse Only",
729 kEsbIphBubbleAndCollapseSettingsEnableCollapse,
730 std::size(kEsbIphBubbleAndCollapseSettingsEnableCollapse), nullptr}};
731#endif // !BUILDFLAG(IS_ANDROID)
732
Yuta Hijikata235fc62b2020-12-08 03:48:32733#if !BUILDFLAG(IS_CHROMEOS_ASH)
Aran Gilman5e9672bed2019-08-02 19:07:49734const FeatureEntry::FeatureParam kForceDark_SimpleHsl[] = {
735 {"inversion_method", "hsl_based"},
736 {"image_behavior", "none"},
lin6a111ed2022-06-24 14:38:42737 {"foreground_lightness_threshold", "150"},
738 {"background_lightness_threshold", "205"}};
Aran Gilman5e9672bed2019-08-02 19:07:49739
740const FeatureEntry::FeatureParam kForceDark_SimpleCielab[] = {
741 {"inversion_method", "cielab_based"},
742 {"image_behavior", "none"},
lin6a111ed2022-06-24 14:38:42743 {"foreground_lightness_threshold", "150"},
744 {"background_lightness_threshold", "205"}};
Aran Gilman5e9672bed2019-08-02 19:07:49745
Aran Gilman8b3ca41c2019-08-12 18:59:04746const FeatureEntry::FeatureParam kForceDark_SimpleRgb[] = {
747 {"inversion_method", "rgb_based"},
748 {"image_behavior", "none"},
lin6a111ed2022-06-24 14:38:42749 {"foreground_lightness_threshold", "150"},
750 {"background_lightness_threshold", "205"}};
Aran Gilman8b3ca41c2019-08-12 18:59:04751
Michael Baifee012d2021-08-11 17:13:24752// Keep in sync with the kForceDark_SelectiveImageInversion
753// in aw_feature_entries.cc if you tweak these parameters.
Aran Gilman5e9672bed2019-08-02 19:07:49754const FeatureEntry::FeatureParam kForceDark_SelectiveImageInversion[] = {
755 {"inversion_method", "cielab_based"},
756 {"image_behavior", "selective"},
lin6a111ed2022-06-24 14:38:42757 {"foreground_lightness_threshold", "150"},
758 {"background_lightness_threshold", "205"}};
Aran Gilman5e9672bed2019-08-02 19:07:49759
760const FeatureEntry::FeatureParam kForceDark_SelectiveElementInversion[] = {
761 {"inversion_method", "cielab_based"},
762 {"image_behavior", "none"},
linn463425e2021-12-23 21:18:28763 {"foreground_lightness_threshold", "150"},
Aran Gilman5e9672bed2019-08-02 19:07:49764 {"background_lightness_threshold", "205"}};
765
766const FeatureEntry::FeatureParam kForceDark_SelectiveGeneralInversion[] = {
767 {"inversion_method", "cielab_based"},
768 {"image_behavior", "selective"},
linn463425e2021-12-23 21:18:28769 {"foreground_lightness_threshold", "150"},
Aran Gilman5e9672bed2019-08-02 19:07:49770 {"background_lightness_threshold", "205"}};
771
Peter E Conna4afc552022-11-08 08:48:50772const FeatureEntry::FeatureParam kForceDark_TransparencyAndNumColors[] = {
773 {"classifier_policy", "transparency_and_num_colors"}};
774
Aran Gilman5e9672bed2019-08-02 19:07:49775const FeatureEntry::FeatureVariation kForceDarkVariations[] = {
776 {"with simple HSL-based inversion", kForceDark_SimpleHsl,
Daniel Cheng7d9e3d52022-02-26 09:03:24777 std::size(kForceDark_SimpleHsl), nullptr},
Aran Gilman5e9672bed2019-08-02 19:07:49778 {"with simple CIELAB-based inversion", kForceDark_SimpleCielab,
Daniel Cheng7d9e3d52022-02-26 09:03:24779 std::size(kForceDark_SimpleCielab), nullptr},
Aran Gilman8b3ca41c2019-08-12 18:59:04780 {"with simple RGB-based inversion", kForceDark_SimpleRgb,
Daniel Cheng7d9e3d52022-02-26 09:03:24781 std::size(kForceDark_SimpleRgb), nullptr},
Aran Gilman5e9672bed2019-08-02 19:07:49782 {"with selective image inversion", kForceDark_SelectiveImageInversion,
Daniel Cheng7d9e3d52022-02-26 09:03:24783 std::size(kForceDark_SelectiveImageInversion), nullptr},
Aran Gilman5e9672bed2019-08-02 19:07:49784 {"with selective inversion of non-image elements",
785 kForceDark_SelectiveElementInversion,
Daniel Cheng7d9e3d52022-02-26 09:03:24786 std::size(kForceDark_SelectiveElementInversion), nullptr},
Aran Gilman5e9672bed2019-08-02 19:07:49787 {"with selective inversion of everything",
788 kForceDark_SelectiveGeneralInversion,
Peter E Conna4afc552022-11-08 08:48:50789 std::size(kForceDark_SelectiveGeneralInversion), nullptr},
790 {"with selective image inversion based on transparency and number of "
791 "colors",
792 kForceDark_TransparencyAndNumColors,
793 std::size(kForceDark_TransparencyAndNumColors), nullptr}};
Xiaohan Wang064b68cd2022-01-19 19:12:28794#endif // !BUILDFLAG(IS_CHROMEOS)
Aran Gilman5e9672bed2019-08-02 19:07:49795
Patrick Nolandd50e38b2023-06-14 22:32:11796const FeatureEntry::FeatureParam kClipboardMaximumAge60Seconds[] = {
797 {"UIClipboardMaximumAge", "60"}};
798const FeatureEntry::FeatureParam kClipboardMaximumAge90Seconds[] = {
799 {"UIClipboardMaximumAge", "90"}};
800const FeatureEntry::FeatureParam kClipboardMaximumAge120Seconds[] = {
801 {"UIClipboardMaximumAge", "120"}};
802const FeatureEntry::FeatureParam kClipboardMaximumAge150Seconds[] = {
803 {"UIClipboardMaximumAge", "150"}};
804const FeatureEntry::FeatureParam kClipboardMaximumAge180Seconds[] = {
805 {"UIClipboardMaximumAge", "180"}};
806
807const FeatureEntry::FeatureVariation kClipboardMaximumAgeVariations[] = {
808 {"Enabled 60 seconds", kClipboardMaximumAge60Seconds,
809 std::size(kClipboardMaximumAge60Seconds), nullptr},
810 {"Enabled 90 seconds", kClipboardMaximumAge90Seconds,
811 std::size(kClipboardMaximumAge90Seconds), nullptr},
812 {"Enabled 120 seconds", kClipboardMaximumAge120Seconds,
813 std::size(kClipboardMaximumAge120Seconds), nullptr},
814 {"Enabled 150 seconds", kClipboardMaximumAge150Seconds,
815 std::size(kClipboardMaximumAge150Seconds), nullptr},
816 {"Enabled 180 seconds", kClipboardMaximumAge180Seconds,
817 std::size(kClipboardMaximumAge180Seconds), nullptr},
818};
819
Dominic Farolino0e1f9a1a2020-11-25 23:25:00820const FeatureEntry::FeatureParam kMBIModeLegacy[] = {{"mode", "legacy"}};
821const FeatureEntry::FeatureParam kMBIModeEnabledPerRenderProcessHost[] = {
822 {"mode", "per_render_process_host"}};
823const FeatureEntry::FeatureParam kMBIModeEnabledPerSiteInstance[] = {
824 {"mode", "per_site_instance"}};
825
826const FeatureEntry::FeatureVariation kMBIModeVariations[] = {
Daniel Cheng7d9e3d52022-02-26 09:03:24827 {"legacy mode", kMBIModeLegacy, std::size(kMBIModeLegacy), nullptr},
Dominic Farolino0e1f9a1a2020-11-25 23:25:00828 {"per render process host", kMBIModeEnabledPerRenderProcessHost,
Daniel Cheng7d9e3d52022-02-26 09:03:24829 std::size(kMBIModeEnabledPerRenderProcessHost), nullptr},
Dominic Farolino0e1f9a1a2020-11-25 23:25:00830 {"per site instance", kMBIModeEnabledPerSiteInstance,
Daniel Cheng7d9e3d52022-02-26 09:03:24831 std::size(kMBIModeEnabledPerSiteInstance), nullptr}};
Dominic Farolino0e1f9a1a2020-11-25 23:25:00832
Lingqi Chif3f3fe72022-07-21 12:02:50833const FeatureEntry::FeatureParam kSearchSuggestionPrerenderUsingPrefetch[] = {
834 {"implementation_type", "use_prefetch"}};
835const FeatureEntry::FeatureParam kSearchSuggestionPrerenderIgnoringPrefetch[] =
836 {{"implementation_type", "ignore_prefetch"}};
837
838const FeatureEntry::FeatureVariation
Felipe Andrade579b7fd2022-10-14 15:17:28839 kSearchSuggestionPrerenderTypeVariations[] = {
Lingqi Chif3f3fe72022-07-21 12:02:50840 {"use prefetched request", kSearchSuggestionPrerenderUsingPrefetch,
841 std::size(kSearchSuggestionPrerenderUsingPrefetch), nullptr},
842 {"ignore prefetched request",
843 kSearchSuggestionPrerenderIgnoringPrefetch,
844 std::size(kSearchSuggestionPrerenderIgnoringPrefetch), nullptr}};
845
Ryan Sturm0c7162f72022-09-16 15:13:41846const FeatureEntry::FeatureParam kSearchPrefetchWithoutHoldback[] = {
847 {"prefetch_holdback", "false"}};
848const FeatureEntry::FeatureParam kSearchPrefetchWithHoldback[] = {
849 {"prefetch_holdback", "true"}};
850
851const FeatureEntry::FeatureVariation
852 kSearchPrefetchServicePrefetchingVariations[] = {
853 {"without holdback", kSearchPrefetchWithoutHoldback,
854 std::size(kSearchPrefetchWithoutHoldback), nullptr},
855 {"with holdback", kSearchPrefetchWithHoldback,
856 std::size(kSearchPrefetchWithHoldback), nullptr}};
857
Glen Robertson371a2df2023-02-15 04:18:19858#if BUILDFLAG(IS_CHROMEOS)
859// Note these strings must match the `kUserGroupParam` definition in
860// web_applications/preinstalled_web_app_window_experiment.cc.
861const FeatureEntry::FeatureParam kPreinstalledWebAppWindowExperimentControl[] =
862 {{"user_group", "control"}};
863const FeatureEntry::FeatureParam kPreinstalledWebAppWindowExperimentWindow[] = {
864 {"user_group", "window"}};
865const FeatureEntry::FeatureParam kPreinstalledWebAppWindowExperimentTab[] = {
866 {"user_group", "tab"}};
867const FeatureEntry::FeatureVariation
868 kPreinstalledWebAppWindowExperimentVariations[] = {
869 {"control", kPreinstalledWebAppWindowExperimentControl,
870 std::size(kPreinstalledWebAppWindowExperimentControl), nullptr},
871 {"window", kPreinstalledWebAppWindowExperimentWindow,
872 std::size(kPreinstalledWebAppWindowExperimentWindow), nullptr},
873 {"tab", kPreinstalledWebAppWindowExperimentTab,
874 std::size(kPreinstalledWebAppWindowExperimentTab), nullptr}};
875#endif // BUILDFLAG(IS_CHROMEOS)
876
Xiaohan Wang064b68cd2022-01-19 19:12:28877#if BUILDFLAG(IS_ANDROID)
Mei Liangf169f082020-02-05 04:41:31878const FeatureEntry::FeatureParam kCloseTabSuggestionsStale_Immediate[] = {
Mei Liangfad181e2020-06-08 22:37:23879 {"baseline_tab_suggestions", "true"},
880 {"baseline_close_tab_suggestions", "true"}};
David Maunderc1dfc022019-08-27 18:00:37881const FeatureEntry::FeatureParam kCloseTabSuggestionsStale_4Hours[] = {
882 {"close_tab_suggestions_stale_time_ms", "14400000"}};
883const FeatureEntry::FeatureParam kCloseTabSuggestionsStale_8Hours[] = {
884 {"close_tab_suggestions_stale_time_ms", "28800000"}};
885const FeatureEntry::FeatureParam kCloseTabSuggestionsStale_7Days[] = {
886 {"close_tab_suggestions_stale_time_ms", "604800000"}};
David Maunder6ad59a02020-02-10 23:38:49887const FeatureEntry::FeatureParam kCloseTabSuggestionsTimeSiteEngagement[] = {
888 {"close_tab_min_num_tabs", "5"},
889 {"close_tab_features_time_last_used_enabled", "true"},
890 {"close_tab_features_time_last_used_transform", "MEAN_VARIANCE"},
891 {"close_tab_features_time_last_used_threshold", "0.5"},
892 {"close_tab_features_site_engagement_enabled", "true"},
893 {"close_tab_features_site_engagement_threshold", "90.0"},
894};
Mei Liangfad181e2020-06-08 22:37:23895const FeatureEntry::FeatureParam kGroupAndCloseTabSuggestions_Immediate[] = {
896 {"baseline_tab_suggestions", "true"},
897 {"baseline_group_tab_suggestions", "true"},
898 {"baseline_close_tab_suggestions", "true"}};
David Maunder6ad59a02020-02-10 23:38:49899
David Maunderc1dfc022019-08-27 18:00:37900const FeatureEntry::FeatureVariation kCloseTabSuggestionsStaleVariations[] = {
Mei Liangfad181e2020-06-08 22:37:23901 {"Close Immediate", kCloseTabSuggestionsStale_Immediate,
Daniel Cheng7d9e3d52022-02-26 09:03:24902 std::size(kCloseTabSuggestionsStale_Immediate), nullptr},
Mei Liangfad181e2020-06-08 22:37:23903 {"Group+Close Immediate", kGroupAndCloseTabSuggestions_Immediate,
Daniel Cheng7d9e3d52022-02-26 09:03:24904 std::size(kGroupAndCloseTabSuggestions_Immediate), nullptr},
David Maunderc1dfc022019-08-27 18:00:37905 {"4 hours", kCloseTabSuggestionsStale_4Hours,
Daniel Cheng7d9e3d52022-02-26 09:03:24906 std::size(kCloseTabSuggestionsStale_4Hours), nullptr},
David Maunderc1dfc022019-08-27 18:00:37907 {"8 hours", kCloseTabSuggestionsStale_8Hours,
Daniel Cheng7d9e3d52022-02-26 09:03:24908 std::size(kCloseTabSuggestionsStale_8Hours), nullptr},
David Maunderc1dfc022019-08-27 18:00:37909 {"7 days", kCloseTabSuggestionsStale_7Days,
Daniel Cheng7d9e3d52022-02-26 09:03:24910 std::size(kCloseTabSuggestionsStale_7Days), nullptr},
David Maunder6ad59a02020-02-10 23:38:49911 {"Time & Site Engagement", kCloseTabSuggestionsTimeSiteEngagement,
Daniel Cheng7d9e3d52022-02-26 09:03:24912 std::size(kCloseTabSuggestionsTimeSiteEngagement), nullptr},
David Maunderc1dfc022019-08-27 18:00:37913};
Sebastien9f7d94c2021-06-14 22:41:04914
David Maunder19af778b2022-08-17 15:10:42915const FeatureEntry::FeatureParam kCriticalPersistedTabDataSaveAndRestore[] = {
David Maundera4fa45e432022-08-25 17:06:49916 {"critical_persisted_tab_data_save_only", "false"},
917 {"delay_saves_until_deferred_startup", "false"}};
David Maunder19af778b2022-08-17 15:10:42918const FeatureEntry::FeatureParam kCriticalPersistedTabDataSaveOnly[] = {
David Maundera4fa45e432022-08-25 17:06:49919 {"critical_persisted_tab_data_save_only", "true"},
920 {"delay_saves_until_deferred_startup", "false"}};
921const FeatureEntry::FeatureParam kDelaySavesUntilDeferredStartup[] = {
922 {"critical_persisted_tab_data_save_only", "false"},
923 {"delay_saves_until_deferred_startup", "true"}};
David Maunder19af778b2022-08-17 15:10:42924
925const FeatureEntry::FeatureVariation kCriticalPersistedTabDataVariations[] = {
926 {"Save and Restore", kCriticalPersistedTabDataSaveAndRestore,
927 std::size(kCriticalPersistedTabDataSaveAndRestore), nullptr},
928 {"Save Only", kCriticalPersistedTabDataSaveOnly,
David Maundera4fa45e432022-08-25 17:06:49929 std::size(kCriticalPersistedTabDataSaveOnly), nullptr},
930 {"Delay saves until DeferredStartup", kDelaySavesUntilDeferredStartup,
931 std::size(kDelaySavesUntilDeferredStartup), nullptr}};
David Maunder19af778b2022-08-17 15:10:42932
Min Qindb789462021-08-26 04:00:11933const FeatureEntry::FeatureParam kShowSingleRowMVTiles[] = {
934 {"most_visited_max_rows_normal_screen", "1"},
935 {"most_visited_max_rows_small_screen", "1"},
936 {"small_screen_height_threshold_dp", "700"}};
937const FeatureEntry::FeatureParam kShowTwoRowsMVTiles[] = {
938 {"most_visited_max_rows_normal_screen", "2"},
939 {"most_visited_max_rows_small_screen", "2"},
940 {"small_screen_height_threshold_dp", "700"}};
941const FeatureEntry::FeatureVariation kQueryTilesVariations[] = {
942 {"(show single row of MV tiles)", kShowSingleRowMVTiles,
Daniel Cheng7d9e3d52022-02-26 09:03:24943 std::size(kShowSingleRowMVTiles), nullptr},
Min Qindb789462021-08-26 04:00:11944 {"(show two rows of MV tiles)", kShowTwoRowsMVTiles,
Daniel Cheng7d9e3d52022-02-26 09:03:24945 std::size(kShowTwoRowsMVTiles), nullptr}};
Tanmoy Mollik3256aec2022-08-17 21:45:23946
947const FeatureEntry::FeatureParam kTangibleSyncGroupA[] = {{"group_id", "1"}};
948const FeatureEntry::FeatureParam kTangibleSyncGroupB[] = {{"group_id", "2"}};
949const FeatureEntry::FeatureParam kTangibleSyncGroupC[] = {{"group_id", "3"}};
Jens Muellera50b40b2023-02-20 11:30:21950const FeatureEntry::FeatureParam kTangibleSyncGroupD[] = {{"group_id", "4"}};
951const FeatureEntry::FeatureParam kTangibleSyncGroupE[] = {{"group_id", "5"}};
952const FeatureEntry::FeatureParam kTangibleSyncGroupF[] = {{"group_id", "6"}};
Tanmoy Mollik3256aec2022-08-17 21:45:23953const FeatureEntry::FeatureVariation kTangibleSyncVariations[] = {
Jens Muellera50b40b2023-02-20 11:30:21954 {"(pick up where you left off)", kTangibleSyncGroupA,
Tanmoy Mollik3256aec2022-08-17 21:45:23955 std::size(kTangibleSyncGroupA), nullptr},
Jens Muellera50b40b2023-02-20 11:30:21956 {"(browse across devices)", kTangibleSyncGroupB,
957 std::size(kTangibleSyncGroupB), nullptr},
958 {"(save time and type less)", kTangibleSyncGroupC,
959 std::size(kTangibleSyncGroupC), nullptr},
960 {"(get better suggestions)", kTangibleSyncGroupD,
961 std::size(kTangibleSyncGroupD), nullptr},
962 {"(sync your tabs and history)", kTangibleSyncGroupE,
963 std::size(kTangibleSyncGroupE), nullptr},
964 {"(Turn on sync?)", kTangibleSyncGroupF, std::size(kTangibleSyncGroupF),
965 nullptr}};
Xiaohan Wang064b68cd2022-01-19 19:12:28966#endif // BUILDFLAG(IS_ANDROID)
David Maunderc1dfc022019-08-27 18:00:37967
asvitkinee9ed35e2015-10-14 22:33:59968const FeatureEntry::Choice kEnableGpuRasterizationChoices[] = {
vabr0215a8e2017-03-28 12:47:34969 {flags_ui::kGenericExperimentChoiceDefault, "", ""},
970 {flags_ui::kGenericExperimentChoiceEnabled,
971 switches::kEnableGpuRasterization, ""},
972 {flags_ui::kGenericExperimentChoiceDisabled,
973 switches::kDisableGpuRasterization, ""},
[email protected]a23530d2014-03-11 06:04:14974};
975
Peter Kastingd77428352018-10-26 15:20:25976const FeatureEntry::Choice kTopChromeTouchUiChoices[] = {
vabr0215a8e2017-03-28 12:47:34977 {flags_ui::kGenericExperimentChoiceDefault, "", ""},
Peter Kastingd77428352018-10-26 15:20:25978 {flags_ui::kGenericExperimentChoiceAutomatic, switches::kTopChromeTouchUi,
979 switches::kTopChromeTouchUiAuto},
980 {flags_ui::kGenericExperimentChoiceDisabled, switches::kTopChromeTouchUi,
981 switches::kTopChromeTouchUiDisabled},
982 {flags_ui::kGenericExperimentChoiceEnabled, switches::kTopChromeTouchUi,
983 switches::kTopChromeTouchUiEnabled}};
bruthig0d89d6a2015-06-26 19:37:49984
Yuta Hijikata235fc62b2020-12-08 03:48:32985#if BUILDFLAG(IS_CHROMEOS_ASH)
Zoraiz Naeem056fe4b2023-05-23 00:35:38986
987const FeatureEntry::FeatureParam kRoundedWindowRadius8 = {
988 chromeos::features::kRoundedWindowsRadius, "8"};
989
990const FeatureEntry::FeatureParam kRoundedWindowRadius10 = {
991 chromeos::features::kRoundedWindowsRadius, "10"};
992
993const FeatureEntry::FeatureParam kRoundedWindowRadius12 = {
994 chromeos::features::kRoundedWindowsRadius, "12"};
995
996const FeatureEntry::FeatureParam kRoundedWindowRadius14 = {
997 chromeos::features::kRoundedWindowsRadius, "14"};
998
999const FeatureEntry::FeatureParam kRoundedWindowRadius16 = {
1000 chromeos::features::kRoundedWindowsRadius, "16"};
1001
1002const FeatureEntry::FeatureParam kRoundedWindowRadius18 = {
1003 chromeos::features::kRoundedWindowsRadius, "18"};
1004
1005const FeatureEntry::FeatureVariation kRoundedWindowsRadiusVariation[] = {
1006 {"8", &kRoundedWindowRadius8, 1, nullptr},
1007 {"10", &kRoundedWindowRadius10, 1, nullptr},
1008 {"12", &kRoundedWindowRadius12, 1, nullptr},
1009 {"14", &kRoundedWindowRadius14, 1, nullptr},
1010 {"16", &kRoundedWindowRadius16, 1, nullptr},
1011 {"18", &kRoundedWindowRadius18, 1, nullptr},
1012};
1013
Erik Chen366873d62022-03-08 23:11:381014const FeatureEntry::Choice kUXStudy1Choices[] = {
1015 {flags_ui::kGenericExperimentChoiceDefault, "", ""},
1016 {memory::kUXStudy1A, memory::kUXStudy1Switch, memory::kUXStudy1A},
1017 {memory::kUXStudy1B, memory::kUXStudy1Switch, memory::kUXStudy1B},
1018 {memory::kUXStudy1C, memory::kUXStudy1Switch, memory::kUXStudy1C},
1019 {memory::kUXStudy1D, memory::kUXStudy1Switch, memory::kUXStudy1D},
1020};
1021
Brian Geffon1c24556a2023-06-12 17:10:441022const FeatureEntry::FeatureParam kHibernate6 = {"HibernateAfterTimeHours", "6"};
1023const FeatureEntry::FeatureParam kHibernate8 = {"HibernateAfterTimeHours", "8"};
1024const FeatureEntry::FeatureParam kHibernate12 = {"HibernateAfterTimeHours",
1025 "12"};
1026const FeatureEntry::FeatureParam kHibernate24 = {"HibernateAfterTimeHours",
1027 "24"};
1028
1029const FeatureEntry::FeatureVariation kHibernateFeatureVariations[] = {
1030 {"Hibernate after 6 hours", &kHibernate6, 1, nullptr},
1031 {"Hibernate after 8 hours", &kHibernate8, 1, nullptr},
1032 {"Hibernate after 12 hours", &kHibernate12, 1, nullptr},
1033 {"Hibernate after 24 hours", &kHibernate24, 1, nullptr},
1034};
1035
Peter Boström6324b792022-09-28 23:15:561036const char kPreferDcheckInternalName[] = "prefer-dcheck";
1037
Erik Chend7082ec2021-06-25 01:04:121038const char kLacrosAvailabilityIgnoreInternalName[] =
1039 "lacros-availability-ignore";
Hidehiko Abea7217c92022-02-01 05:54:571040const char kLacrosOnlyInternalName[] = "lacros-only";
Hidehiko Abe9f190d12021-03-18 12:55:201041const char kLacrosPrimaryInternalName[] = "lacros-primary";
James Cookc813eb52020-05-08 18:03:531042const char kLacrosSupportInternalName[] = "lacros-support";
Erik Chen601a5d62020-12-07 20:05:121043const char kLacrosStabilityInternalName[] = "lacros-stability";
Erik Chen5d686e2a02022-11-01 23:11:311044const char kLacrosWaylandLoggingInternalName[] = "lacros-wayland-logging";
Maggie Cai6dd6b552021-04-27 08:40:321045const char kWebAppsCrosapiInternalName[] = "web-apps-crosapi";
Youkichi Hosoi47685462022-10-06 01:51:391046const char kArcEnableVirtioBlkForDataInternalName[] =
1047 "arc-enable-virtio-blk-for-data";
Erik Chen601a5d62020-12-07 20:05:121048
Peter Boström6324b792022-09-28 23:15:561049const FeatureEntry::Choice kPreferDcheckChoices[] = {
1050 {flags_ui::kGenericExperimentChoiceDefault, "", ""},
1051 {component_updater::kPreferDcheckOptIn,
1052 component_updater::kPreferDcheckSwitch,
1053 component_updater::kPreferDcheckOptIn},
1054 {component_updater::kPreferDcheckOptOut,
1055 component_updater::kPreferDcheckSwitch,
1056 component_updater::kPreferDcheckOptOut},
1057};
1058
Erik Chen601a5d62020-12-07 20:05:121059const FeatureEntry::Choice kLacrosStabilityChoices[] = {
1060 {flags_ui::kGenericExperimentChoiceDefault, "", ""},
Roman Arorac36aeeb92021-10-04 20:35:581061 {crosapi::browser_util::kLacrosStabilityChannelCanary,
Erik Chen71bc6ad2021-05-11 18:06:401062 crosapi::browser_util::kLacrosStabilitySwitch,
Roman Arorac36aeeb92021-10-04 20:35:581063 crosapi::browser_util::kLacrosStabilityChannelCanary},
1064 {crosapi::browser_util::kLacrosStabilityChannelDev,
Erik Chen601a5d62020-12-07 20:05:121065 crosapi::browser_util::kLacrosStabilitySwitch,
Roman Arorac36aeeb92021-10-04 20:35:581066 crosapi::browser_util::kLacrosStabilityChannelDev},
1067 {crosapi::browser_util::kLacrosStabilityChannelBeta,
Erik Chen601a5d62020-12-07 20:05:121068 crosapi::browser_util::kLacrosStabilitySwitch,
Roman Arorac36aeeb92021-10-04 20:35:581069 crosapi::browser_util::kLacrosStabilityChannelBeta},
1070 {crosapi::browser_util::kLacrosStabilityChannelStable,
1071 crosapi::browser_util::kLacrosStabilitySwitch,
1072 crosapi::browser_util::kLacrosStabilityChannelStable},
Erik Chen601a5d62020-12-07 20:05:121073};
James Cookc813eb52020-05-08 18:03:531074
Jae Hoon Kim94e1cfd2021-05-19 20:52:521075const char kLacrosSelectionInternalName[] = "lacros-selection";
Yilkal2bc65312023-02-23 21:27:121076const char kProjectorServerSideSpeechRecognition[] =
1077 "enable-projector-server-side-speech-recognition";
Jae Hoon Kim94e1cfd2021-05-19 20:52:521078
1079const FeatureEntry::Choice kLacrosSelectionChoices[] = {
1080 {flags_ui::kGenericExperimentChoiceDefault, "", ""},
1081 {flag_descriptions::kLacrosSelectionStatefulDescription,
1082 crosapi::browser_util::kLacrosSelectionSwitch,
1083 crosapi::browser_util::kLacrosSelectionStateful},
1084 {flag_descriptions::kLacrosSelectionRootfsDescription,
1085 crosapi::browser_util::kLacrosSelectionSwitch,
1086 crosapi::browser_util::kLacrosSelectionRootfs},
1087};
1088
Artem Sumaneev1f3555a2023-01-30 12:48:271089const char kLacrosSelectionPolicyIgnoreInternalName[] =
1090 "lacros-selection-ignore";
1091
Hidehiko Abeded6e5b2022-01-24 17:00:041092const FeatureEntry::Choice kLacrosAvailabilityPolicyChoices[] = {
Hidehiko Abe5713de82022-01-28 16:29:451093 {flags_ui::kGenericExperimentChoiceDefault, "", ""},
Hidehiko Abeded6e5b2022-01-24 17:00:041094 {crosapi::browser_util::kLacrosAvailabilityPolicyUserChoice,
1095 crosapi::browser_util::kLacrosAvailabilityPolicySwitch,
1096 crosapi::browser_util::kLacrosAvailabilityPolicyUserChoice},
1097 {crosapi::browser_util::kLacrosAvailabilityPolicyLacrosDisabled,
1098 crosapi::browser_util::kLacrosAvailabilityPolicySwitch,
1099 crosapi::browser_util::kLacrosAvailabilityPolicyLacrosDisabled},
1100 {crosapi::browser_util::kLacrosAvailabilityPolicySideBySide,
1101 crosapi::browser_util::kLacrosAvailabilityPolicySwitch,
1102 crosapi::browser_util::kLacrosAvailabilityPolicySideBySide},
1103 {crosapi::browser_util::kLacrosAvailabilityPolicyLacrosPrimary,
1104 crosapi::browser_util::kLacrosAvailabilityPolicySwitch,
1105 crosapi::browser_util::kLacrosAvailabilityPolicyLacrosPrimary},
1106 {crosapi::browser_util::kLacrosAvailabilityPolicyLacrosOnly,
1107 crosapi::browser_util::kLacrosAvailabilityPolicySwitch,
1108 crosapi::browser_util::kLacrosAvailabilityPolicyLacrosOnly},
1109};
1110
Victor-Gabriel Savu6b0d97c2022-12-09 12:22:431111const FeatureEntry::Choice kLacrosDataBackwardMigrationModePolicyChoices[] = {
1112 {flags_ui::kGenericExperimentChoiceDefault, "", ""},
1113 {crosapi::browser_util::kLacrosDataBackwardMigrationModePolicyNone,
1114 crosapi::browser_util::kLacrosDataBackwardMigrationModePolicySwitch,
1115 crosapi::browser_util::kLacrosDataBackwardMigrationModePolicyNone},
1116 {crosapi::browser_util::kLacrosDataBackwardMigrationModePolicyKeepNone,
1117 crosapi::browser_util::kLacrosDataBackwardMigrationModePolicySwitch,
1118 crosapi::browser_util::kLacrosDataBackwardMigrationModePolicyKeepNone},
1119 {crosapi::browser_util::kLacrosDataBackwardMigrationModePolicyKeepSafeData,
1120 crosapi::browser_util::kLacrosDataBackwardMigrationModePolicySwitch,
1121 crosapi::browser_util::kLacrosDataBackwardMigrationModePolicyKeepSafeData},
1122 {crosapi::browser_util::kLacrosDataBackwardMigrationModePolicyKeepAll,
1123 crosapi::browser_util::kLacrosDataBackwardMigrationModePolicySwitch,
1124 crosapi::browser_util::kLacrosDataBackwardMigrationModePolicyKeepAll},
1125};
1126
Yuta Hijikata235fc62b2020-12-08 03:48:321127#endif // BUILDFLAG(IS_CHROMEOS_ASH)
yoshikie76455b32015-07-22 10:31:011128
mgiuca49ae7c72015-12-04 04:36:481129const FeatureEntry::Choice kForceUIDirectionChoices[] = {
vabr0215a8e2017-03-28 12:47:341130 {flags_ui::kGenericExperimentChoiceDefault, "", ""},
krb6822b602017-05-02 14:53:211131 {flag_descriptions::kForceDirectionLtr, switches::kForceUIDirection,
1132 switches::kForceDirectionLTR},
1133 {flag_descriptions::kForceDirectionRtl, switches::kForceUIDirection,
1134 switches::kForceDirectionRTL},
1135};
1136
1137const FeatureEntry::Choice kForceTextDirectionChoices[] = {
1138 {flags_ui::kGenericExperimentChoiceDefault, "", ""},
1139 {flag_descriptions::kForceDirectionLtr, switches::kForceTextDirection,
1140 switches::kForceDirectionLTR},
1141 {flag_descriptions::kForceDirectionRtl, switches::kForceTextDirection,
1142 switches::kForceDirectionRTL},
mgiuca49ae7c72015-12-04 04:36:481143};
1144
Louise Brett240a9a92021-02-04 00:14:381145#if BUILDFLAG(IS_CHROMEOS_ASH)
Mattias Nissler6bb633f2019-02-13 23:41:461146const FeatureEntry::Choice kSchedulerConfigurationChoices[] = {
1147 {flags_ui::kGenericExperimentChoiceDefault, "", ""},
1148 {flag_descriptions::kSchedulerConfigurationConservative,
1149 switches::kSchedulerConfiguration,
1150 switches::kSchedulerConfigurationConservative},
1151 {flag_descriptions::kSchedulerConfigurationPerformance,
1152 switches::kSchedulerConfiguration,
1153 switches::kSchedulerConfigurationPerformance},
1154};
Yuta Hijikata235fc62b2020-12-08 03:48:321155#endif // BUILDFLAG(IS_CHROMEOS_ASH)
sammiequond5837762017-03-16 21:14:591156
Yulun Wu1cd0faa2022-03-03 06:59:211157#if BUILDFLAG(IS_CHROMEOS_ASH)
1158const FeatureEntry::FeatureParam kDynamicSearchUpdateAnimationDuration_50[] = {
1159 {"search_result_translation_duration", "50"}};
1160const FeatureEntry::FeatureParam kDynamicSearchUpdateAnimationDuration_100[] = {
1161 {"search_result_translation_duration", "100"}};
1162const FeatureEntry::FeatureParam kDynamicSearchUpdateAnimationDuration_150[] = {
1163 {"search_result_translation_duration", "150"}};
1164
1165const FeatureEntry::FeatureVariation kDynamicSearchUpdateAnimationVariations[] =
1166 {{"50ms", kDynamicSearchUpdateAnimationDuration_50,
1167 std::size(kDynamicSearchUpdateAnimationDuration_50), nullptr},
1168 {"100ms", kDynamicSearchUpdateAnimationDuration_100,
1169 std::size(kDynamicSearchUpdateAnimationDuration_100), nullptr},
1170 {"150ms", kDynamicSearchUpdateAnimationDuration_150,
1171 std::size(kDynamicSearchUpdateAnimationDuration_150), nullptr}};
1172#endif // BUILDFLAG(IS_CHROMEOS_ASH)
1173
Fabian Sommer0d6568b2022-01-05 16:58:341174#if BUILDFLAG(ENABLE_NACL)
1175// Note: This needs to be kept in sync with parsing in
1176// content/common/zygote/zygote_communication_linux.cc
1177const FeatureEntry::Choice kVerboseLoggingInNaclChoices[] = {
1178 {flag_descriptions::kVerboseLoggingInNaclChoiceDefault, "", ""},
1179 {flag_descriptions::kVerboseLoggingInNaclChoiceLow,
1180 switches::kVerboseLoggingInNacl, switches::kVerboseLoggingInNaclChoiceLow},
1181 {flag_descriptions::kVerboseLoggingInNaclChoiceMedium,
1182 switches::kVerboseLoggingInNacl,
1183 switches::kVerboseLoggingInNaclChoiceMedium},
1184 {flag_descriptions::kVerboseLoggingInNaclChoiceHigh,
1185 switches::kVerboseLoggingInNacl,
1186 switches::kVerboseLoggingInNaclChoiceHigh},
1187 {flag_descriptions::kVerboseLoggingInNaclChoiceHighest,
1188 switches::kVerboseLoggingInNacl,
1189 switches::kVerboseLoggingInNaclChoiceHighest},
1190 {flag_descriptions::kVerboseLoggingInNaclChoiceDisabled,
1191 switches::kVerboseLoggingInNacl,
1192 switches::kVerboseLoggingInNaclChoiceDisabled},
1193};
1194#endif // ENABLE_NACL
1195
Lukasz Anforowicz738a88d2018-11-05 19:19:341196const FeatureEntry::Choice kSiteIsolationOptOutChoices[] = {
1197 {flag_descriptions::kSiteIsolationOptOutChoiceDefault, "", ""},
1198 {flag_descriptions::kSiteIsolationOptOutChoiceOptOut,
1199 switches::kDisableSiteIsolation, ""},
Nick Carter855bc492018-03-10 00:44:571200};
1201
Christopher Cameronceb8727d2017-09-07 23:53:161202const FeatureEntry::Choice kForceColorProfileChoices[] = {
1203 {flags_ui::kGenericExperimentChoiceDefault, "", ""},
Mason Freedc71f15a2018-09-10 16:53:321204 {flag_descriptions::kForceColorProfileSRGB,
1205 switches::kForceDisplayColorProfile, "srgb"},
1206 {flag_descriptions::kForceColorProfileP3,
1207 switches::kForceDisplayColorProfile, "display-p3-d65"},
Christopher Cameronb15ffe62022-11-15 10:25:311208 {flag_descriptions::kForceColorProfileRec2020,
1209 switches::kForceDisplayColorProfile, "rec2020"},
Christopher Cameronceb8727d2017-09-07 23:53:161210 {flag_descriptions::kForceColorProfileColorSpin,
Mason Freedc71f15a2018-09-10 16:53:321211 switches::kForceDisplayColorProfile, "color-spin-gamma24"},
Sunny Sachanandani71e474a2019-06-11 02:32:031212 {flag_descriptions::kForceColorProfileSCRGBLinear,
Mason Freedc71f15a2018-09-10 16:53:321213 switches::kForceDisplayColorProfile, "scrgb-linear"},
Sunny Sachanandani71e474a2019-06-11 02:32:031214 {flag_descriptions::kForceColorProfileHDR10,
1215 switches::kForceDisplayColorProfile, "hdr10"},
Christopher Cameronceb8727d2017-09-07 23:53:161216};
1217
Alexei Filippov522a5222019-03-29 03:33:181218const FeatureEntry::Choice kMemlogModeChoices[] = {
erikchen14046432017-08-17 19:55:591219 {flags_ui::kGenericExperimentChoiceDisabled, "", ""},
Alexei Filippov522a5222019-03-29 03:33:181220 {flag_descriptions::kMemlogModeMinimal, heap_profiling::kMemlogMode,
1221 heap_profiling::kMemlogModeMinimal},
1222 {flag_descriptions::kMemlogModeAll, heap_profiling::kMemlogMode,
1223 heap_profiling::kMemlogModeAll},
1224 {flag_descriptions::kMemlogModeBrowser, heap_profiling::kMemlogMode,
1225 heap_profiling::kMemlogModeBrowser},
1226 {flag_descriptions::kMemlogModeGpu, heap_profiling::kMemlogMode,
1227 heap_profiling::kMemlogModeGpu},
1228 {flag_descriptions::kMemlogModeAllRenderers, heap_profiling::kMemlogMode,
1229 heap_profiling::kMemlogModeAllRenderers},
1230 {flag_descriptions::kMemlogModeRendererSampling,
1231 heap_profiling::kMemlogMode, heap_profiling::kMemlogModeRendererSampling},
erikchen0a5dd692017-12-12 00:53:101232};
erikchen14046432017-08-17 19:55:591233
Alexei Filippov522a5222019-03-29 03:33:181234const FeatureEntry::Choice kMemlogStackModeChoices[] = {
1235 {flags_ui::kGenericExperimentChoiceDefault, "", ""},
1236 {flag_descriptions::kMemlogStackModeNative,
1237 heap_profiling::kMemlogStackMode, heap_profiling::kMemlogStackModeNative},
1238 {flag_descriptions::kMemlogStackModeNativeWithThreadNames,
erikchen34810df02018-04-05 21:40:381239 heap_profiling::kMemlogStackMode,
1240 heap_profiling::kMemlogStackModeNativeWithThreadNames},
Erik Chen3303fd0232018-01-11 20:29:051241};
1242
Alexei Filippov522a5222019-03-29 03:33:181243const FeatureEntry::Choice kMemlogSamplingRateChoices[] = {
1244 {flags_ui::kGenericExperimentChoiceDefault, "", ""},
1245 {flag_descriptions::kMemlogSamplingRate10KB,
1246 heap_profiling::kMemlogSamplingRate,
1247 heap_profiling::kMemlogSamplingRate10KB},
1248 {flag_descriptions::kMemlogSamplingRate50KB,
1249 heap_profiling::kMemlogSamplingRate,
1250 heap_profiling::kMemlogSamplingRate50KB},
1251 {flag_descriptions::kMemlogSamplingRate100KB,
1252 heap_profiling::kMemlogSamplingRate,
1253 heap_profiling::kMemlogSamplingRate100KB},
1254 {flag_descriptions::kMemlogSamplingRate500KB,
1255 heap_profiling::kMemlogSamplingRate,
1256 heap_profiling::kMemlogSamplingRate500KB},
1257 {flag_descriptions::kMemlogSamplingRate1MB,
1258 heap_profiling::kMemlogSamplingRate,
1259 heap_profiling::kMemlogSamplingRate1MB},
1260 {flag_descriptions::kMemlogSamplingRate5MB,
1261 heap_profiling::kMemlogSamplingRate,
1262 heap_profiling::kMemlogSamplingRate5MB},
1263};
Sophie Chang3a8444c2021-10-20 00:32:531264const FeatureEntry::FeatureParam kPageContentAnnotationsContentParams[] = {
1265 {"annotate_title_instead_of_page_content", "false"},
1266 {"extract_related_searches", "true"},
1267 {"max_size_for_text_dump_in_bytes", "5120"},
Sophie Chang3a8444c2021-10-20 00:32:531268 {"write_to_history_service", "true"},
1269};
1270const FeatureEntry::FeatureParam kPageContentAnnotationsTitleParams[] = {
1271 {"annotate_title_instead_of_page_content", "true"},
Sophie Chang9081cb32021-09-28 22:39:101272 {"extract_related_searches", "true"},
Sophie Chang9081cb32021-09-28 22:39:101273 {"write_to_history_service", "true"},
1274};
1275const FeatureEntry::FeatureVariation kPageContentAnnotationsVariations[] = {
Sophie Chang3a8444c2021-10-20 00:32:531276 {"All Annotations and Persistence on Content",
1277 kPageContentAnnotationsContentParams,
Daniel Cheng7d9e3d52022-02-26 09:03:241278 std::size(kPageContentAnnotationsContentParams), nullptr},
Sophie Chang3a8444c2021-10-20 00:32:531279 {"All Annotations and Persistence on Title",
1280 kPageContentAnnotationsTitleParams,
Daniel Cheng7d9e3d52022-02-26 09:03:241281 std::size(kPageContentAnnotationsTitleParams), nullptr},
Sophie Chang9081cb32021-09-28 22:39:101282};
Sophie Chang9f2f0712022-03-03 19:40:411283const FeatureEntry::FeatureParam
Sophie Chang5b5e7372022-04-06 21:23:221284 kPageEntitiesPageContentAnnotationsAllLocalesParams[] = {
1285 {"supported_locales", "*"},
1286};
1287const FeatureEntry::FeatureVariation
1288 kPageEntitiesPageContentAnnotationsVariations[] = {
1289 {"All Supported Locales",
1290 kPageEntitiesPageContentAnnotationsAllLocalesParams,
1291 std::size(kPageEntitiesPageContentAnnotationsAllLocalesParams),
1292 nullptr},
1293};
Tommy C. Lie38a0c82022-04-06 02:18:571294const FeatureEntry::FeatureParam kJourneysShowAllVisitsParams[] = {
Sophie Chang5b5e7372022-04-06 21:23:221295 {"JourneysLocaleOrLanguageAllowlist", "*"},
Tommy C. Lie38a0c82022-04-06 02:18:571296 // To show all visits, set the number of visits above the fold to a very
Sophie Chang795fa6d2023-05-22 21:14:181297 // high number.
Tommy C. Lie38a0c82022-04-06 02:18:571298 {"JourneysNumVisitsToAlwaysShowAboveTheFold", "200"},
Tommy C. Lie38a0c82022-04-06 02:18:571299};
Sophie Chang5b5e7372022-04-06 21:23:221300const FeatureEntry::FeatureParam kJourneysAllLocalesParams[] = {
1301 {"JourneysLocaleOrLanguageAllowlist", "*"},
1302};
Tommy C. Li965b47f2022-03-17 20:42:261303const FeatureEntry::FeatureVariation kJourneysVariations[] = {
Tommy C. Lie38a0c82022-04-06 02:18:571304 {"No 'Show More' - Show all visits", kJourneysShowAllVisitsParams,
1305 std::size(kJourneysShowAllVisitsParams), nullptr},
Sophie Chang5b5e7372022-04-06 21:23:221306 {"All Supported Locales", kJourneysAllLocalesParams,
1307 std::size(kJourneysAllLocalesParams), nullptr},
Tommy C. Li965b47f2022-03-17 20:42:261308};
Sophie Chang6d2f3992022-05-03 18:31:411309const FeatureEntry::FeatureParam kJourneysOmniboxActionOnAllURLsParams[] = {
Tommy C. Li721981e2022-04-07 20:16:371310 {"omnibox_action_on_urls", "true"},
Sophie Chang6d2f3992022-05-03 18:31:411311 {"omnibox_action_on_noisy_urls", "true"},
manukh09329452022-05-19 14:19:101312 {"omnibox_action_on_navigation_intents", "true"},
manukh2707ec6b2022-05-19 20:13:311313 {"omnibox_action_with_pedals", "true"},
Sophie Chang6d2f3992022-05-03 18:31:411314};
1315const FeatureEntry::FeatureParam kJourneysOmniboxActionOnNonNoisyURLsParams[] =
1316 {
1317 {"omnibox_action_on_urls", "true"},
1318 {"omnibox_action_on_noisy_urls", "false"},
manukh09329452022-05-19 14:19:101319 {"omnibox_action_on_navigation_intents", "true"},
manukh2707ec6b2022-05-19 20:13:311320 {"omnibox_action_with_pedals", "true"},
manukh09329452022-05-19 14:19:101321};
1322const FeatureEntry::FeatureParam
Tommy C. Lic6682492022-06-02 18:43:031323 kJourneysOmniboxActionOnNavigationIntentsParams[] = {
manukh09329452022-05-19 14:19:101324 {"omnibox_action_on_urls", "false"},
1325 {"omnibox_action_on_noisy_urls", "false"},
Tommy C. Lic6682492022-06-02 18:43:031326 {"omnibox_action_on_navigation_intents", "true"},
1327 {"omnibox_action_with_pedals", "false"},
manukh2707ec6b2022-05-19 20:13:311328};
1329const FeatureEntry::FeatureParam kJourneysOmniboxActionWithPedalsParams[] = {
1330 {"omnibox_action_on_urls", "false"},
1331 {"omnibox_action_on_noisy_urls", "false"},
Tommy C. Lic6682492022-06-02 18:43:031332 {"omnibox_action_on_navigation_intents", "false"},
1333 {"omnibox_action_with_pedals", "true"},
Tommy C. Li721981e2022-04-07 20:16:371334};
1335const FeatureEntry::FeatureVariation kJourneysOmniboxActionVariations[] = {
Sophie Chang6d2f3992022-05-03 18:31:411336 {"Action Chips on All URLs", kJourneysOmniboxActionOnAllURLsParams,
1337 std::size(kJourneysOmniboxActionOnAllURLsParams), nullptr},
1338 {"Action Chips on Non-Noisy URLs",
1339 kJourneysOmniboxActionOnNonNoisyURLsParams,
1340 std::size(kJourneysOmniboxActionOnNonNoisyURLsParams), nullptr},
Tommy C. Lic6682492022-06-02 18:43:031341 {"Action Chips Enabled on Navigation Intents",
1342 kJourneysOmniboxActionOnNavigationIntentsParams,
1343 std::size(kJourneysOmniboxActionOnNavigationIntentsParams), nullptr},
1344 {"Action Chips Enabled with Pedals", kJourneysOmniboxActionWithPedalsParams,
manukh2707ec6b2022-05-19 20:13:311345 std::size(kJourneysOmniboxActionWithPedalsParams), nullptr},
Tommy C. Li721981e2022-04-07 20:16:371346};
manukh5dbeb8362022-10-04 18:34:421347
1348const FeatureEntry::FeatureParam
1349 kJourneysOmniboxHistoryClusterProviderVariationsAggressive[] = {
1350 {"omnibox_history_cluster_provider_score", "1100"},
manukh5dbeb8362022-10-04 18:34:421351 {"omnibox_history_cluster_provider_navigation_intent_score_threshold",
1352 "1400"},
1353 {"omnibox_history_cluster_provider_on_navigation_intents", "false"},
1354};
1355const FeatureEntry::FeatureParam
1356 kJourneysOmniboxHistoryClusterProviderVariationsModerate[] = {
1357 {"omnibox_history_cluster_provider_score", "900"},
manukh5dbeb8362022-10-04 18:34:421358 {"omnibox_history_cluster_provider_navigation_intent_score_threshold",
1359 "1300"},
1360 {"omnibox_history_cluster_provider_on_navigation_intents", "false"},
1361};
manukh5dbeb8362022-10-04 18:34:421362const FeatureEntry::FeatureVariation
1363 kJourneysOmniboxHistoryClusterProviderVariations[] = {
1364 {"Aggressive - score 1100, shortcut boosting, nav-intent filtering "
1365 "1400",
1366 kJourneysOmniboxHistoryClusterProviderVariationsAggressive,
1367 std::size(kJourneysOmniboxHistoryClusterProviderVariationsAggressive),
1368 nullptr},
1369 {"Moderate - Score 900, shortcut boosting, nav-intent filtering 1300",
1370 kJourneysOmniboxHistoryClusterProviderVariationsModerate,
1371 std::size(kJourneysOmniboxHistoryClusterProviderVariationsModerate),
1372 nullptr},
manukh5dbeb8362022-10-04 18:34:421373};
1374
Tommy C. Li315f9ff62023-03-16 16:13:151375const FeatureEntry::FeatureVariation
1376 kImageServiceOptimizationGuideSalientImagesVariations[] = {
1377 {"High Performance Canonicalization", nullptr, 0, "3362133"},
1378};
1379
Tommy C. Li2b834a82022-08-03 19:07:461380const FeatureEntry::FeatureParam kSidePanelJourneysOpensFromOmniboxParams[] = {
1381 {"SidePanelJourneysOpensFromOmnibox", "true"},
1382};
1383const FeatureEntry::FeatureVariation
1384 kSidePanelJourneysOpensFromOmniboxVariations[] = {
1385 {"Omnibox opens Side Panel Journeys",
1386 kSidePanelJourneysOpensFromOmniboxParams,
1387 std::size(kSidePanelJourneysOpensFromOmniboxParams), nullptr},
1388};
Sophie Chang0abf0732023-03-23 18:30:451389const FeatureEntry::FeatureParam kJourneysAllVisitsNoPairwiseMergeParams[] = {
Sophie Chang0abf0732023-03-23 18:30:451390 {"use_pairwise_merge", "false"},
1391 {"search_visits_only", "false"},
1392};
1393const FeatureEntry::FeatureParam kJourneysAllVisitsWithPairwiseMergeParams[] = {
Sophie Chang0abf0732023-03-23 18:30:451394 {"use_pairwise_merge", "true"},
1395 {"search_visits_only", "false"},
1396};
1397const FeatureEntry::FeatureParam kJourneysSearchVisitsNoPairwiseMergeParams[] =
1398 {
Sophie Chang991594b12023-01-26 04:29:521399 {"use_pairwise_merge", "false"},
Sophie Chang0abf0732023-03-23 18:30:451400 {"search_visits_only", "true"},
Sophie Chang991594b12023-01-26 04:29:521401};
1402const FeatureEntry::FeatureParam
Sophie Chang0abf0732023-03-23 18:30:451403 kJourneysSearchVisitsWithPairwiseMergeParams[] = {
Sophie Chang991594b12023-01-26 04:29:521404 {"use_pairwise_merge", "true"},
Sophie Chang0abf0732023-03-23 18:30:451405 {"search_visits_only", "true"},
Sophie Chang19b579d2022-09-27 22:30:351406};
1407const FeatureEntry::FeatureVariation kJourneysContentClusteringVariations[] = {
Sophie Chang0abf0732023-03-23 18:30:451408 {"All Visits With Blocklist and No Pairwise Merge",
1409 kJourneysAllVisitsNoPairwiseMergeParams,
1410 std::size(kJourneysAllVisitsNoPairwiseMergeParams), nullptr},
1411 {"All Visits With Blocklist and Pairwise Merge",
1412 kJourneysAllVisitsWithPairwiseMergeParams,
1413 std::size(kJourneysAllVisitsWithPairwiseMergeParams), nullptr},
1414 {"Search Visits With Blocklist and No Pairwise Merge",
1415 kJourneysSearchVisitsNoPairwiseMergeParams,
1416 std::size(kJourneysSearchVisitsNoPairwiseMergeParams), nullptr},
1417 {"Search Visits With Blocklist and Pairwise Merge",
1418 kJourneysSearchVisitsWithPairwiseMergeParams,
1419 std::size(kJourneysSearchVisitsWithPairwiseMergeParams), nullptr},
Sophie Chang19b579d2022-09-27 22:30:351420};
Marlon Facey0d963342023-03-27 20:55:221421const FeatureEntry::FeatureParam kJourneysImagesCoverParams[] = {
1422 {"JourneysImagesCover", "false"},
1423};
1424const FeatureEntry::FeatureVariation kJourneysImagesVariations[] = {
1425 {"Image Does Not Cover Container", kJourneysImagesCoverParams,
1426 std::size(kJourneysImagesCoverParams), nullptr},
1427};
Sophie Chang717f75d2023-03-23 18:29:521428const FeatureEntry::FeatureParam
1429 kJourneysLabelsWithSearchVisitEntitiesParams[] = {
1430 {"labels_from_search_visit_entities", "true"},
1431};
Tommy C. Li1d8296b52022-04-27 22:12:171432const FeatureEntry::FeatureParam kJourneysLabelsWithEntitiesParams[] = {
1433 {"labels_from_entities", "true"},
Sophie Chang9f2f0712022-03-03 19:40:411434};
1435const FeatureEntry::FeatureParam
Tommy C. Li1d8296b52022-04-27 22:12:171436 kJourneysLabelsWithEntitiesNoHostnamesParams[] = {
1437 {"labels_from_hostnames", "false"},
1438 {"labels_from_entities", "true"},
1439};
1440const FeatureEntry::FeatureVariation kJourneysLabelsVariations[] = {
1441 {"With Entities", kJourneysLabelsWithEntitiesParams,
1442 std::size(kJourneysLabelsWithEntitiesParams), nullptr},
1443 {"With Entities, No Hostnames",
1444 kJourneysLabelsWithEntitiesNoHostnamesParams,
1445 std::size(kJourneysLabelsWithEntitiesNoHostnamesParams), nullptr},
Sophie Chang717f75d2023-03-23 18:29:521446 {"With Search Entities", kJourneysLabelsWithSearchVisitEntitiesParams,
1447 std::size(kJourneysLabelsWithSearchVisitEntitiesParams), nullptr},
Tommy C. Lif28c4d32022-04-05 01:15:591448};
Sophie Chang9081cb32021-09-28 22:39:101449
Keren Zhueaf0e022023-04-06 18:16:291450const FeatureEntry::FeatureParam kChromeRefresh2023Level1[] = {{"level", "1"}};
1451
1452// "Enabled" is equivalent to "Enabled with Omnibox", therefore we don't need to
1453// make a separate variation for it.
1454const FeatureEntry::FeatureVariation kChromeRefresh2023Variations[] = {
1455 {"without Omnibox", kChromeRefresh2023Level1,
1456 std::size(kChromeRefresh2023Level1), nullptr}};
1457
Xiaohan Wang064b68cd2022-01-19 19:12:281458#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || \
1459 BUILDFLAG(IS_WIN) || BUILDFLAG(IS_FUCHSIA)
manukh453ab7e2023-02-02 21:09:571460const FeatureEntry::FeatureParam kShortcutBoostSearchAndUrl1414[] = {
1461 {"ShortcutBoostSearchScore", "1414"},
1462 {"ShortcutBoostUrlScore", "1414"}};
1463const FeatureEntry::FeatureParam kShortcutBoostUrl1414[] = {
1464 {"ShortcutBoostSearchScore", "0"},
1465 {"ShortcutBoostUrlScore", "1414"}};
1466const FeatureEntry::FeatureParam kShortcutBoostSearchAndUrl1200[] = {
1467 {"ShortcutBoostSearchScore", "1200"},
1468 {"ShortcutBoostUrlScore", "1200"}};
1469
1470const FeatureEntry::FeatureVariation kOmniboxShortcutBoostVariations[] = {
1471 {"Searches & URLs - aggressive (1414)", kShortcutBoostSearchAndUrl1414,
1472 std::size(kShortcutBoostSearchAndUrl1414), nullptr},
1473 {"URLs - aggressive (1414)", kShortcutBoostUrl1414,
1474 std::size(kShortcutBoostUrl1414), nullptr},
1475 {"Searches & URLs - conservative (1200)", kShortcutBoostSearchAndUrl1200,
1476 std::size(kShortcutBoostSearchAndUrl1200), nullptr},
1477};
1478
manukh6a6aeb82022-06-24 21:11:011479// A limited number of combinations of the rich autocompletion params.
Peter Kasting7de052ce2021-08-11 19:26:061480const FeatureEntry::FeatureParam
1481 kOmniboxRichAutocompletionConservativeModerate[] = {
1482 {"RichAutocompletionAutocompleteTitles", "true"},
1483 {"RichAutocompletionAutocompleteNonPrefixShortcutProvider", "true"},
1484 {"RichAutocompletionAutocompleteTitlesMinChar", "3"},
1485 {"RichAutocompletionAutocompleteNonPrefixMinChar", "5"}};
manukh91e87d92021-10-15 01:33:091486const FeatureEntry::FeatureParam
1487 kOmniboxRichAutocompletionConservativeModerate2[] = {
1488 {"RichAutocompletionAutocompleteTitlesShortcutProvider", "true"},
1489 {"RichAutocompletionAutocompleteNonPrefixShortcutProvider", "true"},
1490 {"RichAutocompletionAutocompleteTitlesMinChar", "3"},
1491 {"RichAutocompletionAutocompleteNonPrefixMinChar", "5"}};
manukh6a6aeb82022-06-24 21:11:011492const FeatureEntry::FeatureParam kOmniboxRichAutocompletionAggressive2[] = {
manukh748798f2022-06-27 18:17:191493 {"RichAutocompletionAutocompleteTitlesShortcutProvider", "true"},
manukh6a6aeb82022-06-24 21:11:011494 {"RichAutocompletionAutocompleteTitlesMinChar", "2"},
1495 {"RichAutocompletionAutocompleteShortcutText", "true"},
1496 {"RichAutocompletionAutocompleteShortcutTextMinChar", "2"}};
1497const FeatureEntry::FeatureParam kOmniboxRichAutocompletionAggressive3[] = {
manukh748798f2022-06-27 18:17:191498 {"RichAutocompletionAutocompleteTitlesShortcutProvider", "true"},
manukhbf7c60f2022-05-11 01:58:011499 {"RichAutocompletionAutocompleteTitlesMinChar", "3"},
1500 {"RichAutocompletionAutocompleteShortcutText", "true"},
1501 {"RichAutocompletionAutocompleteShortcutTextMinChar", "3"}};
manukh6a6aeb82022-06-24 21:11:011502const FeatureEntry::FeatureParam kOmniboxRichAutocompletionAggressive4[] = {
manukh748798f2022-06-27 18:17:191503 {"RichAutocompletionAutocompleteTitlesShortcutProvider", "true"},
manukh6a6aeb82022-06-24 21:11:011504 {"RichAutocompletionAutocompleteTitlesMinChar", "4"},
1505 {"RichAutocompletionAutocompleteShortcutText", "true"},
1506 {"RichAutocompletionAutocompleteShortcutTextMinChar", "4"}};
Peter Kasting7de052ce2021-08-11 19:26:061507
manukh6b9c59c2020-08-28 19:29:251508const FeatureEntry::FeatureVariation
1509 kOmniboxRichAutocompletionPromisingVariations[] = {
Peter Kasting7de052ce2021-08-11 19:26:061510 {"Conservative Moderate - Title, Shortcut Non-Prefix, min 3/5",
1511 kOmniboxRichAutocompletionConservativeModerate,
Daniel Cheng7d9e3d52022-02-26 09:03:241512 std::size(kOmniboxRichAutocompletionConservativeModerate), nullptr},
manukh91e87d92021-10-15 01:33:091513 {"Conservative Moderate 2 - Shortcut Title, Shortcut Non-Prefix, min "
1514 "3/5",
1515 kOmniboxRichAutocompletionConservativeModerate2,
Daniel Cheng7d9e3d52022-02-26 09:03:241516 std::size(kOmniboxRichAutocompletionConservativeModerate2), nullptr},
manukh6a6aeb82022-06-24 21:11:011517 {"Aggressive 2 - Title Shortcut Title 2, Shortcut Text 2",
1518 kOmniboxRichAutocompletionAggressive2,
1519 std::size(kOmniboxRichAutocompletionAggressive2), nullptr},
1520 {"Aggressive 3 - Title Shortcut Title 3, Shortcut Text 3",
1521 kOmniboxRichAutocompletionAggressive3,
1522 std::size(kOmniboxRichAutocompletionAggressive3), nullptr},
1523 {"Aggressive 4 - Title Shortcut Title 4, Shortcut Text 4",
1524 kOmniboxRichAutocompletionAggressive4,
1525 std::size(kOmniboxRichAutocompletionAggressive4), nullptr},
1526};
Angela Yoeurnga4a30432023-03-21 09:34:501527
Moe Ahmadi6ca4dc52023-04-14 22:47:341528const FeatureEntry::FeatureParam kOmniboxMlUrlScoringCounterfactual[] = {
1529 {"MlUrlScoringCounterfactual", "true"},
1530};
Angela Yoeurngde8ab622023-05-01 23:38:441531const FeatureEntry::FeatureParam kOmniboxMlUrlScoringRerankFinalMatchesOnly[] =
1532 {
1533 {"MlUrlScoringRerankFinalMatchesOnly", "true"},
1534};
1535const FeatureEntry::FeatureParam kOmniboxMlUrlScoringPreserveDefault[] = {
1536 {"MlUrlScoringRerankFinalMatchesOnly", "true"},
1537 {"MlUrlScoringPreserveDefault", "true"},
Angela Yoeurnga4a30432023-03-21 09:34:501538};
Moe Ahmadi0c12dd272023-05-22 23:55:221539const FeatureEntry::FeatureParam kOmniboxMlIndividualUrlScoring[] = {
1540 {"MlBatchUrlScoring", "false"},
Jun Zou5c84cf02023-05-20 00:45:381541};
Angela Yoeurnga4a30432023-03-21 09:34:501542
Moe Ahmadi6ca4dc52023-04-14 22:47:341543const FeatureEntry::FeatureVariation kOmniboxMlUrlScoringVariations[] = {
Angela Yoeurngde8ab622023-05-01 23:38:441544 {"Run the model but do not rescore or rerank the matches (counterfactual)",
Moe Ahmadi6ca4dc52023-04-14 22:47:341545 kOmniboxMlUrlScoringCounterfactual,
1546 std::size(kOmniboxMlUrlScoringCounterfactual), nullptr},
Angela Yoeurngde8ab622023-05-01 23:38:441547 {"Run the model on final set of matches only, do not preserve the legacy "
1548 "default match",
1549 kOmniboxMlUrlScoringRerankFinalMatchesOnly,
1550 std::size(kOmniboxMlUrlScoringRerankFinalMatchesOnly), nullptr},
1551 {"Run the model on final set of matches only, preserve the legacy default "
1552 "match",
1553 kOmniboxMlUrlScoringPreserveDefault,
1554 std::size(kOmniboxMlUrlScoringPreserveDefault), nullptr},
Moe Ahmadi0c12dd272023-05-22 23:55:221555 {"Run the model on individual matches", kOmniboxMlIndividualUrlScoring,
1556 std::size(kOmniboxMlIndividualUrlScoring), nullptr},
Angela Yoeurnga4a30432023-03-21 09:34:501557};
Moe Ahmadi6a814b92023-04-11 23:28:461558const FeatureEntry::FeatureParam kRealboxTwoPreviousSearchRelatedSuggestions[] =
1559 {
1560 {"RealboxMaxPreviousSearchRelatedSuggestions", "2"},
1561};
Moe Ahmadia7fe61e2023-04-17 23:49:531562const FeatureEntry::FeatureParam kRealboxSecondaryZeroSuggestCounterfactual[] =
1563 {
1564 {"RealboxSecondaryZeroSuggestCounterfactual", "true"},
Moe Ahmadi6a814b92023-04-11 23:28:461565};
1566
Moe Ahmadia7fe61e2023-04-17 23:49:531567const FeatureEntry::FeatureVariation kRealboxSecondaryZeroSuggestVariations[] =
1568 {{"2 secondary suggestions (default is 3)",
1569 kRealboxTwoPreviousSearchRelatedSuggestions,
1570 std::size(kRealboxTwoPreviousSearchRelatedSuggestions), nullptr},
1571 {"counterfactual (don't show secondary suggestions)",
1572 kRealboxSecondaryZeroSuggestCounterfactual,
1573 std::size(kRealboxSecondaryZeroSuggestCounterfactual), nullptr}};
Moe Ahmadi6a814b92023-04-11 23:28:461574
manukhd84f42752022-06-25 02:11:081575#endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) ||
1576 // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_FUCHSIA)
Peter Kasting7de052ce2021-08-11 19:26:061577
Tomasz Wiszkowski539249962023-03-16 01:01:421578#if BUILDFLAG(IS_ANDROID)
Tomasz Wiszkowski505fb5a2023-05-09 21:26:451579constexpr FeatureEntry::FeatureParam kOmniboxActionsInSuggestTreatment1[] = {
1580 {OmniboxFieldTrial::kActionsInSuggestPromoteEntitySuggestion.name, "true"},
1581 {OmniboxFieldTrial::kActionsInSuggestPromoteReviewsAction.name, "true"},
1582 {OmniboxFieldTrial::kActionsInSuggestRemoveActionTypes.name, ""}};
1583constexpr FeatureEntry::FeatureParam kOmniboxActionsInSuggestTreatment2[] = {
1584 {OmniboxFieldTrial::kActionsInSuggestPromoteEntitySuggestion.name, "false"},
1585 {OmniboxFieldTrial::kActionsInSuggestPromoteReviewsAction.name, "true"},
1586 {OmniboxFieldTrial::kActionsInSuggestRemoveActionTypes.name, ""}};
1587constexpr FeatureEntry::FeatureParam kOmniboxActionsInSuggestTreatment3[] = {
1588 {OmniboxFieldTrial::kActionsInSuggestPromoteEntitySuggestion.name, "true"},
1589 {OmniboxFieldTrial::kActionsInSuggestPromoteReviewsAction.name, "false"},
1590 {OmniboxFieldTrial::kActionsInSuggestRemoveActionTypes.name, ""}};
1591constexpr FeatureEntry::FeatureParam kOmniboxActionsInSuggestTreatment4[] = {
1592 {OmniboxFieldTrial::kActionsInSuggestPromoteEntitySuggestion.name, "true"},
1593 {OmniboxFieldTrial::kActionsInSuggestPromoteReviewsAction.name, "true"},
Tomasz Wiszkowski5a2683c2023-05-24 22:19:211594 {OmniboxFieldTrial::kActionsInSuggestRemoveActionTypes.name, "reviews"}};
Tomasz Wiszkowski505fb5a2023-05-09 21:26:451595constexpr FeatureEntry::FeatureParam kOmniboxActionsInSuggestTreatment5[] = {
1596 {OmniboxFieldTrial::kActionsInSuggestPromoteEntitySuggestion.name, "true"},
1597 {OmniboxFieldTrial::kActionsInSuggestPromoteReviewsAction.name, "true"},
Tomasz Wiszkowski5a2683c2023-05-24 22:19:211598 {OmniboxFieldTrial::kActionsInSuggestRemoveActionTypes.name, "call"}};
Tomasz Wiszkowski505fb5a2023-05-09 21:26:451599constexpr FeatureEntry::FeatureParam kOmniboxActionsInSuggestTreatment6[] = {
1600 {OmniboxFieldTrial::kActionsInSuggestPromoteEntitySuggestion.name, "true"},
1601 {OmniboxFieldTrial::kActionsInSuggestPromoteReviewsAction.name, "true"},
Tomasz Wiszkowski5a2683c2023-05-24 22:19:211602 {OmniboxFieldTrial::kActionsInSuggestRemoveActionTypes.name, "directions"}};
Tomasz Wiszkowski505fb5a2023-05-09 21:26:451603constexpr FeatureEntry::FeatureParam kOmniboxActionsInSuggestTreatment7[] = {
1604 {OmniboxFieldTrial::kActionsInSuggestPromoteEntitySuggestion.name, "true"},
1605 {OmniboxFieldTrial::kActionsInSuggestPromoteReviewsAction.name, "false"},
Tomasz Wiszkowski5a2683c2023-05-24 22:19:211606 {OmniboxFieldTrial::kActionsInSuggestRemoveActionTypes.name, "call"}};
Tomasz Wiszkowski505fb5a2023-05-09 21:26:451607constexpr FeatureEntry::FeatureParam kOmniboxActionsInSuggestTreatment8[] = {
1608 {OmniboxFieldTrial::kActionsInSuggestPromoteEntitySuggestion.name, "false"},
1609 {OmniboxFieldTrial::kActionsInSuggestPromoteReviewsAction.name, "false"},
Tomasz Wiszkowski5a2683c2023-05-24 22:19:211610 {OmniboxFieldTrial::kActionsInSuggestRemoveActionTypes.name, "call"}};
Moe Ahmadi82cd8302023-04-13 04:04:411611
1612constexpr FeatureEntry::FeatureVariation kOmniboxActionsInSuggestVariants[] = {
Tomasz Wiszkowski505fb5a2023-05-09 21:26:451613 {"T1: Promote, Reviews, Directions, Calls",
1614 kOmniboxActionsInSuggestTreatment1,
Tomasz Wiszkowski8fdacf0b2023-06-22 21:43:121615 std::size(kOmniboxActionsInSuggestTreatment1), "t3366528"},
Tomasz Wiszkowski505fb5a2023-05-09 21:26:451616 {"T2: Reviews, Directions, Calls", kOmniboxActionsInSuggestTreatment2,
Tomasz Wiszkowski8fdacf0b2023-06-22 21:43:121617 std::size(kOmniboxActionsInSuggestTreatment2), "t3366528"},
Tomasz Wiszkowski505fb5a2023-05-09 21:26:451618 {"T3: Promote, Calls, Directions, Reviews",
1619 kOmniboxActionsInSuggestTreatment3,
Tomasz Wiszkowski8fdacf0b2023-06-22 21:43:121620 std::size(kOmniboxActionsInSuggestTreatment3), "t3366528"},
Tomasz Wiszkowski505fb5a2023-05-09 21:26:451621 {"T4: Promote, Directions, Calls", kOmniboxActionsInSuggestTreatment4,
Tomasz Wiszkowski8fdacf0b2023-06-22 21:43:121622 std::size(kOmniboxActionsInSuggestTreatment4), "t3366528"},
Tomasz Wiszkowski505fb5a2023-05-09 21:26:451623 {"T5: Promote, Reviews, Directions", kOmniboxActionsInSuggestTreatment5,
Tomasz Wiszkowski8fdacf0b2023-06-22 21:43:121624 std::size(kOmniboxActionsInSuggestTreatment5), "t3366528"},
Tomasz Wiszkowski505fb5a2023-05-09 21:26:451625 {"T6: Promote, Reviews, Calls", kOmniboxActionsInSuggestTreatment6,
Tomasz Wiszkowski8fdacf0b2023-06-22 21:43:121626 std::size(kOmniboxActionsInSuggestTreatment6), "t3366528"},
Tomasz Wiszkowski505fb5a2023-05-09 21:26:451627 {"T7: Promote, Directions, Reviews", kOmniboxActionsInSuggestTreatment7,
Tomasz Wiszkowski8fdacf0b2023-06-22 21:43:121628 std::size(kOmniboxActionsInSuggestTreatment7), "t3366528"},
Tomasz Wiszkowski505fb5a2023-05-09 21:26:451629 {"T8: Directions, Reviews", kOmniboxActionsInSuggestTreatment8,
Tomasz Wiszkowski8fdacf0b2023-06-22 21:43:121630 std::size(kOmniboxActionsInSuggestTreatment8), "t3366528"},
Moe Ahmadi82cd8302023-04-13 04:04:411631};
1632
Tomasz Wiszkowski539249962023-03-16 01:01:421633constexpr FeatureEntry::FeatureParam kOmniboxInspireMeWith5Trends[] = {
Tomasz Wiszkowski7fd83af2023-06-15 19:46:451634 {OmniboxFieldTrial::kInspireMeAdditionalTrendingQueries.name, "5"},
1635 {OmniboxFieldTrial::kInspireMeAdditionalRelatedQueries.name, "0"}};
Tomasz Wiszkowski539249962023-03-16 01:01:421636constexpr FeatureEntry::FeatureParam kOmniboxInspireMeWith5Related[] = {
Tomasz Wiszkowski7fd83af2023-06-15 19:46:451637 {OmniboxFieldTrial::kInspireMeAdditionalTrendingQueries.name, "0"},
1638 {OmniboxFieldTrial::kInspireMeAdditionalRelatedQueries.name, "5"}};
Tomasz Wiszkowski539249962023-03-16 01:01:421639constexpr FeatureEntry::FeatureParam kOmniboxInspireMeWith5Mixed[] = {
Tomasz Wiszkowski7fd83af2023-06-15 19:46:451640 {OmniboxFieldTrial::kInspireMeAdditionalTrendingQueries.name, "2"},
1641 {OmniboxFieldTrial::kInspireMeAdditionalRelatedQueries.name, "3"}};
Tomasz Wiszkowski539249962023-03-16 01:01:421642constexpr FeatureEntry::FeatureParam kOmniboxInspireMeWith10Trends[] = {
Tomasz Wiszkowski7fd83af2023-06-15 19:46:451643 {OmniboxFieldTrial::kInspireMeAdditionalTrendingQueries.name, "10"},
1644 {OmniboxFieldTrial::kInspireMeAdditionalRelatedQueries.name, "0"}};
Tomasz Wiszkowski539249962023-03-16 01:01:421645constexpr FeatureEntry::FeatureParam kOmniboxInspireMeWith10Related[] = {
Tomasz Wiszkowski7fd83af2023-06-15 19:46:451646 {OmniboxFieldTrial::kInspireMeAdditionalTrendingQueries.name, "0"},
1647 {OmniboxFieldTrial::kInspireMeAdditionalRelatedQueries.name, "10"}};
Tomasz Wiszkowski539249962023-03-16 01:01:421648constexpr FeatureEntry::FeatureParam kOmniboxInspireMeWith10Mixed[] = {
Tomasz Wiszkowski7fd83af2023-06-15 19:46:451649 {OmniboxFieldTrial::kInspireMeAdditionalTrendingQueries.name, "5"},
1650 {OmniboxFieldTrial::kInspireMeAdditionalRelatedQueries.name, "5"}};
Tomasz Wiszkowski539249962023-03-16 01:01:421651
1652constexpr FeatureEntry::FeatureVariation kOmniboxInspireMeVariants[] = {
1653 {"5 Trends", kOmniboxInspireMeWith5Trends,
Tomasz Wiszkowski4881cdb2023-04-12 17:06:221654 std::size(kOmniboxInspireMeWith5Trends), "t3363415"},
Tomasz Wiszkowski539249962023-03-16 01:01:421655 {"5 Related", kOmniboxInspireMeWith5Related,
Tomasz Wiszkowski4881cdb2023-04-12 17:06:221656 std::size(kOmniboxInspireMeWith5Related), "t3363415"},
Tomasz Wiszkowski539249962023-03-16 01:01:421657 {"3 Related + 2 Trends", kOmniboxInspireMeWith5Mixed,
Tomasz Wiszkowski4881cdb2023-04-12 17:06:221658 std::size(kOmniboxInspireMeWith5Mixed), "t3363415"},
Tomasz Wiszkowski539249962023-03-16 01:01:421659 {"10 Trends", kOmniboxInspireMeWith10Trends,
Tomasz Wiszkowski4881cdb2023-04-12 17:06:221660 std::size(kOmniboxInspireMeWith10Trends), "t3363415"},
Tomasz Wiszkowski539249962023-03-16 01:01:421661 {"10 Related", kOmniboxInspireMeWith10Related,
Tomasz Wiszkowski4881cdb2023-04-12 17:06:221662 std::size(kOmniboxInspireMeWith10Related), "t3363415"},
Tomasz Wiszkowski539249962023-03-16 01:01:421663 {"5 Related + 5 Trends", kOmniboxInspireMeWith10Mixed,
Tomasz Wiszkowski4881cdb2023-04-12 17:06:221664 std::size(kOmniboxInspireMeWith10Mixed), "t3363415"}};
Tomasz Wiszkowski539249962023-03-16 01:01:421665#endif // BUILDFLAG(IS_ANDROID)
1666
manukh33cac6c2023-03-01 18:17:221667const FeatureEntry::FeatureParam kOmniboxSquareSuggestionIconFavicons[] = {
1668 {"OmniboxSquareSuggestIconIcons", "true"}};
1669const FeatureEntry::FeatureParam kOmniboxSquareSuggestionIconAnswers[] = {
1670 {"OmniboxSquareSuggestIconAnswers", "true"}};
manukhfe676802023-03-15 18:21:081671const FeatureEntry::FeatureParam
1672 kOmniboxSquareSuggestionIconFaviconsAndAnswers[] = {
1673 {"OmniboxSquareSuggestIconIcons", "true"},
1674 {"OmniboxSquareSuggestIconAnswers", "true"},
1675};
manukh33cac6c2023-03-01 18:17:221676const FeatureEntry::FeatureParam kOmniboxSquareSuggestionIconEntities[] = {
1677 {"OmniboxSquareSuggestIconEntities", "true"}};
1678const FeatureEntry::FeatureParam kOmniboxSquareSuggestionIconAll[] = {
1679 {"OmniboxSquareSuggestIconIcons", "true"},
1680 {"OmniboxSquareSuggestIconAnswers", "true"},
1681 {"OmniboxSquareSuggestIconEntities", "true"},
1682};
manukhab572c92023-03-10 18:13:391683const FeatureEntry::FeatureParam kOmniboxSquareSuggestionIconAllFullEntity[] = {
1684 {"OmniboxSquareSuggestIconIcons", "true"},
1685 {"OmniboxSquareSuggestIconAnswers", "true"},
1686 {"OmniboxSquareSuggestIconEntities", "true"},
1687 {"OmniboxSquareSuggestIconEntitiesScale", "1"},
1688};
manukh33cac6c2023-03-01 18:17:221689
1690const FeatureEntry::FeatureVariation kOmniboxSquareSuggestionIconVariations[] =
manukhab572c92023-03-10 18:13:391691 {
1692 {"Favicons", kOmniboxSquareSuggestionIconFavicons,
1693 std::size(kOmniboxSquareSuggestionIconFavicons), nullptr},
1694 {"Answers", kOmniboxSquareSuggestionIconAnswers,
1695 std::size(kOmniboxSquareSuggestionIconAnswers), nullptr},
manukhfe676802023-03-15 18:21:081696 {"Favicons and answers", kOmniboxSquareSuggestionIconFaviconsAndAnswers,
1697 std::size(kOmniboxSquareSuggestionIconFaviconsAndAnswers), nullptr},
manukhab572c92023-03-10 18:13:391698 {"Entities", kOmniboxSquareSuggestionIconEntities,
1699 std::size(kOmniboxSquareSuggestionIconEntities), nullptr},
1700 {"All", kOmniboxSquareSuggestionIconAll,
1701 std::size(kOmniboxSquareSuggestionIconAll), nullptr},
1702 {"All with full entities", kOmniboxSquareSuggestionIconAllFullEntity,
1703 std::size(kOmniboxSquareSuggestionIconAllFullEntity), nullptr},
1704};
manukh33cac6c2023-03-01 18:17:221705
Peter Kasting7de052ce2021-08-11 19:26:061706const FeatureEntry::FeatureParam kMaxZeroSuggestMatches5[] = {
1707 {"MaxZeroSuggestMatches", "5"}};
1708const FeatureEntry::FeatureParam kMaxZeroSuggestMatches6[] = {
1709 {"MaxZeroSuggestMatches", "6"}};
1710const FeatureEntry::FeatureParam kMaxZeroSuggestMatches7[] = {
1711 {"MaxZeroSuggestMatches", "7"}};
1712const FeatureEntry::FeatureParam kMaxZeroSuggestMatches8[] = {
1713 {"MaxZeroSuggestMatches", "8"}};
1714const FeatureEntry::FeatureParam kMaxZeroSuggestMatches9[] = {
1715 {"MaxZeroSuggestMatches", "9"}};
1716const FeatureEntry::FeatureParam kMaxZeroSuggestMatches10[] = {
1717 {"MaxZeroSuggestMatches", "10"}};
1718const FeatureEntry::FeatureParam kMaxZeroSuggestMatches11[] = {
1719 {"MaxZeroSuggestMatches", "11"}};
1720const FeatureEntry::FeatureParam kMaxZeroSuggestMatches12[] = {
1721 {"MaxZeroSuggestMatches", "12"}};
1722const FeatureEntry::FeatureParam kMaxZeroSuggestMatches13[] = {
1723 {"MaxZeroSuggestMatches", "13"}};
1724const FeatureEntry::FeatureParam kMaxZeroSuggestMatches14[] = {
1725 {"MaxZeroSuggestMatches", "14"}};
1726const FeatureEntry::FeatureParam kMaxZeroSuggestMatches15[] = {
1727 {"MaxZeroSuggestMatches", "15"}};
1728
manukfdd97402020-07-22 18:19:171729const FeatureEntry::FeatureVariation kMaxZeroSuggestMatchesVariations[] = {
Daniel Cheng7d9e3d52022-02-26 09:03:241730 {"5", kMaxZeroSuggestMatches5, std::size(kMaxZeroSuggestMatches5), nullptr},
1731 {"6", kMaxZeroSuggestMatches6, std::size(kMaxZeroSuggestMatches6), nullptr},
1732 {"7", kMaxZeroSuggestMatches7, std::size(kMaxZeroSuggestMatches7), nullptr},
1733 {"8", kMaxZeroSuggestMatches8, std::size(kMaxZeroSuggestMatches8), nullptr},
1734 {"9", kMaxZeroSuggestMatches9, std::size(kMaxZeroSuggestMatches9), nullptr},
1735 {"10", kMaxZeroSuggestMatches10, std::size(kMaxZeroSuggestMatches10),
Peter Kasting7de052ce2021-08-11 19:26:061736 nullptr},
Daniel Cheng7d9e3d52022-02-26 09:03:241737 {"11", kMaxZeroSuggestMatches11, std::size(kMaxZeroSuggestMatches11),
Peter Kasting7de052ce2021-08-11 19:26:061738 nullptr},
Daniel Cheng7d9e3d52022-02-26 09:03:241739 {"12", kMaxZeroSuggestMatches12, std::size(kMaxZeroSuggestMatches12),
Peter Kasting7de052ce2021-08-11 19:26:061740 nullptr},
Daniel Cheng7d9e3d52022-02-26 09:03:241741 {"13", kMaxZeroSuggestMatches13, std::size(kMaxZeroSuggestMatches13),
Peter Kasting7de052ce2021-08-11 19:26:061742 nullptr},
Daniel Cheng7d9e3d52022-02-26 09:03:241743 {"14", kMaxZeroSuggestMatches14, std::size(kMaxZeroSuggestMatches14),
Peter Kasting7de052ce2021-08-11 19:26:061744 nullptr},
Daniel Cheng7d9e3d52022-02-26 09:03:241745 {"15", kMaxZeroSuggestMatches15, std::size(kMaxZeroSuggestMatches15),
Peter Kasting7de052ce2021-08-11 19:26:061746 nullptr}};
manukfdd97402020-07-22 18:19:171747
Justin Donnellyd1e5c302018-01-17 15:21:301748const FeatureEntry::FeatureParam kOmniboxUIMaxAutocompleteMatches3[] = {
1749 {OmniboxFieldTrial::kUIMaxAutocompleteMatchesParam, "3"}};
tommyclia5a538f92017-05-15 19:09:381750const FeatureEntry::FeatureParam kOmniboxUIMaxAutocompleteMatches4[] = {
1751 {OmniboxFieldTrial::kUIMaxAutocompleteMatchesParam, "4"}};
Justin Donnellyd1e5c302018-01-17 15:21:301752const FeatureEntry::FeatureParam kOmniboxUIMaxAutocompleteMatches5[] = {
1753 {OmniboxFieldTrial::kUIMaxAutocompleteMatchesParam, "5"}};
tommyclia5a538f92017-05-15 19:09:381754const FeatureEntry::FeatureParam kOmniboxUIMaxAutocompleteMatches6[] = {
1755 {OmniboxFieldTrial::kUIMaxAutocompleteMatchesParam, "6"}};
Patrick Noland9e1fc5052019-07-31 00:24:111756const FeatureEntry::FeatureParam kOmniboxUIMaxAutocompleteMatches7[] = {
1757 {OmniboxFieldTrial::kUIMaxAutocompleteMatchesParam, "7"}};
tommyclia5a538f92017-05-15 19:09:381758const FeatureEntry::FeatureParam kOmniboxUIMaxAutocompleteMatches8[] = {
1759 {OmniboxFieldTrial::kUIMaxAutocompleteMatchesParam, "8"}};
Patrick Noland9e1fc5052019-07-31 00:24:111760const FeatureEntry::FeatureParam kOmniboxUIMaxAutocompleteMatches9[] = {
1761 {OmniboxFieldTrial::kUIMaxAutocompleteMatchesParam, "9"}};
tommyclia5a538f92017-05-15 19:09:381762const FeatureEntry::FeatureParam kOmniboxUIMaxAutocompleteMatches10[] = {
1763 {OmniboxFieldTrial::kUIMaxAutocompleteMatchesParam, "10"}};
1764const FeatureEntry::FeatureParam kOmniboxUIMaxAutocompleteMatches12[] = {
1765 {OmniboxFieldTrial::kUIMaxAutocompleteMatchesParam, "12"}};
1766
1767const FeatureEntry::FeatureVariation
1768 kOmniboxUIMaxAutocompleteMatchesVariations[] = {
Justin Donnellyd1e5c302018-01-17 15:21:301769 {"3 matches", kOmniboxUIMaxAutocompleteMatches3,
Daniel Cheng7d9e3d52022-02-26 09:03:241770 std::size(kOmniboxUIMaxAutocompleteMatches3), nullptr},
tommyclia5a538f92017-05-15 19:09:381771 {"4 matches", kOmniboxUIMaxAutocompleteMatches4,
Daniel Cheng7d9e3d52022-02-26 09:03:241772 std::size(kOmniboxUIMaxAutocompleteMatches4), nullptr},
Justin Donnellyd1e5c302018-01-17 15:21:301773 {"5 matches", kOmniboxUIMaxAutocompleteMatches5,
Daniel Cheng7d9e3d52022-02-26 09:03:241774 std::size(kOmniboxUIMaxAutocompleteMatches5), nullptr},
tommyclia5a538f92017-05-15 19:09:381775 {"6 matches", kOmniboxUIMaxAutocompleteMatches6,
Daniel Cheng7d9e3d52022-02-26 09:03:241776 std::size(kOmniboxUIMaxAutocompleteMatches6), nullptr},
Patrick Noland9e1fc5052019-07-31 00:24:111777 {"7 matches", kOmniboxUIMaxAutocompleteMatches7,
Daniel Cheng7d9e3d52022-02-26 09:03:241778 std::size(kOmniboxUIMaxAutocompleteMatches7), nullptr},
tommyclia5a538f92017-05-15 19:09:381779 {"8 matches", kOmniboxUIMaxAutocompleteMatches8,
Daniel Cheng7d9e3d52022-02-26 09:03:241780 std::size(kOmniboxUIMaxAutocompleteMatches8), nullptr},
Patrick Noland9e1fc5052019-07-31 00:24:111781 {"9 matches", kOmniboxUIMaxAutocompleteMatches9,
Daniel Cheng7d9e3d52022-02-26 09:03:241782 std::size(kOmniboxUIMaxAutocompleteMatches9), nullptr},
tommyclia5a538f92017-05-15 19:09:381783 {"10 matches", kOmniboxUIMaxAutocompleteMatches10,
Daniel Cheng7d9e3d52022-02-26 09:03:241784 std::size(kOmniboxUIMaxAutocompleteMatches10), nullptr},
tommyclia5a538f92017-05-15 19:09:381785 {"12 matches", kOmniboxUIMaxAutocompleteMatches12,
Daniel Cheng7d9e3d52022-02-26 09:03:241786 std::size(kOmniboxUIMaxAutocompleteMatches12), nullptr}};
tommyclia5a538f92017-05-15 19:09:381787
Kevin Baileycd6889922019-05-30 17:22:551788const FeatureEntry::FeatureParam kOmniboxMaxURLMatches2[] = {
1789 {OmniboxFieldTrial::kOmniboxMaxURLMatchesParam, "2"}};
1790const FeatureEntry::FeatureParam kOmniboxMaxURLMatches3[] = {
1791 {OmniboxFieldTrial::kOmniboxMaxURLMatchesParam, "3"}};
1792const FeatureEntry::FeatureParam kOmniboxMaxURLMatches4[] = {
1793 {OmniboxFieldTrial::kOmniboxMaxURLMatchesParam, "4"}};
1794const FeatureEntry::FeatureParam kOmniboxMaxURLMatches5[] = {
1795 {OmniboxFieldTrial::kOmniboxMaxURLMatchesParam, "5"}};
1796const FeatureEntry::FeatureParam kOmniboxMaxURLMatches6[] = {
1797 {OmniboxFieldTrial::kOmniboxMaxURLMatchesParam, "6"}};
1798
1799const FeatureEntry::FeatureVariation kOmniboxMaxURLMatchesVariations[] = {
Daniel Cheng7d9e3d52022-02-26 09:03:241800 {"2 matches", kOmniboxMaxURLMatches2, std::size(kOmniboxMaxURLMatches2),
Kevin Baileycd6889922019-05-30 17:22:551801 nullptr},
Daniel Cheng7d9e3d52022-02-26 09:03:241802 {"3 matches", kOmniboxMaxURLMatches3, std::size(kOmniboxMaxURLMatches3),
Kevin Baileycd6889922019-05-30 17:22:551803 nullptr},
Daniel Cheng7d9e3d52022-02-26 09:03:241804 {"4 matches", kOmniboxMaxURLMatches4, std::size(kOmniboxMaxURLMatches4),
Kevin Baileycd6889922019-05-30 17:22:551805 nullptr},
Daniel Cheng7d9e3d52022-02-26 09:03:241806 {"5 matches", kOmniboxMaxURLMatches5, std::size(kOmniboxMaxURLMatches5),
Kevin Baileycd6889922019-05-30 17:22:551807 nullptr},
Daniel Cheng7d9e3d52022-02-26 09:03:241808 {"6 matches", kOmniboxMaxURLMatches6, std::size(kOmniboxMaxURLMatches6),
Kevin Baileycd6889922019-05-30 17:22:551809 nullptr}};
1810
Peter Kasting7de052ce2021-08-11 19:26:061811const FeatureEntry::FeatureParam kOmniboxDynamicMaxAutocomplete90[] = {
1812 {"OmniboxDynamicMaxAutocompleteUrlCutoff", "0"},
1813 {"OmniboxDynamicMaxAutocompleteIncreasedLimit", "9"}};
1814const FeatureEntry::FeatureParam kOmniboxDynamicMaxAutocomplete91[] = {
1815 {"OmniboxDynamicMaxAutocompleteUrlCutoff", "1"},
1816 {"OmniboxDynamicMaxAutocompleteIncreasedLimit", "9"}};
1817const FeatureEntry::FeatureParam kOmniboxDynamicMaxAutocomplete92[] = {
1818 {"OmniboxDynamicMaxAutocompleteUrlCutoff", "2"},
1819 {"OmniboxDynamicMaxAutocompleteIncreasedLimit", "9"}};
1820const FeatureEntry::FeatureParam kOmniboxDynamicMaxAutocomplete100[] = {
1821 {"OmniboxDynamicMaxAutocompleteUrlCutoff", "0"},
1822 {"OmniboxDynamicMaxAutocompleteIncreasedLimit", "10"}};
1823const FeatureEntry::FeatureParam kOmniboxDynamicMaxAutocomplete101[] = {
1824 {"OmniboxDynamicMaxAutocompleteUrlCutoff", "1"},
1825 {"OmniboxDynamicMaxAutocompleteIncreasedLimit", "10"}};
1826const FeatureEntry::FeatureParam kOmniboxDynamicMaxAutocomplete102[] = {
1827 {"OmniboxDynamicMaxAutocompleteUrlCutoff", "2"},
1828 {"OmniboxDynamicMaxAutocompleteIncreasedLimit", "10"}};
1829
manukhd1870412020-09-15 03:42:141830const FeatureEntry::FeatureVariation
1831 kOmniboxDynamicMaxAutocompleteVariations[] = {
Peter Kasting7de052ce2021-08-11 19:26:061832 {"9 suggestions if 0 or fewer URLs", kOmniboxDynamicMaxAutocomplete90,
Daniel Cheng7d9e3d52022-02-26 09:03:241833 std::size(kOmniboxDynamicMaxAutocomplete90), nullptr},
Peter Kasting7de052ce2021-08-11 19:26:061834 {"9 suggestions if 1 or fewer URLs", kOmniboxDynamicMaxAutocomplete91,
Daniel Cheng7d9e3d52022-02-26 09:03:241835 std::size(kOmniboxDynamicMaxAutocomplete91), nullptr},
Peter Kasting7de052ce2021-08-11 19:26:061836 {"9 suggestions if 2 or fewer URLs", kOmniboxDynamicMaxAutocomplete92,
Daniel Cheng7d9e3d52022-02-26 09:03:241837 std::size(kOmniboxDynamicMaxAutocomplete92), nullptr},
Peter Kasting7de052ce2021-08-11 19:26:061838 {"10 suggestions if 0 or fewer URLs", kOmniboxDynamicMaxAutocomplete100,
Daniel Cheng7d9e3d52022-02-26 09:03:241839 std::size(kOmniboxDynamicMaxAutocomplete100), nullptr},
Peter Kasting7de052ce2021-08-11 19:26:061840 {"10 suggestions if 1 or fewer URLs", kOmniboxDynamicMaxAutocomplete101,
Daniel Cheng7d9e3d52022-02-26 09:03:241841 std::size(kOmniboxDynamicMaxAutocomplete101), nullptr},
Peter Kasting7de052ce2021-08-11 19:26:061842 {"10 suggestions if 2 or fewer URLs", kOmniboxDynamicMaxAutocomplete102,
Daniel Cheng7d9e3d52022-02-26 09:03:241843 std::size(kOmniboxDynamicMaxAutocomplete102), nullptr}};
manukhd1870412020-09-15 03:42:141844
Yohanes Shimelisfe3b128d2022-10-14 00:56:041845const FeatureEntry::FeatureParam kOmniboxUniformRowHeight36[] = {
Yohanes Shimelis6ee9a072022-12-08 20:09:201846 {"OmniboxRichSuggestionVerticalMargin", "4"}};
Yohanes Shimelisfe3b128d2022-10-14 00:56:041847const FeatureEntry::FeatureParam kOmniboxUniformRowHeight40[] = {
Yohanes Shimelis6ee9a072022-12-08 20:09:201848 {"OmniboxRichSuggestionVerticalMargin", "6"}};
Yohanes Shimelisfe3b128d2022-10-14 00:56:041849
1850const FeatureEntry::FeatureVariation kOmniboxSuggestionHeightVariations[] = {
Yohanes Shimelis6ee9a072022-12-08 20:09:201851 {"36px omnibox suggestions", kOmniboxUniformRowHeight36,
Yohanes Shimelisfe3b128d2022-10-14 00:56:041852 std::size(kOmniboxUniformRowHeight36), nullptr},
Yohanes Shimelis6ee9a072022-12-08 20:09:201853 {"40px omnibox suggestions", kOmniboxUniformRowHeight40,
Yohanes Shimelisfe3b128d2022-10-14 00:56:041854 std::size(kOmniboxUniformRowHeight40), nullptr},
1855};
1856
Khalid Peerf9cc869262023-03-30 20:14:201857const FeatureEntry::FeatureParam kOmniboxFontSize12[] = {
1858 {"OmniboxFontSizeNonTouchUI", "12"}};
1859const FeatureEntry::FeatureParam kOmniboxFontSize13[] = {
1860 {"OmniboxFontSizeNonTouchUI", "13"}};
1861const FeatureEntry::FeatureParam kOmniboxFontSize14[] = {
1862 {"OmniboxFontSizeNonTouchUI", "14"}};
1863
1864const FeatureEntry::FeatureVariation kOmniboxFontSizeVariations[] = {
1865 {"12pt omnibox font", kOmniboxFontSize12, std::size(kOmniboxFontSize12),
1866 nullptr},
1867 {"13pt omnibox font", kOmniboxFontSize13, std::size(kOmniboxFontSize13),
1868 nullptr},
1869 {"14pt omnibox font", kOmniboxFontSize14, std::size(kOmniboxFontSize14),
1870 nullptr},
1871};
1872
Tomasz Wiszkowski11555e82023-03-23 17:03:381873const FeatureEntry::FeatureParam kRepeatableQueries_6Searches_90Days[] = {
1874 {"RepeatableQueriesIgnoreDuplicateVisits", "true"},
1875 {"RepeatableQueriesMinVisitCount", "6"},
1876};
1877const FeatureEntry::FeatureParam kRepeatableQueries_12Searches_90Days[] = {
1878 {"RepeatableQueriesIgnoreDuplicateVisits", "true"},
1879 {"RepeatableQueriesMinVisitCount", "12"},
1880};
1881const FeatureEntry::FeatureParam kRepeatableQueries_6Searches_7Days[] = {
1882 {"RepeatableQueriesIgnoreDuplicateVisits", "true"},
1883 {"RepeatableQueriesMinVisitCount", "6"},
1884 {"RepeatableQueriesMaxAgeDays", "7"},
1885};
1886const FeatureEntry::FeatureParam kRepeatableQueries_12Searches_7Days[] = {
1887 {"RepeatableQueriesIgnoreDuplicateVisits", "true"},
1888 {"RepeatableQueriesMinVisitCount", "12"},
1889 {"RepeatableQueriesMaxAgeDays", "7"},
1890};
Moe Ahmadi359d0722022-05-16 23:17:331891
1892const FeatureEntry::FeatureVariation kOrganicRepeatableQueriesVariations[] = {
Tomasz Wiszkowski11555e82023-03-23 17:03:381893 {"6+ uses, once in last 90d", kRepeatableQueries_6Searches_90Days,
1894 std::size(kRepeatableQueries_6Searches_90Days), nullptr},
1895 {"12+ uses, once in last 90d", kRepeatableQueries_12Searches_90Days,
1896 std::size(kRepeatableQueries_12Searches_90Days), nullptr},
1897 {"6+ uses, once in last 7d", kRepeatableQueries_6Searches_7Days,
1898 std::size(kRepeatableQueries_6Searches_7Days), nullptr},
1899 {"12+ uses, once in last 7d", kRepeatableQueries_12Searches_7Days,
1900 std::size(kRepeatableQueries_12Searches_7Days), nullptr},
Ender8bd09f32022-07-01 02:30:491901};
Moe Ahmadi359d0722022-05-16 23:17:331902
Taylor Bergquistdb936972021-02-10 23:13:131903const FeatureEntry::FeatureParam kMinimumTabWidthSettingPinned[] = {
1904 {features::kMinimumTabWidthFeatureParameterName, "54"}};
1905const FeatureEntry::FeatureParam kMinimumTabWidthSettingMedium[] = {
1906 {features::kMinimumTabWidthFeatureParameterName, "72"}};
1907const FeatureEntry::FeatureParam kMinimumTabWidthSettingLarge[] = {
1908 {features::kMinimumTabWidthFeatureParameterName, "140"}};
1909const FeatureEntry::FeatureParam kMinimumTabWidthSettingFull[] = {
1910 {features::kMinimumTabWidthFeatureParameterName, "256"}};
1911
1912const FeatureEntry::FeatureVariation kTabScrollingVariations[] = {
1913 {" - tabs shrink to pinned tab width", kMinimumTabWidthSettingPinned,
Daniel Cheng7d9e3d52022-02-26 09:03:241914 std::size(kMinimumTabWidthSettingPinned), nullptr},
Taylor Bergquistdb936972021-02-10 23:13:131915 {" - tabs shrink to a medium width", kMinimumTabWidthSettingMedium,
Daniel Cheng7d9e3d52022-02-26 09:03:241916 std::size(kMinimumTabWidthSettingMedium), nullptr},
Taylor Bergquistdb936972021-02-10 23:13:131917 {" - tabs shrink to a large width", kMinimumTabWidthSettingLarge,
Daniel Cheng7d9e3d52022-02-26 09:03:241918 std::size(kMinimumTabWidthSettingLarge), nullptr},
Elaine Chien874f6332021-03-16 00:16:551919 {" - tabs don't shrink", kMinimumTabWidthSettingFull,
Daniel Cheng7d9e3d52022-02-26 09:03:241920 std::size(kMinimumTabWidthSettingFull), nullptr}};
Taylor Bergquistdb936972021-02-10 23:13:131921
David Pennington423db8f2022-10-24 22:30:041922const FeatureEntry::FeatureParam kTabScrollingButtonPositionRight[] = {
1923 {features::kTabScrollingButtonPositionParameterName, "0"}};
1924const FeatureEntry::FeatureParam kTabScrollingButtonPositionLeft[] = {
1925 {features::kTabScrollingButtonPositionParameterName, "1"}};
1926const FeatureEntry::FeatureParam kTabScrollingButtonPositionSplit[] = {
1927 {features::kTabScrollingButtonPositionParameterName, "2"}};
1928
1929const FeatureEntry::FeatureVariation kTabScrollingButtonPositionVariations[] = {
1930 {" - to the right of the tabstrip", kTabScrollingButtonPositionRight,
1931 std::size(kTabScrollingButtonPositionRight), nullptr},
1932 {" - to the left of the tabstrip", kTabScrollingButtonPositionLeft,
1933 std::size(kTabScrollingButtonPositionLeft), nullptr},
1934 {" - on both sides of the tabstrip", kTabScrollingButtonPositionSplit,
1935 std::size(kTabScrollingButtonPositionSplit), nullptr}};
1936
Shibalik Mohapatra9a31f7d32022-10-26 23:53:591937const FeatureEntry::FeatureParam kTabScrollingWithDraggingWithConstantSpeed[] =
1938 {{features::kTabScrollingWithDraggingModeName, "1"}};
1939const FeatureEntry::FeatureParam kTabScrollingWithDraggingWithVariableSpeed[] =
1940 {{features::kTabScrollingWithDraggingModeName, "2"}};
1941
1942const FeatureEntry::FeatureVariation kTabScrollingWithDraggingVariations[] = {
1943 {" - tabs scrolling with constant speed",
1944 kTabScrollingWithDraggingWithConstantSpeed,
1945 std::size(kTabScrollingWithDraggingWithConstantSpeed), nullptr},
1946 {" - tabs scrolling with variable speed region",
1947 kTabScrollingWithDraggingWithVariableSpeed,
1948 std::size(kTabScrollingWithDraggingWithVariableSpeed), nullptr}};
1949
David Pennington02c635e2022-11-18 01:03:451950const FeatureEntry::FeatureParam kScrollableTabStripOverflowDivider[] = {
1951 {features::kScrollableTabStripOverflowModeName, "1"}};
1952const FeatureEntry::FeatureParam kScrollableTabStripOverflowFade[] = {
1953 {features::kScrollableTabStripOverflowModeName, "2"}};
1954const FeatureEntry::FeatureParam kScrollableTabStripOverflowShadow[] = {
1955 {features::kScrollableTabStripOverflowModeName, "3"}};
1956
1957const FeatureEntry::FeatureVariation kScrollableTabStripOverflowVariations[] = {
1958 {" - Divider", kScrollableTabStripOverflowDivider,
1959 std::size(kScrollableTabStripOverflowDivider), nullptr}, // Divider
1960 {" - Fade", kScrollableTabStripOverflowFade,
1961 std::size(kScrollableTabStripOverflowFade), nullptr}, // Fade
1962 {" - Shadow", kScrollableTabStripOverflowShadow,
1963 std::size(kScrollableTabStripOverflowShadow), nullptr}, // Shadow
1964};
1965
Yuheng Huang59d1d302021-10-29 21:21:141966const FeatureEntry::FeatureParam kTabSearchSearchThresholdSmall[] = {
1967 {features::kTabSearchSearchThresholdName, "0.3"}};
1968const FeatureEntry::FeatureParam kTabSearchSearchThresholdMedium[] = {
1969 {features::kTabSearchSearchThresholdName, "0.6"}};
1970const FeatureEntry::FeatureParam kTabSearchSearchThresholdLarge[] = {
1971 {features::kTabSearchSearchThresholdName, "0.8"}};
1972
1973const FeatureEntry::FeatureVariation kTabSearchSearchThresholdVariations[] = {
1974 {" - fuzzy level: small", kTabSearchSearchThresholdSmall,
Daniel Cheng7d9e3d52022-02-26 09:03:241975 std::size(kTabSearchSearchThresholdSmall), nullptr},
Yuheng Huang59d1d302021-10-29 21:21:141976 {" - fuzzy level: medium", kTabSearchSearchThresholdMedium,
Daniel Cheng7d9e3d52022-02-26 09:03:241977 std::size(kTabSearchSearchThresholdMedium), nullptr},
Yuheng Huang59d1d302021-10-29 21:21:141978 {" - fuzzy level: large", kTabSearchSearchThresholdLarge,
Daniel Cheng7d9e3d52022-02-26 09:03:241979 std::size(kTabSearchSearchThresholdLarge), nullptr}};
Yuheng Huang59d1d302021-10-29 21:21:141980
Xiaohan Wang064b68cd2022-01-19 19:12:281981#if !BUILDFLAG(IS_ANDROID)
Mei Liang4ab1b5d42023-04-20 01:07:481982const flags_ui::FeatureEntry::FeatureParam kDelayPriceTrackingChip[] = {
1983 {commerce::kCommercePriceTrackingChipExperimentVariationParam, "1"}};
1984
Mei Liangf8d132d2023-04-27 22:33:181985const flags_ui::FeatureEntry::FeatureParam kIphForPriceTrackingChip[] = {
1986 {commerce::kCommercePriceTrackingChipExperimentVariationParam, "2"}};
1987
Mei Liang4ab1b5d42023-04-20 01:07:481988const FeatureEntry::FeatureVariation kPriceTrackingChipExperimentVariations[] =
1989 {
1990 {"- Delay Chip", kDelayPriceTrackingChip,
1991 std::size(kDelayPriceTrackingChip), nullptr},
Mei Liangf8d132d2023-04-27 22:33:181992 {"- Chip IPH", kIphForPriceTrackingChip,
1993 std::size(kIphForPriceTrackingChip), nullptr},
Mei Liang4ab1b5d42023-04-20 01:07:481994};
Tibor Goldschwendtacb655f2020-11-24 23:23:061995
Yue Zhangcf6b1e22021-01-26 17:28:361996const FeatureEntry::FeatureParam kNtpChromeCartModuleFakeData[] = {
Mei Liang9cdacfe2021-04-08 00:41:051997 {ntp_features::kNtpChromeCartModuleDataParam, "fake"},
1998 {ntp_features::kNtpChromeCartModuleAbandonedCartDiscountParam, "true"}};
1999const FeatureEntry::FeatureParam kNtpChromeCartModuleAbandonedCartDiscount[] = {
Yue Zhang6a24a7d2021-05-18 16:09:382000 {ntp_features::kNtpChromeCartModuleAbandonedCartDiscountParam, "true"},
Yue Zhang7938e7ad2021-09-16 18:15:142001 {ntp_features::kNtpChromeCartModuleAbandonedCartDiscountUseUtmParam,
2002 "true"},
Yue Zhang6a24a7d2021-05-18 16:09:382003 {"partner-merchant-pattern",
Yue Zhangfd8fe082021-12-03 00:15:042004 "(electronicexpress.com|zazzle.com|wish.com|homesquare.com|iherb.com|"
Yue Zhang6fef6ba2021-12-03 01:49:042005 "zappos.com|otterbox.com)"}};
Yue Zhang440f6302021-05-24 21:38:582006const FeatureEntry::FeatureParam kNtpChromeCartModuleHeuristicsImprovement[] = {
2007 {ntp_features::kNtpChromeCartModuleHeuristicsImprovementParam, "true"}};
Mei Liang85f05c32021-08-18 19:46:352008const FeatureEntry::FeatureParam kNtpChromeCartModuleRBDAndCouponDiscount[] = {
2009 {ntp_features::kNtpChromeCartModuleHeuristicsImprovementParam, "true"},
2010 {ntp_features::kNtpChromeCartModuleAbandonedCartDiscountParam, "true"},
Yue Zhang7938e7ad2021-09-16 18:15:142011 {ntp_features::kNtpChromeCartModuleAbandonedCartDiscountUseUtmParam,
2012 "true"},
Mei Liang85f05c32021-08-18 19:46:352013 {"partner-merchant-pattern",
2014 "(electronicexpress.com|zazzle.com|wish.com|homesquare.com)"},
2015 {ntp_features::kNtpChromeCartModuleCouponParam, "true"}};
Yue Zhangcf6b1e22021-01-26 17:28:362016const FeatureEntry::FeatureVariation kNtpChromeCartModuleVariations[] = {
Mei Liang9cdacfe2021-04-08 00:41:052017 {"- Fake Data And Discount", kNtpChromeCartModuleFakeData,
Daniel Cheng7d9e3d52022-02-26 09:03:242018 std::size(kNtpChromeCartModuleFakeData), nullptr},
Mei Liang9cdacfe2021-04-08 00:41:052019 {"- Abandoned Cart Discount", kNtpChromeCartModuleAbandonedCartDiscount,
Daniel Cheng7d9e3d52022-02-26 09:03:242020 std::size(kNtpChromeCartModuleAbandonedCartDiscount), nullptr},
Yue Zhang440f6302021-05-24 21:38:582021 {"- Heuristics Improvement", kNtpChromeCartModuleHeuristicsImprovement,
Daniel Cheng7d9e3d52022-02-26 09:03:242022 std::size(kNtpChromeCartModuleHeuristicsImprovement), nullptr},
Mei Liang85f05c32021-08-18 19:46:352023 {"- RBD and Coupons", kNtpChromeCartModuleRBDAndCouponDiscount,
Daniel Cheng7d9e3d52022-02-26 09:03:242024 std::size(kNtpChromeCartModuleRBDAndCouponDiscount), nullptr},
Yue Zhangcf6b1e22021-01-26 17:28:362025};
2026
Mei Liang5415f2d2022-02-25 07:49:252027// The following are consent v2 variations in the Chrome Cart module.
Mei Liang5415f2d2022-02-25 07:49:252028const flags_ui::FeatureEntry::FeatureParam kDiscountConsentNtpDialog[] = {
Yue Zhang288349b2022-03-17 20:09:542029 {commerce::kNtpChromeCartModuleDiscountConsentNtpVariationParam, "3"}};
Mei Liangcd717a42022-04-19 20:27:362030const flags_ui::FeatureEntry::FeatureParam kDiscountConsentNtpNativeDialog[] = {
2031 {commerce::kNtpChromeCartModuleDiscountConsentNtpVariationParam, "4"}};
2032
Mei Liang5415f2d2022-02-25 07:49:252033const FeatureEntry::FeatureVariation kDiscountConsentV2Variations[] = {
Mei Liangcd717a42022-04-19 20:27:362034 {"WebUi Dialog Consent", kDiscountConsentNtpDialog,
Daniel Cheng7d9e3d52022-02-26 09:03:242035 std::size(kDiscountConsentNtpDialog), nullptr},
Mei Liangcd717a42022-04-19 20:27:362036 {"Native Dialog Consent", kDiscountConsentNtpNativeDialog,
2037 std::size(kDiscountConsentNtpNativeDialog), nullptr},
Mei Liang5415f2d2022-02-25 07:49:252038};
2039
Mei Liangd5813c32022-10-29 01:09:072040// The following is Code-based RBD variation.
2041const flags_ui::FeatureEntry::FeatureParam kCodeBasedRBDEnabled[] = {
2042 {commerce::kCodeBasedRuleDiscountParam, "true"}};
2043
2044const FeatureEntry::FeatureVariation kCodeBasedRBDVariations[] = {
2045 {"code-based RBD", kCodeBasedRBDEnabled, std::size(kCodeBasedRBDEnabled),
Mei Liang7ec16ed12023-04-18 20:39:192046 "t3362898"},
Mei Liangd5813c32022-10-29 01:09:072047};
2048
Mei Liangd3726df2022-10-31 18:29:022049// The following is Merchant wide promotion variation.
2050const flags_ui::FeatureEntry::FeatureParam kMerchantWideFetchEnabled[] = {
2051 {commerce::kReadyToFetchMerchantWidePromotionParam, "true"}};
2052
2053const FeatureEntry::FeatureVariation kMerchantWidePromotionVariations[] = {
2054 {"- Enable fetch", kMerchantWideFetchEnabled,
2055 std::size(kMerchantWideFetchEnabled), nullptr},
2056};
2057
Tibor Goldschwendtd18751b2021-05-11 02:03:262058const FeatureEntry::FeatureParam kNtpDriveModuleFakeData[] = {
2059 {ntp_features::kNtpDriveModuleDataParam, "fake"}};
Tibor Goldschwendtcd7bb1f2021-05-20 23:07:342060const FeatureEntry::FeatureParam kNtpDriveModuleManagedUsersOnly[] = {
2061 {ntp_features::kNtpDriveModuleManagedUsersOnlyParam, "true"}};
Tibor Goldschwendtd18751b2021-05-11 02:03:262062const FeatureEntry::FeatureVariation kNtpDriveModuleVariations[] = {
Daniel Cheng7d9e3d52022-02-26 09:03:242063 {"- Fake Data", kNtpDriveModuleFakeData, std::size(kNtpDriveModuleFakeData),
2064 nullptr},
Tibor Goldschwendtcd7bb1f2021-05-20 23:07:342065 {"- Managed Users Only", kNtpDriveModuleManagedUsersOnly,
Daniel Cheng7d9e3d52022-02-26 09:03:242066 std::size(kNtpDriveModuleManagedUsersOnly), nullptr},
Tibor Goldschwendtd18751b2021-05-11 02:03:262067};
Rohit Bhatia34189362021-09-04 03:55:202068
Roman Arora6a6024d12023-03-03 21:05:392069// History clusters fake data params are expressed as a comma separated tuple
2070// consisting of a number of desired visits and the number of such visits to be
2071// marked as having url keyed images. The number of visits must be greater than
2072// or equal to the number of visits marked as having images.
2073const FeatureEntry::FeatureParam
2074 kNtpHistoryClustersModuleFakeData2Visits2Images[] = {
Roman Arora1a108322023-05-03 16:57:362075 {ntp_features::kNtpHistoryClustersModuleDataParam, "1,2,2"}};
Roman Arora6a6024d12023-03-03 21:05:392076const FeatureEntry::FeatureParam
2077 kNtpHistoryClustersModuleFakeData3Visits1Image[] = {
Roman Arora1a108322023-05-03 16:57:362078 {ntp_features::kNtpHistoryClustersModuleDataParam, "1,3,1"}};
Roman Arora6a6024d12023-03-03 21:05:392079const FeatureEntry::FeatureParam
2080 kNtpHistoryClustersModuleFakeData4Visits2Images[] = {
Roman Arora1a108322023-05-03 16:57:362081 {ntp_features::kNtpHistoryClustersModuleDataParam, "1,4,2"}};
2082const FeatureEntry::FeatureParam kNtpHistoryClustersModuleV2OneJourney[] = {
2083 {ntp_features::kNtpHistoryClustersModuleDataParam, "1,2,2"}};
2084const FeatureEntry::FeatureParam kNtpHistoryClustersModuleV2TwoJourneys[] = {
2085 {ntp_features::kNtpHistoryClustersModuleDataParam, "2,2,2"}};
2086const FeatureEntry::FeatureParam kNtpHistoryClustersModuleV2ThreeJourneys[] = {
2087 {ntp_features::kNtpHistoryClustersModuleDataParam, "3,2,2"}};
Roman Arora6a6024d12023-03-03 21:05:392088const FeatureEntry::FeatureVariation kNtpHistoryClustersModuleVariations[] = {
2089 {"- Fake Data - Layout 1", kNtpHistoryClustersModuleFakeData2Visits2Images,
2090 std::size(kNtpHistoryClustersModuleFakeData2Visits2Images), nullptr},
2091 {"- Fake Data - Layout 2", kNtpHistoryClustersModuleFakeData3Visits1Image,
2092 std::size(kNtpHistoryClustersModuleFakeData3Visits1Image), nullptr},
2093 {"- Fake Data - Layout 3", kNtpHistoryClustersModuleFakeData4Visits2Images,
Roman Arora1a108322023-05-03 16:57:362094 std::size(kNtpHistoryClustersModuleFakeData4Visits2Images), nullptr},
2095 {"- v2 Fake Data - 1 Journey", kNtpHistoryClustersModuleV2OneJourney,
2096 std::size(kNtpHistoryClustersModuleV2OneJourney), nullptr},
2097 {"- v2 Fake Data - 2 Journeys", kNtpHistoryClustersModuleV2TwoJourneys,
2098 std::size(kNtpHistoryClustersModuleV2TwoJourneys), nullptr},
2099 {"- v2 Fake Data - 3 Journeys", kNtpHistoryClustersModuleV2ThreeJourneys,
2100 std::size(kNtpHistoryClustersModuleV2ThreeJourneys), nullptr},
2101};
Roman Arora6a6024d12023-03-03 21:05:392102
Yue Zhang39cc2252023-04-19 15:44:362103const FeatureEntry::FeatureParam
2104 kNtpChromeCartInHistoryClustersModuleFakeData0[] = {
2105 {ntp_features::kNtpChromeCartInHistoryClustersModuleDataParam, "0"}};
2106const FeatureEntry::FeatureParam
2107 kNtpChromeCartInHistoryClustersModuleFakeData1[] = {
2108 {ntp_features::kNtpChromeCartInHistoryClustersModuleDataParam, "1"}};
2109const FeatureEntry::FeatureParam
2110 kNtpChromeCartInHistoryClustersModuleFakeData2[] = {
2111 {ntp_features::kNtpChromeCartInHistoryClustersModuleDataParam, "3"}};
2112const FeatureEntry::FeatureParam
2113 kNtpChromeCartInHistoryClustersModuleFakeData3[] = {
2114 {ntp_features::kNtpChromeCartInHistoryClustersModuleDataParam, "6"}};
2115
2116const FeatureEntry::FeatureVariation
2117 kNtpChromeCartInHistoryClustersModuleVariations[] = {
2118 {" - Fake cart: 0 product image",
2119 kNtpChromeCartInHistoryClustersModuleFakeData0,
2120 std::size(kNtpChromeCartInHistoryClustersModuleFakeData0), nullptr},
2121 {" - Fake cart: 1 product image",
2122 kNtpChromeCartInHistoryClustersModuleFakeData1,
2123 std::size(kNtpChromeCartInHistoryClustersModuleFakeData1), nullptr},
2124 {" - Fake cart: 3 product images",
2125 kNtpChromeCartInHistoryClustersModuleFakeData2,
2126 std::size(kNtpChromeCartInHistoryClustersModuleFakeData2), nullptr},
2127 {" - Fake cart: 6 product images",
2128 kNtpChromeCartInHistoryClustersModuleFakeData3,
2129 std::size(kNtpChromeCartInHistoryClustersModuleFakeData3), nullptr}};
2130
Paul Adedejif0a215d82022-08-03 01:55:462131const FeatureEntry::FeatureParam kNtpMiddleSlotPromoDismissalFakeData[] = {
2132 {ntp_features::kNtpMiddleSlotPromoDismissalParam, "fake"}};
2133const FeatureEntry::FeatureVariation kNtpMiddleSlotPromoDismissalVariations[] =
2134 {
2135 {"- Fake Data", kNtpMiddleSlotPromoDismissalFakeData,
2136 std::size(kNtpMiddleSlotPromoDismissalFakeData), nullptr},
2137};
2138
Jeremy Selier4ced86ee2021-10-02 18:35:192139const FeatureEntry::FeatureParam kNtpPhotosModuleFakeData0[] = {
2140 {ntp_features::kNtpPhotosModuleDataParam, "0"}};
2141const FeatureEntry::FeatureParam kNtpPhotosModuleFakeData1[] = {
2142 {ntp_features::kNtpPhotosModuleDataParam, "1"}};
2143const FeatureEntry::FeatureParam kNtpPhotosModuleFakeData2[] = {
2144 {ntp_features::kNtpPhotosModuleDataParam, "2"}};
2145const FeatureEntry::FeatureParam kNtpPhotosModuleFakeData3[] = {
2146 {ntp_features::kNtpPhotosModuleDataParam, "3"}};
2147const FeatureEntry::FeatureParam kNtpPhotosModuleFakeData4[] = {
2148 {ntp_features::kNtpPhotosModuleDataParam, "4"}};
2149
2150const FeatureEntry::FeatureVariation kNtpPhotosModuleVariations[] = {
2151 {" - Fake memories: 0", kNtpPhotosModuleFakeData0,
Daniel Cheng7d9e3d52022-02-26 09:03:242152 std::size(kNtpPhotosModuleFakeData0), nullptr},
Jeremy Selier4ced86ee2021-10-02 18:35:192153 {" - Fake memories: 1", kNtpPhotosModuleFakeData1,
Daniel Cheng7d9e3d52022-02-26 09:03:242154 std::size(kNtpPhotosModuleFakeData1), nullptr},
Jeremy Selier4ced86ee2021-10-02 18:35:192155 {" - Fake memories: 2", kNtpPhotosModuleFakeData2,
Daniel Cheng7d9e3d52022-02-26 09:03:242156 std::size(kNtpPhotosModuleFakeData2), nullptr},
Jeremy Selier4ced86ee2021-10-02 18:35:192157 {" - Fake memories: 3", kNtpPhotosModuleFakeData3,
Daniel Cheng7d9e3d52022-02-26 09:03:242158 std::size(kNtpPhotosModuleFakeData3), nullptr},
Jeremy Selier4ced86ee2021-10-02 18:35:192159 {" - Fake memories: 4", kNtpPhotosModuleFakeData4,
Daniel Cheng7d9e3d52022-02-26 09:03:242160 std::size(kNtpPhotosModuleFakeData4), nullptr}};
Jeremy Selier4ced86ee2021-10-02 18:35:192161
Madhuri Palagummifb44d9e2022-02-17 04:02:062162const FeatureEntry::FeatureParam kNtpPhotosModuleOptInRHTitle[] = {
2163 {ntp_features::kNtpPhotosModuleOptInTitleParam, "0"}};
2164const FeatureEntry::FeatureParam kNtpPhotosModuleOptInFavoriteTitle[] = {
2165 {ntp_features::kNtpPhotosModuleOptInTitleParam, "1"}};
2166const FeatureEntry::FeatureParam kNtpPhotosModuleOptInPersonalizedTitle[] = {
2167 {ntp_features::kNtpPhotosModuleOptInTitleParam, "2"}};
Madhuri Palagummic0fb2842022-02-18 19:17:382168const FeatureEntry::FeatureParam kNtpPhotosModuleOptInTripsTitle[] = {
2169 {ntp_features::kNtpPhotosModuleOptInTitleParam, "3"}};
Madhuri Palagummifb44d9e2022-02-17 04:02:062170
2171const FeatureEntry::FeatureVariation kNtpPhotosModuleOptInTitleVariations[] = {
2172 {" - Recent Highlights", kNtpPhotosModuleOptInRHTitle,
Daniel Cheng7d9e3d52022-02-26 09:03:242173 std::size(kNtpPhotosModuleOptInRHTitle), nullptr},
Madhuri Palagummifb44d9e2022-02-17 04:02:062174 {" - Favorite people", kNtpPhotosModuleOptInFavoriteTitle,
Daniel Cheng7d9e3d52022-02-26 09:03:242175 std::size(kNtpPhotosModuleOptInFavoriteTitle), nullptr},
Madhuri Palagummifb44d9e2022-02-17 04:02:062176 {" - Personalized title", kNtpPhotosModuleOptInPersonalizedTitle,
Daniel Cheng7d9e3d52022-02-26 09:03:242177 std::size(kNtpPhotosModuleOptInPersonalizedTitle), nullptr},
Madhuri Palagummic0fb2842022-02-18 19:17:382178 {" - Trips title", kNtpPhotosModuleOptInTripsTitle,
Daniel Cheng7d9e3d52022-02-26 09:03:242179 std::size(kNtpPhotosModuleOptInTripsTitle), nullptr}};
Madhuri Palagummifb44d9e2022-02-17 04:02:062180
Madhuri Palagummib85db64172022-02-18 02:32:052181const FeatureEntry::FeatureParam kNtpPhotosModuleLogo1ArtWork[] = {
2182 {ntp_features::kNtpPhotosModuleOptInArtWorkParam, "1"}};
2183const FeatureEntry::FeatureParam kNtpPhotosModuleLogo2ArtWork[] = {
2184 {ntp_features::kNtpPhotosModuleOptInArtWorkParam, "2"}};
2185const FeatureEntry::FeatureParam kNtpPhotosModuleIllustrationsArtWork[] = {
2186 {ntp_features::kNtpPhotosModuleOptInArtWorkParam, "3"}};
2187const FeatureEntry::FeatureParam kNtpPhotosModuleStockpileArtWork[] = {
2188 {ntp_features::kNtpPhotosModuleOptInArtWorkParam, "4"}};
2189
2190const FeatureEntry::FeatureVariation kNtpPhotosModuleOptInArtWorkVariations[] =
2191 {{" - Artwork with Logo - 1", kNtpPhotosModuleLogo1ArtWork,
Daniel Cheng7d9e3d52022-02-26 09:03:242192 std::size(kNtpPhotosModuleLogo1ArtWork), nullptr},
Madhuri Palagummib85db64172022-02-18 02:32:052193 {" - Artwork with Logo - 2", kNtpPhotosModuleLogo2ArtWork,
Daniel Cheng7d9e3d52022-02-26 09:03:242194 std::size(kNtpPhotosModuleLogo2ArtWork), nullptr},
Madhuri Palagummib85db64172022-02-18 02:32:052195 {" - Artwork with Illustrations", kNtpPhotosModuleIllustrationsArtWork,
Daniel Cheng7d9e3d52022-02-26 09:03:242196 std::size(kNtpPhotosModuleIllustrationsArtWork), nullptr},
Madhuri Palagummib85db64172022-02-18 02:32:052197 {" - Artwork with Stockpile", kNtpPhotosModuleStockpileArtWork,
Daniel Cheng7d9e3d52022-02-26 09:03:242198 std::size(kNtpPhotosModuleStockpileArtWork), nullptr}};
Madhuri Palagummib85db64172022-02-18 02:32:052199
John Lee07f68aa2023-05-19 21:32:582200const FeatureEntry::FeatureParam kNtpRealboxRevertWidthOnBlur[] = {
2201 {ntp_features::kNtpRealboxWidthBehaviorParam, "revert"}};
2202const FeatureEntry::FeatureParam kNtpRealboxAlwaysWide[] = {
2203 {ntp_features::kNtpRealboxWidthBehaviorParam, "wide"}};
2204const FeatureEntry::FeatureVariation kNtpRealboxWidthBehaviorVariations[] = {
2205 {" - Reverts back on blur if there is secondary column",
2206 kNtpRealboxRevertWidthOnBlur, std::size(kNtpRealboxRevertWidthOnBlur),
2207 nullptr},
2208 {" - Always wide", kNtpRealboxAlwaysWide, std::size(kNtpRealboxAlwaysWide),
2209 nullptr}};
2210
Paul Adedeji8fbfb252022-07-25 19:08:012211const FeatureEntry::FeatureParam kNtpRecipeTasksModuleFakeData[] = {
2212 {ntp_features::kNtpRecipeTasksModuleDataParam, "fake"}};
2213const FeatureEntry::FeatureParam kNtpRecipeTasksModuleHistorical7Days[] = {
2214 {ntp_features::kNtpRecipeTasksModuleExperimentGroupParam, "historical-7"}};
2215const FeatureEntry::FeatureParam kNtpRecipeTasksModuleHistorical14Days[] = {
2216 {ntp_features::kNtpRecipeTasksModuleExperimentGroupParam, "historical-14"}};
2217const FeatureEntry::FeatureParam kNtpRecipeTasksModuleMix7Days[] = {
2218 {ntp_features::kNtpRecipeTasksModuleExperimentGroupParam, "mix-7"}};
2219const FeatureEntry::FeatureParam kNtpRecipeTasksModuleMix14Days[] = {
2220 {ntp_features::kNtpRecipeTasksModuleExperimentGroupParam, "mix-14"}};
2221const FeatureEntry::FeatureVariation kNtpRecipeTasksModuleVariations[] = {
2222 {"- Fake Data", kNtpRecipeTasksModuleFakeData,
2223 std::size(kNtpRecipeTasksModuleFakeData), nullptr},
2224 {"- Historical Arm (7 days)", kNtpRecipeTasksModuleHistorical7Days,
2225 std::size(kNtpRecipeTasksModuleHistorical7Days), "t3349934"},
2226 {"- Historical Arm (14 days)", kNtpRecipeTasksModuleHistorical14Days,
2227 std::size(kNtpRecipeTasksModuleHistorical14Days), "t3349935"},
2228 {"- Recommended Mix Arm (7 days)", kNtpRecipeTasksModuleMix7Days,
2229 std::size(kNtpRecipeTasksModuleMix7Days), "t3349936"},
2230 {"- Recommended Mix Arm (14 days)", kNtpRecipeTasksModuleMix14Days,
2231 std::size(kNtpRecipeTasksModuleMix14Days), "t3349937"},
2232};
2233
Rohit Bhatia34189362021-09-04 03:55:202234const FeatureEntry::FeatureParam kNtpSafeBrowsingModuleFastCooldown[] = {
2235 {ntp_features::kNtpSafeBrowsingModuleCooldownPeriodDaysParam, "0.001"},
2236 {ntp_features::kNtpSafeBrowsingModuleCountMaxParam, "1"}};
2237const FeatureEntry::FeatureVariation kNtpSafeBrowsingModuleVariations[] = {
2238 {"(Fast Cooldown)", kNtpSafeBrowsingModuleFastCooldown,
Daniel Cheng7d9e3d52022-02-26 09:03:242239 std::size(kNtpSafeBrowsingModuleFastCooldown), nullptr},
Rohit Bhatia34189362021-09-04 03:55:202240};
Xiaohan Wang064b68cd2022-01-19 19:12:282241#endif // !BUILDFLAG(IS_ANDROID)
Moe Ahmadi113a0872020-08-10 21:07:402242
Xiaohan Wang064b68cd2022-01-19 19:12:282243#if BUILDFLAG(IS_ANDROID)
Anthony Vallee-Dubois265c5692018-06-01 15:57:142244
Donn Denmanbe6617c2021-03-01 15:17:002245const FeatureEntry::FeatureParam kRelatedSearchesUrl = {"stamp", "1Ru"};
2246const FeatureEntry::FeatureParam kRelatedSearchesContent = {"stamp", "1Rc"};
Gang Wu149fccb72023-03-03 00:40:282247const FeatureEntry::FeatureParam kRelatedSearchesAllLanguages = {
2248 "all_languages", "true"};
Donn Denmanbe6617c2021-03-01 15:17:002249const FeatureEntry::FeatureVariation kRelatedSearchesVariations[] = {
2250 {"from URL", &kRelatedSearchesUrl, 1, nullptr},
2251 {"from content", &kRelatedSearchesContent, 1, nullptr},
Gang Wu149fccb72023-03-03 00:40:282252 {"support all languages", &kRelatedSearchesAllLanguages, 1, nullptr},
Donn Denmanbe6617c2021-03-01 15:17:002253};
Donn Denmanbe6617c2021-03-01 15:17:002254
Gang Wufc9c6f52022-09-13 05:28:192255const FeatureEntry::FeatureParam kContextualSearchSuppressShortViewWith300Dp[] =
2256 {{"contextual_search_minimum_page_height_dp", "300"}};
2257const FeatureEntry::FeatureParam kContextualSearchSuppressShortViewWith400Dp[] =
2258 {{"contextual_search_minimum_page_height_dp", "400"}};
2259const FeatureEntry::FeatureParam kContextualSearchSuppressShortViewWith500Dp[] =
2260 {{"contextual_search_minimum_page_height_dp", "500"}};
2261const FeatureEntry::FeatureParam kContextualSearchSuppressShortViewWith600Dp[] =
2262 {{"contextual_search_minimum_page_height_dp", "600"}};
2263const FeatureEntry::FeatureVariation
2264 kContextualSearchSuppressShortViewVariations[] = {
2265 {"(300 dp)", kContextualSearchSuppressShortViewWith300Dp,
2266 std::size(kContextualSearchSuppressShortViewWith300Dp), nullptr},
2267 {"(400 dp)", kContextualSearchSuppressShortViewWith400Dp,
2268 std::size(kContextualSearchSuppressShortViewWith400Dp), nullptr},
2269 {"(500 dp)", kContextualSearchSuppressShortViewWith500Dp,
2270 std::size(kContextualSearchSuppressShortViewWith500Dp), nullptr},
2271 {"(600 dp)", kContextualSearchSuppressShortViewWith600Dp,
2272 std::size(kContextualSearchSuppressShortViewWith600Dp), nullptr},
2273};
2274
Xiaohan Wang064b68cd2022-01-19 19:12:282275#endif // BUILDFLAG(IS_ANDROID)
Dan Harrington541db9e2018-07-30 18:36:302276
Joao Victor Almeida371702c2021-01-08 18:41:562277const FeatureEntry::FeatureParam
2278 kResamplingScrollEventsPredictionTimeBasedEnabled[] = {
2279 {"mode", features::kPredictionTypeTimeBased},
2280 {"latency", features::kPredictionTypeDefaultTime}};
2281const FeatureEntry::FeatureParam
2282 kResamplingScrollEventsPredictionFramesBasedEnabled[] = {
2283 {"mode", features::kPredictionTypeFramesBased},
2284 {"latency", features::kPredictionTypeDefaultFramesRatio}};
2285const FeatureEntry::FeatureVariation
2286 kResamplingScrollEventsExperimentalPredictionVariations[] = {
2287 {features::kPredictionTypeTimeBased,
2288 kResamplingScrollEventsPredictionTimeBasedEnabled,
Daniel Cheng7d9e3d52022-02-26 09:03:242289 std::size(kResamplingScrollEventsPredictionTimeBasedEnabled), nullptr},
Joao Victor Almeida371702c2021-01-08 18:41:562290 {features::kPredictionTypeFramesBased,
2291 kResamplingScrollEventsPredictionFramesBasedEnabled,
Daniel Cheng7d9e3d52022-02-26 09:03:242292 std::size(kResamplingScrollEventsPredictionFramesBasedEnabled),
Joao Victor Almeida371702c2021-01-08 18:41:562293 nullptr}};
2294
Xiaohan Wang064b68cd2022-01-19 19:12:282295#if BUILDFLAG(IS_ANDROID)
Calder Kitagawa42d24892023-03-14 18:25:432296const FeatureEntry::FeatureParam kTabGroupsContinuationAndroid_LowEndSupport[] =
2297 {
2298 {"gts-low-end-support", "true"},
2299 {"gts-accessibility-support", "false"},
2300 {"gts-accessibility-list-mode", "false"},
2301};
2302const FeatureEntry::FeatureParam
2303 kTabGroupsContinuationAndroid_LowEndAndAccessibilitySupport[] = {
2304 {"gts-low-end-support", "true"},
2305 {"gts-accessibility-support", "true"},
2306 {"gts-accessibility-list-mode", "false"},
2307};
2308const FeatureEntry::FeatureParam
2309 kTabGroupsContinuationAndroid_LowEndAndAccessibilityListSupport[] = {
2310 {"gts-low-end-support", "true"},
2311 {"gts-accessibility-support", "true"},
2312 {"gts-accessibility-list-mode", "true"},
2313};
2314const FeatureEntry::FeatureVariation kTabGroupsContinuationAndroidVariations[] =
2315 {
2316 {"Low-end device support", kTabGroupsContinuationAndroid_LowEndSupport,
2317 std::size(kTabGroupsContinuationAndroid_LowEndSupport), nullptr},
2318 {"Low-end & Accessibility Grid or List support",
2319 kTabGroupsContinuationAndroid_LowEndAndAccessibilitySupport,
2320 std::size(kTabGroupsContinuationAndroid_LowEndAndAccessibilitySupport),
2321 nullptr},
2322 {"Low-end & Accessibility List-only support",
2323 kTabGroupsContinuationAndroid_LowEndAndAccessibilityListSupport,
2324 std::size(
2325 kTabGroupsContinuationAndroid_LowEndAndAccessibilityListSupport),
2326 nullptr},
2327};
2328
Xi Han3dec5782022-10-26 20:23:192329const FeatureEntry::FeatureParam kStartSurfaceReturnTime_Immediate[] = {
Xi Han151c671c2023-04-20 14:17:492330 {"start_surface_return_time_seconds", "0"},
2331 {"start_surface_return_time_on_tablet_seconds", "0"}};
Xi Han8224f2c2023-01-16 21:07:212332const FeatureEntry::FeatureParam kStartSurfaceReturnTime_10Seconds[] = {
Xi Han151c671c2023-04-20 14:17:492333 {"start_surface_return_time_seconds", "10"},
2334 {"start_surface_return_time_on_tablet_seconds", "10"}};
Xi Han3dec5782022-10-26 20:23:192335const FeatureEntry::FeatureParam kStartSurfaceReturnTime_1Minute[] = {
Xi Han151c671c2023-04-20 14:17:492336 {"start_surface_return_time_seconds", "60"},
2337 {"start_surface_return_time_on_tablet_seconds", "60"}};
Xi Han3dec5782022-10-26 20:23:192338const FeatureEntry::FeatureParam kStartSurfaceReturnTime_5Minute[] = {
Xi Han151c671c2023-04-20 14:17:492339 {"start_surface_return_time_seconds", "300"},
2340 {"start_surface_return_time_on_tablet_seconds", "300"}};
Xi Han3dec5782022-10-26 20:23:192341const FeatureEntry::FeatureParam kStartSurfaceReturnTime_60Minute[] = {
Xi Han151c671c2023-04-20 14:17:492342 {"start_surface_return_time_seconds", "3600"},
2343 {"start_surface_return_time_on_tablet_seconds", "3600"}};
Xi Han3dec5782022-10-26 20:23:192344const FeatureEntry::FeatureVariation kStartSurfaceReturnTimeVariations[] = {
2345 {"Immediate", kStartSurfaceReturnTime_Immediate,
2346 std::size(kStartSurfaceReturnTime_Immediate), nullptr},
Xi Han8224f2c2023-01-16 21:07:212347 {"10 seconds", kStartSurfaceReturnTime_10Seconds,
2348 std::size(kStartSurfaceReturnTime_10Seconds), nullptr},
Xi Han3dec5782022-10-26 20:23:192349 {"1 minute", kStartSurfaceReturnTime_1Minute,
2350 std::size(kStartSurfaceReturnTime_1Minute), nullptr},
2351 {"5 minute", kStartSurfaceReturnTime_5Minute,
2352 std::size(kStartSurfaceReturnTime_5Minute), nullptr},
2353 {"60 minute", kStartSurfaceReturnTime_60Minute,
2354 std::size(kStartSurfaceReturnTime_60Minute), nullptr},
2355};
2356#endif // BUILDFLAG(IS_ANDROID)
2357#if BUILDFLAG(IS_ANDROID)
Yue Zhangd7013b532019-06-20 00:06:222358const FeatureEntry::FeatureParam kTabGridLayoutAndroid_NewTabVariation[] = {
Wei-Yin Chen (陳威尹)70819862020-01-16 09:19:592359 {"tab_grid_layout_android_new_tab", "NewTabVariation"},
2360 {"allow_to_refetch", "true"}};
Yue Zhangd7013b532019-06-20 00:06:222361
Mei Liangdc9585c2020-08-17 00:45:302362const FeatureEntry::FeatureParam kTabGridLayoutAndroid_TallNTV[] = {
Sirisha Kavuluru1ca0bdc2022-03-31 00:11:442363 {"thumbnail_aspect_ratio", "0.85"},
Mei Liangdc9585c2020-08-17 00:45:302364 {"allow_to_refetch", "true"},
Calder Kitagawa2d180442023-03-10 17:13:562365 {"tab_grid_layout_android_new_tab", "NewTabVariation"}};
Wei-Yin Chen (陳威尹)70819862020-01-16 09:19:592366
Mei Liang5194ca32021-11-02 18:06:372367const FeatureEntry::FeatureParam
2368 kTabGridLayoutAndroid_TabGroupAutoCreation_TabGroupFirst[] = {
2369 {"enable_tab_group_auto_creation", "false"},
2370 {"show_open_in_tab_group_menu_item_first", "true"}};
2371
Mei Liang55b539442021-03-30 20:49:422372const FeatureEntry::FeatureParam kTabGridLayoutAndroid_TabGroupAutoCreation[] =
Mei Liang5194ca32021-11-02 18:06:372373 {{"enable_tab_group_auto_creation", "false"},
2374 {"show_open_in_tab_group_menu_item_first", "false"}};
Mei Liang55b539442021-03-30 20:49:422375
Yue Zhangd7013b532019-06-20 00:06:222376const FeatureEntry::FeatureVariation kTabGridLayoutAndroidVariations[] = {
2377 {"New Tab Variation", kTabGridLayoutAndroid_NewTabVariation,
Daniel Cheng7d9e3d52022-02-26 09:03:242378 std::size(kTabGridLayoutAndroid_NewTabVariation), nullptr},
Mei Liangdc9585c2020-08-17 00:45:302379 {"Tall NTV", kTabGridLayoutAndroid_TallNTV,
Daniel Cheng7d9e3d52022-02-26 09:03:242380 std::size(kTabGridLayoutAndroid_TallNTV), nullptr},
Mei Liang55b539442021-03-30 20:49:422381 {"Without auto group", kTabGridLayoutAndroid_TabGroupAutoCreation,
Daniel Cheng7d9e3d52022-02-26 09:03:242382 std::size(kTabGridLayoutAndroid_TabGroupAutoCreation), nullptr},
Mei Liang5194ca32021-11-02 18:06:372383 {"Without auto group-group first",
2384 kTabGridLayoutAndroid_TabGroupAutoCreation_TabGroupFirst,
Daniel Cheng7d9e3d52022-02-26 09:03:242385 std::size(kTabGridLayoutAndroid_TabGroupAutoCreation_TabGroupFirst),
Mei Liang5194ca32021-11-02 18:06:372386 nullptr},
Zhiyuan Cai7a67fff2021-06-18 21:35:532387};
2388
Mia Glaese57c6b192019-08-05 20:40:402389const FeatureEntry::FeatureParam kStartSurfaceAndroid_SingleSurface[] = {
Xi Hana9ec3882022-08-19 18:45:312390 {"open_ntp_instead_of_start", "false"},
Xi Han1c1b5462022-09-27 23:34:522391 {"open_start_as_homepage", "true"},
Xi Hana9ec3882022-08-19 18:45:312392 {"show_last_active_tab_only", "false"},
Xi Hand3ca0062021-07-27 13:03:252393 {"show_tabs_in_mru_order", "true"}};
Mia Glaese57c6b192019-08-05 20:40:402394
Xi Hanf9a4f20d2021-09-02 16:50:392395const FeatureEntry::FeatureParam kStartSurfaceAndroid_CandidateA[] = {
Xi Han1c1b5462022-09-27 23:34:522396 {"open_ntp_instead_of_start", "false"},
2397 {"open_start_as_homepage", "true"}};
Xi Hanf9a4f20d2021-09-02 16:50:392398
spdonghaoa8b196c2021-09-15 18:37:012399const FeatureEntry::FeatureParam kStartSurfaceAndroid_CandidateA_SyncCheck[] = {
Xi Hana9ec3882022-08-19 18:45:312400 {"open_ntp_instead_of_start", "false"},
Xi Han1c1b5462022-09-27 23:34:522401 {"open_start_as_homepage", "true"},
spdonghaoa8b196c2021-09-15 18:37:012402 {"check_sync_before_show_start_at_startup", "true"}};
2403
2404const FeatureEntry::FeatureParam
2405 kStartSurfaceAndroid_CandidateA_SigninPromoTimeLimit[] = {
Xi Hana9ec3882022-08-19 18:45:312406 {"open_ntp_instead_of_start", "false"},
Xi Han1c1b5462022-09-27 23:34:522407 {"open_start_as_homepage", "true"},
spdonghaoa8b196c2021-09-15 18:37:012408 {"sign_in_promo_show_since_last_background_limit_ms", "30000"}};
2409
Xi Hanf9a4f20d2021-09-02 16:50:392410const FeatureEntry::FeatureParam kStartSurfaceAndroid_CandidateB[] = {
Xi Hanf9a4f20d2021-09-02 16:50:392411 {"open_ntp_instead_of_start", "true"}};
2412
Side Yilmaza57553f92022-03-25 15:02:462413const FeatureEntry::FeatureParam
2414 kStartSurfaceAndroid_CandidateB_AlwaysShowIncognito[] = {
Xi Hana9ec3882022-08-19 18:45:312415 {"hide_switch_when_no_incognito_tabs", "false"}};
Side Yilmaza57553f92022-03-25 15:02:462416
Mia Glaese57c6b192019-08-05 20:40:402417const FeatureEntry::FeatureVariation kStartSurfaceAndroidVariations[] = {
Xi Han5f2854c12022-07-29 15:54:562418 {"Candidate A", kStartSurfaceAndroid_CandidateA,
Daniel Cheng7d9e3d52022-02-26 09:03:242419 std::size(kStartSurfaceAndroid_CandidateA), nullptr},
Xi Han5f2854c12022-07-29 15:54:562420 {"Candidate A + Sync check", kStartSurfaceAndroid_CandidateA_SyncCheck,
Daniel Cheng7d9e3d52022-02-26 09:03:242421 std::size(kStartSurfaceAndroid_CandidateA_SyncCheck), nullptr},
Xi Han5f2854c12022-07-29 15:54:562422 {"Candidate A + Sign in promo backgrounded time limit",
spdonghaoa8b196c2021-09-15 18:37:012423 kStartSurfaceAndroid_CandidateA_SigninPromoTimeLimit,
Daniel Cheng7d9e3d52022-02-26 09:03:242424 std::size(kStartSurfaceAndroid_CandidateA_SigninPromoTimeLimit), nullptr},
Xi Han5f2854c12022-07-29 15:54:562425 {"Candidate B", kStartSurfaceAndroid_CandidateB,
Daniel Cheng7d9e3d52022-02-26 09:03:242426 std::size(kStartSurfaceAndroid_CandidateB), nullptr},
Xi Han5f2854c12022-07-29 15:54:562427 {"Candidate B + Always show Incognito icon",
Side Yilmaza57553f92022-03-25 15:02:462428 kStartSurfaceAndroid_CandidateB_AlwaysShowIncognito,
2429 std::size(kStartSurfaceAndroid_CandidateB_AlwaysShowIncognito), nullptr},
Mia Glaese57c6b192019-08-05 20:40:402430 {"Single Surface", kStartSurfaceAndroid_SingleSurface,
Daniel Cheng7d9e3d52022-02-26 09:03:242431 std::size(kStartSurfaceAndroid_SingleSurface), nullptr},
Xi Handbe10bc02021-04-06 17:37:582432};
Yue Zhang922416a2020-05-12 00:20:452433
Xinyi Ji1f663ab2023-06-12 18:27:202434const FeatureEntry::FeatureParam kSurfacePolish_polish_omnibox_size[] = {
2435 {"polish_omnibox_size", "true"},
2436 {"polish_omnibox_color", "false"}};
2437
2438const FeatureEntry::FeatureParam
2439 kSurfacePolish_polish_omnibox_size_and_color[] = {
2440 {"polish_omnibox_size", "true"},
2441 {"polish_omnibox_color", "true"}};
2442
Xi Hand1b7e262023-06-15 12:34:552443const FeatureEntry::FeatureParam kSurfacePolish_use_magic_space[] = {
2444 {"polish_omnibox_size", "true"},
2445 {"polish_omnibox_color", "true"},
2446 {"use_magic_space", "true"}};
2447
Xinyi Ji1f663ab2023-06-12 18:27:202448const FeatureEntry::FeatureVariation kSurfacePolishVariations[] = {
2449 {"Polish omnibox size", kSurfacePolish_polish_omnibox_size,
2450 std::size(kSurfacePolish_polish_omnibox_size), nullptr},
2451 {"Polish omnibox size and color",
2452 kSurfacePolish_polish_omnibox_size_and_color,
2453 std::size(kSurfacePolish_polish_omnibox_size_and_color), nullptr},
Xi Hand1b7e262023-06-15 12:34:552454 {"Use magic space", kSurfacePolish_use_magic_space,
2455 std::size(kSurfacePolish_use_magic_space), nullptr},
Xinyi Ji1f663ab2023-06-12 18:27:202456};
2457
Xi Han8e1b2452022-05-26 15:43:162458const FeatureEntry::FeatureParam kFeedPositionAndroid_push_down_feed_small[] = {
2459 {"push_down_feed_small", "true"}};
2460
2461const FeatureEntry::FeatureParam kFeedPositionAndroid_push_down_feed_large[] = {
2462 {"push_down_feed_large", "true"}};
2463
2464const FeatureEntry::FeatureParam kFeedPositionAndroid_pull_up_feed[] = {
2465 {"pull_up_feed", "true"}};
2466
spdonghao1891d9e2022-07-08 04:08:432467const FeatureEntry::FeatureParam
2468 kFeedPositionAndroid_push_down_feed_large_target_feed_active[] = {
2469 {"push_down_feed_large", "true"},
2470 {"feed_active_targeting", "active"}};
2471
2472const FeatureEntry::FeatureParam
2473 kFeedPositionAndroid_push_down_feed_large_target_non_feed_active[] = {
2474 {"push_down_feed_large", "true"},
2475 {"feed_active_targeting", "non-active"}};
2476
2477const FeatureEntry::FeatureParam
2478 kFeedPositionAndroid_pull_up_feed_target_feed_active[] = {
2479 {"pull_up_feed", "true"},
2480 {"feed_active_targeting", "active"}};
2481
2482const FeatureEntry::FeatureParam
2483 kFeedPositionAndroid_pull_up_feed_target_non_feed_active[] = {
2484 {"pull_up_feed", "true"},
2485 {"feed_active_targeting", "non-active"}};
2486
Xi Han8e1b2452022-05-26 15:43:162487const FeatureEntry::FeatureVariation kFeedPositionAndroidVariations[] = {
2488 {"Push down Feed (small)", kFeedPositionAndroid_push_down_feed_small,
2489 std::size(kFeedPositionAndroid_push_down_feed_small), nullptr},
2490 {"Push down Feed (large)", kFeedPositionAndroid_push_down_feed_large,
2491 std::size(kFeedPositionAndroid_push_down_feed_large), nullptr},
2492 {"Pull up Feed", kFeedPositionAndroid_pull_up_feed,
2493 std::size(kFeedPositionAndroid_pull_up_feed), nullptr},
spdonghao1891d9e2022-07-08 04:08:432494 {"Push down Feed (large) with targeting Feed active users",
2495 kFeedPositionAndroid_push_down_feed_large_target_feed_active,
2496 std::size(kFeedPositionAndroid_push_down_feed_large_target_feed_active),
2497 nullptr},
2498 {"Push down Feed (large) with targeting non-Feed active users",
2499 kFeedPositionAndroid_push_down_feed_large_target_non_feed_active,
2500 std::size(
2501 kFeedPositionAndroid_push_down_feed_large_target_non_feed_active),
2502 nullptr},
2503 {"Pull up Feed with targeting Feed active users",
2504 kFeedPositionAndroid_pull_up_feed_target_feed_active,
2505 std::size(kFeedPositionAndroid_pull_up_feed_target_feed_active), nullptr},
2506 {"Pull up Feed with targeting non-Feed active users",
2507 kFeedPositionAndroid_pull_up_feed_target_non_feed_active,
2508 std::size(kFeedPositionAndroid_pull_up_feed_target_non_feed_active),
2509 nullptr},
Xi Han8e1b2452022-05-26 15:43:162510};
2511
Xi Han502b0892022-07-06 18:22:162512const FeatureEntry::FeatureParam kSearchResumption_use_new_service[] = {
2513 {"use_new_service", "true"}};
2514const FeatureEntry::FeatureVariation
2515 kSearchResumptionModuleAndroidVariations[] = {
2516 {"Use New Service", kSearchResumption_use_new_service,
2517 std::size(kSearchResumption_use_new_service), nullptr},
2518};
2519
Shakti Sahue6d6fdd2022-02-05 02:29:062520const FeatureEntry::FeatureParam kFeatureNotificationGuide_low_engaged[] = {
2521 {"enable_feature_incognito_tab", "true"},
2522 {"enable_feature_ntp_suggestion_card", "true"},
2523 {"enable_feature_voice_search", "true"}};
2524
2525const FeatureEntry::FeatureParam kFeatureNotificationGuide_default_browser[] = {
2526 {"enable_feature_default_browser", "true"}};
2527
2528const FeatureEntry::FeatureVariation kFeatureNotificationGuideVariations[] = {
2529 {"Low engaged users", kFeatureNotificationGuide_low_engaged,
Daniel Cheng7d9e3d52022-02-26 09:03:242530 std::size(kFeatureNotificationGuide_low_engaged), nullptr},
Shakti Sahue6d6fdd2022-02-05 02:29:062531 {"Default browser", kFeatureNotificationGuide_default_browser,
Daniel Cheng7d9e3d52022-02-26 09:03:242532 std::size(kFeatureNotificationGuide_default_browser), nullptr},
Shakti Sahue6d6fdd2022-02-05 02:29:062533};
Salvador Guerrero4d5ff6e62022-03-24 00:03:202534
2535const FeatureEntry::FeatureParam
Salvador Guerrero4d5ff6e62022-03-24 00:03:202536 kNotificationPermissionRationale_show_dialog_next_start[] = {
2537 {"always_show_rationale_before_requesting_permission", "true"},
Salvador Guerrero4d5ff6e62022-03-24 00:03:202538 {"permission_request_interval_days", "0"},
2539};
2540
2541const FeatureEntry::FeatureVariation
2542 kNotificationPermissionRationaleVariations[] = {
Salvador Guerrero0af36992023-01-23 20:46:472543 {"- Show rationale UI on next startup",
Salvador Guerrero4d5ff6e62022-03-24 00:03:202544 kNotificationPermissionRationale_show_dialog_next_start,
2545 std::size(kNotificationPermissionRationale_show_dialog_next_start),
2546 nullptr},
Salvador Guerrero4d5ff6e62022-03-24 00:03:202547};
2548
Pete Williamson7c878152021-07-01 00:50:382549const FeatureEntry::FeatureParam kWebFeed_accelerator[] = {
Carlos Knippschildf727bc32021-07-26 21:34:082550 {"intro_style", "accelerator"}};
Pete Williamson7c878152021-07-01 00:50:382551
Carlos Knippschildf727bc32021-07-26 21:34:082552const FeatureEntry::FeatureParam kWebFeed_IPH[] = {{"intro_style", "IPH"}};
Pete Williamson7c878152021-07-01 00:50:382553
2554const FeatureEntry::FeatureVariation kWebFeedVariations[] = {
2555 {"accelerator recommendations", kWebFeed_accelerator,
Daniel Cheng7d9e3d52022-02-26 09:03:242556 std::size(kWebFeed_accelerator), nullptr},
2557 {"IPH recommendations", kWebFeed_IPH, std::size(kWebFeed_IPH), nullptr},
Pete Williamson7c878152021-07-01 00:50:382558};
2559
Pete Williamson564dee22022-05-02 18:14:372560const FeatureEntry::FeatureParam kWebFeedAwareness_new_animation[] = {
Cathy Li21473c22022-09-22 00:11:142561 {"awareness_style", "new_animation"}};
Cathy Li9f8e10a2022-10-14 02:15:142562const FeatureEntry::FeatureParam kWebFeedAwareness_new_animation_no_limit[] = {
2563 {"awareness_style", "new_animation_no_limit"}};
Pete Williamson564dee22022-05-02 18:14:372564
2565const FeatureEntry::FeatureParam kWebFeedAwareness_IPH[] = {
2566 {"awareness_style", "IPH"}};
2567
2568const FeatureEntry::FeatureVariation kWebFeedAwarenessVariations[] = {
2569 {"new animation", kWebFeedAwareness_new_animation,
2570 std::size(kWebFeedAwareness_new_animation), nullptr},
Cathy Li9f8e10a2022-10-14 02:15:142571 {"new animation rate limit off", kWebFeedAwareness_new_animation_no_limit,
2572 std::size(kWebFeedAwareness_new_animation_no_limit), nullptr},
Pete Williamson564dee22022-05-02 18:14:372573 {"IPH and dot", kWebFeedAwareness_IPH, std::size(kWebFeedAwareness_IPH),
2574 nullptr},
2575};
2576
Ian Wells6cf75a82022-07-13 02:11:022577const FeatureEntry::FeatureParam kFeedCloseRefresh_Open[] = {
2578 {"require_interaction", "false"}};
2579
2580const FeatureEntry::FeatureParam kFeedCloseRefresh_Interact[] = {
2581 {"require_interaction", "true"}};
2582
2583const FeatureEntry::FeatureVariation kFeedCloseRefreshVariations[] = {
2584 {"Open", kFeedCloseRefresh_Open, std::size(kFeedCloseRefresh_Open),
2585 nullptr},
2586 {"Interact", kFeedCloseRefresh_Interact,
2587 std::size(kFeedCloseRefresh_Interact), nullptr},
2588};
2589
Xiaohan Wang064b68cd2022-01-19 19:12:282590#endif // BUILDFLAG(IS_ANDROID)
Yue Zhangd7013b532019-06-20 00:06:222591
Xiaohan Wang064b68cd2022-01-19 19:12:282592#if BUILDFLAG(IS_ANDROID)
Shakti Sahu1c04a2872021-03-17 16:38:482593const FeatureEntry::FeatureParam kAddToHomescreen_UseTextBubble[] = {
2594 {"use_text_bubble", "true"}};
2595const FeatureEntry::FeatureParam kAddToHomescreen_UseMessage[] = {
2596 {"use_message", "true"}};
2597
2598const FeatureEntry::FeatureVariation kAddToHomescreenIPHVariations[] = {
2599 {"Use Text Bubble", kAddToHomescreen_UseTextBubble,
Daniel Cheng7d9e3d52022-02-26 09:03:242600 std::size(kAddToHomescreen_UseTextBubble), nullptr},
Shakti Sahu1c04a2872021-03-17 16:38:482601 {"Use Message", kAddToHomescreen_UseMessage,
Daniel Cheng7d9e3d52022-02-26 09:03:242602 std::size(kAddToHomescreen_UseMessage), nullptr}};
Shakti Sahu1c04a2872021-03-17 16:38:482603#endif
2604
Xiaohan Wang064b68cd2022-01-19 19:12:282605#if BUILDFLAG(IS_ANDROID)
Caitlin Fischer37e01232019-05-24 13:05:452606const FeatureEntry::FeatureParam
2607 kAutofillUseMobileLabelDisambiguationShowAll[] = {
2608 {autofill::features::kAutofillUseMobileLabelDisambiguationParameterName,
2609 autofill::features::
2610 kAutofillUseMobileLabelDisambiguationParameterShowAll}};
2611const FeatureEntry::FeatureParam
2612 kAutofillUseMobileLabelDisambiguationShowOne[] = {
2613 {autofill::features::kAutofillUseMobileLabelDisambiguationParameterName,
2614 autofill::features::
2615 kAutofillUseMobileLabelDisambiguationParameterShowOne}};
2616
2617const FeatureEntry::FeatureVariation
2618 kAutofillUseMobileLabelDisambiguationVariations[] = {
2619 {"(show all)", kAutofillUseMobileLabelDisambiguationShowAll,
Daniel Cheng7d9e3d52022-02-26 09:03:242620 std::size(kAutofillUseMobileLabelDisambiguationShowAll), nullptr},
Caitlin Fischer37e01232019-05-24 13:05:452621 {"(show one)", kAutofillUseMobileLabelDisambiguationShowOne,
Daniel Cheng7d9e3d52022-02-26 09:03:242622 std::size(kAutofillUseMobileLabelDisambiguationShowOne), nullptr}};
Xiaohan Wang064b68cd2022-01-19 19:12:282623#endif // BUILDFLAG(IS_ANDROID)
Caitlin Fischer37e01232019-05-24 13:05:452624
Christian Dullweber9c020232023-06-06 07:44:282625constexpr FeatureEntry::FeatureParam kStorageAccessAPI_WithPrompt[] = {
2626 {"storage_access_api_auto_deny_outside_fps", "false"}};
2627
2628const FeatureEntry::FeatureVariation kStorageAccessAPIVariations[] = {
2629 {"(with prompt)", kStorageAccessAPI_WithPrompt,
2630 std::size(kStorageAccessAPI_WithPrompt), nullptr}};
2631
Xiaohan Wang064b68cd2022-01-19 19:12:282632#if BUILDFLAG(IS_ANDROID)
Yu Su49408c02021-03-12 02:04:132633const FeatureEntry::FeatureParam kLensCameraAssistedSearchLensButtonStart[] = {
2634 {"searchBoxStartVariantForLensCameraAssistedSearch", "true"}};
2635
2636const FeatureEntry::FeatureParam kLensCameraAssistedSearchLensButtonEnd[] = {
2637 {"searchBoxStartVariantForLensCameraAssistedSearch", "false"}};
2638
Yu Su438965c2021-07-13 23:11:592639const FeatureEntry::FeatureParam
2640 kLensCameraAssistedSkipAgsaVersionCheckEnabled[] = {
2641 {"skipAgsaVersionCheck", "true"}};
2642
2643const FeatureEntry::FeatureParam
2644 kLensCameraAssistedSkipAgsaVersionCheckDisabled[] = {
2645 {"skipAgsaVersionCheck", "false"}};
2646
Yu Su42a4ea62022-04-05 19:59:042647const FeatureEntry::FeatureParam kLensCameraAssistedSearchOnTablet[] = {
2648 {"enableCameraAssistedSearchOnTablet", "true"}};
2649
Yu Su49408c02021-03-12 02:04:132650const FeatureEntry::FeatureVariation kLensCameraAssistedSearchVariations[] = {
2651 {"(Lens then Mic)", kLensCameraAssistedSearchLensButtonStart,
Daniel Cheng7d9e3d52022-02-26 09:03:242652 std::size(kLensCameraAssistedSearchLensButtonStart), nullptr},
Yu Su49408c02021-03-12 02:04:132653 {"(Mic then Lens)", kLensCameraAssistedSearchLensButtonEnd,
Daniel Cheng7d9e3d52022-02-26 09:03:242654 std::size(kLensCameraAssistedSearchLensButtonEnd), nullptr},
Yu Su438965c2021-07-13 23:11:592655 {"(without AGSA version check)",
2656 kLensCameraAssistedSkipAgsaVersionCheckEnabled,
Daniel Cheng7d9e3d52022-02-26 09:03:242657 std::size(kLensCameraAssistedSkipAgsaVersionCheckEnabled), nullptr},
Yu Su438965c2021-07-13 23:11:592658 {"(with AGSA version check )",
2659 kLensCameraAssistedSkipAgsaVersionCheckDisabled,
Yu Su42a4ea62022-04-05 19:59:042660 std::size(kLensCameraAssistedSkipAgsaVersionCheckDisabled), nullptr},
2661 {"(on Tablet)", kLensCameraAssistedSearchOnTablet,
2662 std::size(kLensCameraAssistedSearchOnTablet), nullptr}};
Yu Su49408c02021-03-12 02:04:132663
Yu Sue12813392022-02-15 19:26:252664const FeatureEntry::FeatureParam kLensContextMenuSearchOnTablet[] = {
2665 {"enableContextMenuSearchOnTablet", "true"}};
2666
2667const FeatureEntry::FeatureVariation kLensContextMenuSearchVariations[] = {
2668 {"(on Tablet)", kLensContextMenuSearchOnTablet,
Daniel Cheng7d9e3d52022-02-26 09:03:242669 std::size(kLensContextMenuSearchOnTablet), nullptr},
Yu Sue12813392022-02-15 19:26:252670};
2671
Anudeep Palankic903c59e2023-01-26 16:46:552672const FeatureEntry::FeatureParam kContextMenuSearchImageWithGoogle[] = {
2673 {"useLensContextMenuAlternateText1", "true"}};
2674
2675const FeatureEntry::FeatureParam kContextMenuSearchInsideImageWithGoogle[] = {
2676 {"useLensContextMenuAlternateText2", "true"}};
2677
2678const FeatureEntry::FeatureVariation
2679 kContextMenuGoogleLensSearchOptimizationVariations[] = {
2680 {"Context Menu: Search image With Google",
2681 kContextMenuSearchImageWithGoogle,
2682 std::size(kContextMenuSearchImageWithGoogle), nullptr},
2683 {"Context Menu: Search inside image With Google",
2684 kContextMenuSearchInsideImageWithGoogle,
2685 std::size(kContextMenuSearchInsideImageWithGoogle), nullptr},
2686};
2687
Xiaohan Wang064b68cd2022-01-19 19:12:282688#endif // BUILDFLAG(IS_ANDROID)
Yu Su50dfedd52020-06-19 02:34:492689
Xing Liu1919ec232019-07-22 20:38:042690const FeatureEntry::Choice kNotificationSchedulerChoices[] = {
2691 {flags_ui::kGenericExperimentChoiceDefault, "", ""},
2692 {flag_descriptions::
2693 kNotificationSchedulerImmediateBackgroundTaskDescription,
2694 notifications::switches::kNotificationSchedulerImmediateBackgroundTask,
2695 ""},
2696};
2697
Xiaohan Wang064b68cd2022-01-19 19:12:282698#if BUILDFLAG(IS_ANDROID)
Theresa Wellingtonc412e9b2019-09-23 18:16:302699
Gang Wu1044e8c2022-09-15 00:26:162700const FeatureEntry::FeatureParam
Patrick Noland7a51d502023-04-20 20:37:292701 kOmniboxModernizeVisualUpdateExcludeTabletsSmallMargin[] = {
Gang Wu1044e8c2022-09-15 00:26:162702 {"enable_modernize_visual_update_on_tablet", "false"},
Gang Wudc506f602022-10-14 17:48:572703 {"modernize_visual_update_active_color_on_omnibox", "true"},
2704 {"modernize_visual_update_small_bottom_margin", "true"}};
Gang Wu1044e8c2022-09-15 00:26:162705
2706const FeatureEntry::FeatureParam
Patrick Noland7a51d502023-04-20 20:37:292707 kOmniboxModernizeVisualUpdateExcludeTabletsSmallerMarginsMergeClipboard[] =
2708 {{"enable_modernize_visual_update_on_tablet", "false"},
2709 {"modernize_visual_update_active_color_on_omnibox", "true"},
2710 {"modernize_visual_update_smaller_margins", "true"},
2711 {"modernize_visual_update_merge_clipboard_on_ntp", "true"}};
2712
2713const FeatureEntry::FeatureParam
2714 kOmniboxModernizeVisualUpdateExcludeTabletsSmallestMargins[] = {
Gang Wu1044e8c2022-09-15 00:26:162715 {"enable_modernize_visual_update_on_tablet", "false"},
Gang Wudc506f602022-10-14 17:48:572716 {"modernize_visual_update_active_color_on_omnibox", "true"},
Patrick Noland7a51d502023-04-20 20:37:292717 {"modernize_visual_update_smallest_margins", "true"},
2718 {"modernize_visual_update_merge_clipboard_on_ntp", "false"}};
Gang Wudc506f602022-10-14 17:48:572719
2720const FeatureEntry::FeatureParam
Patrick Noland7a51d502023-04-20 20:37:292721 kOmniboxModernizeVisualUpdateExcludeTabletsSmallestMarginsMergeClipboard[] =
2722 {{"enable_modernize_visual_update_on_tablet", "false"},
2723 {"modernize_visual_update_active_color_on_omnibox", "true"},
2724 {"modernize_visual_update_smallest_margins", "true"},
2725 {"modernize_visual_update_merge_clipboard_on_ntp", "true"}};
Gang Wu684ddf52022-08-17 18:09:042726
2727const FeatureEntry::FeatureParam kOmniboxModernizeVisualUpdateIncludeTablets[] =
2728 {{"enable_modernize_visual_update_on_tablet", "true"}};
2729
Gang Wudc506f602022-10-14 17:48:572730const FeatureEntry::FeatureVariation kOmniboxModernizeVisualUpdateVariations[] = {
Patrick Noland7a51d502023-04-20 20:37:292731 {"(Small vertical margin)",
2732 kOmniboxModernizeVisualUpdateExcludeTabletsSmallMargin,
2733 std::size(kOmniboxModernizeVisualUpdateExcludeTabletsSmallMargin),
Gang Wudc506f602022-10-14 17:48:572734 nullptr},
Patrick Noland7a51d502023-04-20 20:37:292735 {"(Smaller margins, merge clipboard)",
2736 kOmniboxModernizeVisualUpdateExcludeTabletsSmallerMarginsMergeClipboard,
Gang Wudc506f602022-10-14 17:48:572737 std::size(
Patrick Noland7a51d502023-04-20 20:37:292738 kOmniboxModernizeVisualUpdateExcludeTabletsSmallerMarginsMergeClipboard),
Gang Wudc506f602022-10-14 17:48:572739 nullptr},
Patrick Noland7a51d502023-04-20 20:37:292740 {"(Smallest margins, merge clipboard)",
2741 kOmniboxModernizeVisualUpdateExcludeTabletsSmallestMarginsMergeClipboard,
Gang Wudc506f602022-10-14 17:48:572742 std::size(
Patrick Noland7a51d502023-04-20 20:37:292743 kOmniboxModernizeVisualUpdateExcludeTabletsSmallestMarginsMergeClipboard),
Gang Wudc506f602022-10-14 17:48:572744 nullptr},
Patrick Noland7a51d502023-04-20 20:37:292745 {"(Smallest margins, don't merge clipboard)",
2746 kOmniboxModernizeVisualUpdateExcludeTabletsSmallestMargins,
2747 std::size(kOmniboxModernizeVisualUpdateExcludeTabletsSmallestMargins),
Gang Wudc506f602022-10-14 17:48:572748 nullptr},
2749 {"(Tablet)", kOmniboxModernizeVisualUpdateIncludeTablets,
2750 std::size(kOmniboxModernizeVisualUpdateIncludeTablets), nullptr},
Gang Wu684ddf52022-08-17 18:09:042751};
2752
Finnur Thorarinsson4e43a0852023-03-23 09:20:022753const FeatureEntry::FeatureParam kPhotoPickerAdoptionStudyActionGetContent[] = {
2754 {"use_action_get_content", "true"}};
2755const FeatureEntry::FeatureParam kPhotoPickerAdoptionStudyActionPickImages[] = {
2756 {"use_action_pick_images", "true"}};
2757const FeatureEntry::FeatureParam
2758 kPhotoPickerAdoptionStudyActionPickImagesPlus[] = {
2759 {"use_action_pick_images_plus", "true"}};
2760const FeatureEntry::FeatureParam
2761 kPhotoPickerAdoptionStudyChromePickerWithoutBrowse[] = {
2762 {"chrome_picker_suppress_browse", "true"}};
2763
2764const FeatureEntry::FeatureVariation
2765 kPhotoPickerAdoptionStudyFeatureVariations[] = {
2766 {"(Android Picker w/ACTION_GET_CONTENT)",
2767 kPhotoPickerAdoptionStudyActionGetContent,
2768 std::size(kPhotoPickerAdoptionStudyActionGetContent), nullptr},
2769 {"(Android Picker w/ACTION_PICK_IMAGES)",
2770 kPhotoPickerAdoptionStudyActionPickImages,
2771 std::size(kPhotoPickerAdoptionStudyActionPickImages), nullptr},
2772 {"(Android Picker w/ACTION_PICK_IMAGES Plus)",
2773 kPhotoPickerAdoptionStudyActionPickImagesPlus,
2774 std::size(kPhotoPickerAdoptionStudyActionPickImagesPlus), nullptr},
2775 {"(Chrome Picker without Browse)",
2776 kPhotoPickerAdoptionStudyChromePickerWithoutBrowse,
2777 std::size(kPhotoPickerAdoptionStudyChromePickerWithoutBrowse),
2778 nullptr}};
Xiaohan Wang064b68cd2022-01-19 19:12:282779#endif // BUILDFLAG(IS_ANDROID)
Brandon Wylieb57a5dc2019-08-14 02:13:112780
Mingyu Leif208fa22022-09-08 04:10:492781// TODO(crbug.com/991082,1015377): Remove after proper support for back/forward
Arthur Hemery2fbd78e2019-10-17 18:31:192782// cache is implemented.
Alexander Timin45cc3fe2019-11-15 22:54:162783const FeatureEntry::FeatureParam kBackForwardCache_ForceCaching[] = {
2784 {"TimeToLiveInBackForwardCacheInSeconds", "300"},
Mingyu Leif208fa22022-09-08 04:10:492785 {"should_ignore_blocklists", "true"}};
Alexander Timin6d24bd2f2019-09-17 19:52:032786
2787const FeatureEntry::FeatureVariation kBackForwardCacheVariations[] = {
Rakina Zata Amni95a2a91d2020-07-14 12:41:442788 {"force caching all pages (experimental)", kBackForwardCache_ForceCaching,
Daniel Cheng7d9e3d52022-02-26 09:03:242789 std::size(kBackForwardCache_ForceCaching), nullptr},
Alexander Timin6d24bd2f2019-09-17 19:52:032790};
2791
Rakina Zata Amnibd37a572023-06-14 09:58:162792const FeatureEntry::FeatureParam kRenderDocument_Subframe[] = {
2793 {"level", "subframe"}};
2794const FeatureEntry::FeatureParam kRenderDocument_AllFrames[] = {
2795 {"level", "all-frames"}};
2796
2797const FeatureEntry::FeatureVariation kRenderDocumentVariations[] = {
2798 {"Swap RenderFrameHosts on same-site navigations from subframes and "
2799 "crashed frames (experimental)",
2800 kRenderDocument_Subframe, std::size(kRenderDocument_Subframe), nullptr},
2801 {"Swap RenderFrameHosts on same-site navigations from any frame "
2802 "(experimental)",
2803 kRenderDocument_AllFrames, std::size(kRenderDocument_AllFrames), nullptr},
2804};
2805
Xiaohan Wang064b68cd2022-01-19 19:12:282806#if BUILDFLAG(IS_ANDROID)
Yi Gu13cc7242020-12-10 03:23:372807const FeatureEntry::Choice kWebOtpBackendChoices[] = {
2808 {flags_ui::kGenericExperimentChoiceDefault, "", ""},
2809 {flag_descriptions::kWebOtpBackendSmsVerification, switches::kWebOtpBackend,
2810 switches::kWebOtpBackendSmsVerification},
2811 {flag_descriptions::kWebOtpBackendUserConsent, switches::kWebOtpBackend,
2812 switches::kWebOtpBackendUserConsent},
2813 {flag_descriptions::kWebOtpBackendAuto, switches::kWebOtpBackend,
2814 switches::kWebOtpBackendAuto},
Ayu Ishiidbdd5c92020-03-20 23:40:522815};
Xing Liu06f2fa02020-04-30 02:45:192816
Min Qindb99e6f2020-04-29 06:37:262817const FeatureEntry::Choice kQueryTilesCountryChoices[] = {
2818 {flags_ui::kGenericExperimentChoiceDefault, "", ""},
2819 {flag_descriptions::kQueryTilesCountryCodeUS,
Xing Liu6d873212020-05-13 22:33:492820 query_tiles::switches::kQueryTilesCountryCode, "US"},
Min Qindb99e6f2020-04-29 06:37:262821 {flag_descriptions::kQueryTilesCountryCodeIndia,
Xing Liu6d873212020-05-13 22:33:492822 query_tiles::switches::kQueryTilesCountryCode, "IN"},
Min Qindb99e6f2020-04-29 06:37:262823 {flag_descriptions::kQueryTilesCountryCodeBrazil,
Xing Liu6d873212020-05-13 22:33:492824 query_tiles::switches::kQueryTilesCountryCode, "BR"},
Min Qindb99e6f2020-04-29 06:37:262825 {flag_descriptions::kQueryTilesCountryCodeNigeria,
Xing Liu6d873212020-05-13 22:33:492826 query_tiles::switches::kQueryTilesCountryCode, "NG"},
Min Qindb99e6f2020-04-29 06:37:262827 {flag_descriptions::kQueryTilesCountryCodeIndonesia,
Xing Liu6d873212020-05-13 22:33:492828 query_tiles::switches::kQueryTilesCountryCode, "ID"},
Min Qindb99e6f2020-04-29 06:37:262829};
Xing Liu06f2fa02020-04-30 02:45:192830
Xiaohan Wang064b68cd2022-01-19 19:12:282831#endif // BUILDFLAG(IS_ANDROID)
Ayu Ishiidbdd5c92020-03-20 23:40:522832
Lily Chen17c57972020-04-22 19:27:442833// The choices for --enable-experimental-cookie-features. This really should
2834// just be a SINGLE_VALUE_TYPE, but it is misleading to have the choices be
2835// labeled "Disabled"/"Enabled". So instead this is made to be a
2836// MULTI_VALUE_TYPE with choices "Default"/"Enabled".
2837const FeatureEntry::Choice kEnableExperimentalCookieFeaturesChoices[] = {
2838 {flags_ui::kGenericExperimentChoiceDefault, "", ""},
2839 {flags_ui::kGenericExperimentChoiceEnabled,
2840 switches::kEnableExperimentalCookieFeatures, ""},
2841};
2842
Yuta Hijikata235fc62b2020-12-08 03:48:322843#if BUILDFLAG(IS_CHROMEOS_ASH)
yjliu8f78e8b2020-07-22 20:51:212844const FeatureEntry::Choice kFrameThrottleFpsChoices[] = {
2845 {flag_descriptions::kFrameThrottleFpsDefault, "", ""},
2846 {flag_descriptions::kFrameThrottleFps5, ash::switches::kFrameThrottleFps,
2847 "5"},
2848 {flag_descriptions::kFrameThrottleFps10, ash::switches::kFrameThrottleFps,
2849 "10"},
2850 {flag_descriptions::kFrameThrottleFps15, ash::switches::kFrameThrottleFps,
2851 "15"},
2852 {flag_descriptions::kFrameThrottleFps20, ash::switches::kFrameThrottleFps,
2853 "20"},
2854 {flag_descriptions::kFrameThrottleFps25, ash::switches::kFrameThrottleFps,
2855 "25"},
2856 {flag_descriptions::kFrameThrottleFps30, ash::switches::kFrameThrottleFps,
2857 "30"}};
Yuta Hijikata235fc62b2020-12-08 03:48:322858#endif // BUILDFLAG(IS_CHROMEOS_ASH)
yjliu8f78e8b2020-07-22 20:51:212859
Joao Victor Almeida947a3c7c2021-07-29 23:44:362860const FeatureEntry::FeatureParam kDrawPredictedPointExperiment1Point12Ms[] = {
2861 {"predicted_points", features::kDraw1Point12Ms}};
2862const FeatureEntry::FeatureParam kDrawPredictedPointExperiment2Points6Ms[] = {
2863 {"predicted_points", features::kDraw2Points6Ms}};
2864const FeatureEntry::FeatureParam kDrawPredictedPointExperiment1Point6Ms[] = {
2865 {"predicted_points", features::kDraw1Point6Ms}};
2866const FeatureEntry::FeatureParam kDrawPredictedPointExperiment2Points3Ms[] = {
2867 {"predicted_points", features::kDraw2Points3Ms}};
2868
2869const FeatureEntry::FeatureVariation kDrawPredictedPointVariations[] = {
Mario Bianucci3be046eb2021-02-26 18:41:482870 {flag_descriptions::kDraw1PredictedPoint12Ms,
Joao Victor Almeida947a3c7c2021-07-29 23:44:362871 kDrawPredictedPointExperiment1Point12Ms,
Daniel Cheng7d9e3d52022-02-26 09:03:242872 std::size(kDrawPredictedPointExperiment1Point12Ms), nullptr},
Mario Bianucci3be046eb2021-02-26 18:41:482873 {flag_descriptions::kDraw2PredictedPoints6Ms,
Joao Victor Almeida947a3c7c2021-07-29 23:44:362874 kDrawPredictedPointExperiment2Points6Ms,
Daniel Cheng7d9e3d52022-02-26 09:03:242875 std::size(kDrawPredictedPointExperiment2Points6Ms), nullptr},
Mario Bianucci3be046eb2021-02-26 18:41:482876 {flag_descriptions::kDraw1PredictedPoint6Ms,
Joao Victor Almeida947a3c7c2021-07-29 23:44:362877 kDrawPredictedPointExperiment1Point6Ms,
Daniel Cheng7d9e3d52022-02-26 09:03:242878 std::size(kDrawPredictedPointExperiment1Point6Ms), nullptr},
Mario Bianucci3be046eb2021-02-26 18:41:482879 {flag_descriptions::kDraw2PredictedPoints3Ms,
Joao Victor Almeida947a3c7c2021-07-29 23:44:362880 kDrawPredictedPointExperiment2Points3Ms,
Daniel Cheng7d9e3d52022-02-26 09:03:242881 std::size(kDrawPredictedPointExperiment2Points3Ms), nullptr}};
Mario Bianucci3be046eb2021-02-26 18:41:482882
Yi Gu99ea66c82022-03-10 22:04:442883const FeatureEntry::FeatureParam kFedCmVariationIdpSignout[] = {
2884 {features::kFedCmIdpSignoutFieldTrialParamName, "true"}};
Peter Kotwicz980079f2021-12-02 07:18:342885const FeatureEntry::FeatureVariation kFedCmFeatureVariations[] = {
Yi Gu99ea66c82022-03-10 22:04:442886 {"- with FedCM IDP sign-out", kFedCmVariationIdpSignout,
Peter Kotwiczc3eee052022-05-03 20:40:212887 std::size(kFedCmVariationIdpSignout), nullptr},
Peter Kotwiczc3eee052022-05-03 20:40:212888};
Peter Kotwicz980079f2021-12-02 07:18:342889
mojahsu3144bf32021-05-26 10:14:462890#if BUILDFLAG(IS_CHROMEOS_ASH)
2891const FeatureEntry::Choice kForceControlFaceAeChoices[] = {
2892 {"Default", "", ""},
2893 {"Enable", media::switches::kForceControlFaceAe, "enable"},
2894 {"Disable", media::switches::kForceControlFaceAe, "disable"}};
Ricky Lianga3e6a162021-08-16 07:43:142895
Ren-Pei Zeng61605a52021-12-06 13:07:482896const FeatureEntry::Choice kAutoFramingOverrideChoices[] = {
2897 {"Default", "", ""},
2898 {"Force enabled", media::switches::kAutoFramingOverride,
2899 media::switches::kAutoFramingForceEnabled},
2900 {"Force disabled", media::switches::kAutoFramingOverride,
2901 media::switches::kAutoFramingForceDisabled}};
mojahsu3144bf32021-05-26 10:14:462902#endif
2903
Fergus Dall9d0e95a2021-07-30 08:10:112904#if BUILDFLAG(IS_CHROMEOS_ASH)
2905const FeatureEntry::Choice kCrostiniContainerChoices[] = {
2906 {"Default", "", ""},
Fergus Dall9d0e95a2021-07-30 08:10:112907 {"Buster", crostini::kCrostiniContainerFlag, "buster"},
2908 {"Bullseye", crostini::kCrostiniContainerFlag, "bullseye"},
Timothy Lohf12b0d22023-06-21 08:04:142909 {"Bookworm", crostini::kCrostiniContainerFlag, "bookworm"},
Fergus Dall9d0e95a2021-07-30 08:10:112910};
2911#endif // BUILDFLAG(IS_CHROMEOS_ASH)
2912
Jan Keitel7babdb52022-06-24 13:15:322913#if BUILDFLAG(IS_ANDROID)
Andrey Zaytsevad83cbc32020-09-30 15:43:182914// The variations of --metrics-settings-android.
2915const FeatureEntry::FeatureParam kMetricsSettingsAndroidAlternativeOne[] = {
2916 {"fre", "1"}};
2917
2918const FeatureEntry::FeatureParam kMetricsSettingsAndroidAlternativeTwo[] = {
2919 {"fre", "2"}};
2920
2921const FeatureEntry::FeatureVariation kMetricsSettingsAndroidVariations[] = {
2922 {"Alternative FRE 1", kMetricsSettingsAndroidAlternativeOne,
Daniel Cheng7d9e3d52022-02-26 09:03:242923 std::size(kMetricsSettingsAndroidAlternativeOne), nullptr},
Andrey Zaytsevad83cbc32020-09-30 15:43:182924 {"Alternative FRE 2", kMetricsSettingsAndroidAlternativeTwo,
Daniel Cheng7d9e3d52022-02-26 09:03:242925 std::size(kMetricsSettingsAndroidAlternativeTwo), nullptr},
Andrey Zaytsevad83cbc32020-09-30 15:43:182926};
Xiaohan Wang064b68cd2022-01-19 19:12:282927#endif // BUILDFLAG(IS_ANDROID)
Andrey Zaytsevad83cbc32020-09-30 15:43:182928
Xiaohan Wang064b68cd2022-01-19 19:12:282929#if !BUILDFLAG(IS_ANDROID)
Chris Thompson657d5c82020-10-08 23:04:102930// SCT Auditing feature variations.
2931const FeatureEntry::FeatureParam kSCTAuditingSamplingRateNone[] = {
2932 {"sampling_rate", "0.0"}};
2933const FeatureEntry::FeatureParam kSCTAuditingSamplingRateAlternativeOne[] = {
2934 {"sampling_rate", "0.0001"}};
2935const FeatureEntry::FeatureParam kSCTAuditingSamplingRateAlternativeTwo[] = {
2936 {"sampling_rate", "0.001"}};
2937
2938const FeatureEntry::FeatureVariation kSCTAuditingVariations[] = {
2939 {"Sampling rate 0%", kSCTAuditingSamplingRateNone,
Daniel Cheng7d9e3d52022-02-26 09:03:242940 std::size(kSCTAuditingSamplingRateNone), nullptr},
Chris Thompson657d5c82020-10-08 23:04:102941 {"Sampling rate 0.01%", kSCTAuditingSamplingRateAlternativeOne,
Daniel Cheng7d9e3d52022-02-26 09:03:242942 std::size(kSCTAuditingSamplingRateAlternativeOne), nullptr},
Chris Thompson657d5c82020-10-08 23:04:102943 {"Sampling rate 0.1%", kSCTAuditingSamplingRateAlternativeTwo,
Daniel Cheng7d9e3d52022-02-26 09:03:242944 std::size(kSCTAuditingSamplingRateAlternativeTwo), nullptr},
Chris Thompson657d5c82020-10-08 23:04:102945};
Xiaohan Wang064b68cd2022-01-19 19:12:282946#endif // !BUILDFLAG(IS_ANDROID)
Chris Thompson657d5c82020-10-08 23:04:102947
Xiaohan Wang064b68cd2022-01-19 19:12:282948#if BUILDFLAG(IS_ANDROID)
Basia Zimirska12b7edca2021-08-09 17:24:462949// The variations of ContentLanguagesInLanguagePicker.
2950const FeatureEntry::FeatureParam
2951 kContentLanguagesInLanguagePickerDisableObservers[] = {
2952 {language::kContentLanguagesDisableObserversParam, "true"}};
2953
2954const FeatureEntry::FeatureVariation
2955 kContentLanguagesInLanguaePickerVariations[] = {
2956 {"Without observers", kContentLanguagesInLanguagePickerDisableObservers,
Daniel Cheng7d9e3d52022-02-26 09:03:242957 std::size(kContentLanguagesInLanguagePickerDisableObservers), nullptr},
Basia Zimirska12b7edca2021-08-09 17:24:462958};
Xiaohan Wang064b68cd2022-01-19 19:12:282959#endif // BUILDFLAG(IS_ANDROID)
Basia Zimirska12b7edca2021-08-09 17:24:462960
Yuta Hijikata235fc62b2020-12-08 03:48:322961#if BUILDFLAG(IS_CHROMEOS_ASH)
tby630ca622022-02-02 07:22:172962const FeatureEntry::FeatureParam kProductivityLauncher_WithoutContinue[] = {
2963 {"enable_continue", "false"}};
2964
2965const FeatureEntry::FeatureVariation kProductivityLauncherVariations[] = {
2966 {"without Continue", kProductivityLauncher_WithoutContinue,
Daniel Cheng7d9e3d52022-02-26 09:03:242967 std::size(kProductivityLauncher_WithoutContinue), nullptr}};
tby630ca622022-02-02 07:22:172968
Rachel Wongbde90d72022-07-11 06:18:272969const FeatureEntry::FeatureParam kLauncherItemSuggest_LongDelay10Mins[] = {
2970 {"long_delay_minutes", "10"}};
2971const FeatureEntry::FeatureParam kLauncherItemSuggest_LongDelay12Hours[] = {
2972 {"long_delay_minutes", "720"}};
2973const FeatureEntry::FeatureParam kLauncherItemSuggest_LongDelay24Hours[] = {
2974 {"long_delay_minutes", "1440"}};
2975const FeatureEntry::FeatureParam kLauncherItemSuggest_LongDelay36Hours[] = {
2976 {"long_delay_minutes", "2160"}};
2977const FeatureEntry::FeatureParam kLauncherItemSuggest_LongDelay48Hours[] = {
2978 {"long_delay_minutes", "2880"}};
2979const FeatureEntry::FeatureParam kLauncherItemSuggest_LongDelay60Hours[] = {
2980 {"long_delay_minutes", "3600"}};
2981const FeatureEntry::FeatureParam kLauncherItemSuggest_LongDelay72Hours[] = {
2982 {"long_delay_minutes", "4320"}};
2983
2984const FeatureEntry::FeatureVariation kLauncherItemSuggestVariations[] = {
2985 {"with 10 minute long delay", kLauncherItemSuggest_LongDelay10Mins,
2986 std::size(kLauncherItemSuggest_LongDelay10Mins), nullptr},
2987 {"with 12 hour long delay", kLauncherItemSuggest_LongDelay12Hours,
2988 std::size(kLauncherItemSuggest_LongDelay12Hours), nullptr},
2989 {"with 24 hour long delay", kLauncherItemSuggest_LongDelay24Hours,
2990 std::size(kLauncherItemSuggest_LongDelay24Hours), nullptr},
2991 {"with 36 hour long delay", kLauncherItemSuggest_LongDelay36Hours,
2992 std::size(kLauncherItemSuggest_LongDelay36Hours), nullptr},
2993 {"with 48 hour long delay", kLauncherItemSuggest_LongDelay48Hours,
2994 std::size(kLauncherItemSuggest_LongDelay48Hours), nullptr},
2995 {"with 60 hour long delay", kLauncherItemSuggest_LongDelay60Hours,
2996 std::size(kLauncherItemSuggest_LongDelay60Hours), nullptr},
2997 {"with 72 hour long delay", kLauncherItemSuggest_LongDelay72Hours,
2998 std::size(kLauncherItemSuggest_LongDelay72Hours), nullptr}};
2999
Matthew Mourgos0f79f502023-03-17 21:22:403000const FeatureEntry::FeatureParam kEolIncentiveOffer[] = {
3001 {"incentive_type", "offer"}};
3002const FeatureEntry::FeatureParam kEolIncentiveNoOffer[] = {
3003 {"incentive_type", "no_offer"}};
3004
3005const FeatureEntry::FeatureVariation kEolIncentiveVariations[] = {
3006 {"with offer", kEolIncentiveOffer, std::size(kEolIncentiveOffer), nullptr},
3007 {"with no offer", kEolIncentiveNoOffer, std::size(kEolIncentiveNoOffer),
3008 nullptr}};
3009
tby989a5b5ad2021-04-16 06:42:203010#endif // BUILDFLAG(IS_CHROMEOS_ASH)
3011
Simon Hanglf8a8cf52023-05-16 19:58:103012#if BUILDFLAG(IS_CHROMEOS)
3013constexpr char kTaskManagerEndProcessDisabledForExtensionInternalName[] =
3014 "enable-task-manager-end-process-disabled-for-extension";
3015#endif // BUILDFLAG(IS_CHROMEOS)
3016
Jeffrey Young35f24d32021-01-27 22:58:213017#if BUILDFLAG(IS_CHROMEOS_ASH)
Colin Kincaid292cfc42022-05-03 19:17:073018constexpr char kWallpaperFastRefreshInternalName[] = "wallpaper-fast-refresh";
Jerry Liua21b61622022-12-20 00:52:123019constexpr char kWallpaperGooglePhotosSharedAlbumsInternalName[] =
3020 "wallpaper-google-photos-shared-albums";
Sean Kau1d8791e32021-11-08 22:51:543021constexpr char kWallpaperPerDeskName[] = "per-desk-wallpaper";
Tao Wu4b5d8162022-11-10 19:58:073022constexpr char kLibAssistantV2MigrationInternalName[] =
3023 "cros-libassistant-v2-migration";
Jason Thaiaa62a032023-04-05 21:07:423024constexpr char kTimeOfDayWallpaperInternalName[] = "time-of-day-wallpaper";
3025constexpr char kTimeOfDayScreenSaverInternalName[] = "time-of-day-screen-saver";
Jeffrey Young35f24d32021-01-27 22:58:213026#endif // BUILDFLAG(IS_CHROMEOS_ASH)
3027
danielng1078c6372021-06-28 06:31:363028#if BUILDFLAG(IS_CHROMEOS_ASH)
danielngdd3ef942021-10-28 06:42:483029constexpr char kBorealisBigGlInternalName[] = "borealis-big-gl";
Dominik Behr03b5c24f2023-04-18 21:20:523030constexpr char kBorealisDGPUInternalName[] = "borealis-dgpu";
danielng1078c6372021-06-28 06:31:363031constexpr char kBorealisDiskManagementInternalName[] =
3032 "borealis-disk-management";
Nicholas Hollingum449d8252021-11-29 00:18:293033constexpr char kBorealisForceBetaClientInternalName[] =
3034 "borealis-force-beta-client";
Nicholas Hollingume8672092022-08-25 04:23:163035constexpr char kBorealisForceDoubleScaleInternalName[] =
3036 "borealis-force-double-scale";
Nicholas Hollingum449d8252021-11-29 00:18:293037constexpr char kBorealisLinuxModeInternalName[] = "borealis-linux-mode";
Nicholas Hollingum97500cc12022-03-03 22:44:433038// This differs slightly from its symbol's name since "enabled" is used
3039// internally to refer to whether borealis is installed or not.
3040constexpr char kBorealisPermittedInternalName[] = "borealis-enabled";
danielng573ad3742022-07-06 05:26:243041constexpr char kBorealisStorageBallooningInternalName[] =
3042 "borealis-storage-ballooning";
Max Leefb53d9c2022-09-01 00:23:343043constexpr char kVmPerBootShaderCacheName[] = "vm-per-boot-shader-cache";
Colin Kincaidfdf46612023-03-23 01:23:233044constexpr char kClipboardHistoryLongpressInternalName[] =
3045 "clipboard-history-longpress";
Colin Kincaidb78ba322023-06-22 02:25:373046constexpr char kClipboardHistoryRefreshInternalName[] =
3047 "clipboard-history-refresh";
James Cook49358cc2022-08-30 20:30:263048constexpr char kWelcomeScreenInternalName[] = "welcome-screen";
Sarvesh02d88ff2023-01-18 23:10:413049constexpr char kBluetoothUseFlossInternalName[] = "bluetooth-use-floss";
Colin Kincaid0dcc3b022022-05-26 15:51:573050#endif // BUILDFLAG(IS_CHROMEOS_ASH)
3051
Xiaohan Wang064b68cd2022-01-19 19:12:283052#if BUILDFLAG(IS_ANDROID)
Brandon Wylief203eee2021-10-11 22:55:453053const FeatureEntry::FeatureParam kBookmarksRefreshVisuals[] = {
3054 {"bookmark_visuals_enabled", "true"}};
Brandon Wylieadcffae2022-03-01 06:01:373055const FeatureEntry::FeatureParam kBookmarksRefreshCompactVisuals[] = {
3056 {"bookmark_visuals_enabled", "true"},
3057 {"bookmark_compact_visuals_enabled", "true"}};
Brandon Wylief203eee2021-10-11 22:55:453058const FeatureEntry::FeatureParam kBookmarksRefreshAppMenu[] = {
Brandon Wylie840e5082021-10-21 21:22:233059 {"bookmark_in_app_menu", "true"}};
Brandon Wylieadcffae2022-03-01 06:01:373060const FeatureEntry::FeatureParam kBookmarksRefreshNormal[] = {
Brandon Wylief203eee2021-10-11 22:55:453061 {"bookmark_visuals_enabled", "true"},
Brandon Wylie840e5082021-10-21 21:22:233062 {"bookmark_in_app_menu", "true"}};
Brandon Wylieadcffae2022-03-01 06:01:373063const FeatureEntry::FeatureParam kBookmarksRefreshCompact[] = {
3064 {"bookmark_visuals_enabled", "true"},
3065 {"bookmark_compact_visuals_enabled", "true"},
3066 {"bookmark_in_app_menu", "true"}};
Brandon Wylief203eee2021-10-11 22:55:453067
3068const FeatureEntry::FeatureVariation kBookmarksRefreshVariations[] = {
Brandon Wylieadcffae2022-03-01 06:01:373069 {"(enabled w/ visuals)", kBookmarksRefreshNormal,
3070 std::size(kBookmarksRefreshNormal), nullptr},
3071 {"(enabled w/ compact visuals)", kBookmarksRefreshCompact,
3072 std::size(kBookmarksRefreshCompact), nullptr},
3073 {"(visuals only)", kBookmarksRefreshVisuals,
Alex Moshchukbcd7cf12022-02-28 23:33:363074 std::size(kBookmarksRefreshVisuals), nullptr},
Brandon Wylieadcffae2022-03-01 06:01:373075 {"(compact visuals only)", kBookmarksRefreshCompactVisuals,
3076 std::size(kBookmarksRefreshCompactVisuals), nullptr},
Brandon Wylie15482cd2021-11-11 23:24:223077 {"(app menu item only)", kBookmarksRefreshAppMenu,
Brandon Wylieadcffae2022-03-01 06:01:373078 std::size(kBookmarksRefreshAppMenu), nullptr}};
Xiaohan Wang064b68cd2022-01-19 19:12:283079#endif // BUILDFLAG(IS_ANDROID)
ckitagawa7016ceca2021-07-15 00:37:503080
bttk90927fd2021-11-12 19:38:273081const FeatureEntry::FeatureParam kLargeFaviconFromGoogle96[] = {
3082 {"favicon_size_in_dip", "96"}};
3083const FeatureEntry::FeatureParam kLargeFaviconFromGoogle128[] = {
3084 {"favicon_size_in_dip", "128"}};
3085
3086const FeatureEntry::FeatureVariation kLargeFaviconFromGoogleVariations[] = {
Daniel Cheng7d9e3d52022-02-26 09:03:243087 {"(96dip)", kLargeFaviconFromGoogle96, std::size(kLargeFaviconFromGoogle96),
3088 nullptr},
bttk90927fd2021-11-12 19:38:273089 {"(128dip)", kLargeFaviconFromGoogle128,
Daniel Cheng7d9e3d52022-02-26 09:03:243090 std::size(kLargeFaviconFromGoogle128), nullptr}};
bttk90927fd2021-11-12 19:38:273091
Neil Coronado00ce73012022-02-14 21:39:013092#if BUILDFLAG(IS_ANDROID)
Sirisha Kavuluru22e7a202022-10-31 21:06:013093const FeatureEntry::FeatureParam kContentVisibilityDelay10[] = {
3094 {"content_visibility_delay", "10"}};
3095const FeatureEntry::FeatureParam kContentVisibilityDelay5[] = {
3096 {"content_visibility_delay", "5"}};
3097const FeatureEntry::FeatureVariation kFoldableJankFixDelayVariations[] = {
3098 {"10ms delay", kContentVisibilityDelay10,
3099 std::size(kContentVisibilityDelay10), nullptr},
3100 {"5ms delay", kContentVisibilityDelay5, std::size(kContentVisibilityDelay5),
3101 nullptr}};
3102#endif // BUILDFLAG(IS_ANDROID)
3103
3104#if BUILDFLAG(IS_ANDROID)
Brandon Fong7ec73ac2023-06-15 19:08:593105const FeatureEntry::FeatureParam kRestoreTabsOnFRE_skipFeatureEngagement[] = {
3106 {"skip_feature_engagement", "true"}};
3107const FeatureEntry::FeatureVariation kRestoreTabsOnFREVariations[] = {
3108 {"- skip feature engagement", kRestoreTabsOnFRE_skipFeatureEngagement,
3109 std::size(kRestoreTabsOnFRE_skipFeatureEngagement), nullptr},
3110};
3111#endif // BUILDFLAG(IS_ANDROID)
3112
3113#if BUILDFLAG(IS_ANDROID)
Zhe Lib99a5faa62022-10-14 22:57:443114const FeatureEntry::FeatureParam kTabStripRedesignFolio[] = {
3115 {"enable_folio", "true"}};
3116const FeatureEntry::FeatureParam kTabStripRedesignDetached[] = {
3117 {"enable_detached", "true"}};
Zhe Li2595b2d2023-04-11 20:29:263118const FeatureEntry::FeatureParam kTabStripRedesignDisableNtbAnchorFolio[] = {
3119 {"disable_ntb_anchor", "true"},
3120 {"enable_folio", "true"}};
3121const FeatureEntry::FeatureParam kTabStripRedesignDisableNtbAnchorDetached[] = {
3122 {"disable_ntb_anchor", "true"},
3123 {"enable_detached", "true"}};
Zhe Licc2ae252023-05-24 20:29:133124const FeatureEntry::FeatureParam kTabStripRedesignDisableButtonStyleFolio[] = {
3125 {"disable_btn_style", "true"},
3126 {"enable_folio", "true"}};
3127const FeatureEntry::FeatureParam kTabStripRedesignDisableButtonStyleDetached[] =
3128 {{"disable_btn_style", "true"}, {"enable_detached", "true"}};
Zhe Lib99a5faa62022-10-14 22:57:443129
3130const FeatureEntry::FeatureVariation kTabStripRedesignVariations[] = {
3131 {"Folio", kTabStripRedesignFolio, std::size(kTabStripRedesignFolio),
3132 nullptr},
3133 {"Detached", kTabStripRedesignDetached,
3134 std::size(kTabStripRedesignDetached), nullptr},
Zhe Li02cffa72023-05-12 01:05:443135 {"Folio NTB Unanchored ", kTabStripRedesignDisableNtbAnchorFolio,
Zhe Li2595b2d2023-04-11 20:29:263136 std::size(kTabStripRedesignDisableNtbAnchorFolio), nullptr},
Zhe Li02cffa72023-05-12 01:05:443137 {"Detached NTB Unanchored", kTabStripRedesignDisableNtbAnchorDetached,
Zhe Licc2ae252023-05-24 20:29:133138 std::size(kTabStripRedesignDisableNtbAnchorDetached), nullptr},
3139 {"Folio Remove Button Style", kTabStripRedesignDisableButtonStyleFolio,
3140 std::size(kTabStripRedesignDisableButtonStyleFolio), nullptr},
3141 {"Detached Remove Button Style",
3142 kTabStripRedesignDisableButtonStyleDetached,
3143 std::size(kTabStripRedesignDisableButtonStyleDetached), nullptr}};
Zhe Lib99a5faa62022-10-14 22:57:443144#endif // BUILDFLAG(IS_ANDROID)
3145
Nicolas MacBeth3dcf7532023-04-21 21:30:133146#if !BUILDFLAG(IS_ANDROID) && BUILDFLAG(GOOGLE_CHROME_BRANDING)
3147constexpr FeatureEntry::FeatureParam kIOSPromoPasswordBubbleContextualDirect[] =
3148 {{"activation", "contextual-direct"}};
3149constexpr FeatureEntry::FeatureParam
3150 kIOSPromoPasswordBubbleContextualIndirect[] = {
3151 {"activation", "contextual-indirect"}};
3152constexpr FeatureEntry::FeatureParam
3153 kIOSPromoPasswordBubbleNonContextualDirect[] = {
3154 {"activation", "non-contextual-direct"}};
3155constexpr FeatureEntry::FeatureParam
3156 kIOSPromoPasswordBubbleNonContextualIndirect[] = {
3157 {"activation", "non-contextual-indirect"}};
3158constexpr FeatureEntry::FeatureParam kIOSPromoPasswordBubbleAlwaysShowDirect[] =
3159 {{"activation", "always-show-direct"}};
3160constexpr FeatureEntry::FeatureParam
3161 kIOSPromoPasswordBubbleAlwaysShowIndirect[] = {
3162 {"activation", "always-show-indirect"}};
3163
3164constexpr FeatureEntry::FeatureVariation kIOSPromoPasswordBubbleVariations[] = {
3165 {"contextual & direct activation", kIOSPromoPasswordBubbleContextualDirect,
3166 std::size(kIOSPromoPasswordBubbleContextualDirect), nullptr},
3167 {"contextual & indirect activation",
3168 kIOSPromoPasswordBubbleContextualIndirect,
3169 std::size(kIOSPromoPasswordBubbleContextualIndirect), nullptr},
3170 {"non-contextual & direct activation",
3171 kIOSPromoPasswordBubbleNonContextualDirect,
3172 std::size(kIOSPromoPasswordBubbleNonContextualDirect), nullptr},
3173 {"non-contextual & indirect activation",
3174 kIOSPromoPasswordBubbleNonContextualIndirect,
3175 std::size(kIOSPromoPasswordBubbleNonContextualIndirect), nullptr},
3176 {"always show direct activation", kIOSPromoPasswordBubbleAlwaysShowDirect,
3177 std::size(kIOSPromoPasswordBubbleAlwaysShowDirect), nullptr},
3178 {"always show indirect activation",
3179 kIOSPromoPasswordBubbleAlwaysShowIndirect,
3180 std::size(kIOSPromoPasswordBubbleAlwaysShowIndirect), nullptr}};
3181#endif
3182
Etienne Pierre-doray247abce2022-03-08 18:45:483183const FeatureEntry::FeatureParam kUnthrottledNestedTimeout_NestingLevel = {
Etienne Pierre-dorayd10f4392022-10-14 21:30:503184 "nesting", "15"};
Etienne Pierre-doray247abce2022-03-08 18:45:483185
3186const FeatureEntry::FeatureVariation kUnthrottledNestedTimeout_Variations[] = {
Etienne Pierre-dorayd10f4392022-10-14 21:30:503187 {"15", &kUnthrottledNestedTimeout_NestingLevel, 1, nullptr},
Etienne Pierre-doray247abce2022-03-08 18:45:483188};
3189
Duncan Mercer02bbd9462023-03-29 21:47:583190constexpr FeatureEntry::FeatureParam kLensFormatOptimizationWebp[] = {
3191 {"use-webp-image-search", "true"},
3192 {"use-webp-region-search", "true"},
3193 {"use-jpeg-region-search", "false"}};
Duncan Mercer10a2000a2022-11-07 23:00:533194constexpr FeatureEntry::FeatureVariation kLensImageFormatVariations[] = {
Duncan Mercer02bbd9462023-03-29 21:47:583195 {"use Webp", kLensFormatOptimizationWebp,
3196 std::size(kLensFormatOptimizationWebp), nullptr},
Duncan Mercer10a2000a2022-11-07 23:00:533197};
3198
Jason Hua755d79832023-04-27 00:26:443199constexpr FeatureEntry::FeatureParam kPingLensSequentially[] = {
3200 {"ping-lens-sequentially", "true"}};
3201constexpr FeatureEntry::FeatureParam kLensPingURL[] = {
3202 {"lens-ping-url", "https://lens.google.com/_/LensWebStandaloneUi/gen204/"}};
3203constexpr FeatureEntry::FeatureVariation kLensPingVariations[] = {
3204 {"ping sequentially", kPingLensSequentially,
3205 std::size(kPingLensSequentially), nullptr},
3206 {"ping url", kLensPingURL, std::size(kLensPingURL), nullptr},
3207};
3208
Ali Stanfield561043282023-03-10 03:04:303209#if BUILDFLAG(ENABLE_LENS_DESKTOP_GOOGLE_BRANDED_FEATURES)
mcrouseff4a6cf2023-05-31 04:46:423210constexpr FeatureEntry::FeatureParam kCscStagingEnvVariation[] = {
Ali Stanfield561043282023-03-10 03:04:303211 {"companion-homepage-url",
Juan Mojica98353952023-04-19 22:39:503212 "https://lens-staging.corp.google.com/companion"},
3213 {"companion-image-upload-url",
3214 "https://lens-staging.corp.google.com/v2/upload"}};
mcrouseff4a6cf2023-05-31 04:46:423215constexpr FeatureEntry::FeatureParam kCscClobberVariation[] = {
3216 {"open-links-in-current-tab", "true"},
3217};
3218constexpr FeatureEntry::FeatureParam kCscNewTabVariation[] = {
3219 {"open-links-in-current-tab", "false"},
3220};
Ali Stanfield561043282023-03-10 03:04:303221
3222constexpr FeatureEntry::FeatureVariation kCscVariations[] = {
mcrouseff4a6cf2023-05-31 04:46:423223 {"with staging URL", kCscStagingEnvVariation,
3224 std::size(kCscStagingEnvVariation), nullptr},
3225 {"with clobber", kCscClobberVariation, std::size(kCscClobberVariation),
3226 nullptr},
3227 {"with new tab", kCscNewTabVariation, std::size(kCscNewTabVariation),
3228 nullptr},
3229};
3230
3231const FeatureEntry::Choice kSidePanelPinnedStateChoices[] = {
3232 {flags_ui::kGenericExperimentChoiceDefault, "", ""},
3233 {"Forced Pinned", companion::switches::kForceCompanionPinnedState,
3234 "pinned"},
3235 {"Forced Unpinned", companion::switches::kForceCompanionPinnedState,
3236 "unpinned"},
3237};
Ali Stanfield561043282023-03-10 03:04:303238#endif // BUILDFLAG(ENABLE_LENS_DESKTOP_GOOGLE_BRANDED_FEATURES)
3239
Jeffrey Kardatzkea686ded22022-03-28 18:28:463240#if BUILDFLAG(IS_CHROMEOS_ASH)
3241const FeatureEntry::Choice kAlwaysEnableHdcpChoices[] = {
3242 {flag_descriptions::kAlwaysEnableHdcpDefault, "", ""},
3243 {flag_descriptions::kAlwaysEnableHdcpType0,
3244 ash::switches::kAlwaysEnableHdcp, "type0"},
3245 {flag_descriptions::kAlwaysEnableHdcpType1,
3246 ash::switches::kAlwaysEnableHdcp, "type1"},
3247};
Piotr Pawliczekd05f69682023-03-07 03:42:043248
3249const FeatureEntry::Choice kPrintingPpdChannelChoices[] = {
3250 {flags_ui::kGenericExperimentChoiceDefault, "", ""},
3251 {ash::switches::kPrintingPpdChannelProduction,
3252 ash::switches::kPrintingPpdChannel,
3253 ash::switches::kPrintingPpdChannelProduction},
3254 {ash::switches::kPrintingPpdChannelStaging,
3255 ash::switches::kPrintingPpdChannel,
3256 ash::switches::kPrintingPpdChannelStaging},
3257 {ash::switches::kPrintingPpdChannelDev, ash::switches::kPrintingPpdChannel,
3258 ash::switches::kPrintingPpdChannelDev},
3259 {ash::switches::kPrintingPpdChannelLocalhost,
3260 ash::switches::kPrintingPpdChannel,
3261 ash::switches::kPrintingPpdChannelLocalhost}};
Jeffrey Kardatzkea686ded22022-03-28 18:28:463262#endif // BUILDFLAG(IS_CHROMEOS_ASH)
3263
W. James MacLean3b6d0872022-06-24 16:16:143264// Feature variations for kIsolateSandboxedIframes.
3265#if !BUILDFLAG(IS_ANDROID)
3266// TODO(wjmaclean): Add FeatureParams for a per-frame grouping when support
3267// for it is added.
3268const FeatureEntry::FeatureParam kIsolateSandboxedIframesGroupingPerSite{
3269 "grouping", "per-site"};
3270const FeatureEntry::FeatureParam kIsolateSandboxedIframesGroupingPerOrigin{
3271 "grouping", "per-origin"};
W. James MacLean37dd4aade2022-07-28 15:40:513272const FeatureEntry::FeatureParam kIsolateSandboxedIframesGroupingPerDocument{
3273 "grouping", "per-document"};
W. James MacLean3b6d0872022-06-24 16:16:143274const FeatureEntry::FeatureVariation
3275 kIsolateSandboxedIframesGroupingVariations[] = {
3276 {"with grouping by URL's site",
3277 &kIsolateSandboxedIframesGroupingPerSite, 1, nullptr},
3278 {"with grouping by URL's origin",
3279 &kIsolateSandboxedIframesGroupingPerOrigin, 1, nullptr},
W. James MacLean37dd4aade2022-07-28 15:40:513280 {"with each sandboxed frame document in its own process",
3281 &kIsolateSandboxedIframesGroupingPerDocument, 1, nullptr},
W. James MacLean3b6d0872022-06-24 16:16:143282};
3283#endif // !BUILDFLAG(IS_ANDROID)
3284
Yoshisato Yanagisawa577d82822022-08-17 01:51:103285const FeatureEntry::FeatureParam
3286 kServiceWorkerSkipIgnorableFetchHandler_NotSkip[] = {
3287 {"SkipEmptyFetchHandler", "false"}};
3288const FeatureEntry::FeatureParam
3289 kServiceWorkerSkipIgnorableFetchHandler_SkipEmpty[] = {
3290 {"SkipEmptyFetchHandler", "true"}};
3291const FeatureEntry::FeatureVariation
3292 kServiceWorkerSkipIgnorableFetchHandlerVariations[] = {
3293 {"Not Skip", kServiceWorkerSkipIgnorableFetchHandler_NotSkip,
3294 std::size(kServiceWorkerSkipIgnorableFetchHandler_NotSkip), nullptr},
3295 {"Skip Empty", kServiceWorkerSkipIgnorableFetchHandler_SkipEmpty,
3296 std::size(kServiceWorkerSkipIgnorableFetchHandler_SkipEmpty), nullptr},
3297};
3298
sisidovskia29a3022023-04-20 07:53:543299const FeatureEntry::FeatureParam
3300 kServiceWorkerBypassFetchHandler_MainResource[] = {
3301 {"bypass_for", "main_resource"},
3302 {"strategy", "optin"}};
3303const FeatureEntry::FeatureParam
3304 kServiceWorkerBypassFetchHandler_RaceNetworkRequest[] = {
3305 {"bypass_for", "all_with_race_network_request"},
3306 {"strategy", "optin"}};
3307const FeatureEntry::FeatureParam
3308 kServiceWorkerBypassFetchHandler_Subresource[] = {
3309 {"bypass_for", "sub_resource"},
3310 {"strategy", "optin"}};
3311const FeatureEntry::FeatureVariation
3312 kServiceWorkerBypassFetchHandlerVariations[] = {
3313 {"Main Resource", kServiceWorkerBypassFetchHandler_MainResource,
3314 std::size(kServiceWorkerBypassFetchHandler_MainResource), nullptr},
3315 {"Subesource", kServiceWorkerBypassFetchHandler_Subresource,
3316 std::size(kServiceWorkerBypassFetchHandler_Subresource), nullptr},
3317 {"Race Network Request and Fetch Handler",
3318 kServiceWorkerBypassFetchHandler_RaceNetworkRequest,
3319 std::size(kServiceWorkerBypassFetchHandler_RaceNetworkRequest),
3320 nullptr},
3321};
3322
Charles Meng17ba75d2022-08-23 18:45:283323#if !BUILDFLAG(IS_ANDROID)
Anthony Vallee-Dubois3d3039fb2023-03-17 16:11:153324const FeatureEntry::FeatureParam kHeuristicMemorySaverAggressive[] = {
3325 {"threshold_percent", "30"},
Joe Mason698c2872023-05-10 22:10:413326 {"minimum_time_in_background", "30m"}};
Anthony Vallee-Dubois3d3039fb2023-03-17 16:11:153327const FeatureEntry::FeatureParam kHeuristicMemorySaverBalanced[] = {
3328 {"threshold_percent", "15"},
Joe Mason698c2872023-05-10 22:10:413329 {"minimum_time_in_background", "60m"}};
Anthony Vallee-Dubois3d3039fb2023-03-17 16:11:153330const FeatureEntry::FeatureParam kHeuristicMemorySaverConservative[] = {
3331 {"threshold_percent", "5"},
Joe Mason698c2872023-05-10 22:10:413332 {"minimum_time_in_background", "120m"}};
Anthony Vallee-Dubois3d3039fb2023-03-17 16:11:153333const FeatureEntry::FeatureVariation kHeuristicMemorySaverVariations[] = {
3334 {"Aggressive", kHeuristicMemorySaverAggressive,
3335 std::size(kHeuristicMemorySaverAggressive), nullptr},
3336 {"Balanced", kHeuristicMemorySaverBalanced,
3337 std::size(kHeuristicMemorySaverBalanced), nullptr},
3338 {"Conservative", kHeuristicMemorySaverConservative,
3339 std::size(kHeuristicMemorySaverConservative), nullptr},
3340};
Charles Meng03ac5532023-04-26 17:36:353341
Charles Meng095d98b2023-06-14 16:21:573342const FeatureEntry::FeatureParam
Charles Mengd7cec1bf2023-06-26 17:26:103343 kHighEfficiencyMultistateModeShowRecommendedBadge[] = {
3344 {"show_recommended_badge", "true"},
Charles Meng095d98b2023-06-14 16:21:573345};
Charles Meng095d98b2023-06-14 16:21:573346const FeatureEntry::FeatureVariation kHighEfficiencyMultistateModeVariations[] =
3347 {
3348 {"With Recommended Badge",
Charles Mengd7cec1bf2023-06-26 17:26:103349 kHighEfficiencyMultistateModeShowRecommendedBadge,
3350 std::size(kHighEfficiencyMultistateModeShowRecommendedBadge), nullptr},
Charles Meng095d98b2023-06-14 16:21:573351};
3352
Alison Galee124dea32023-05-05 21:39:053353const FeatureEntry::FeatureParam kDiscardedTabTreatmentWithRing30Opacity[] = {
3354 {"discard_tab_treatment_option", "2"},
3355 {"discard_tab_treatment_opacity", "0.3"}};
3356const FeatureEntry::FeatureParam kDiscardedTabTreatmentWithRing40Opacity[] = {
3357 {"discard_tab_treatment_option", "2"},
3358 {"discard_tab_treatment_opacity", "0.4"}};
3359const FeatureEntry::FeatureParam kDiscardedTabTreatmentWithRing50Opacity[] = {
3360 {"discard_tab_treatment_option", "2"},
3361 {"discard_tab_treatment_opacity", "0.5"}};
3362const FeatureEntry::FeatureParam kDiscardedTabTreatmentWithoutRing30Opacity[] =
3363 {{"discard_tab_treatment_option", "1"},
3364 {"discard_tab_treatment_opacity", "0.3"}};
3365const FeatureEntry::FeatureParam kDiscardedTabTreatmentWithoutRing40Opacity[] =
3366 {{"discard_tab_treatment_option", "1"},
3367 {"discard_tab_treatment_opacity", "0.4"}};
3368const FeatureEntry::FeatureParam kDiscardedTabTreatmentWithoutRing50Opacity[] =
3369 {{"discard_tab_treatment_option", "1"},
3370 {"discard_tab_treatment_opacity", "0.5"}};
3371
3372const FeatureEntry::FeatureVariation kDiscardedTabTreatmentVariations[] = {
3373 {"With Ring and 30\% Opacity", kDiscardedTabTreatmentWithRing30Opacity,
3374 std::size(kDiscardedTabTreatmentWithRing30Opacity), nullptr},
3375 {"With Ring and 40\% Opacity", kDiscardedTabTreatmentWithRing40Opacity,
3376 std::size(kDiscardedTabTreatmentWithRing40Opacity), nullptr},
3377 {"With Ring and 50\% Opacity", kDiscardedTabTreatmentWithRing50Opacity,
3378 std::size(kDiscardedTabTreatmentWithRing50Opacity), nullptr},
3379 {"Without Ring and 30\% Opacity",
3380 kDiscardedTabTreatmentWithoutRing30Opacity,
3381 std::size(kDiscardedTabTreatmentWithoutRing30Opacity), nullptr},
3382 {"Without Ring and 40\% Opacity",
3383 kDiscardedTabTreatmentWithoutRing40Opacity,
3384 std::size(kDiscardedTabTreatmentWithoutRing40Opacity), nullptr},
3385 {"Without Ring and 50\% Opacity",
3386 kDiscardedTabTreatmentWithoutRing50Opacity,
3387 std::size(kDiscardedTabTreatmentWithoutRing50Opacity), nullptr},
3388
3389};
3390
Alison Galea37182632023-05-11 17:44:563391const FeatureEntry::FeatureParam kMemorySavingsReportingFrequent[] = {
3392 // 100 * 1024 * 1024
3393 {"expanded_high_efficiency_chip_threshold_bytes", "104857600"},
3394 {"expanded_high_efficiency_chip_frequency", "2h"},
3395 {"expanded_high_efficiency_chip_discarded_duration", "1h"}};
3396
3397const FeatureEntry::FeatureParam kMemorySavingsReportingInfrequent[] = {
3398 // 200 * 1024 * 1024
3399 {"expanded_high_efficiency_chip_threshold_bytes", "209715200"},
3400 {"expanded_high_efficiency_chip_frequency", "1d"},
3401 {"expanded_high_efficiency_chip_discarded_duration", "6h"}};
3402
Alison Gale0ef01cb2023-06-06 22:27:353403const FeatureEntry::FeatureParam kMemorySavingsReportingVeryFrequent[] = {
3404 // 100 * 1024 * 1024
3405 {"expanded_high_efficiency_chip_threshold_bytes", "104857600"},
3406 {"expanded_high_efficiency_chip_frequency", "5m"},
3407 {"expanded_high_efficiency_chip_discarded_duration", "5m"}};
3408
Alison Galea37182632023-05-11 17:44:563409const FeatureEntry::FeatureVariation
3410 kHighEfficiencyMemorySavingsReportingVariations[] = {
3411 {"With Frequent Memory Savings Reporting",
3412 kMemorySavingsReportingFrequent,
3413 std::size(kMemorySavingsReportingFrequent), nullptr},
3414 {"With Infrequent Memory Savings Reporting",
3415 kMemorySavingsReportingInfrequent,
3416 std::size(kMemorySavingsReportingInfrequent), nullptr},
Alison Gale0ef01cb2023-06-06 22:27:353417 {"With Very Frequent Memory Savings Reporting",
3418 kMemorySavingsReportingVeryFrequent,
3419 std::size(kMemorySavingsReportingVeryFrequent), nullptr},
Alison Galea37182632023-05-11 17:44:563420};
3421
Charles Meng17ba75d2022-08-23 18:45:283422#endif // !BUILDFLAG(IS_ANDROID)
3423
Yuki Awanoeeaad0f2022-11-22 22:44:593424#if BUILDFLAG(IS_CHROMEOS_ASH)
3425const FeatureEntry::FeatureParam kGalleryAppPdfEditNotificationEditAndSign[] = {
3426 {"text", "Edit and Sign"}};
3427const FeatureEntry::FeatureParam
3428 kGalleryAppPdfEditNotificationOpenWithGalleryApp[] = {
3429 {"text", "Open with Gallery app"}};
3430const FeatureEntry::FeatureVariation
3431 kGalleryAppPdfEditNotificationVariations[] = {
3432 {"Edit and Sign", kGalleryAppPdfEditNotificationEditAndSign,
3433 std::size(kGalleryAppPdfEditNotificationEditAndSign), nullptr},
3434 {"Open with Gallery app",
3435 kGalleryAppPdfEditNotificationOpenWithGalleryApp,
3436 std::size(kGalleryAppPdfEditNotificationOpenWithGalleryApp), nullptr}};
3437#endif
3438
Dibyajyoti Palbe5f0012022-11-29 00:39:343439#if !BUILDFLAG(IS_ANDROID)
3440const FeatureEntry::FeatureParam kOsIntegrationSubManagersWriteConfig[] = {
3441 {"stage", "write_config"}};
3442const FeatureEntry::FeatureParam
3443 kOsIntegrationSubManagersExecuteAndWriteConfig[] = {
3444 {"stage", "execute_and_write_config"}};
3445
3446const FeatureEntry::FeatureVariation
3447 kOsIntegrationSubManagersConfigVariations[] = {
3448 {"Write Config only", kOsIntegrationSubManagersWriteConfig,
3449 std::size(kOsIntegrationSubManagersWriteConfig), nullptr},
3450 {"Execute and Write Config",
3451 kOsIntegrationSubManagersExecuteAndWriteConfig,
3452 std::size(kOsIntegrationSubManagersExecuteAndWriteConfig), nullptr}};
3453#endif // !BUILDFLAG(IS_ANDROID)
3454
Alessio Bazzica76a45022022-12-06 17:13:173455const FeatureEntry::FeatureParam kWebRtcApmDownmixMethodAverage[] = {
3456 {"method", "average"}};
3457const FeatureEntry::FeatureParam kWebRtcApmDownmixMethodFirstChannel[] = {
3458 {"method", "first"}};
3459const FeatureEntry::FeatureVariation kWebRtcApmDownmixMethodVariations[] = {
3460 {"- Average all the input channels", kWebRtcApmDownmixMethodAverage,
3461 std::size(kWebRtcApmDownmixMethodAverage), nullptr},
3462 {"- Use first channel", kWebRtcApmDownmixMethodFirstChannel,
3463 std::size(kWebRtcApmDownmixMethodFirstChannel), nullptr}};
3464
Tom Van Goethema0ecc5b2022-12-13 13:21:323465#if !BUILDFLAG(IS_ANDROID)
3466const FeatureEntry::FeatureParam
3467 kSafetyCheckUnusedSitePermissionsNoDelayParam[] = {
3468 {"unused-site-permissions-no-delay-for-testing", "true"}};
3469
Side Yilmazbcc8fe12023-01-24 17:00:003470const FeatureEntry::FeatureParam
3471 kSafetyCheckUnusedSitePermissionsWithDelayParam[] = {
3472 {"unused-site-permissions-with-delay-for-testing", "true"}};
3473
Tom Van Goethema0ecc5b2022-12-13 13:21:323474const FeatureEntry::FeatureVariation
3475 kSafetyCheckUnusedSitePermissionsVariations[] = {
Side Yilmazbcc8fe12023-01-24 17:00:003476 {"for testing no delay", kSafetyCheckUnusedSitePermissionsNoDelayParam,
Tom Van Goethema0ecc5b2022-12-13 13:21:323477 std::size(kSafetyCheckUnusedSitePermissionsNoDelayParam), nullptr},
Side Yilmazbcc8fe12023-01-24 17:00:003478 {"for testing with delay",
3479 kSafetyCheckUnusedSitePermissionsWithDelayParam,
3480 std::size(kSafetyCheckUnusedSitePermissionsWithDelayParam), nullptr},
Tom Van Goethema0ecc5b2022-12-13 13:21:323481};
3482#endif
3483
Christian Dullweber3d48873a2023-01-09 11:01:273484const FeatureEntry::FeatureParam
Theodore Olsauskas-Warren474cdb52023-01-04 10:16:343485 kPrivacySandboxSettings4ShowSampleDataForTesting[] = {
Christian Dullweber3d48873a2023-01-09 11:01:273486 {privacy_sandbox::kPrivacySandboxSettings4ShowSampleDataForTestingName,
Theodore Olsauskas-Warren474cdb52023-01-04 10:16:343487 "true"}};
Christian Dullweber3d48873a2023-01-09 11:01:273488const FeatureEntry::FeatureParam kPrivacySandboxSettings4NoticeRequired[] = {
3489 {privacy_sandbox::kPrivacySandboxSettings4NoticeRequiredName, "true"}};
3490const FeatureEntry::FeatureParam kPrivacySandboxSettings4ConsentRequired[] = {
3491 {privacy_sandbox::kPrivacySandboxSettings4ConsentRequiredName, "true"}};
Nicola Tommasi2543d8b2023-04-12 18:37:473492const FeatureEntry::FeatureParam kPrivacySandboxSettings4RestrictedNotice[] = {
Matt Reichhoff028c64aa2023-04-26 13:35:073493 {privacy_sandbox::kPrivacySandboxSettings4RestrictedNoticeName, "true"},
3494 {privacy_sandbox::kPrivacySandboxSettings4NoticeRequiredName, "true"}};
Christian Dullweber3d48873a2023-01-09 11:01:273495const FeatureEntry::FeatureParam
Theodore Olsauskas-Warren474cdb52023-01-04 10:16:343496 kPrivacySandboxSettings4ForceShowConsentForTesting[] = {
Christian Dullweber3d48873a2023-01-09 11:01:273497 {privacy_sandbox::
3498 kPrivacySandboxSettings4ForceShowConsentForTestingName,
Olesia Marukhno1f6e9eb2023-01-23 10:24:223499 "true"},
3500 {privacy_sandbox::kPrivacySandboxSettings4ConsentRequiredName, "true"}};
Christian Dullweber3d48873a2023-01-09 11:01:273501const FeatureEntry::FeatureParam
Theodore Olsauskas-Warren474cdb52023-01-04 10:16:343502 kPrivacySandboxSettings4ForceShowROWNoticeForTesting[] = {
Christian Dullweber3d48873a2023-01-09 11:01:273503 {privacy_sandbox::
3504 kPrivacySandboxSettings4ForceShowNoticeRowForTestingName,
Olesia Marukhno1f6e9eb2023-01-23 10:24:223505 "true"},
3506 {privacy_sandbox::kPrivacySandboxSettings4NoticeRequiredName, "true"}};
Christian Dullweber3d48873a2023-01-09 11:01:273507const FeatureEntry::FeatureParam
Theodore Olsauskas-Warren474cdb52023-01-04 10:16:343508 kPrivacySandboxSettings4ForceShowEEANoticeForTesting[] = {
Christian Dullweber3d48873a2023-01-09 11:01:273509 {privacy_sandbox::
3510 kPrivacySandboxSettings4ForceShowNoticeEeaForTestingName,
Olesia Marukhno1f6e9eb2023-01-23 10:24:223511 "true"},
3512 {privacy_sandbox::kPrivacySandboxSettings4ConsentRequiredName, "true"}};
Nicola Tommasi7334e22c2023-03-30 20:23:203513const FeatureEntry::FeatureParam
3514 kPrivacySandboxSettings4ForceShowRestrictedNoticeForTesting[] = {
3515 {privacy_sandbox::
3516 kPrivacySandboxSettings4ForceShowNoticeRestrictedForTestingName,
Matt Reichhoff4a8c4a32023-04-28 16:49:563517 "true"},
3518 {privacy_sandbox::kPrivacySandboxSettings4RestrictedNoticeName, "true"},
3519 {privacy_sandbox::kPrivacySandboxSettings4NoticeRequiredName, "true"}};
Nicola Tommasi2543d8b2023-04-12 18:37:473520const FeatureEntry::FeatureParam
3521 kPrivacySandboxSettings4ForceRestrictedUserForTesting[] = {
Dustin J. Mitchell0b439f72023-05-03 13:40:393522 {privacy_sandbox::kPrivacySandboxSettings4RestrictedNoticeName, "true"},
Nicola Tommasi2543d8b2023-04-12 18:37:473523 {privacy_sandbox::
3524 kPrivacySandboxSettings4ForceRestrictedUserForTestingName,
3525 "true"}};
Theodore Olsauskas-Warren474cdb52023-01-04 10:16:343526
Christian Dullweber3d48873a2023-01-09 11:01:273527const FeatureEntry::FeatureVariation kPrivacySandboxSettings4Variations[] = {
3528 {"Sample Data", kPrivacySandboxSettings4ShowSampleDataForTesting,
3529 std::size(kPrivacySandboxSettings4ShowSampleDataForTesting), nullptr},
3530 {"Notice Required", kPrivacySandboxSettings4NoticeRequired,
3531 std::size(kPrivacySandboxSettings4NoticeRequired), nullptr},
3532 {"Consent Required", kPrivacySandboxSettings4ConsentRequired,
3533 std::size(kPrivacySandboxSettings4ConsentRequired), nullptr},
Nicola Tommasi2543d8b2023-04-12 18:37:473534 {"Restricted notice", kPrivacySandboxSettings4RestrictedNotice,
Dustin J. Mitchell0b439f72023-05-03 13:40:393535 std::size(kPrivacySandboxSettings4RestrictedNotice), nullptr},
Christian Dullweber3d48873a2023-01-09 11:01:273536 {"Force show consent", kPrivacySandboxSettings4ForceShowConsentForTesting,
3537 std::size(kPrivacySandboxSettings4ForceShowConsentForTesting), nullptr},
3538 {"Force show ROW notice",
3539 kPrivacySandboxSettings4ForceShowROWNoticeForTesting,
3540 std::size(kPrivacySandboxSettings4ForceShowROWNoticeForTesting), nullptr},
3541 {"Force show EEA notice",
3542 kPrivacySandboxSettings4ForceShowEEANoticeForTesting,
3543 std::size(kPrivacySandboxSettings4ForceShowEEANoticeForTesting), nullptr},
Nicola Tommasi7334e22c2023-03-30 20:23:203544 {"Force show Restricted notice",
3545 kPrivacySandboxSettings4ForceShowRestrictedNoticeForTesting,
3546 std::size(kPrivacySandboxSettings4ForceShowRestrictedNoticeForTesting),
3547 nullptr},
Nicola Tommasi2543d8b2023-04-12 18:37:473548 {"Force restricted user",
3549 kPrivacySandboxSettings4ForceRestrictedUserForTesting,
3550 std::size(kPrivacySandboxSettings4ForceRestrictedUserForTesting), nullptr},
Theodore Olsauskas-Warren474cdb52023-01-04 10:16:343551};
3552
Ryan Sultanembff00a92023-03-06 11:45:103553#if BUILDFLAG(ENABLE_EXTENSIONS)
3554const FeatureEntry::FeatureParam kWebAuthFlowInNewTab[] = {
3555 {"browser_tab_mode", "new_tab"}};
3556const FeatureEntry::FeatureParam kWebAuthFlowInPopupWindow[] = {
3557 {"browser_tab_mode", "popup_window"}};
3558
3559const FeatureEntry::FeatureVariation kWebAuthFlowInBrowserTabVariations[]{
3560 {"WebAuthFlow in New Tab", kWebAuthFlowInNewTab,
3561 std::size(kWebAuthFlowInNewTab), nullptr},
3562 {"WebAuthFlow in Popup Window", kWebAuthFlowInPopupWindow,
3563 std::size(kWebAuthFlowInPopupWindow), nullptr},
3564};
3565#endif // BUILDFLAG(ENABLE_EXTENSIONS)
3566
Jonathan Njeunje9dc4e6c2023-04-10 03:05:323567const FeatureEntry::FeatureParam kDIPSWithDeletion[] = {
3568 {"persist_database", "true"},
3569 {"delete", "true"},
3570 {"triggering_action", "stateful_bounce"}};
3571
3572const FeatureEntry::FeatureVariation kDIPSVariations[] = {
3573 {"With Deletion", kDIPSWithDeletion, std::size(kDIPSWithDeletion),
3574 nullptr}};
3575
Ard Oerlemansc550dd02023-03-13 10:02:153576#if BUILDFLAG(IS_CHROMEOS_ASH)
3577const FeatureEntry::FeatureParam kVcSegmentationModelHighResolution[] = {
3578 {"segmentation_model", "high_resolution"},
3579};
3580
3581const FeatureEntry::FeatureParam kVcSegmentationModelLowerResolution[] = {
3582 {"segmentation_model", "lower_resolution"},
3583};
3584
3585const FeatureEntry::FeatureVariation kVcSegmentationModelVariations[] = {
3586 {"High resolution model", kVcSegmentationModelHighResolution,
3587 std::size(kVcSegmentationModelHighResolution), nullptr},
3588 {"Lower resolution model", kVcSegmentationModelLowerResolution,
3589 std::size(kVcSegmentationModelLowerResolution), nullptr},
3590};
Nikolas Bowe2d3e0c52023-05-22 00:20:123591
3592const FeatureEntry::FeatureParam kVcLightIntensity10[] = {
3593 {"light_intensity", "1.0"},
3594};
3595
3596const FeatureEntry::FeatureParam kVcLightIntensity13[] = {
3597 {"light_intensity", "1.3"},
3598};
3599
3600const FeatureEntry::FeatureParam kVcLightIntensity15[] = {
3601 {"light_intensity", "1.5"},
3602};
3603
3604const FeatureEntry::FeatureParam kVcLightIntensity17[] = {
3605 {"light_intensity", "1.7"},
3606};
3607
3608const FeatureEntry::FeatureParam kVcLightIntensity18[] = {
3609 {"light_intensity", "1.8"},
3610};
3611
3612const FeatureEntry::FeatureParam kVcLightIntensity20[] = {
3613 {"light_intensity", "2.0"},
3614};
3615
3616const FeatureEntry::FeatureVariation kVcLightIntensityVariations[] = {
3617 {"1.0", kVcLightIntensity10, std::size(kVcLightIntensity10), nullptr},
3618 {"1.3", kVcLightIntensity13, std::size(kVcLightIntensity13), nullptr},
3619 {"1.5", kVcLightIntensity15, std::size(kVcLightIntensity15), nullptr},
3620 {"1.7", kVcLightIntensity17, std::size(kVcLightIntensity17), nullptr},
3621 {"1.8", kVcLightIntensity18, std::size(kVcLightIntensity18), nullptr},
3622 {"2.0", kVcLightIntensity20, std::size(kVcLightIntensity20), nullptr},
3623};
3624
Ard Oerlemansc550dd02023-03-13 10:02:153625#endif // BUILDFLAG(IS_CHROME_ASH)
3626
Leonid Barazc904d472023-05-09 23:53:443627#if BUILDFLAG(IS_CHROMEOS_ASH)
3628const FeatureEntry::FeatureParam
3629 kCrOSLateBootMissiveDisableStorageDegradation[] = {
3630 {"controlled_degradation", "false"}};
3631const FeatureEntry::FeatureParam
3632 kCrOSLateBootMissiveEnableStorageDegradation[] = {
3633 {"controlled_degradation", "true"}};
3634const FeatureEntry::FeatureParam kCrOSLateBootMissiveDisableLegacyStorage[] = {
Leonid Baraz124e3ca2023-06-27 01:31:203635 {"legacy_storage_enabled",
3636 "UNDEFINED_PRIORITY"}}; // All others are multi-generation action state.
Leonid Barazc904d472023-05-09 23:53:443637const FeatureEntry::FeatureParam kCrOSLateBootMissiveEnableLegacyStorage[] = {
Leonid Baraz124e3ca2023-06-27 01:31:203638 {"legacy_storage_enabled",
3639 "SECURITY,"
3640 "IMMEDIATE,"
3641 "FAST_BATCH,"
3642 "SLOW_BATCH,"
3643 "BACKGROUND_BATCH,"
3644 "MANUAL_BATCH,"
3645 "MANUAL_BATCH_LACROS,"}};
3646const FeatureEntry::FeatureParam kCrOSLateBootMissivePartialLegacyStorage[] = {
3647 {"legacy_storage_enabled",
3648 "SECURITY,"
3649 "IMMEDIATE,"}};
3650const FeatureEntry::FeatureParam kCrOSLateBootMissiveSecurityLegacyStorage[] = {
3651 {"legacy_storage_enabled", "SECURITY,"}};
Leonid Barazc904d472023-05-09 23:53:443652
3653const FeatureEntry::FeatureVariation
3654 kCrOSLateBootMissiveStorageDefaultVariations[] = {
3655 {"Enable storage degradation",
3656 kCrOSLateBootMissiveEnableStorageDegradation,
3657 std::size(kCrOSLateBootMissiveEnableStorageDegradation), nullptr},
3658 {"Disable storage degradation",
3659 kCrOSLateBootMissiveDisableStorageDegradation,
3660 std::size(kCrOSLateBootMissiveDisableStorageDegradation), nullptr},
Leonid Baraz124e3ca2023-06-27 01:31:203661 {"Enable all queues legacy", kCrOSLateBootMissiveEnableLegacyStorage,
Leonid Barazc904d472023-05-09 23:53:443662 std::size(kCrOSLateBootMissiveEnableLegacyStorage), nullptr},
Leonid Baraz124e3ca2023-06-27 01:31:203663 {"Disable all queues legacy", kCrOSLateBootMissiveDisableLegacyStorage,
3664 std::size(kCrOSLateBootMissiveDisableLegacyStorage), nullptr},
3665 {"Enable SECURITY and IMMEDIATE queues legacy only",
3666 kCrOSLateBootMissivePartialLegacyStorage,
3667 std::size(kCrOSLateBootMissivePartialLegacyStorage), nullptr},
3668 {"Enable SECURITY queues legacy only",
3669 kCrOSLateBootMissiveSecurityLegacyStorage,
3670 std::size(kCrOSLateBootMissiveSecurityLegacyStorage), nullptr},
3671};
Leonid Barazc904d472023-05-09 23:53:443672#endif // BUILDFLAG(IS_CHROME_ASH)
3673
George Benz05086302023-05-02 23:39:103674#if !BUILDFLAG(IS_ANDROID)
3675const FeatureEntry::Choice kCastMirroringTargetPlayoutDelayChoices[] = {
3676 {flag_descriptions::kCastMirroringTargetPlayoutDelayDefault, "", ""},
3677 {flag_descriptions::kCastMirroringTargetPlayoutDelay100ms,
3678 switches::kCastMirroringTargetPlayoutDelay, "100"},
3679 {flag_descriptions::kCastMirroringTargetPlayoutDelay150ms,
3680 switches::kCastMirroringTargetPlayoutDelay, "150"},
3681 {flag_descriptions::kCastMirroringTargetPlayoutDelay200ms,
3682 switches::kCastMirroringTargetPlayoutDelay, "200"},
3683 {flag_descriptions::kCastMirroringTargetPlayoutDelay250ms,
3684 switches::kCastMirroringTargetPlayoutDelay, "250"},
3685 {flag_descriptions::kCastMirroringTargetPlayoutDelay300ms,
3686 switches::kCastMirroringTargetPlayoutDelay, "300"},
3687 {flag_descriptions::kCastMirroringTargetPlayoutDelay350ms,
3688 switches::kCastMirroringTargetPlayoutDelay, "350"}};
3689#endif // !BUILDFLAG(IS_ANDROID)
3690
rgod7029ae52023-05-16 13:01:363691#if !BUILDFLAG(IS_ANDROID)
3692const FeatureEntry::FeatureParam kPasswordGenerationTrustedAdvice[] = {
3693 {password_manager::features::kPasswordGenerationExperimentVariationParam
3694 .name,
3695 password_manager::features::kPasswordGenerationExperimentVariationOption[0]
3696 .name}};
3697const FeatureEntry::FeatureParam kPasswordGenerationSafetyFirst[] = {
3698 {password_manager::features::kPasswordGenerationExperimentVariationParam
3699 .name,
3700 password_manager::features::kPasswordGenerationExperimentVariationOption[1]
3701 .name}};
3702const FeatureEntry::FeatureParam kPasswordGenerationTrySomethingNew[] = {
3703 {password_manager::features::kPasswordGenerationExperimentVariationParam
3704 .name,
3705 password_manager::features::kPasswordGenerationExperimentVariationOption[2]
3706 .name}};
3707const FeatureEntry::FeatureParam kPasswordGenerationConvenience[] = {
3708 {password_manager::features::kPasswordGenerationExperimentVariationParam
3709 .name,
3710 password_manager::features::kPasswordGenerationExperimentVariationOption[3]
3711 .name}};
rgod8a741332023-05-23 19:41:033712const FeatureEntry::FeatureParam kPasswordGenerationCrossDevice[] = {
3713 {password_manager::features::kPasswordGenerationExperimentVariationParam
3714 .name,
3715 password_manager::features::kPasswordGenerationExperimentVariationOption[4]
3716 .name}};
rgod23ba5762023-07-03 15:46:473717const FeatureEntry::FeatureParam kPasswordGenerationEditPassword[] = {
3718 {password_manager::features::kPasswordGenerationExperimentVariationParam
3719 .name,
3720 password_manager::features::kPasswordGenerationExperimentVariationOption[5]
3721 .name}};
rgod7029ae52023-05-16 13:01:363722
3723const FeatureEntry::FeatureVariation kPasswordGenerationExperimentVariations[] =
3724 {
3725 {"Trusted advice", kPasswordGenerationTrustedAdvice,
3726 std::size(kPasswordGenerationTrustedAdvice), nullptr},
3727 {"Safety first", kPasswordGenerationSafetyFirst,
3728 std::size(kPasswordGenerationSafetyFirst), nullptr},
3729 {"Try something new", kPasswordGenerationTrySomethingNew,
3730 std::size(kPasswordGenerationTrySomethingNew), nullptr},
3731 {"Convenience", kPasswordGenerationConvenience,
3732 std::size(kPasswordGenerationConvenience), nullptr},
rgod8a741332023-05-23 19:41:033733 {"Cross device", kPasswordGenerationCrossDevice,
3734 std::size(kPasswordGenerationCrossDevice), nullptr},
rgod23ba5762023-07-03 15:46:473735 {"Edit password", kPasswordGenerationEditPassword,
3736 std::size(kPasswordGenerationEditPassword), nullptr},
rgod7029ae52023-05-16 13:01:363737};
3738#endif // !BUILDFLAG(IS_ANDROID)
3739
[email protected]4bc5050c2010-11-18 17:55:543740// RECORDING USER METRICS FOR FLAGS:
3741// -----------------------------------------------------------------------------
asvitkineab33c922016-08-30 20:34:193742// The first line of the entry is the internal name.
[email protected]4bc5050c2010-11-18 17:55:543743//
asvitkinee9ed35e2015-10-14 22:33:593744// To add a new entry, add to the end of kFeatureEntries. There are two
3745// distinct types of entries:
3746// . SINGLE_VALUE: entry is either on or off. Use the SINGLE_VALUE_TYPE
[email protected]8a6ff28d2010-12-02 16:35:193747// macro for this type supplying the command line to the macro.
[email protected]28e35af2011-02-09 12:56:223748// . MULTI_VALUE: a list of choices, the first of which should correspond to a
Caitlin Fischer37e01232019-05-24 13:05:453749// deactivated state for this lab (i.e. no command line option). To specify
asvitkinee9ed35e2015-10-14 22:33:593750// this type of entry use the macro MULTI_VALUE_TYPE supplying it the
[email protected]28e35af2011-02-09 12:56:223751// array of choices.
asvitkinee9ed35e2015-10-14 22:33:593752// See the documentation of FeatureEntry for details on the fields.
[email protected]8a6ff28d2010-12-02 16:35:193753//
asvitkineab33c922016-08-30 20:34:193754// Usage of about:flags is logged on startup via the "Launch.FlagsAtStartup"
3755// UMA histogram. This histogram shows the number of startups with a given flag
3756// enabled. If you'd like to see user counts instead, make sure to switch to
Caitlin Fischer37e01232019-05-24 13:05:453757// "count users" view on the dashboard. When adding new entries, the enum
Wei-Yin Chen (陳威尹)80683452017-10-02 19:08:253758// "LoginCustomFlags" must be updated in histograms/enums.xml. See note in
Caitlin Fischer37e01232019-05-24 13:05:453759// enums.xml and don't forget to run AboutFlagsHistogramTest unit test to
3760// calculate and verify checksum.
[email protected]4b66a7d2014-08-15 17:13:313761//
[email protected]8a6ff28d2010-12-02 16:35:193762// When adding a new choice, add it to the end of the list.
asvitkinee9ed35e2015-10-14 22:33:593763const FeatureEntry kFeatureEntries[] = {
Elly Fong-Jones4054f142020-04-17 17:12:333764// Include generated flags for flag unexpiry; see //docs/flag_expiry.md and
3765// //tools/flags/generate_unexpire_flags.py.
Yuta Hijikata235fc62b2020-12-08 03:48:323766#include "build/chromeos_buildflags.h"
Elly Fong-Jones4054f142020-04-17 17:12:333767#include "chrome/browser/unexpire_flags_gen.inc"
Erik Chen92f2f0d2023-03-13 00:09:483768 {variations::switches::kEnableBenchmarking,
3769 flag_descriptions::kEnableBenchmarkingName,
3770 flag_descriptions::kEnableBenchmarkingDescription, kOsAll,
3771 SINGLE_VALUE_TYPE(variations::switches::kEnableBenchmarking)},
Corentin Walleze660b152020-07-15 16:07:543772 {"ignore-gpu-blocklist", flag_descriptions::kIgnoreGpuBlocklistName,
3773 flag_descriptions::kIgnoreGpuBlocklistDescription, kOsAll,
3774 SINGLE_VALUE_TYPE(switches::kIgnoreGpuBlocklist)},
vabr0215a8e2017-03-28 12:47:343775 {"disable-accelerated-2d-canvas",
3776 flag_descriptions::kAccelerated2dCanvasName,
3777 flag_descriptions::kAccelerated2dCanvasDescription, kOsAll,
flackr88fd5122015-11-25 04:44:503778 SINGLE_DISABLE_VALUE_TYPE(switches::kDisableAccelerated2dCanvas)},
Daniele Castagna74ddb9c2018-06-21 22:59:023779 {"overlay-strategies", flag_descriptions::kOverlayStrategiesName,
3780 flag_descriptions::kOverlayStrategiesDescription, kOsAll,
3781 MULTI_VALUE_TYPE(kOverlayStrategiesChoices)},
Daniele Castagnaac71d892020-07-07 17:30:373782 {"tint-composited-content", flag_descriptions::kTintCompositedContentName,
3783 flag_descriptions::kTintCompositedContentDescription, kOsAll,
3784 SINGLE_VALUE_TYPE(switches::kTintCompositedContent)},
pwarren878671672019-12-13 19:18:163785 {"show-overdraw-feedback", flag_descriptions::kShowOverdrawFeedbackName,
3786 flag_descriptions::kShowOverdrawFeedbackDescription, kOsAll,
3787 SINGLE_VALUE_TYPE(switches::kShowOverdrawFeedback)},
vabr0215a8e2017-03-28 12:47:343788 {"ui-disable-partial-swap", flag_descriptions::kUiPartialSwapName,
3789 flag_descriptions::kUiPartialSwapDescription, kOsAll,
reveman9413cff2017-01-18 03:05:483790 SINGLE_DISABLE_VALUE_TYPE(switches::kUIDisablePartialSwap)},
vabr0215a8e2017-03-28 12:47:343791 {"disable-webrtc-hw-decoding", flag_descriptions::kWebrtcHwDecodingName,
3792 flag_descriptions::kWebrtcHwDecodingDescription, kOsAndroid | kOsCrOS,
flackr88fd5122015-11-25 04:44:503793 SINGLE_DISABLE_VALUE_TYPE(switches::kDisableWebRtcHWDecoding)},
vabr0215a8e2017-03-28 12:47:343794 {"disable-webrtc-hw-encoding", flag_descriptions::kWebrtcHwEncodingName,
3795 flag_descriptions::kWebrtcHwEncodingDescription, kOsAndroid | kOsCrOS,
braveyaoe29be162017-01-17 18:53:353796 SINGLE_DISABLE_VALUE_TYPE(switches::kDisableWebRtcHWEncoding)},
Xiaohan Wang064b68cd2022-01-19 19:12:283797#if !BUILDFLAG(IS_ANDROID)
Aran Gilman766c2ad2019-04-18 00:15:413798 {"enable-reader-mode", flag_descriptions::kEnableReaderModeName,
3799 flag_descriptions::kEnableReaderModeDescription, kOsDesktop,
Katie D1ca4328b2020-02-19 18:08:473800 FEATURE_WITH_PARAMS_VALUE_TYPE(dom_distiller::kReaderMode,
3801 kReaderModeDiscoverabilityVariations,
3802 "ReaderMode")},
Xiaohan Wang064b68cd2022-01-19 19:12:283803#endif // !BUILDFLAG(IS_ANDROID)
Tomas Popela253a5832019-01-14 17:22:103804#if defined(WEBRTC_USE_PIPEWIRE)
3805 {"enable-webrtc-pipewire-capturer",
3806 flag_descriptions::kWebrtcPipeWireCapturerName,
Pengchao Caie07a801d2022-09-01 18:28:433807 flag_descriptions::kWebrtcPipeWireCapturerDescription, kOsLinux,
Tomas Popela253a5832019-01-14 17:22:103808 FEATURE_VALUE_TYPE(features::kWebRtcPipeWireCapturer)},
3809#endif // defined(WEBRTC_USE_PIPEWIRE)
ananubisff476b02021-07-27 07:09:583810#if BUILDFLAG(IS_CHROMEOS_ASH)
Ben Franz441a84c2022-04-05 08:44:553811 {"enable-lacros-in-chrome-kiosk",
3812 flag_descriptions::kChromeKioskEnableLacrosName,
3813 flag_descriptions::kChromeKioskEnableLacrosDescription, kOsCrOS,
3814 FEATURE_VALUE_TYPE(features::kChromeKioskEnableLacros)},
ananubisff476b02021-07-27 07:09:583815 {"enable-lacros-in-web-kiosk", flag_descriptions::kWebKioskEnableLacrosName,
3816 flag_descriptions::kWebKioskEnableLacrosDescription, kOsCrOS,
3817 FEATURE_VALUE_TYPE(features::kWebKioskEnableLacros)},
3818#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Yi Xieac082b42022-08-03 09:58:373819#if BUILDFLAG(IS_CHROMEOS)
3820 {"enable-app-service-in-kiosk",
3821 flag_descriptions::kKioskEnableAppServiceName,
3822 flag_descriptions::kKioskEnableAppServiceDescription, kOsCrOS,
3823 FEATURE_VALUE_TYPE(features::kKioskEnableAppService)},
3824#endif // BUILDFLAG(IS_CHROMEOS)
Xiaohan Wang064b68cd2022-01-19 19:12:283825#if !BUILDFLAG(IS_ANDROID)
Elad Alon85e0d0be2018-06-26 10:38:373826 {"enable-webrtc-remote-event-log",
3827 flag_descriptions::kWebRtcRemoteEventLogName,
3828 flag_descriptions::kWebRtcRemoteEventLogDescription, kOsDesktop,
3829 FEATURE_VALUE_TYPE(features::kWebRtcRemoteEventLog)},
3830#endif
Alessio Bazzica570a4f62022-10-17 11:16:303831 {"enable-webrtc-allow-input-volume-adjustment",
3832 flag_descriptions::kWebRtcAllowInputVolumeAdjustmentName,
3833 flag_descriptions::kWebRtcAllowInputVolumeAdjustmentDescription,
Alessio Bazzica86740972022-10-17 20:23:493834 kOsWin | kOsMac | kOsLinux,
Alessio Bazzica570a4f62022-10-17 11:16:303835 FEATURE_VALUE_TYPE(features::kWebRtcAllowInputVolumeAdjustment)},
Alessio Bazzica76a45022022-12-06 17:13:173836 {"enable-webrtc-apm-downmix-capture-audio-method",
3837 flag_descriptions::kWebRtcApmDownmixCaptureAudioMethodName,
3838 flag_descriptions::kWebRtcApmDownmixCaptureAudioMethodDescription,
3839 kOsDesktop,
3840 FEATURE_WITH_PARAMS_VALUE_TYPE(
3841 features::kWebRtcApmDownmixCaptureAudioMethod,
3842 kWebRtcApmDownmixMethodVariations,
3843 "WebRtcApmDownmixCaptureAudioMethod")},
Qingsi Wangec2dbf942018-11-03 05:33:043844 {"enable-webrtc-hide-local-ips-with-mdns",
3845 flag_descriptions::kWebrtcHideLocalIpsWithMdnsName,
3846 flag_descriptions::kWebrtcHideLocalIpsWithMdnsDecription, kOsDesktop,
Antonio Gomesb4718572019-09-11 02:55:483847 FEATURE_VALUE_TYPE(blink::features::kWebRtcHideLocalIpsWithMdns)},
Sergey Silkinc33244f2020-01-31 17:21:303848 {"enable-webrtc-use-min-max-vea-dimensions",
3849 flag_descriptions::kWebrtcUseMinMaxVEADimensionsName,
3850 flag_descriptions::kWebrtcUseMinMaxVEADimensionsDescription, kOsAll,
3851 FEATURE_VALUE_TYPE(blink::features::kWebRtcUseMinMaxVEADimensions)},
Derek Schuff71d9a922019-04-24 21:36:003852#if BUILDFLAG(ENABLE_NACL)
3853 {"enable-nacl", flag_descriptions::kNaclName,
3854 flag_descriptions::kNaclDescription, kOsAll,
3855 SINGLE_VALUE_TYPE(switches::kEnableNaCl)},
Fabian Sommer0d6568b2022-01-05 16:58:343856 {"verbose-logging-in-nacl", flag_descriptions::kVerboseLoggingInNaclName,
3857 flag_descriptions::kVerboseLoggingInNaclDescription, kOsAll,
3858 MULTI_VALUE_TYPE(kVerboseLoggingInNaclChoices)},
Derek Schuff71d9a922019-04-24 21:36:003859#endif // ENABLE_NACL
Alex Cooperbdd9a762023-01-24 23:29:543860#if BUILDFLAG(ENABLE_CARDBOARD)
3861 {"enable-cardboard", flag_descriptions::kEnableCardboardName,
3862 flag_descriptions::kEnableCardboardDescription, kOsAndroid,
3863 FEATURE_VALUE_TYPE(device::features::kEnableCardboard)},
3864#endif // ENABLE_CARDBOARD
brettw00899e62016-11-12 02:10:173865#if BUILDFLAG(ENABLE_EXTENSIONS)
vabr0215a8e2017-03-28 12:47:343866 {"extensions-on-chrome-urls",
3867 flag_descriptions::kExtensionsOnChromeUrlsName,
3868 flag_descriptions::kExtensionsOnChromeUrlsDescription, kOsAll,
dschuyler336363e2015-06-12 02:01:473869 SINGLE_VALUE_TYPE(extensions::switches::kExtensionsOnChromeURLs)},
skymd6d2c8d32016-09-26 22:06:073870#endif // ENABLE_EXTENSIONS
Xiaohan Wang064b68cd2022-01-19 19:12:283871#if BUILDFLAG(IS_ANDROID)
Donn Denman19688bc2021-03-05 18:48:403872 {"contextual-search-force-caption",
3873 flag_descriptions::kContextualSearchForceCaptionName,
3874 flag_descriptions::kContextualSearchForceCaptionDescription, kOsAndroid,
3875 FEATURE_VALUE_TYPE(chrome::android::kContextualSearchForceCaption)},
Donn Denman05a5b99b2022-07-27 23:38:443876 {"contextual-search-suppress-short-view",
3877 flag_descriptions::kContextualSearchSuppressShortViewName,
3878 flag_descriptions::kContextualSearchSuppressShortViewDescription,
3879 kOsAndroid,
Gang Wufc9c6f52022-09-13 05:28:193880 FEATURE_WITH_PARAMS_VALUE_TYPE(
3881 chrome::android::kContextualSearchSuppressShortView,
3882 kContextualSearchSuppressShortViewVariations,
3883 "ContextualSearchSuppressShortView")},
Donn Denmanc42123c2020-03-19 01:44:243884 {"related-searches", flag_descriptions::kRelatedSearchesName,
3885 flag_descriptions::kRelatedSearchesDescription, kOsAndroid,
Donn Denmanbe6617c2021-03-01 15:17:003886 FEATURE_WITH_PARAMS_VALUE_TYPE(chrome::android::kRelatedSearches,
3887 kRelatedSearchesVariations,
3888 "RelatedSearches")},
Xiaohan Wang064b68cd2022-01-19 19:12:283889#endif // BUILDFLAG(IS_ANDROID)
dschuyler336363e2015-06-12 02:01:473890 {"show-autofill-type-predictions",
vabr0215a8e2017-03-28 12:47:343891 flag_descriptions::kShowAutofillTypePredictionsName,
3892 flag_descriptions::kShowAutofillTypePredictionsDescription, kOsAll,
Florian Leimgruberf53ca392023-02-21 15:56:503893 FEATURE_VALUE_TYPE(
3894 autofill::features::test::kAutofillShowTypePredictions)},
Dmitry Vykochko91af82b02022-12-09 17:37:373895 {"autofill-more-prominent-popup",
3896 flag_descriptions::kAutofillMoreProminentPopupName,
3897 flag_descriptions::kAutofillMoreProminentPopupDescription, kOsDesktop,
3898 FEATURE_VALUE_TYPE(autofill::features::kAutofillMoreProminentPopup)},
vabr0215a8e2017-03-28 12:47:343899 {"smooth-scrolling", flag_descriptions::kSmoothScrollingName,
3900 flag_descriptions::kSmoothScrollingDescription,
skobes4dd88f32016-01-06 22:56:223901 // Mac has a separate implementation with its own setting to disable.
Fred Shih87e6a562022-04-13 19:51:513902 kOsLinux | kOsLacros | kOsCrOS | kOsWin | kOsAndroid | kOsFuchsia,
ymalik985f5e72016-02-18 20:10:123903 ENABLE_DISABLE_VALUE_TYPE(switches::kEnableSmoothScrolling,
3904 switches::kDisableSmoothScrolling)},
David Bokan432978d2019-08-15 18:18:523905 {"fractional-scroll-offsets",
3906 flag_descriptions::kFractionalScrollOffsetsName,
3907 flag_descriptions::kFractionalScrollOffsetsDescription, kOsAll,
3908 FEATURE_VALUE_TYPE(features::kFractionalScrollOffsets)},
Wez600f06c2021-03-05 20:32:303909#if defined(USE_AURA)
3910 {"overlay-scrollbars", flag_descriptions::kOverlayScrollbarsName,
3911 flag_descriptions::kOverlayScrollbarsDescription,
3912 // Uses the system preference on Mac (a different implementation).
3913 // On Android, this is always enabled.
3914 kOsAura, FEATURE_VALUE_TYPE(features::kOverlayScrollbar)},
3915#endif // USE_AURA
vabr0215a8e2017-03-28 12:47:343916 {"enable-quic", flag_descriptions::kQuicName,
3917 flag_descriptions::kQuicDescription, kOsAll,
dschuyler336363e2015-06-12 02:01:473918 ENABLE_DISABLE_VALUE_TYPE(switches::kEnableQuic, switches::kDisableQuic)},
dschuyler336363e2015-06-12 02:01:473919 {"disable-javascript-harmony-shipping",
vabr0215a8e2017-03-28 12:47:343920 flag_descriptions::kJavascriptHarmonyShippingName,
3921 flag_descriptions::kJavascriptHarmonyShippingDescription, kOsAll,
flackr88fd5122015-11-25 04:44:503922 SINGLE_DISABLE_VALUE_TYPE(switches::kDisableJavaScriptHarmonyShipping)},
vabr0215a8e2017-03-28 12:47:343923 {"enable-javascript-harmony", flag_descriptions::kJavascriptHarmonyName,
3924 flag_descriptions::kJavascriptHarmonyDescription, kOsAll,
dschuyler336363e2015-06-12 02:01:473925 SINGLE_VALUE_TYPE(switches::kJavaScriptHarmony)},
Shu-yu Guob5461a52022-09-02 01:22:243926 {"enable-javascript-experimental-shared-memory",
3927 flag_descriptions::kJavascriptExperimentalSharedMemoryName,
3928 flag_descriptions::kJavascriptExperimentalSharedMemoryDescription, kOsAll,
3929 FEATURE_VALUE_TYPE(features::kJavaScriptExperimentalSharedMemory)},
Andreas Haasb400d912019-08-28 18:54:103930 {"enable-experimental-webassembly-features",
3931 flag_descriptions::kExperimentalWebAssemblyFeaturesName,
3932 flag_descriptions::kExperimentalWebAssemblyFeaturesDescription, kOsAll,
3933 SINGLE_VALUE_TYPE(switches::kEnableExperimentalWebAssemblyFeatures)},
Francis McCabedf4456d92022-10-04 20:42:323934#if defined(ARCH_CPU_X86_64) || defined(ARCH_CPU_ARM64)
Francis McCabef3548832022-05-26 15:11:273935 {"enable-experimental-webassembly-stack-switching",
Francis McCabecfc1e47d2023-01-09 22:55:493936 flag_descriptions::kExperimentalWebAssemblyJSPIName,
3937 flag_descriptions::kExperimentalWebAssemblyJSPIDescription, kOsAll,
3938 FEATURE_VALUE_TYPE(features::kEnableExperimentalWebAssemblyJSPI)},
Francis McCabedf4456d92022-10-04 20:42:323939#endif // defined(ARCH_CPU_X86_64) || defined(ARCH_CPU_ARM64)
Clemens Hammacher0c8a15a2018-04-27 13:45:323940 {"enable-webassembly-baseline", flag_descriptions::kEnableWasmBaselineName,
3941 flag_descriptions::kEnableWasmBaselineDescription, kOsAll,
3942 FEATURE_VALUE_TYPE(features::kWebAssemblyBaseline)},
Adam Kleinadbd0ef2022-12-15 00:07:153943 {"enable-webassembly-garbage-collection",
3944 flag_descriptions::kEnableWasmGarbageCollectionName,
3945 flag_descriptions::kEnableWasmGarbageCollectionDescription, kOsAll,
3946 FEATURE_VALUE_TYPE(features::kWebAssemblyGarbageCollection)},
Clemens Backes50e0ecd2020-01-20 10:43:243947 {"enable-webassembly-lazy-compilation",
3948 flag_descriptions::kEnableWasmLazyCompilationName,
3949 flag_descriptions::kEnableWasmLazyCompilationDescription, kOsAll,
3950 FEATURE_VALUE_TYPE(features::kWebAssemblyLazyCompilation)},
Deepti Gandluri377ba8cc2022-11-11 18:09:383951 {"enable-webassembly-relaxed-simd",
3952 flag_descriptions::kEnableWasmRelaxedSimdName,
3953 flag_descriptions::kEnableWasmRelaxedSimdDescription, kOsAll,
3954 FEATURE_VALUE_TYPE(features::kWebAssemblyRelaxedSimd)},
Matthias Liedtke731a77c2023-03-14 16:11:333955 {"enable-webassembly-stringref",
3956 flag_descriptions::kEnableWasmStringrefName,
3957 flag_descriptions::kEnableWasmStringrefDescription, kOsAll,
3958 FEATURE_VALUE_TYPE(features::kWebAssemblyStringref)},
Clemens Backes963eb37be2020-01-10 11:56:493959 {"enable-webassembly-tiering", flag_descriptions::kEnableWasmTieringName,
3960 flag_descriptions::kEnableWasmTieringDescription, kOsAll,
3961 FEATURE_VALUE_TYPE(features::kWebAssemblyTiering)},
Michael Hablich896d52662017-10-23 15:59:573962 {"enable-future-v8-vm-features", flag_descriptions::kV8VmFutureName,
3963 flag_descriptions::kV8VmFutureDescription, kOsAll,
3964 FEATURE_VALUE_TYPE(features::kV8VmFuture)},
vabr0215a8e2017-03-28 12:47:343965 {"enable-gpu-rasterization", flag_descriptions::kGpuRasterizationName,
3966 flag_descriptions::kGpuRasterizationDescription, kOsAll,
dschuyler336363e2015-06-12 02:01:473967 MULTI_VALUE_TYPE(kEnableGpuRasterizationChoices)},
Dominik Röttsches94487ec2023-06-21 09:45:583968#if BUILDFLAG(USE_FONTATIONS_BACKEND)
3969 {"enable-fontations-backend", flag_descriptions::kFontationsFontBackendName,
3970 flag_descriptions::kFontationsFontBackendDescription, kOsAll,
3971 FEATURE_VALUE_TYPE(blink::features::kFontationsFontBackend)},
3972#endif
asvitkineab33c922016-08-30 20:34:193973 {"enable-experimental-web-platform-features",
vabr0215a8e2017-03-28 12:47:343974 flag_descriptions::kExperimentalWebPlatformFeaturesName,
3975 flag_descriptions::kExperimentalWebPlatformFeaturesDescription, kOsAll,
dschuyler336363e2015-06-12 02:01:473976 SINGLE_VALUE_TYPE(switches::kEnableExperimentalWebPlatformFeatures)},
Peter Kastingd77428352018-10-26 15:20:253977 {"top-chrome-touch-ui", flag_descriptions::kTopChromeTouchUiName,
3978 flag_descriptions::kTopChromeTouchUiDescription, kOsDesktop,
3979 MULTI_VALUE_TYPE(kTopChromeTouchUiChoices)},
Peter Boström92add81d2019-08-12 22:14:243980#if BUILDFLAG(ENABLE_WEBUI_TAB_STRIP)
Yuheng Huang4d0b941fc2021-10-12 05:30:363981 {flag_descriptions::kWebUITabStripFlagId,
3982 flag_descriptions::kWebUITabStripName,
Peter Boström92add81d2019-08-12 22:14:243983 flag_descriptions::kWebUITabStripDescription, kOsDesktop,
Collin Baker33a13f52019-12-13 00:30:233984 FEATURE_VALUE_TYPE(features::kWebUITabStrip)},
Tombae388942021-08-17 02:44:003985 {"webui-tab-strip-context-menu-after-tap",
3986 flag_descriptions::kWebUITabStripContextMenuAfterTapName,
3987 flag_descriptions::kWebUITabStripContextMenuAfterTapDescription,
3988 kOsDesktop,
3989 FEATURE_VALUE_TYPE(features::kWebUITabStripContextMenuAfterTap)},
Peter Boström92add81d2019-08-12 22:14:243990#endif // BUILDFLAG(ENABLE_WEBUI_TAB_STRIP)
Yuta Hijikata235fc62b2020-12-08 03:48:323991#if BUILDFLAG(ENABLE_WEBUI_TAB_STRIP) && BUILDFLAG(IS_CHROMEOS_ASH)
Collin Baker0b940c8e2020-08-07 18:53:483992 {
3993 "webui-tab-strip-tab-drag-integration",
3994 flag_descriptions::kWebUITabStripTabDragIntegrationName,
3995 flag_descriptions::kWebUITabStripTabDragIntegrationDescription,
3996 kOsCrOS,
3997 FEATURE_VALUE_TYPE(ash::features::kWebUITabStripTabDragIntegration),
3998 },
Yuta Hijikata235fc62b2020-12-08 03:48:323999#endif // BUILDFLAG(ENABLE_WEBUI_TAB_STRIP) && BUILDFLAG(IS_CHROMEOS_ASH)
Yuta Hijikata235fc62b2020-12-08 03:48:324000#if BUILDFLAG(IS_CHROMEOS_ASH)
Andreea Costinas99e24192023-02-15 14:39:464001 {"allow-eap-default-cas-without-subject-verification",
4002 flag_descriptions::kAllowEapDefaultCasWithoutSubjectVerificationName,
4003 flag_descriptions::
4004 kAllowEapDefaultCasWithoutSubjectVerificationDescription,
4005 kOsCrOS,
4006 FEATURE_VALUE_TYPE(
4007 ash::features::kAllowEapDefaultCasWithoutSubjectVerification)},
Michael Checo6adc5f92023-05-09 03:09:024008 {"alt-click-and-six-pack-customization",
4009 flag_descriptions::kAltClickAndSixPackCustomizationName,
4010 flag_descriptions::kAltClickAndSixPackCustomizationDescription, kOsCrOS,
4011 FEATURE_VALUE_TYPE(ash::features::kAltClickAndSixPackCustomization)},
Antoni Dikovb3487502022-09-21 15:24:214012 {"apn-revamp", flag_descriptions::kApnRevampName,
4013 flag_descriptions::kApnRevampDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:424014 FEATURE_VALUE_TYPE(ash::features::kApnRevamp)},
Hung-Hsien Chen30af66752023-02-24 02:55:264015 {"audio-ap-noise-cancellation",
4016 flag_descriptions::kAudioAPNoiseCancellationName,
4017 flag_descriptions::kAudioAPNoiseCancellationDescription, kOsCrOS,
4018 PLATFORM_FEATURE_NAME_TYPE("CrOSLateBootAudioAPNoiseCancellation")},
Li-Yu Yu7610f0082023-01-04 08:36:294019 {"audio-flexible-loopback", flag_descriptions::kAudioFlexibleLoopbackName,
4020 flag_descriptions::kAudioFlexibleLoopbackDescription, kOsCrOS,
4021 PLATFORM_FEATURE_NAME_TYPE("CrOSLateBootAudioFlexibleLoopback")},
Chih-Yang Hsia540cf372022-08-04 08:10:224022 {"audio-hfp-mic-sr", flag_descriptions::kAudioHFPMicSRName,
4023 flag_descriptions::kAudioHFPMicSRDescription, kOsCrOS,
4024 PLATFORM_FEATURE_NAME_TYPE("CrOSLateBootAudioHFPMicSR")},
Jeremy Wu8ea57b62023-06-02 02:55:264025 {"audio-hfp-nbs-warning", flag_descriptions::kAudioHFPNbsWarningName,
4026 flag_descriptions::kAudioHFPNbsWarningDescription, kOsCrOS,
4027 FEATURE_VALUE_TYPE(ash::features::kAudioHFPNbsWarning)},
Pin-chih Linf52f4602023-03-06 04:01:314028 {"audio-hfp-offload", flag_descriptions::kAudioHFPOffloadName,
4029 flag_descriptions::kAudioHFPOffloadDescription, kOsCrOS,
4030 PLATFORM_FEATURE_NAME_TYPE("CrOSLateBootAudioHFPOffload")},
Jeremy Wu74b1a552023-06-05 07:59:284031 {"audio-hfp-swb", flag_descriptions::kAudioHFPSwbName,
4032 flag_descriptions::kAudioHFPSwbDescription, kOsCrOS,
4033 PLATFORM_FEATURE_NAME_TYPE("CrOSLateBootAudioHFPSwb")},
whalechang258191d2023-02-14 04:36:424034 {"cras-split-alsa-usb-internal",
4035 flag_descriptions::kCrasSplitAlsaUsbInternalName,
4036 flag_descriptions::kCrasSplitAlsaUsbInternalDescription, kOsCrOS,
4037 PLATFORM_FEATURE_NAME_TYPE("CrOSLateBootCrasSplitAlsaUSBInternal")},
Daniele Castagna893d822e2019-03-08 21:37:114038 {"disable-explicit-dma-fences",
4039 flag_descriptions::kDisableExplicitDmaFencesName,
4040 flag_descriptions::kDisableExplicitDmaFencesDescription, kOsCrOS,
4041 SINGLE_VALUE_TYPE(switches::kDisableExplicitDmaFences)},
Miguel Casasf15028b12019-10-23 12:52:324042 // TODO(crbug.com/1012846): Remove this flag and provision when HDR is fully
4043 // supported on ChromeOS.
Miguel Casas8821b0982020-07-02 12:28:494044 {"use-hdr-transfer-function",
4045 flag_descriptions::kUseHDRTransferFunctionName,
4046 flag_descriptions::kUseHDRTransferFunctionDescription, kOsCrOS,
4047 FEATURE_VALUE_TYPE(display::features::kUseHDRTransferFunction)},
Thanh Nguyen730ac8a32022-05-19 08:50:464048 {"adaptive-charging", flag_descriptions::kAdaptiveChargingName,
4049 flag_descriptions::kAdaptiveChargingDescription, kOsCrOS,
4050 FEATURE_VALUE_TYPE(ash::features::kAdaptiveCharging)},
Thanh Nguyen6b4c5852022-05-26 22:03:254051 {"adaptive-charging-for-testing",
4052 flag_descriptions::kAdaptiveChargingForTestingName,
4053 flag_descriptions::kAdaptiveChargingForTestingDescription, kOsCrOS,
4054 FEATURE_VALUE_TYPE(ash::features::kAdaptiveChargingForTesting)},
Ahmed Fakhry886038f2023-06-10 00:11:254055 {"ash-capture-mode-audio-mixing",
4056 flag_descriptions::kCaptureModeAudioMixingName,
4057 flag_descriptions::kCaptureModeAudioMixingDescription, kOsCrOS,
4058 FEATURE_VALUE_TYPE(ash::features::kCaptureModeAudioMixing)},
Michele Fanb0c93e42023-01-03 16:08:004059 {"ash-capture-mode-demo-tools",
4060 flag_descriptions::kCaptureModeDemoToolsName,
4061 flag_descriptions::kCaptureModeDemoToolsDescription, kOsCrOS,
4062 FEATURE_VALUE_TYPE(ash::features::kCaptureModeDemoTools)},
Ahmed Fakhrye1072c12023-02-27 20:58:494063 {"ash-capture-mode-gif-recording",
4064 flag_descriptions::kCaptureModeGifRecordingName,
4065 flag_descriptions::kCaptureModeGifRecordingDescription, kOsCrOS,
4066 FEATURE_VALUE_TYPE(ash::features::kGifRecording)},
minch1ad858c2021-06-24 20:30:014067 {"ash-overview-button", flag_descriptions::kOverviewButtonName,
4068 flag_descriptions::kOverviewButtonDescription, kOsCrOS,
4069 FEATURE_VALUE_TYPE(ash::features::kOverviewButton)},
Ahmed Fakhry039882f2020-06-16 21:56:214070 {"ash-limit-shelf-items-to-active-desk",
4071 flag_descriptions::kLimitShelfItemsToActiveDeskName,
4072 flag_descriptions::kLimitShelfItemsToActiveDeskDescription, kOsCrOS,
4073 FEATURE_VALUE_TYPE(ash::features::kPerDeskShelf)},
vabr0215a8e2017-03-28 12:47:344074 {"ash-enable-unified-desktop",
4075 flag_descriptions::kAshEnableUnifiedDesktopName,
4076 flag_descriptions::kAshEnableUnifiedDesktopDescription, kOsCrOS,
rjkroege03f3d6b2016-09-09 21:27:594077 SINGLE_VALUE_TYPE(switches::kEnableUnifiedDesktop)},
Zoraiz Naeem82fa01072022-06-14 20:13:094078 {"rounded-display", flag_descriptions::kRoundedDisplay,
4079 flag_descriptions::kRoundedDisplayDescription, kOsCrOS,
Zoraiz Naeem20d0ed92022-06-27 23:57:294080 FEATURE_VALUE_TYPE(display::features::kRoundedDisplay)},
Zoraiz Naeem056fe4b2023-05-23 00:35:384081 {"rounded-windows", flag_descriptions::kRoundedWindows,
4082 flag_descriptions::kRoundedWindowsDescription, kOsCrOS,
4083 FEATURE_WITH_PARAMS_VALUE_TYPE(chromeos::features::kRoundedWindows,
4084 kRoundedWindowsRadiusVariation,
4085 "RoundedWindows")},
Michael Sun1b15a302020-04-07 02:57:294086 {"bluetooth-fix-a2dp-packet-size",
4087 flag_descriptions::kBluetoothFixA2dpPacketSizeName,
4088 flag_descriptions::kBluetoothFixA2dpPacketSizeDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:424089 FEATURE_VALUE_TYPE(ash::features::kBluetoothFixA2dpPacketSize)},
Joseph Hwangc0c68e62022-08-12 16:52:164090 {"bluetooth-quality-report", flag_descriptions::kBluetoothQualityReportName,
4091 flag_descriptions::kBluetoothQualityReportDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:424092 FEATURE_VALUE_TYPE(ash::features::kBluetoothQualityReport)},
Hsin-Yu Chao6f2cfd6a2020-11-16 04:37:344093 {"bluetooth-wbs-dogfood", flag_descriptions::kBluetoothWbsDogfoodName,
4094 flag_descriptions::kBluetoothWbsDogfoodDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:424095 FEATURE_VALUE_TYPE(ash::features::kBluetoothWbsDogfood)},
Manish Mandlikdd93b612022-08-12 01:08:194096 {"bluetooth-coredump", flag_descriptions::kBluetoothCoredumpName,
4097 flag_descriptions::kBluetoothCoredumpDescription, kOsCrOS,
4098 FEATURE_VALUE_TYPE(chromeos::bluetooth::features::kBluetoothCoredump)},
Manish Mandlik05533f12023-03-16 00:31:074099 {"bluetooth-floss-coredump", flag_descriptions::kBluetoothFlossCoredumpName,
4100 flag_descriptions::kBluetoothFlossCoredumpDescription, kOsCrOS,
4101 FEATURE_VALUE_TYPE(
4102 chromeos::bluetooth::features::kBluetoothFlossCoredump)},
Sarvesh02d88ff2023-01-18 23:10:414103 {kBluetoothUseFlossInternalName, flag_descriptions::kBluetoothUseFlossName,
Sonny Sasaka94725212021-12-17 01:37:304104 flag_descriptions::kBluetoothUseFlossDescription, kOsCrOS,
4105 FEATURE_VALUE_TYPE(floss::features::kFlossEnabled)},
Zhengping Jiang706c2272022-07-13 05:50:344106 {"bluetooth-use-llprivacy", flag_descriptions::kBluetoothUseLLPrivacyName,
4107 flag_descriptions::kBluetoothUseLLPrivacyDescription, kOsCrOS,
4108 FEATURE_VALUE_TYPE(bluez::features::kLinkLayerPrivacy)},
Abhishek Pandit-Subedi1843978c2023-05-17 02:52:234109 {"bluetooth-long-autosuspend",
4110 flag_descriptions::kBluetoothLongAutosuspendName,
4111 flag_descriptions::kBluetoothLongAutosuspendDescription, kOsCrOS,
4112 PLATFORM_FEATURE_NAME_TYPE("CrOSLateBootLongBluetoothAutosuspend")},
Sam Cackett2891ad82022-12-08 19:45:554113 {"calendar-jelly", flag_descriptions::kCalendarJellyName,
4114 flag_descriptions::kCalendarJellyDescription, kOsCrOS,
4115 FEATURE_VALUE_TYPE(ash::features::kCalendarJelly)},
Steven Bennetts2038c6c2022-12-02 20:06:094116 {"captive-portal-error-page",
4117 flag_descriptions::kCaptivePortalErrorPageName,
4118 flag_descriptions::kCaptivePortalErrorPageDescription, kOsCrOS,
4119 FEATURE_VALUE_TYPE(ash::features::kCaptivePortalErrorPage)},
Jason Zhang9ec877752021-10-29 18:10:504120 {"cellular-bypass-esim-installation-connectivity-check",
4121 flag_descriptions::kCellularBypassESimInstallationConnectivityCheckName,
4122 flag_descriptions::
4123 kCellularBypassESimInstallationConnectivityCheckDescription,
4124 kOsCrOS,
4125 FEATURE_VALUE_TYPE(
Henrique Ferreiro9d7def182022-11-30 12:38:424126 ash::features::kCellularBypassESimInstallationConnectivityCheck)},
Jason Zhang26cacea2022-04-04 18:55:044127 {"cellular-use-second-euicc",
4128 flag_descriptions::kCellularUseSecondEuiccName,
4129 flag_descriptions::kCellularUseSecondEuiccDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:424130 FEATURE_VALUE_TYPE(ash::features::kCellularUseSecondEuicc)},
Jan Lanik3f592332022-10-06 21:08:004131 {"cros-privacy-hub-v0", flag_descriptions::kCrosPrivacyHubV0Name,
4132 flag_descriptions::kCrosPrivacyHubV0Description, kOsCrOS,
4133 FEATURE_VALUE_TYPE(ash::features::kCrosPrivacyHubV0)},
Jan Lanik28195e42022-08-02 14:23:294134 {"enable-cros-privacy-hub", flag_descriptions::kCrosPrivacyHubName,
4135 flag_descriptions::kCrosPrivacyHubDescription, kOsCrOS,
4136 FEATURE_VALUE_TYPE(ash::features::kCrosPrivacyHub)},
Sean Kaud5d0fc72023-01-30 19:08:264137 {"jelly-colors", flag_descriptions::kJellyColorsName,
Sean Kau12be3af2023-03-02 23:32:434138 flag_descriptions::kJellyColorsDescription, kOsCrOS | kOsLacros,
4139 FEATURE_VALUE_TYPE(chromeos::features::kJelly)},
Gordon Seto2c79d0442022-02-22 22:33:064140 {"oobe-hid-detection-revamp",
4141 flag_descriptions::kOobeHidDetectionRevampName,
4142 flag_descriptions::kOobeHidDetectionRevampDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:424143 FEATURE_VALUE_TYPE(ash::features::kOobeHidDetectionRevamp)},
Ashley Prasad26ebba5d2023-03-31 16:47:464144 {"os-feedback-jelly", flag_descriptions::kOsFeedbackJellyName,
4145 flag_descriptions::kOsFeedbackJellyDescription, kOsCrOS,
4146 FEATURE_VALUE_TYPE(ash::features::kOsFeedbackJelly)},
Wes Okuhara72373672022-10-14 16:38:194147 {"os-settings-app-badging-toggle",
4148 flag_descriptions::kOsSettingsAppBadgingToggleName,
4149 flag_descriptions::kOsSettingsAppBadgingToggleDescription, kOsCrOS,
4150 FEATURE_VALUE_TYPE(ash::features::kOsSettingsAppBadgingToggle)},
Xiaohui Chencd2db09e2023-06-12 18:20:264151 {"os-settings-deprecate-sync-metrics-toggle",
4152 flag_descriptions::kOsSettingsDeprecateSyncMetricsToggleName,
4153 flag_descriptions::kOsSettingsDeprecateSyncMetricsToggleDescription,
4154 kOsCrOS,
4155 FEATURE_VALUE_TYPE(ash::features::kOsSettingsDeprecateSyncMetricsToggle)},
Wes Okuharad71d73df2023-05-17 23:33:384156 {"os-settings-revamp-wayfinding",
4157 flag_descriptions::kOsSettingsRevampWayfindingName,
4158 flag_descriptions::kOsSettingsRevampWayfindingDescription, kOsCrOS,
4159 FEATURE_VALUE_TYPE(ash::features::kOsSettingsRevampWayfinding)},
James Cook808a1412022-11-09 21:02:424160 {"qs-revamp", flag_descriptions::kQsRevampName,
Jiaming Chenge04b3b52022-08-09 02:46:594161 flag_descriptions::kQsRevampDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:424162 FEATURE_VALUE_TYPE(ash::features::kQsRevamp)},
Kyle Horimoto874554a2019-01-31 00:52:094163 {"use_messages_staging_url", flag_descriptions::kUseMessagesStagingUrlName,
Jon Mannc9d088c2019-08-14 18:14:214164 flag_descriptions::kUseMessagesStagingUrlDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:424165 FEATURE_VALUE_TYPE(ash::features::kUseMessagesStagingUrl)},
Jon Mann5ebbd1532020-04-17 22:12:054166 {"use-custom-messages-domain",
4167 flag_descriptions::kUseCustomMessagesDomainName,
4168 flag_descriptions::kUseCustomMessagesDomainDescription, kOsCrOS,
4169 ORIGIN_LIST_VALUE_TYPE(switches::kCustomAndroidMessagesDomain, "")},
Thanh Nguyena4c933442019-05-11 03:43:554170 {"disable-cancel-all-touches",
4171 flag_descriptions::kDisableCancelAllTouchesName,
4172 flag_descriptions::kDisableCancelAllTouchesDescription, kOsCrOS,
4173 SINGLE_VALUE_TYPE(switches::kDisableCancelAllTouches)},
Alex Newcomere5a362c2019-05-02 19:31:354174 {
4175 "enable-background-blur",
4176 flag_descriptions::kEnableBackgroundBlurName,
4177 flag_descriptions::kEnableBackgroundBlurDescription,
4178 kOsCrOS,
minchab2ded5ce2019-09-06 18:32:284179 FEATURE_VALUE_TYPE(ash::features::kEnableBackgroundBlur),
Alex Newcomere5a362c2019-05-02 19:31:354180 },
Brian Geffon297843f2022-06-27 16:33:434181 {"enable-zram-writeback", flag_descriptions::kEnableZramWriteback,
4182 flag_descriptions::kEnableZramWritebackDescription, kOsCrOS,
4183 FEATURE_VALUE_TYPE(ash::kCrOSEnableZramWriteback)},
Brian Geffon1c24556a2023-06-12 17:10:444184 {"enable-suspend-to-disk", flag_descriptions::kEnableSuspendToDisk,
4185 flag_descriptions::kEnableSuspendToDiskDescription, kOsCrOS,
4186 FEATURE_WITH_PARAMS_VALUE_TYPE(ash::features::kSuspendToDisk,
4187 kHibernateFeatureVariations,
4188 "SuspendToDisk")},
Hidehiko Abeded6e5b2022-01-24 17:00:044189 // Used to carry the policy value crossing the Chrome process lifetime.
4190 {crosapi::browser_util::kLacrosAvailabilityPolicyInternalName, "", "",
4191 kOsCrOS, MULTI_VALUE_TYPE(kLacrosAvailabilityPolicyChoices)},
Victor-Gabriel Savu6b0d97c2022-12-09 12:22:434192 // Used to carry the policy value crossing the Chrome process lifetime.
4193 {crosapi::browser_util::kLacrosDataBackwardMigrationModePolicyInternalName,
4194 "", "", kOsCrOS,
4195 MULTI_VALUE_TYPE(kLacrosDataBackwardMigrationModePolicyChoices)},
James Cookc813eb52020-05-08 18:03:534196 {kLacrosSupportInternalName, flag_descriptions::kLacrosSupportName,
James Cookac2473be2020-04-28 00:54:184197 flag_descriptions::kLacrosSupportDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:424198 FEATURE_VALUE_TYPE(ash::features::kLacrosSupport)},
Erik Chen601a5d62020-12-07 20:05:124199 {kLacrosStabilityInternalName, flag_descriptions::kLacrosStabilityName,
4200 flag_descriptions::kLacrosStabilityDescription, kOsCrOS,
4201 MULTI_VALUE_TYPE(kLacrosStabilityChoices)},
Erik Chen5d686e2a02022-11-01 23:11:314202 {kLacrosWaylandLoggingInternalName,
4203 flag_descriptions::kLacrosWaylandLoggingName,
4204 flag_descriptions::kLacrosWaylandLoggingDescription, kOsCrOS,
4205 FEATURE_VALUE_TYPE(ash::features::kLacrosWaylandLogging)},
Peter Boström6324b792022-09-28 23:15:564206 {kPreferDcheckInternalName, flag_descriptions::kPreferDcheckName,
4207 flag_descriptions::kPreferDcheckDescription, kOsCrOS,
4208 MULTI_VALUE_TYPE(kPreferDcheckChoices)},
Erik Chen366873d62022-03-08 23:11:384209 {"uxstudy1", flag_descriptions::kUXStudy1Name,
4210 flag_descriptions::kUXStudy1Description, kOsCrOS,
4211 MULTI_VALUE_TYPE(kUXStudy1Choices)},
Yuta Hijikataad794422022-04-15 17:33:124212 {"lacros-move-profile-migration",
4213 flag_descriptions::kLacrosMoveProfileMigrationName,
4214 flag_descriptions::kLacrosMoveProfileMigrationDescription, kOsCrOS,
4215 FEATURE_VALUE_TYPE(ash::features::kLacrosMoveProfileMigration)},
Yuta Hijikata6a575d42022-01-11 04:09:074216 {"lacros-profile-migration-force-off",
4217 flag_descriptions::kLacrosProfileMigrationForceOffName,
4218 flag_descriptions::kLacrosProfileMigrationForceOffDescription, kOsCrOS,
4219 FEATURE_VALUE_TYPE(ash::features::kLacrosProfileMigrationForceOff)},
Jana Grill661e4752023-06-21 12:27:214220 {"lacros-trigger-profile-backward-migration",
4221 flag_descriptions::kLacrosProfileBackwardMigrationName,
4222 flag_descriptions::kLacrosProfileBackwardMigrationDescription, kOsCrOS,
4223 FEATURE_VALUE_TYPE(ash::features::kLacrosProfileBackwardMigration)},
Jae Hoon Kim94e1cfd2021-05-19 20:52:524224 {kLacrosSelectionInternalName, flag_descriptions::kLacrosSelectionName,
4225 flag_descriptions::kLacrosSelectionDescription, kOsCrOS,
4226 MULTI_VALUE_TYPE(kLacrosSelectionChoices)},
Artem Sumaneev1f3555a2023-01-30 12:48:274227 {kLacrosSelectionPolicyIgnoreInternalName,
4228 flag_descriptions::kLacrosSelectionPolicyIgnoreName,
4229 flag_descriptions::kLacrosSelectionPolicyIgnoreDescription, kOsCrOS,
4230 SINGLE_VALUE_TYPE(ash::switches::kLacrosSelectionPolicyIgnore)},
Maggie Cai6dd6b552021-04-27 08:40:324231 {kWebAppsCrosapiInternalName, flag_descriptions::kWebAppsCrosapiName,
4232 flag_descriptions::kWebAppsCrosapiDescription, kOsCrOS,
4233 FEATURE_VALUE_TYPE(features::kWebAppsCrosapi)},
Hidehiko Abe9f190d12021-03-18 12:55:204234 {kLacrosPrimaryInternalName, flag_descriptions::kLacrosPrimaryName,
4235 flag_descriptions::kLacrosPrimaryDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:424236 FEATURE_VALUE_TYPE(ash::features::kLacrosPrimary)},
Hidehiko Abea7217c92022-02-01 05:54:574237 {kLacrosOnlyInternalName, flag_descriptions::kLacrosOnlyName,
4238 flag_descriptions::kLacrosOnlyDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:424239 FEATURE_VALUE_TYPE(ash::features::kLacrosOnly)},
Erik Chend7082ec2021-06-25 01:04:124240 {kLacrosAvailabilityIgnoreInternalName,
4241 flag_descriptions::kLacrosAvailabilityIgnoreName,
4242 flag_descriptions::kLacrosAvailabilityIgnoreDescription, kOsCrOS,
4243 SINGLE_VALUE_TYPE(ash::switches::kLacrosAvailabilityIgnore)},
Ahmed Fakhry15d707e2019-02-22 23:54:214244 {"list-all-display-modes", flag_descriptions::kListAllDisplayModesName,
4245 flag_descriptions::kListAllDisplayModesDescription, kOsCrOS,
4246 FEATURE_VALUE_TYPE(display::features::kListAllDisplayModes)},
Gil Dekel11cbdfb2020-12-23 21:43:274247 {"enable-hardware_mirror-mode",
4248 flag_descriptions::kEnableHardwareMirrorModeName,
4249 flag_descriptions::kEnableHardwareMirrorModeDescription, kOsCrOS,
4250 FEATURE_VALUE_TYPE(display::features::kEnableHardwareMirrorMode)},
Gil Dekel43a14582022-12-02 05:50:284251 {"enable-edid-based-display-ids",
4252 flag_descriptions::kEnableEdidBasedDisplayIdsName,
4253 flag_descriptions::kEnableEdidBasedDisplayIdsDescription, kOsCrOS,
4254 FEATURE_VALUE_TYPE(display::features::kEnableEdidBasedDisplayIds)},
Jenny Zhang0c298e42022-01-12 03:09:264255 {"enforce-ash-extension-keeplist",
4256 flag_descriptions::kEnforceAshExtensionKeeplistName,
4257 flag_descriptions::kEnforceAshExtensionKeeplistDescription, kOsCrOS,
4258 FEATURE_VALUE_TYPE(ash::features::kEnforceAshExtensionKeeplist)},
Jason Zhangb9ee1ed2022-07-25 18:27:344259 {"hotspot", flag_descriptions::kHotspotName,
4260 flag_descriptions::kHotspotDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:424261 FEATURE_VALUE_TYPE(ash::features::kHotspot)},
James Cookf9d34d22017-10-04 16:39:354262 {"instant-tethering", flag_descriptions::kTetherName,
4263 flag_descriptions::kTetherDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:424264 FEATURE_VALUE_TYPE(ash::features::kInstantTethering)},
Mitsuru Oshimadaf54572020-04-07 14:47:594265 {
4266 "new-shortcut-mapping",
4267 flag_descriptions::kEnableNewShortcutMappingName,
4268 flag_descriptions::kEnableNewShortcutMappingDescription,
4269 kOsCrOS,
4270 FEATURE_VALUE_TYPE(features::kNewShortcutMapping),
4271 },
Zentaro Kavanagh806daf8b2021-02-11 22:20:134272 {"improved-keyboard-shortcuts",
4273 flag_descriptions::kImprovedKeyboardShortcutsName,
4274 flag_descriptions::kImprovedKeyboardShortcutsDescription, kOsCrOS,
4275 FEATURE_VALUE_TYPE(features::kImprovedKeyboardShortcuts)},
Zentaro Kavanagh53c48cb22021-03-25 00:19:064276 {"deprecate-alt-click", flag_descriptions::kDeprecateAltClickName,
4277 flag_descriptions::kDeprecateAltClickDescription, kOsCrOS,
4278 FEATURE_VALUE_TYPE(features::kDeprecateAltClick)},
Zentaro Kavanaghc1898fe2021-06-25 00:31:454279 {"deprecate-alt-based-six-pack",
4280 flag_descriptions::kDeprecateAltBasedSixPackName,
4281 flag_descriptions::kDeprecateAltBasedSixPackDescription, kOsCrOS,
4282 FEATURE_VALUE_TYPE(features::kDeprecateAltBasedSixPack)},
Cam Bickelc4f81892023-05-10 23:29:594283 {"deprecate-old-keyboard-shortcuts-accelerator",
4284 flag_descriptions::kDeprecateOldKeyboardShortcutsAcceleratorName,
4285 flag_descriptions::kDeprecateOldKeyboardShortcutsAcceleratorDescription,
4286 kOsCrOS,
4287 FEATURE_VALUE_TYPE(
4288 ash::features::kDeprecateOldKeyboardShortcutsAccelerator)},
rudranshd650903892022-06-16 18:42:304289 {"hidden-network-migration", flag_descriptions::kHiddenNetworkMigrationName,
4290 flag_descriptions::kHiddenNetworkMigrationDescription, kOsCrOS,
4291 FEATURE_VALUE_TYPE(ash::features::kHiddenNetworkMigration)},
Kyle Horimoto63a6bd42019-09-16 23:47:524292 {"show-bluetooth-debug-log-toggle",
4293 flag_descriptions::kShowBluetoothDebugLogToggleName,
4294 flag_descriptions::kShowBluetoothDebugLogToggleDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:424295 FEATURE_VALUE_TYPE(ash::features::kShowBluetoothDebugLogToggle)},
James Cook0ba192bf2017-12-01 20:53:114296 {"show-taps", flag_descriptions::kShowTapsName,
4297 flag_descriptions::kShowTapsDescription, kOsCrOS,
4298 SINGLE_VALUE_TYPE(ash::switches::kShowTaps)},
James Cookf9d34d22017-10-04 16:39:354299 {"show-touch-hud", flag_descriptions::kShowTouchHudName,
James Cook0ba192bf2017-12-01 20:53:114300 flag_descriptions::kShowTouchHudDescription, kOsCrOS,
James Cookf9d34d22017-10-04 16:39:354301 SINGLE_VALUE_TYPE(ash::switches::kAshTouchHud)},
Ahmed Mehfoozf719a672020-12-17 23:32:524302 {"stylus-battery-status", flag_descriptions::kStylusBatteryStatusName,
4303 flag_descriptions::kStylusBatteryStatusDescription, kOsCrOS,
4304 FEATURE_VALUE_TYPE(ash::features::kStylusBatteryStatus)},
Yen-lin Laif458f8012021-03-29 10:18:204305 {"wake-on-wifi-allowed", flag_descriptions::kWakeOnWifiAllowedName,
4306 flag_descriptions::kWakeOnWifiAllowedDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:424307 FEATURE_VALUE_TYPE(ash::features::kWakeOnWifiAllowed)},
Toni Barzic5cf7da92021-05-19 21:07:404308 {"microphone-mute-notifications",
4309 flag_descriptions::kMicrophoneMuteNotificationsName,
4310 flag_descriptions::kMicrophoneMuteNotificationsDescription, kOsCrOS,
4311 FEATURE_VALUE_TYPE(ash::features::kMicMuteNotifications)},
4312 {"microphone-mute-switch-device",
4313 flag_descriptions::kMicrophoneMuteSwitchDeviceName,
4314 flag_descriptions::kMicrophoneMuteSwitchDeviceDescription, kOsCrOS,
4315 SINGLE_VALUE_TYPE("enable-microphone-mute-switch-device")},
Jacek Siuda7ed81c92021-11-24 10:39:444316 {"wifi-connect-mac-address-randomization",
4317 flag_descriptions::kWifiConnectMacAddressRandomizationName,
4318 flag_descriptions::kWifiConnectMacAddressRandomizationDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:424319 FEATURE_VALUE_TYPE(ash::features::kWifiConnectMacAddressRandomization)},
Jae Hoon Kim2d4256e2022-04-15 21:59:094320 {"consumer-auto-update-toggle-allowed",
4321 flag_descriptions::kConsumerAutoUpdateToggleAllowedName,
4322 flag_descriptions::kConsumerAutoUpdateToggleAllowedDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:424323 FEATURE_VALUE_TYPE(ash::features::kConsumerAutoUpdateToggleAllowed)},
Ashley Prasadaeff69382023-03-31 22:50:434324 {"diagnostics-app-jelly", flag_descriptions::kDiagnosticsAppJellyName,
4325 flag_descriptions::kDiagnosticsAppJellyDescription, kOsCrOS,
4326 FEATURE_VALUE_TYPE(ash::features::kDiagnosticsAppJelly)},
Jenny Zhang6bdaa162022-07-14 01:22:304327 {"disable-lacros-tts-support",
4328 flag_descriptions::kDisableLacrosTtsSupportName,
4329 flag_descriptions::kDisableLacrosTtsSupportDescription, kOsCrOS,
4330 FEATURE_VALUE_TYPE(ash::features::kDisableLacrosTtsSupport)},
Garrick Evanse6f9f252023-01-19 05:43:084331 {"disable-dns-proxy", flag_descriptions::kDisableDnsProxyName,
4332 flag_descriptions::kDisableDnsProxyDescription, kOsCrOS,
4333 FEATURE_VALUE_TYPE(ash::features::kDisableDnsProxy)},
Ashley Prasadbe89bd22023-04-03 21:26:124334 {"firmware-update-jelly", flag_descriptions::kFirmwareUpdateJellyName,
4335 flag_descriptions::kFirmwareUpdateJellyDescription, kOsCrOS,
4336 FEATURE_VALUE_TYPE(ash::features::kFirmwareUpdateJelly)},
Jerry Liu3c11fe892023-03-20 21:00:504337 {"screen-saver-duration", flag_descriptions::kScreenSaverDurationName,
4338 flag_descriptions::kScreenSaverDurationDescription, kOsCrOS,
4339 FEATURE_VALUE_TYPE(ash::features::kScreenSaverDuration)},
Ilkin Safarli2692d5d12022-12-09 00:03:214340 {"screen-saver-preview", flag_descriptions::kScreenSaverPreviewName,
4341 flag_descriptions::kScreenSaverPreviewDescription, kOsCrOS,
4342 FEATURE_VALUE_TYPE(ash::features::kScreenSaverPreview)},
Jason Thai7036e64e2023-01-23 23:14:394343 {"multi-zone-rgb-keyboard", flag_descriptions::kMultiZoneRgbKeyboardName,
4344 flag_descriptions::kMultiZoneRgbKeyboardDescription, kOsCrOS,
4345 FEATURE_VALUE_TYPE(ash::features::kMultiZoneRgbKeyboard)},
Jason Jeremy Imanee9104eb52023-03-01 04:11:044346 {"passpoint-arc-support", flag_descriptions::kPasspointARCSupportName,
4347 flag_descriptions::kPasspointARCSupportDescription, kOsCrOS,
4348 FEATURE_VALUE_TYPE(ash::features::kPasspointARCSupport)},
Damien Dejean837a7f02023-04-10 08:39:304349 {"passpoint-settings", flag_descriptions::kPasspointSettingsName,
4350 flag_descriptions::kPasspointSettingsDescription, kOsCrOS,
4351 FEATURE_VALUE_TYPE(ash::features::kPasspointSettings)},
Andreea Costinas478d1ca22023-02-23 11:49:504352 {"policy-provided-trust-anchors-allowed-at-lock-screen",
4353 flag_descriptions::kPolicyProvidedTrustAnchorsAllowedAtLockScreenName,
4354 flag_descriptions::
4355 kPolicyProvidedTrustAnchorsAllowedAtLockScreenDescription,
4356 kOsCrOS,
4357 FEATURE_VALUE_TYPE(
4358 ash::features::kPolicyProvidedTrustAnchorsAllowedAtLockScreen)},
Jason Thaiaa62a032023-04-05 21:07:424359 {kTimeOfDayScreenSaverInternalName,
4360 flag_descriptions::kTimeOfDayScreenSaverName,
Jason Thaie13aa822023-02-24 04:09:234361 flag_descriptions::kTimeOfDayScreenSaverDescription, kOsCrOS,
Jason Thaicca98f52023-04-12 21:42:324362 FEATURE_VALUE_TYPE(ash::features::kTimeOfDayScreenSaver)},
Jason Thaiaa62a032023-04-05 21:07:424363 {kTimeOfDayWallpaperInternalName,
4364 flag_descriptions::kTimeOfDayWallpaperName,
Jason Thai5af7e8d2023-02-24 00:13:054365 flag_descriptions::kTimeOfDayWallpaperDescription, kOsCrOS,
4366 FEATURE_VALUE_TYPE(ash::features::kTimeOfDayWallpaper)},
Taoyu Lib19cd582023-03-30 01:13:384367 {"enable-rfc-8925", flag_descriptions::kEnableRFC8925Name,
4368 flag_descriptions::kEnableRFC8925Description, kOsCrOS,
4369 FEATURE_VALUE_TYPE(ash::features::kEnableRFC8925)},
Pilar Molina Lopez40a3e2d2021-03-04 21:01:084370#endif // BUILDFLAG(IS_CHROMEOS_ASH)
4371
Xiaohan Wang064b68cd2022-01-19 19:12:284372#if BUILDFLAG(IS_CHROMEOS)
Pavol Marko798ffdb42022-06-23 13:22:424373 {"disable-idle-sockets-close-on-memory-pressure",
4374 flag_descriptions::kDisableIdleSocketsCloseOnMemoryPressureName,
4375 flag_descriptions::kDisableIdleSocketsCloseOnMemoryPressureDescription,
4376 kOsCrOS | kOsLacros,
4377 FEATURE_VALUE_TYPE(
4378 chromeos::features::kDisableIdleSocketsCloseOnMemoryPressure)},
Jenny Zhang0f8cb4fc2022-05-27 00:03:504379 {"disable-office-editing-component-app",
4380 flag_descriptions::kDisableOfficeEditingComponentAppName,
4381 flag_descriptions::kDisableOfficeEditingComponentAppDescription,
4382 kOsCrOS | kOsLacros,
4383 FEATURE_VALUE_TYPE(chromeos::features::kDisableOfficeEditingComponentApp)},
Youssef Esmatc732bf82022-05-27 00:47:194384 {"one-group-per-renderer", flag_descriptions::kOneGroupPerRendererName,
4385 flag_descriptions::kOneGroupPerRendererDescription, kOsCrOS | kOsLacros,
4386 FEATURE_VALUE_TYPE(base::kOneGroupPerRenderer)},
Xiaohan Wang064b68cd2022-01-19 19:12:284387#endif // BUILDFLAG(IS_CHROMEOS)
dschuyler336363e2015-06-12 02:01:474388 {
dvadym415215b2016-02-09 12:05:034389 "disable-accelerated-video-decode",
vabr0215a8e2017-03-28 12:47:344390 flag_descriptions::kAcceleratedVideoDecodeName,
4391 flag_descriptions::kAcceleratedVideoDecodeDescription,
Ted Meyer4855f5302022-10-25 22:13:184392 kOsMac | kOsWin | kOsCrOS | kOsAndroid | kOsLacros | kOsFuchsia |
4393 kOsLinux,
dvadym415215b2016-02-09 12:05:034394 SINGLE_DISABLE_VALUE_TYPE(switches::kDisableAcceleratedVideoDecode),
dschuyler336363e2015-06-12 02:01:474395 },
Hirokazu Honda732d3e622019-06-12 01:13:444396 {
4397 "disable-accelerated-video-encode",
4398 flag_descriptions::kAcceleratedVideoEncodeName,
4399 flag_descriptions::kAcceleratedVideoEncodeDescription,
4400 kOsMac | kOsWin | kOsCrOS | kOsAndroid,
4401 SINGLE_DISABLE_VALUE_TYPE(switches::kDisableAcceleratedVideoEncode),
4402 },
Xiaohan Wang064b68cd2022-01-19 19:12:284403#if BUILDFLAG(IS_WIN)
Xiaohan Wang9c9e5d35c2021-09-02 17:36:094404 {
4405 "enable-hardware-secure-decryption",
4406 flag_descriptions::kHardwareSecureDecryptionName,
4407 flag_descriptions::kHardwareSecureDecryptionDescription,
4408 kOsWin,
4409 FEATURE_VALUE_TYPE(media::kHardwareSecureDecryption),
4410 },
Bill Carrc2abb9222021-11-07 22:02:564411 {
Xiaohan Wang2d588832021-11-16 00:57:074412 "enable-hardware-secure-decryption-experiment",
4413 flag_descriptions::kHardwareSecureDecryptionExperimentName,
4414 flag_descriptions::kHardwareSecureDecryptionExperimentDescription,
4415 kOsWin,
4416 FEATURE_VALUE_TYPE(media::kHardwareSecureDecryptionExperiment),
4417 },
4418 {
Xiaohan Wang90409292022-03-26 09:06:284419 "enable-hardware-secure-decryption-fallback",
4420 flag_descriptions::kHardwareSecureDecryptionFallbackName,
4421 flag_descriptions::kHardwareSecureDecryptionFallbackDescription,
4422 kOsWin,
4423 FEATURE_VALUE_TYPE(media::kHardwareSecureDecryptionFallback),
4424 },
4425 {
Bill Carrc2abb9222021-11-07 22:02:564426 "enable-media-foundation-clear",
4427 flag_descriptions::kMediaFoundationClearName,
4428 flag_descriptions::kMediaFoundationClearDescription,
4429 kOsWin,
4430 FEATURE_VALUE_TYPE(media::kMediaFoundationClearPlayback),
4431 },
Alex Forrenceb42504892022-07-20 21:50:074432 {
4433 "enable-waitable-swap-chain",
4434 flag_descriptions::kUseWaitableSwapChainName,
4435 flag_descriptions::kUseWaitableSwapChainDescription,
4436 kOsWin,
4437 FEATURE_WITH_PARAMS_VALUE_TYPE(features::kDXGIWaitableSwapChain,
4438 kDXGIWaitableSwapChainVariations,
4439 "DXGIWaitableSwapChain"),
4440 },
Xiaohan Wang9c9e5d35c2021-09-02 17:36:094441#endif
Yuta Hijikata235fc62b2020-12-08 03:48:324442#if BUILDFLAG(IS_CHROMEOS_ASH)
dschuyler336363e2015-06-12 02:01:474443 {
Hirokazu Honda8ef07cd2020-04-17 03:36:384444 "zero-copy-video-capture",
4445 flag_descriptions::kZeroCopyVideoCaptureName,
4446 flag_descriptions::kZeroCopyVideoCaptureDescription,
4447 kOsCrOS,
4448 ENABLE_DISABLE_VALUE_TYPE_AND_VALUE(
4449 switches::kVideoCaptureUseGpuMemoryBuffer,
4450 "1",
4451 switches::kDisableVideoCaptureUseGpuMemoryBuffer,
4452 "1"),
4453 },
4454 {
Becca Hughesac86cd442019-01-09 23:49:544455 "ash-debug-shortcuts",
4456 flag_descriptions::kDebugShortcutsName,
4457 flag_descriptions::kDebugShortcutsDescription,
4458 kOsAll,
dvadym415215b2016-02-09 12:05:034459 SINGLE_VALUE_TYPE(ash::switches::kAshDebugShortcuts),
dschuyler336363e2015-06-12 02:01:474460 },
vabr0215a8e2017-03-28 12:47:344461 {"ui-slow-animations", flag_descriptions::kUiSlowAnimationsName,
4462 flag_descriptions::kUiSlowAnimationsDescription, kOsCrOS,
reveman6e8fc782017-01-10 20:26:164463 SINGLE_VALUE_TYPE(switches::kUISlowAnimations)},
Yuta Hijikata235fc62b2020-12-08 03:48:324464#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Xiaohan Wang064b68cd2022-01-19 19:12:284465#if BUILDFLAG(IS_WIN)
Isuru Pathirana9762a942021-02-03 17:38:034466 {
4467 "zero-copy-video-capture",
4468 flag_descriptions::kZeroCopyVideoCaptureName,
4469 flag_descriptions::kZeroCopyVideoCaptureDescription,
4470 kOsWin,
4471 FEATURE_VALUE_TYPE(media::kMediaFoundationD3D11VideoCapture),
4472 },
Xiaohan Wang064b68cd2022-01-19 19:12:284473#endif // BUILDFLAG(IS_WIN)
vabr0215a8e2017-03-28 12:47:344474 {"debug-packed-apps", flag_descriptions::kDebugPackedAppName,
4475 flag_descriptions::kDebugPackedAppDescription, kOsDesktop,
dschuyler336363e2015-06-12 02:01:474476 SINGLE_VALUE_TYPE(switches::kDebugPackedApps)},
Maria Kazinova58cedc02021-08-02 17:15:114477 {"username-first-flow-fallback-crowdsourcing",
4478 flag_descriptions::kUsernameFirstFlowFallbackCrowdsourcingName,
4479 flag_descriptions::kUsernameFirstFlowFallbackCrowdsourcingDescription,
4480 kOsAll,
4481 FEATURE_VALUE_TYPE(
4482 password_manager::features::kUsernameFirstFlowFallbackCrowdsourcing)},
vabr0215a8e2017-03-28 12:47:344483 {"enable-show-autofill-signatures",
brettw5f9c1642017-05-14 17:12:484484 flag_descriptions::kShowAutofillSignaturesName,
vabr0215a8e2017-03-28 12:47:344485 flag_descriptions::kShowAutofillSignaturesDescription, kOsAll,
kolosad369932017-02-23 13:29:414486 SINGLE_VALUE_TYPE(autofill::switches::kShowAutofillSignatures)},
vabr0215a8e2017-03-28 12:47:344487 {"wallet-service-use-sandbox",
4488 flag_descriptions::kWalletServiceUseSandboxName,
4489 flag_descriptions::kWalletServiceUseSandboxDescription,
4490 kOsAndroid | kOsDesktop,
dschuyler336363e2015-06-12 02:01:474491 ENABLE_DISABLE_VALUE_TYPE_AND_VALUE(
4492 autofill::switches::kWalletServiceUseSandbox,
4493 "1",
4494 autofill::switches::kWalletServiceUseSandbox,
4495 "0")},
François Beaufort7aace812022-02-02 13:57:174496 {"enable-web-bluetooth", flag_descriptions::kWebBluetoothName,
Pengchao Caie07a801d2022-09-01 18:28:434497 flag_descriptions::kWebBluetoothDescription, kOsLinux,
François Beaufort7aace812022-02-02 13:57:174498 FEATURE_VALUE_TYPE(features::kWebBluetooth)},
Ovidio Henriquez3d729f62020-02-07 00:43:294499 {"enable-web-bluetooth-new-permissions-backend",
4500 flag_descriptions::kWebBluetoothNewPermissionsBackendName,
4501 flag_descriptions::kWebBluetoothNewPermissionsBackendDescription,
4502 kOsAndroid | kOsDesktop,
4503 FEATURE_VALUE_TYPE(features::kWebBluetoothNewPermissionsBackend)},
Reilly Grant3c560fa2021-09-25 01:27:254504 {"enable-webusb-device-detection",
4505 flag_descriptions::kWebUsbDeviceDetectionName,
4506 flag_descriptions::kWebUsbDeviceDetectionDescription, kOsDesktop,
4507 FEATURE_VALUE_TYPE(features::kWebUsbDeviceDetection)},
Jinsuk Kimabf62962020-12-16 03:10:064508#if defined(USE_AURA)
Jinsuk Kim2e139e432021-02-26 03:46:564509 {"overscroll-history-navigation",
4510 flag_descriptions::kOverscrollHistoryNavigationName,
4511 flag_descriptions::kOverscrollHistoryNavigationDescription, kOsAura,
4512 FEATURE_VALUE_TYPE(features::kOverscrollHistoryNavigation)},
Mohsen Izadi93faac12017-07-29 04:45:154513 {"pull-to-refresh", flag_descriptions::kPullToRefreshName,
4514 flag_descriptions::kPullToRefreshDescription, kOsAura,
Mohsen Izadi8c59ba52018-04-12 18:52:014515 MULTI_VALUE_TYPE(kPullToRefreshChoices)},
Jinsuk Kimabf62962020-12-16 03:10:064516#endif // USE_AURA
vabr0215a8e2017-03-28 12:47:344517 {"enable-touch-drag-drop", flag_descriptions::kTouchDragDropName,
4518 flag_descriptions::kTouchDragDropDescription, kOsWin | kOsCrOS,
dschuyler336363e2015-06-12 02:01:474519 ENABLE_DISABLE_VALUE_TYPE(switches::kEnableTouchDragDrop,
4520 switches::kDisableTouchDragDrop)},
vabr0215a8e2017-03-28 12:47:344521 {"touch-selection-strategy", flag_descriptions::kTouchSelectionStrategyName,
4522 flag_descriptions::kTouchSelectionStrategyDescription,
dschuyler336363e2015-06-12 02:01:474523 kOsAndroid, // TODO(mfomitchev): Add CrOS/Win/Linux support soon.
4524 MULTI_VALUE_TYPE(kTouchTextSelectionStrategyChoices)},
pritam.nikam2dfdae102015-07-14 13:51:114525 {"enable-suggestions-with-substring-match",
vabr0215a8e2017-03-28 12:47:344526 flag_descriptions::kSuggestionsWithSubStringMatchName,
4527 flag_descriptions::kSuggestionsWithSubStringMatchDescription, kOsAll,
Tommy Martino38d91552019-03-16 03:50:204528 FEATURE_VALUE_TYPE(autofill::features::kAutofillTokenPrefixMatching)},
Yuta Hijikata235fc62b2020-12-08 03:48:324529#if BUILDFLAG(IS_CHROMEOS_ASH)
vabr0215a8e2017-03-28 12:47:344530 {"enable-virtual-keyboard", flag_descriptions::kVirtualKeyboardName,
4531 flag_descriptions::kVirtualKeyboardDescription, kOsCrOS,
dschuyler336363e2015-06-12 02:01:474532 SINGLE_VALUE_TYPE(keyboard::switches::kEnableVirtualKeyboard)},
My Nguyen0bc9add2020-12-03 21:21:254533 {"disable-virtual-keyboard",
4534 flag_descriptions::kVirtualKeyboardDisabledName,
4535 flag_descriptions::kVirtualKeyboardDisabledDescription, kOsCrOS,
4536 SINGLE_VALUE_TYPE(keyboard::switches::kDisableVirtualKeyboard)},
Yuta Hijikata235fc62b2020-12-08 03:48:324537#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Kenneth Russell08c7dc32021-07-09 08:06:594538 {"enable-webgl-developer-extensions",
4539 flag_descriptions::kWebglDeveloperExtensionsName,
4540 flag_descriptions::kWebglDeveloperExtensionsDescription, kOsAll,
4541 SINGLE_VALUE_TYPE(switches::kEnableWebGLDeveloperExtensions)},
vabr0215a8e2017-03-28 12:47:344542 {"enable-webgl-draft-extensions",
4543 flag_descriptions::kWebglDraftExtensionsName,
4544 flag_descriptions::kWebglDraftExtensionsDescription, kOsAll,
dschuyler336363e2015-06-12 02:01:474545 SINGLE_VALUE_TYPE(switches::kEnableWebGLDraftExtensions)},
vabr0215a8e2017-03-28 12:47:344546 {"enable-zero-copy", flag_descriptions::kZeroCopyName,
4547 flag_descriptions::kZeroCopyDescription, kOsAll,
Dave Tapuska9bcf6cc2020-06-25 15:15:014548 ENABLE_DISABLE_VALUE_TYPE(blink::switches::kEnableZeroCopy,
4549 blink::switches::kDisableZeroCopy)},
Peng Huang70021682019-09-18 19:42:284550 {"enable-vulkan", flag_descriptions::kEnableVulkanName,
Peng Huang463e6902020-04-03 15:37:054551 flag_descriptions::kEnableVulkanDescription,
Pengchao Caie07a801d2022-09-01 18:28:434552 kOsWin | kOsLinux | kOsAndroid, FEATURE_VALUE_TYPE(features::kVulkan)},
Xiaohan Wang064b68cd2022-01-19 19:12:284553#if BUILDFLAG(IS_ANDROID)
Josh Simmons7a8e7a942021-06-19 01:08:564554 {"translate-assist-content", flag_descriptions::kTranslateAssistContentName,
4555 flag_descriptions::kTranslateAssistContentDescription, kOsAndroid,
4556 FEATURE_VALUE_TYPE(language::kTranslateAssistContent)},
Josh Simmons8c98484872021-05-05 20:50:014557 {"translate-intent", flag_descriptions::kTranslateIntentName,
4558 flag_descriptions::kTranslateIntentDescription, kOsAndroid,
4559 FEATURE_VALUE_TYPE(language::kTranslateIntent)},
Scott Littlec0f9a472022-03-23 19:23:224560 {"translate-message-ui", flag_descriptions::kTranslateMessageUIName,
4561 flag_descriptions::kTranslateMessageUIDescription, kOsAndroid,
4562 FEATURE_VALUE_TYPE(translate::kTranslateMessageUI)},
Xiaohan Wang064b68cd2022-01-19 19:12:284563#endif // BUILDFLAG(IS_ANDROID)
Haohao Wang5b525f722019-05-18 15:37:524564
Peter Beverlooc30c9ddf2021-02-24 19:56:034565#if BUILDFLAG(ENABLE_SYSTEM_NOTIFICATIONS) && !BUILDFLAG(IS_CHROMEOS_ASH)
4566 {"enable-system-notifications",
4567 flag_descriptions::kNotificationsSystemFlagName,
4568 flag_descriptions::kNotificationsSystemFlagDescription,
Pengchao Caie07a801d2022-09-01 18:28:434569 kOsMac | kOsLinux | kOsWin,
Peter Beverlooc30c9ddf2021-02-24 19:56:034570 FEATURE_VALUE_TYPE(features::kSystemNotifications)},
4571#endif // BUILDFLAG(ENABLE_SYSTEM_NOTIFICATIONS) && !BUILDFLAG(IS_CHROMEOS_ASH)
Xiaohan Wang064b68cd2022-01-19 19:12:284572#if BUILDFLAG(IS_ANDROID)
bttk8031f3fb2021-02-25 20:21:244573 {"adaptive-button-in-top-toolbar",
4574 flag_descriptions::kAdaptiveButtonInTopToolbarName,
4575 flag_descriptions::kAdaptiveButtonInTopToolbarDescription, kOsAndroid,
bttk74acf1b2021-05-19 20:20:594576 FEATURE_WITH_PARAMS_VALUE_TYPE(
4577 chrome::android::kAdaptiveButtonInTopToolbar,
4578 kAdaptiveButtonInTopToolbarVariations,
Gang Wu7aaba1b2021-06-02 02:33:244579 "OptionalToolbarButton")},
Salvador Guerreroa071de302023-03-18 00:34:274580 {"adaptive-button-in-top-toolbar-translate",
4581 flag_descriptions::kAdaptiveButtonInTopToolbarTranslateName,
4582 flag_descriptions::kAdaptiveButtonInTopToolbarTranslateDescription,
4583 kOsAndroid,
4584 FEATURE_VALUE_TYPE(chrome::android::kAdaptiveButtonInTopToolbarTranslate)},
Salvador Guerrerob5d9c762023-03-22 21:24:034585 {"adaptive-button-in-top-toolbar-add-to-bookmarks",
4586 flag_descriptions::kAdaptiveButtonInTopToolbarAddToBookmarksName,
4587 flag_descriptions::kAdaptiveButtonInTopToolbarAddToBookmarksDescription,
4588 kOsAndroid,
4589 FEATURE_VALUE_TYPE(
4590 chrome::android::kAdaptiveButtonInTopToolbarAddToBookmarks)},
bttk74acf1b2021-05-19 20:20:594591 {"adaptive-button-in-top-toolbar-customization",
4592 flag_descriptions::kAdaptiveButtonInTopToolbarCustomizationName,
4593 flag_descriptions::kAdaptiveButtonInTopToolbarCustomizationDescription,
4594 kOsAndroid,
Shakti Sahuf17e0ed2021-06-08 02:21:194595 FEATURE_WITH_PARAMS_VALUE_TYPE(
bttkbdde8322021-08-06 22:34:204596 chrome::android::kAdaptiveButtonInTopToolbarCustomizationV2,
Shakti Sahuf17e0ed2021-06-08 02:21:194597 kAdaptiveButtonInTopToolbarCustomizationVariations,
4598 "OptionalToolbarButtonCustomization")},
Salvador Guerrerocd7b24bb2022-07-20 00:32:484599 {"contextual-page-actions", flag_descriptions::kContextualPageActionsName,
4600 flag_descriptions::kContextualPageActionsDescription, kOsAndroid,
Salvador Guerrerocd7b24bb2022-07-20 00:32:484601 FEATURE_WITH_PARAMS_VALUE_TYPE(
Salvador Guerrero3ac349f2022-10-12 02:44:534602 segmentation_platform::features::kContextualPageActions,
Salvador Guerrero5ca5c7f2022-12-01 20:51:394603 kContextualPageActionsVariations,
Salvador Guerrero3ac349f2022-10-12 02:44:534604 "ContextualPageActions")},
4605 {"contextual-page-actions-with-price-tracking",
4606 flag_descriptions::kContextualPageActionsPriceTrackingName,
4607 flag_descriptions::kContextualPageActionsPriceTrackingDescription,
4608 kOsAndroid,
Salvador Guerrero5ca5c7f2022-12-01 20:51:394609 FEATURE_WITH_PARAMS_VALUE_TYPE(
4610 segmentation_platform::features::kContextualPageActionPriceTracking,
4611 kContextualPageActionPriceTrackingVariations,
4612 "ContextualPageActionPriceTracking")},
Salvador Guerrero3ac349f2022-10-12 02:44:534613 {"contextual-page-actions-reader-mode",
4614 flag_descriptions::kContextualPageActionsReaderModeName,
4615 flag_descriptions::kContextualPageActionsReaderModeDescription, kOsAndroid,
Salvador Guerrerode0ffc62022-11-02 17:59:514616 FEATURE_WITH_PARAMS_VALUE_TYPE(
4617 segmentation_platform::features::kContextualPageActionReaderMode,
4618 kContextualPageActionReaderModeVariations,
Salvador Guerrero5ca5c7f2022-12-01 20:51:394619 "ContextualPageActionReaderMode")},
Hailey Wang0ed879a2023-01-10 21:17:364620 {"contextual-page-actions-share-model",
4621 flag_descriptions::kContextualPageActionsShareModelName,
4622 flag_descriptions::kContextualPageActionsShareModelDescription, kOsAndroid,
4623 FEATURE_VALUE_TYPE(
4624 segmentation_platform::features::kContextualPageActionShareModel)},
vabr0215a8e2017-03-28 12:47:344625 {"reader-mode-heuristics", flag_descriptions::kReaderModeHeuristicsName,
4626 flag_descriptions::kReaderModeHeuristicsDescription, kOsAndroid,
dschuyler336363e2015-06-12 02:01:474627 MULTI_VALUE_TYPE(kReaderModeHeuristicsChoices)},
Kenechi Okoyeff5bd5f2022-06-13 20:47:534628 {"screenshots-for-android-v2",
4629 flag_descriptions::kScreenshotsForAndroidV2Name,
4630 flag_descriptions::kScreenshotsForAndroidV2Description, kOsAndroid,
4631 FEATURE_VALUE_TYPE(share::kScreenshotsForAndroidV2)},
Wissem Gamra2a91d862022-08-17 18:17:224632 {"cormorant", flag_descriptions::kCormorantName,
4633 flag_descriptions::kCormorantDescription, kOsAndroid,
Sopheye5b39902023-02-01 18:42:114634 FEATURE_VALUE_TYPE(feed::kCormorant)},
David Bokane2396e22023-04-18 20:27:144635 {"default-viewport-is-device-width",
4636 flag_descriptions::kDefaultViewportIsDeviceWidthName,
4637 flag_descriptions::kDefaultViewportIsDeviceWidthDescription, kOsAndroid,
4638 FEATURE_VALUE_TYPE(blink::features::kDefaultViewportIsDeviceWidth)},
Xiaohan Wang064b68cd2022-01-19 19:12:284639#endif // BUILDFLAG(IS_ANDROID)
Catherine Chungd4d24362017-06-09 21:12:124640 {"in-product-help-demo-mode-choice",
4641 flag_descriptions::kInProductHelpDemoModeChoiceName,
4642 flag_descriptions::kInProductHelpDemoModeChoiceDescription, kOsAll,
Tommy Nyquistf5f0bccb2017-06-01 20:56:214643 FEATURE_WITH_PARAMS_VALUE_TYPE(
Tommy Nyquistc1d6dea12017-07-26 20:37:234644 feature_engagement::kIPHDemoMode,
4645 feature_engagement::kIPHDemoModeChoiceVariations,
Tommy Nyquistba7195e22017-06-13 00:05:044646 "IPH_DemoMode")},
Hailey Wang5f048eb82021-10-27 01:29:134647 {"in-product-help-use-client-config",
4648 flag_descriptions::kInProductHelpUseClientConfigName,
4649 flag_descriptions::kInProductHelpUseClientConfigDescription, kOsAll,
4650 FEATURE_VALUE_TYPE(feature_engagement::kUseClientConfigIPH)},
vabr0215a8e2017-03-28 12:47:344651 {"disable-threaded-scrolling", flag_descriptions::kThreadedScrollingName,
4652 flag_descriptions::kThreadedScrollingDescription, kOsAll,
Gyuyoung Kima252d4a2020-09-16 07:20:314653 SINGLE_DISABLE_VALUE_TYPE(blink::switches::kDisableThreadedScrolling)},
Yuta Hijikata235fc62b2020-12-08 03:48:324654#if BUILDFLAG(IS_CHROMEOS_ASH)
Megumi Hattori5a0d4182018-03-06 11:09:504655 {"enable-lock-screen-notification",
4656 flag_descriptions::kLockScreenNotificationName,
4657 flag_descriptions::kLockScreenNotificationDescription, kOsCrOS,
4658 FEATURE_VALUE_TYPE(ash::features::kLockScreenNotifications)},
Yuta Hijikata235fc62b2020-12-08 03:48:324659#endif // BUILDFLAG(IS_CHROMEOS_ASH)
4660#if BUILDFLAG(IS_CHROMEOS_ASH)
Christopher Lamd8708c32021-10-29 04:31:474661 {"system-extensions", flag_descriptions::kSystemExtensionsName,
4662 flag_descriptions::kSystemExtensionsDescription, kOsCrOS,
4663 FEATURE_VALUE_TYPE(ash::features::kSystemExtensions)},
Giovanni Ortuño Urquidifeb77d22022-04-08 05:40:234664 {"enable-service-workers-for-chrome-untrusted",
4665 flag_descriptions::kEnableServiceWorkersForChromeUntrustedName,
4666 flag_descriptions::kEnableServiceWorkersForChromeUntrustedDescription,
4667 kOsCrOS,
4668 FEATURE_VALUE_TYPE(features::kEnableServiceWorkersForChromeUntrusted)},
Tyler Garrett86f698b32023-01-25 22:01:414669 {"enterprise-reporting-ui", flag_descriptions::kEnterpriseReportingUIName,
4670 flag_descriptions::kEnterpriseReportingUIDescription, kOsCrOS,
4671 FEATURE_VALUE_TYPE(ash::features::kEnterpriseReportingUI)},
David Munro9fce777c2020-10-07 03:55:544672 {"crostini-reset-lxd-db", flag_descriptions::kCrostiniResetLxdDbName,
4673 flag_descriptions::kCrostiniResetLxdDbDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:424674 FEATURE_VALUE_TYPE(ash::features::kCrostiniResetLxdDb)},
Jason Lin30ea2619c2022-07-27 06:40:294675 {"terminal-alternative-emulator",
4676 flag_descriptions::kTerminalAlternativeEmulatorName,
4677 flag_descriptions::kTerminalAlternativeEmulatorDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:424678 FEATURE_VALUE_TYPE(ash::features::kTerminalAlternativeEmulator)},
Joel Hockey6bc7d9b2022-04-28 00:36:054679 {"terminal-dev", flag_descriptions::kTerminalDevName,
4680 flag_descriptions::kTerminalDevDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:424681 FEATURE_VALUE_TYPE(ash::features::kTerminalDev)},
maciek swiechbb244932023-06-15 22:18:544682 {"permissive-usb-passthrough",
4683 flag_descriptions::kPermissiveUsbPassthroughName,
4684 flag_descriptions::kPermissiveUsbPassthroughDescription, kOsCrOS,
4685 FEATURE_VALUE_TYPE(ash::features::kPermissiveUsbPassthrough)},
Nicholas Verne6eb340a82021-10-19 05:55:384686 {"crostini-multi-container", flag_descriptions::kCrostiniMultiContainerName,
4687 flag_descriptions::kCrostiniMultiContainerDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:424688 FEATURE_VALUE_TYPE(ash::features::kCrostiniMultiContainer)},
Timothy Loh05b4d59f2021-11-08 05:05:524689 {"crostini-ime-support", flag_descriptions::kCrostiniImeSupportName,
4690 flag_descriptions::kCrostiniImeSupportDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:424691 FEATURE_VALUE_TYPE(ash::features::kCrostiniImeSupport)},
Timothy Lohe9cb1af2023-05-22 06:26:534692 {"crostini-qt-ime-support", flag_descriptions::kCrostiniQtImeSupportName,
4693 flag_descriptions::kCrostiniQtImeSupportDescription, kOsCrOS,
4694 FEATURE_VALUE_TYPE(ash::features::kCrostiniQtImeSupport)},
Timothy Loh05b4d59f2021-11-08 05:05:524695 {"crostini-virtual-keyboard-support",
4696 flag_descriptions::kCrostiniVirtualKeyboardSupportName,
4697 flag_descriptions::kCrostiniVirtualKeyboardSupportDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:424698 FEATURE_VALUE_TYPE(ash::features::kCrostiniVirtualKeyboardSupport)},
Nicholas Verne6df17e62023-06-07 02:19:094699 {"crostini-use-lxd-5", flag_descriptions::kCrostiniUseLxd5Name,
4700 flag_descriptions::kCrostiniUseLxd5Description, kOsCrOS,
4701 FEATURE_VALUE_TYPE(ash::features::kCrostiniUseLxd5)},
David Munro762bf322022-02-03 02:21:464702 {"bruschetta", flag_descriptions::kBruschettaName,
4703 flag_descriptions::kBruschettaDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:424704 FEATURE_VALUE_TYPE(ash::features::kBruschetta)},
Fergus Dalldb66df32022-08-19 02:54:444705 {"bruschetta-alpha-migrate", flag_descriptions::kBruschettaAlphaMigrateName,
4706 flag_descriptions::kBruschettaAlphaMigrateDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:424707 FEATURE_VALUE_TYPE(ash::features::kBruschettaAlphaMigrate)},
Yuta Hijikata235fc62b2020-12-08 03:48:324708#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Xiaohan Wang064b68cd2022-01-19 19:12:284709#if (BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || \
4710 BUILDFLAG(IS_ANDROID)) && \
4711 !BUILDFLAG(IS_NACL)
Brian Geffon12b581a2021-02-03 23:48:034712 {"mojo-linux-sharedmem", flag_descriptions::kMojoLinuxChannelSharedMemName,
4713 flag_descriptions::kMojoLinuxChannelSharedMemDescription,
Fred Shih87e6a562022-04-13 19:51:514714 kOsCrOS | kOsLinux | kOsLacros | kOsAndroid,
Brian Geffon12b581a2021-02-03 23:48:034715 FEATURE_VALUE_TYPE(mojo::core::kMojoLinuxChannelSharedMem)},
4716#endif
Xiaohan Wang064b68cd2022-01-19 19:12:284717#if BUILDFLAG(IS_ANDROID)
Alex Moshchuk07e1bb42019-03-08 04:44:084718 {"enable-site-isolation-for-password-sites",
4719 flag_descriptions::kSiteIsolationForPasswordSitesName,
4720 flag_descriptions::kSiteIsolationForPasswordSitesDescription, kOsAndroid,
Clark DuVallaadc244c2020-06-06 03:47:144721 FEATURE_VALUE_TYPE(
4722 site_isolation::features::kSiteIsolationForPasswordSites)},
Nick Carter855bc492018-03-10 00:44:574723 {"enable-site-per-process", flag_descriptions::kStrictSiteIsolationName,
Lukasz Anforowicz42840422018-11-05 21:49:224724 flag_descriptions::kStrictSiteIsolationDescription, kOsAndroid,
dschuyler336363e2015-06-12 02:01:474725 SINGLE_VALUE_TYPE(switches::kSitePerProcess)},
Lukasz Anforowicz42840422018-11-05 21:49:224726#endif
Christian Flach3de81af12022-06-10 17:53:114727 {"enable-isolated-web-apps", flag_descriptions::kEnableIsolatedWebAppsName,
4728 flag_descriptions::kEnableIsolatedWebAppsDescription, kOsAll,
4729 FEATURE_VALUE_TYPE(features::kIsolatedWebApps)},
Christian Flachd532bbb2023-06-28 09:14:064730#if BUILDFLAG(IS_CHROMEOS)
4731 {"enable-isolated-web-app-automatic-updates",
4732 flag_descriptions::kEnableIsolatedWebAppAutomaticUpdatesName,
4733 flag_descriptions::kEnableIsolatedWebAppAutomaticUpdatesDescription,
4734 kOsCrOS | kOsLacros,
4735 FEATURE_VALUE_TYPE(features::kIsolatedWebAppAutomaticUpdates)},
4736#endif
Robbie McElrath8bc8f2b2022-11-14 19:59:024737 {"enable-isolated-web-app-dev-mode",
4738 flag_descriptions::kEnableIsolatedWebAppDevModeName,
4739 flag_descriptions::kEnableIsolatedWebAppDevModeDescription, kOsAll,
4740 FEATURE_VALUE_TYPE(features::kIsolatedWebAppDevMode)},
Christian Flachf744c052023-04-27 05:39:244741#if BUILDFLAG(IS_CHROMEOS)
Robbie McElrathb66ff502022-10-12 01:50:594742 {"install-isolated-web-app-from-url",
4743 flag_descriptions::kInstallIsolatedWebAppFromUrl,
4744 flag_descriptions::kInstallIsolatedWebAppFromUrlDescription, kOsAll,
4745 ORIGIN_LIST_VALUE_TYPE(switches::kInstallIsolatedWebAppFromUrl, "")},
Christian Flachf744c052023-04-27 05:39:244746#endif
Chase Phillipsf29be252023-02-02 22:19:394747 {"enable-iwa-controlled-frame",
4748 flag_descriptions::kEnableIwaControlledFrameName,
4749 flag_descriptions::kEnableIwaControlledFrameDescription, kOsAll,
4750 FEATURE_VALUE_TYPE(features::kIwaControlledFrame)},
Lukasz Anforowiczd2e16e62019-03-28 19:06:594751 {"isolate-origins", flag_descriptions::kIsolateOriginsName,
4752 flag_descriptions::kIsolateOriginsDescription, kOsAll,
4753 ORIGIN_LIST_VALUE_TYPE(switches::kIsolateOrigins, "")},
Mattias Nissler380cf4f2021-03-22 15:50:464754 {about_flags::kSiteIsolationTrialOptOutInternalName,
Lukasz Anforowicz738a88d2018-11-05 19:19:344755 flag_descriptions::kSiteIsolationOptOutName,
4756 flag_descriptions::kSiteIsolationOptOutDescription, kOsAll,
4757 MULTI_VALUE_TYPE(kSiteIsolationOptOutChoices)},
Mike West6b2bd752020-12-02 06:36:594758 {"isolation-by-default", flag_descriptions::kIsolationByDefaultName,
4759 flag_descriptions::kIsolationByDefaultDescription, kOsAll,
4760 SINGLE_VALUE_TYPE(switches::kIsolationByDefault)},
brettw5f9c1642017-05-14 17:12:484761 {"allow-insecure-localhost", flag_descriptions::kAllowInsecureLocalhostName,
vabr0215a8e2017-03-28 12:47:344762 flag_descriptions::kAllowInsecureLocalhostDescription, kOsAll,
dschuyler336363e2015-06-12 02:01:474763 SINGLE_VALUE_TYPE(switches::kAllowInsecureLocalhost)},
Aashna Shethec3b89f2022-09-15 13:06:504764 {"text-based-audio-descriptions",
4765 flag_descriptions::kTextBasedAudioDescriptionName,
4766 flag_descriptions::kTextBasedAudioDescriptionDescription, kOsAll,
4767 FEATURE_VALUE_TYPE(features::kTextBasedAudioDescription)},
dschuyler336363e2015-06-12 02:01:474768 {"bypass-app-banner-engagement-checks",
vabr0215a8e2017-03-28 12:47:344769 flag_descriptions::kBypassAppBannerEngagementChecksName,
4770 flag_descriptions::kBypassAppBannerEngagementChecksDescription, kOsAll,
Evan Stadedc8b4822021-01-22 02:28:104771 SINGLE_VALUE_TYPE(webapps::switches::kBypassAppBannerEngagementChecks)},
Finnur Thorarinssonfb625e12022-09-06 17:22:534772 {"enable-pwas-default-offline-page",
4773 flag_descriptions::kPWAsDefaultOfflinePageName,
4774 flag_descriptions::kPWAsDefaultOfflinePageDescription,
4775 kOsAndroid | kOsDesktop,
4776 FEATURE_VALUE_TYPE(features::kPWAsDefaultOfflinePage)},
Alan Cuttereaae7f42020-12-07 02:24:114777 {"enable-desktop-pwas-elided-extensions-menu",
4778 flag_descriptions::kDesktopPWAsElidedExtensionsMenuName,
4779 flag_descriptions::kDesktopPWAsElidedExtensionsMenuDescription, kOsDesktop,
4780 FEATURE_VALUE_TYPE(features::kDesktopPWAsElidedExtensionsMenu)},
Alan Cutter121812d2020-01-09 05:03:374781 {"enable-desktop-pwas-tab-strip",
4782 flag_descriptions::kDesktopPWAsTabStripName,
4783 flag_descriptions::kDesktopPWAsTabStripDescription, kOsDesktop,
4784 FEATURE_VALUE_TYPE(features::kDesktopPWAsTabStrip)},
Louise Brett51548fb2021-06-18 00:27:214785 {"enable-desktop-pwas-tab-strip-settings",
4786 flag_descriptions::kDesktopPWAsTabStripSettingsName,
4787 flag_descriptions::kDesktopPWAsTabStripSettingsDescription, kOsDesktop,
4788 FEATURE_VALUE_TYPE(features::kDesktopPWAsTabStripSettings)},
Louise Brett01158472023-04-26 08:06:134789 {"enable-desktop-pwas-tab-strip-customizations",
4790 flag_descriptions::kDesktopPWAsTabStripCustomizationsName,
4791 flag_descriptions::kDesktopPWAsTabStripCustomizationsDescription,
4792 kOsDesktop,
4793 FEATURE_VALUE_TYPE(blink::features::kDesktopPWAsTabStripCustomizations)},
Alan Cutter62704892021-08-31 21:27:174794 {"enable-desktop-pwas-launch-handler",
4795 flag_descriptions::kDesktopPWAsLaunchHandlerName,
4796 flag_descriptions::kDesktopPWAsLaunchHandlerDescription, kOsDesktop,
4797 FEATURE_VALUE_TYPE(blink::features::kWebAppEnableLaunchHandler)},
Ivan Šandrk8a710392021-05-20 13:53:134798 {"enable-desktop-pwas-sub-apps", flag_descriptions::kDesktopPWAsSubAppsName,
4799 flag_descriptions::kDesktopPWAsSubAppsDescription,
Fred Shih87e6a562022-04-13 19:51:514800 kOsWin | kOsLinux | kOsLacros | kOsMac | kOsCrOS | kOsFuchsia,
Ivan Šandrk25a598a2021-07-16 16:26:594801 FEATURE_VALUE_TYPE(blink::features::kDesktopPWAsSubApps)},
Abhinav Kasamsettyd7bb22c2023-01-31 08:18:324802 {"enable-desktop-pwas-scope-extensions",
4803 flag_descriptions::kDesktopPWAsScopeExtensionsName,
4804 flag_descriptions::kDesktopPWAsScopeExtensionsDescription, kOsDesktop,
4805 FEATURE_VALUE_TYPE(blink::features::kWebAppEnableScopeExtensions)},
Sonja Laurila67ab70d2022-05-13 13:57:264806 {"enable-desktop-pwas-borderless",
4807 flag_descriptions::kDesktopPWAsBorderlessName,
Sonja Laurilaa4c93712022-07-28 09:17:374808 flag_descriptions::kDesktopPWAsBorderlessDescription,
4809 kOsLinux | kOsLacros | kOsCrOS,
Sonja Laurila67ab70d2022-05-13 13:57:264810 FEATURE_VALUE_TYPE(blink::features::kWebAppBorderless)},
Sonja Laurilac0492c852021-09-17 14:49:324811 {"enable-desktop-pwas-additional-windowing-controls",
4812 flag_descriptions::kDesktopPWAsAdditionalWindowingControlsName,
4813 flag_descriptions::kDesktopPWAsAdditionalWindowingControlsDescription,
Fred Shih87e6a562022-04-13 19:51:514814 kOsWin | kOsLinux | kOsLacros | kOsMac | kOsCrOS | kOsFuchsia,
Ivan Šandrk2449ea62023-06-23 14:19:094815 FEATURE_VALUE_TYPE(
4816 blink::features::kDesktopPWAsAdditionalWindowingControls)},
Alexey Baskakovd913a1272021-07-09 02:12:194817 {"enable-desktop-pwas-web-bundles",
4818 flag_descriptions::kDesktopPWAsWebBundlesName,
4819 flag_descriptions::kDesktopPWAsWebBundlesDescription, kOsDesktop,
4820 FEATURE_VALUE_TYPE(features::kDesktopPWAsWebBundles)},
Corentin Wallez8aaf4352020-12-03 10:30:474821 {"record-web-app-debug-info", flag_descriptions::kRecordWebAppDebugInfoName,
Alan Cutter20fd08f2020-12-01 13:39:164822 flag_descriptions::kRecordWebAppDebugInfoDescription, kOsDesktop,
4823 FEATURE_VALUE_TYPE(features::kRecordWebAppDebugInfo)},
Alan Cutter9aa158b2023-01-20 16:12:144824#if !BUILDFLAG(IS_ANDROID)
Alan Cutter5ad03af2023-06-15 08:53:294825 {"web-app-dedupe-install-urls",
4826 flag_descriptions::kWebAppDedupeInstallUrlsName,
4827 flag_descriptions::kWebAppDedupeInstallUrlsDescription, kOsDesktop,
4828 FEATURE_VALUE_TYPE(features::kWebAppDedupeInstallUrls)},
Alan Cutter9aa158b2023-01-20 16:12:144829 {"web-app-manifest-immediate-updating",
4830 flag_descriptions::kWebAppManifestImmediateUpdatingName,
4831 flag_descriptions::kWebAppManifestImmediateUpdatingDescription, kOsDesktop,
4832 FEATURE_VALUE_TYPE(features::kWebAppManifestImmediateUpdating)},
Alan Cutter51d16c82023-04-17 08:29:054833 {"web-app-sync-generated-icon-background-fix",
4834 flag_descriptions::kWebAppSyncGeneratedIconBackgroundFixName,
4835 flag_descriptions::kWebAppSyncGeneratedIconBackgroundFixDescription,
4836 kOsDesktop,
4837 FEATURE_VALUE_TYPE(features::kWebAppSyncGeneratedIconBackgroundFix)},
4838 {"web-app-sync-generated-icon-retroactive-fix",
4839 flag_descriptions::kWebAppSyncGeneratedIconRetroactiveFixName,
4840 flag_descriptions::kWebAppSyncGeneratedIconRetroactiveFixDescription,
4841 kOsDesktop,
4842 FEATURE_VALUE_TYPE(features::kWebAppSyncGeneratedIconRetroactiveFix)},
4843 {"web-app-sync-generated-icon-update-fix",
4844 flag_descriptions::kWebAppSyncGeneratedIconUpdateFixName,
4845 flag_descriptions::kWebAppSyncGeneratedIconUpdateFixDescription,
4846 kOsDesktop,
4847 FEATURE_VALUE_TYPE(features::kWebAppSyncGeneratedIconUpdateFix)},
Alan Cutter9aa158b2023-01-20 16:12:144848#endif // !BUILDFLAG(IS_ANDROID)
vabr0215a8e2017-03-28 12:47:344849 {"use-sync-sandbox", flag_descriptions::kSyncSandboxName,
4850 flag_descriptions::kSyncSandboxDescription, kOsAll,
dschuyler336363e2015-06-12 02:01:474851 SINGLE_VALUE_TYPE_AND_VALUE(
Victor Hugo Vianna Silva3cd7ae92022-02-09 20:49:514852 syncer::kSyncServiceURL,
dschuyler336363e2015-06-12 02:01:474853 "https://chrome-sync.sandbox.google.com/chrome-sync/alpha")},
Xiaohan Wang064b68cd2022-01-19 19:12:284854#if !BUILDFLAG(IS_ANDROID)
Derek Chengd24c68c2018-03-12 19:09:324855 {"media-router-cast-allow-all-ips",
4856 flag_descriptions::kMediaRouterCastAllowAllIPsName,
4857 flag_descriptions::kMediaRouterCastAllowAllIPsDescription, kOsDesktop,
Derek Cheng34478382018-04-07 00:32:594858 FEATURE_VALUE_TYPE(media_router::kCastAllowAllIPsFeature)},
John Williamse5a683b2020-07-28 03:01:484859 {"global-media-controls-cast-start-stop",
4860 flag_descriptions::kGlobalMediaControlsCastStartStopName,
4861 flag_descriptions::kGlobalMediaControlsCastStartStopDescription,
Muyao Xu885d89022022-02-04 21:33:374862 kOsDesktop,
John Williamse5a683b2020-07-28 03:01:484863 FEATURE_VALUE_TYPE(media_router::kGlobalMediaControlsCastStartStop)},
Muyao Xu217663c2023-01-17 18:55:584864 {"media-remoting-without-fullscreen",
4865 flag_descriptions::kMediaRemotingWithoutFullscreenName,
4866 flag_descriptions::kMediaRemotingWithoutFullscreenDescription,
4867 kOsWin | kOsLinux | kOsMac,
4868 FEATURE_VALUE_TYPE(media::kMediaRemotingWithoutFullscreen)},
Takumi Fujimotobf466ac2020-08-18 20:55:154869 {"allow-all-sites-to-initiate-mirroring",
4870 flag_descriptions::kAllowAllSitesToInitiateMirroringName,
4871 flag_descriptions::kAllowAllSitesToInitiateMirroringDescription,
4872 kOsDesktop,
4873 FEATURE_VALUE_TYPE(media_router::kAllowAllSitesToInitiateMirroring)},
mark a. foltz8d3e26ed2023-03-17 17:46:574874 {"media-router-otr-instance",
4875 flag_descriptions::kMediaRouterOtrInstanceName,
4876 flag_descriptions::kMediaRouterOtrInstanceDescription, kOsAll,
4877 FEATURE_VALUE_TYPE(media_router::kMediaRouterOTRInstance)},
Sunggook Chue99ab1982023-06-20 21:24:064878 {"media-route-dial-provider",
4879 flag_descriptions::kDialMediaRouteProviderName,
4880 flag_descriptions::kDialMediaRouteProviderDescription, kOsDesktop,
4881 FEATURE_VALUE_TYPE(media_router::kDialMediaRouteProvider)},
mark a. foltz8d3e26ed2023-03-17 17:46:574882
Alan Cutterb85c0d22022-01-28 01:46:104883 {"enable-preinstalled-web-app-duplication-fixer",
4884 flag_descriptions::kEnablePreinstalledWebAppDuplicationFixerName,
4885 flag_descriptions::kEnablePreinstalledWebAppDuplicationFixerDescription,
4886 kOsDesktop,
4887 FEATURE_VALUE_TYPE(features::kPreinstalledWebAppDuplicationFixer)},
Jordan Baylesb3160b262021-08-18 00:33:014888
Jordan Baylesef6d0252022-11-18 02:25:174889 {"cast-streaming-hardware-h264",
4890 flag_descriptions::kCastStreamingHardwareH264Name,
4891 flag_descriptions::kCastStreamingHardwareH264Description, kOsDesktop,
4892 ENABLE_DISABLE_VALUE_TYPE(
4893 switches::kCastStreamingForceEnableHardwareH264,
4894 switches::kCastStreamingForceDisableHardwareH264)},
4895
4896 {"cast-streaming-hardware-vp8",
4897 flag_descriptions::kCastStreamingHardwareVp8Name,
4898 flag_descriptions::kCastStreamingHardwareVp8Description, kOsDesktop,
4899 ENABLE_DISABLE_VALUE_TYPE(
4900 switches::kCastStreamingForceEnableHardwareVp8,
4901 switches::kCastStreamingForceDisableHardwareVp8)},
4902
mark a. foltzfdcf2ee2023-06-09 18:15:364903 {"cast-streaming-performance-overlay",
4904 flag_descriptions::kCastStreamingPerformanceOverlayName,
4905 flag_descriptions::kCastStreamingPerformanceOverlayDescription, kOsDesktop,
4906 FEATURE_VALUE_TYPE(media::kCastStreamingPerformanceOverlay)},
4907
Jordan Baylesb3160b262021-08-18 00:33:014908 {"enable-openscreen-cast-streaming-session",
4909 flag_descriptions::kOpenscreenCastStreamingSessionName,
4910 flag_descriptions::kOpenscreenCastStreamingSessionDescription, kOsDesktop,
Jordan Baylesb13600a22022-05-31 18:29:514911 FEATURE_VALUE_TYPE(media::kOpenscreenCastStreamingSession)},
Abraham Corea Diaze4c3abe2021-08-24 17:43:504912
Kennan Gumbsdf768ce92021-08-25 19:09:514913 {"enable-cast-streaming-av1", flag_descriptions::kCastStreamingAv1Name,
4914 flag_descriptions::kCastStreamingAv1Description, kOsDesktop,
Jordan Baylesef6d0252022-11-18 02:25:174915 FEATURE_VALUE_TYPE(media::kCastStreamingAv1)},
Kennan Gumbsdf768ce92021-08-25 19:09:514916
Abraham Corea Diaze4c3abe2021-08-24 17:43:504917 {"enable-cast-streaming-vp9", flag_descriptions::kCastStreamingVp9Name,
4918 flag_descriptions::kCastStreamingVp9Description, kOsDesktop,
Jordan Baylesef6d0252022-11-18 02:25:174919 FEATURE_VALUE_TYPE(media::kCastStreamingVp9)},
Abraham Corea Diaze4c3abe2021-08-24 17:43:504920
Jordan Bayles5cbeb3502023-02-09 03:30:454921 {"enable-cast-streaming-with-hidpi",
4922 flag_descriptions::kCastEnableStreamingWithHiDPIName,
4923 flag_descriptions::kCastEnableStreamingWithHiDPIDescription, kOsDesktop,
4924 FEATURE_VALUE_TYPE(mirroring::features::kCastEnableStreamingWithHiDPI)},
4925
Dibyajyoti Palbe5f0012022-11-29 00:39:344926 {"enable-os-integration-sub-managers",
4927 flag_descriptions::kEnableOsIntegrationSubManagersName,
4928 flag_descriptions::kEnableOsIntegrationSubManagersDescription, kOsDesktop,
4929 FEATURE_WITH_PARAMS_VALUE_TYPE(features::kOsIntegrationSubManagers,
4930 kOsIntegrationSubManagersConfigVariations,
4931 "OsIntegrationSubManagers")},
4932
Benjamin Zielinski04f8c802023-04-13 23:26:554933 {"access-code-cast-freeze-ui",
4934 flag_descriptions::kAccessCodeCastFreezeUiName,
4935 flag_descriptions::kAccessCodeCastFreezeUiDescription, kOsDesktop,
4936 FEATURE_VALUE_TYPE(features::kAccessCodeCastFreezeUI)},
4937
Xiaohan Wang064b68cd2022-01-19 19:12:284938#endif // !BUILDFLAG(IS_ANDROID)
Jordan Baylesb3160b262021-08-18 00:33:014939
Xiaohan Wang064b68cd2022-01-19 19:12:284940#if BUILDFLAG(IS_MAC)
Greg Kerrf46f31872019-08-08 20:22:444941 {"mac-syscall-sandbox", flag_descriptions::kMacSyscallSandboxName,
4942 flag_descriptions::kMacSyscallSandboxDescription, kOsMac,
4943 FEATURE_VALUE_TYPE(features::kMacSyscallSandbox)},
Xiaohan Wang064b68cd2022-01-19 19:12:284944#endif // BUILDFLAG(IS_MAC)
4945#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC)
Hoch Hochkeppel6695ffa2020-08-17 18:10:274946 {"web-share", flag_descriptions::kWebShareName,
Frfa0757a2022-07-07 07:30:204947 flag_descriptions::kWebShareDescription, kOsWin | kOsCrOS | kOsMac,
Hoch Hochkeppel6695ffa2020-08-17 18:10:274948 FEATURE_VALUE_TYPE(features::kWebShare)},
Eric Willigers911b59d2022-02-15 18:54:044949#endif // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC)
Alexander Dunaev43cfb2f2021-10-19 06:08:064950
Xiaohan Wang064b68cd2022-01-19 19:12:284951#if BUILDFLAG(IS_LINUX)
Alexander Dunaev43cfb2f2021-10-19 06:08:064952 {"ozone-platform-hint", flag_descriptions::kOzonePlatformHintName,
Fred Shihebe9cf82022-04-19 21:06:264953 flag_descriptions::kOzonePlatformHintDescription, kOsLinux,
Alexander Dunaev43cfb2f2021-10-19 06:08:064954 MULTI_VALUE_TYPE(kOzonePlatformHintRuntimeChoices)},
Adem Derinel64bdf052022-02-02 08:14:234955#endif // BUILDFLAG(IS_LINUX)
4956
4957#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC)
4958 {"skip-undecryptable-passwords",
4959 flag_descriptions::kSkipUndecryptablePasswordsName,
4960 flag_descriptions::kSkipUndecryptablePasswordsDescription,
Fred Shihebe9cf82022-04-19 21:06:264961 kOsLinux | kOsMac,
Adem Derinel64bdf052022-02-02 08:14:234962 FEATURE_VALUE_TYPE(
4963 password_manager::features::kSkipUndecryptablePasswords)},
Adem Derinel72376572022-12-06 10:42:544964
4965 {"force-password-initial-sync-when-decryption-fails",
4966 flag_descriptions::kForcePasswordInitialSyncWhenDecryptionFailsName,
4967 flag_descriptions::kForcePasswordInitialSyncWhenDecryptionFailsDescription,
4968 kOsLinux | kOsMac,
4969 FEATURE_VALUE_TYPE(
4970 password_manager::features::kForceInitialSyncWhenDecryptionFails)},
Adem Derinel64bdf052022-02-02 08:14:234971#endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC)
Alexander Dunaev43cfb2f2021-10-19 06:08:064972
Will Cassella40837ba2019-07-01 21:32:004973#if BUILDFLAG(ENABLE_VR)
Will Cassellaa1a4d1112019-12-27 20:52:314974 {"webxr-incubations", flag_descriptions::kWebXrIncubationsName,
4975 flag_descriptions::kWebXrIncubationsDescription, kOsAll,
Viatcheslav Ostapenkob7fbf2c2021-07-01 03:21:054976 FEATURE_VALUE_TYPE(device::features::kWebXrIncubations)},
Alex Cooper01f110e2020-01-08 02:24:164977 {"webxr-runtime", flag_descriptions::kWebXrForceRuntimeName,
Alexander Cooper98a8edb2023-05-23 18:04:054978 flag_descriptions::kWebXrForceRuntimeDescription, kOsDesktop | kOsAndroid,
Alex Cooper01f110e2020-01-08 02:24:164979 MULTI_VALUE_TYPE(kWebXrForceRuntimeChoices)},
Alex Cooper5fca205f2023-03-20 23:13:274980#if BUILDFLAG(IS_ANDROID)
4981 {"webxr-shared-buffers", flag_descriptions::kWebXrSharedBuffersName,
4982 flag_descriptions::kWebXrSharedBuffersDescription, kOsAndroid,
4983 FEATURE_VALUE_TYPE(device::features::kWebXrSharedBuffers)},
Alexander Cooper98a8edb2023-05-23 18:04:054984#if BUILDFLAG(ENABLE_OPENXR)
4985 {"enable-openxr-android", flag_descriptions::kOpenXRName,
4986 flag_descriptions::kOpenXRDescription, kOsAndroid,
4987 FEATURE_VALUE_TYPE(device::features::kOpenXR)},
4988#endif
Alex Cooper5fca205f2023-03-20 23:13:274989#endif // BUILDFLAG(IS_ANDROID)
cjgrant373c0682017-03-21 20:50:484990#endif // ENABLE_VR
Yuta Hijikata235fc62b2020-12-08 03:48:324991#if BUILDFLAG(IS_CHROMEOS_ASH)
henryhsub5ab1502015-07-30 07:22:464992 {"disable-accelerated-mjpeg-decode",
vabr0215a8e2017-03-28 12:47:344993 flag_descriptions::kAcceleratedMjpegDecodeName,
4994 flag_descriptions::kAcceleratedMjpegDecodeDescription, kOsCrOS,
flackr88fd5122015-11-25 04:44:504995 SINGLE_DISABLE_VALUE_TYPE(switches::kDisableAcceleratedMjpegDecode)},
Yuta Hijikata235fc62b2020-12-08 03:48:324996#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Joe Downing8cbbc192018-05-14 17:37:074997 {"system-keyboard-lock", flag_descriptions::kSystemKeyboardLockName,
4998 flag_descriptions::kSystemKeyboardLockDescription, kOsDesktop,
4999 FEATURE_VALUE_TYPE(features::kSystemKeyboardLock)},
Xiaohan Wang064b68cd2022-01-19 19:12:285000#if BUILDFLAG(IS_ANDROID)
Shakti Sahu1c04a2872021-03-17 16:38:485001 {"add-to-homescreen-iph", flag_descriptions::kAddToHomescreenIPHName,
5002 flag_descriptions::kAddToHomescreenIPHDescription, kOsAndroid,
5003 FEATURE_WITH_PARAMS_VALUE_TYPE(chrome::android::kAddToHomescreenIPH,
5004 kAddToHomescreenIPHVariations,
5005 "AddToHomescreen")},
Shakti Sahuedcbaef2022-01-18 19:54:215006 {"feature-notification-guide",
5007 flag_descriptions::kFeatureNotificationGuideName,
Shakti Sahue6d6fdd2022-02-05 02:29:065008 flag_descriptions::kFeatureNotificationGuideDescription, kOsAndroid,
5009 FEATURE_WITH_PARAMS_VALUE_TYPE(
5010 feature_guide::features::kFeatureNotificationGuide,
5011 kFeatureNotificationGuideVariations,
5012 "FeatureNotificationGuide")},
Salvador Guerrero4d5ff6e62022-03-24 00:03:205013 {"notification-permission-rationale-dialog",
5014 flag_descriptions::kNotificationPermissionRationaleName,
5015 flag_descriptions::kNotificationPermissionRationaleDescription, kOsAndroid,
5016 FEATURE_WITH_PARAMS_VALUE_TYPE(
5017 chrome::android::kNotificationPermissionVariant,
5018 kNotificationPermissionRationaleVariations,
5019 "NotificationPermissionVariant")},
Salvador Guerrero0af36992023-01-23 20:46:475020 {"notification-permission-rationale-bottom-sheet",
5021 flag_descriptions::kNotificationPermissionRationaleBottomSheetName,
5022 flag_descriptions::kNotificationPermissionRationaleBottomSheetDescription,
5023 kOsAndroid,
5024 FEATURE_VALUE_TYPE(chrome::android::kNotificationPermissionBottomSheet)},
Shakti Sahu6c4afcde2022-01-31 23:03:545025 {"feature-notification-guide-skip-check-for-low-engaged-users",
5026 flag_descriptions::
5027 kFeatureNotificationGuideSkipCheckForLowEngagedUsersName,
5028 flag_descriptions::
5029 kFeatureNotificationGuideSkipCheckForLowEngagedUsersDescription,
5030 kOsAll,
5031 FEATURE_VALUE_TYPE(feature_guide::features::kSkipCheckForLowEngagedUsers)},
Yafei Duan36b4b5b2018-08-07 00:40:035032 {"offline-pages-live-page-sharing",
5033 flag_descriptions::kOfflinePagesLivePageSharingName,
5034 flag_descriptions::kOfflinePagesLivePageSharingDescription, kOsAndroid,
5035 FEATURE_VALUE_TYPE(offline_pages::kOfflinePagesLivePageSharingFeature)},
Shakti Sahu1f8a9422020-03-12 05:50:505036 {"query-tiles", flag_descriptions::kQueryTilesName,
5037 flag_descriptions::kQueryTilesDescription, kOsAndroid,
Min Qindb789462021-08-26 04:00:115038 FEATURE_WITH_PARAMS_VALUE_TYPE(query_tiles::features::kQueryTiles,
5039 kQueryTilesVariations,
5040 "QueryTilesVariations")},
Shakti Sahucad2a0a2020-10-23 06:42:285041 {"query-tiles-ntp", flag_descriptions::kQueryTilesNTPName,
5042 flag_descriptions::kQueryTilesNTPDescription, kOsAndroid,
5043 FEATURE_VALUE_TYPE(query_tiles::features::kQueryTilesInNTP)},
Min Qineb0c2152022-08-26 19:13:125044 {"query-tiles-on-start", flag_descriptions::kQueryTilesOnStartName,
5045 flag_descriptions::kQueryTilesOnStartDescription, kOsAndroid,
5046 FEATURE_VALUE_TYPE(query_tiles::features::kQueryTilesOnStart)},
Shakti Sahu8fe5edd2020-05-14 18:57:135047 {"query-tiles-single-tier", flag_descriptions::kQueryTilesSingleTierName,
5048 flag_descriptions::kQueryTilesSingleTierDescription, kOsAndroid,
5049 SINGLE_VALUE_TYPE(query_tiles::switches::kQueryTilesSingleTier)},
Shakti Sahudfb40992020-05-12 14:54:545050 {"query-tiles-enable-query-editing",
5051 flag_descriptions::kQueryTilesEnableQueryEditingName,
5052 flag_descriptions::kQueryTilesEnableQueryEditingDescription, kOsAndroid,
Xing Liu6d873212020-05-13 22:33:495053 FEATURE_VALUE_TYPE(query_tiles::features::kQueryTilesEnableQueryEditing)},
Min Qineac94ae2020-08-14 06:38:455054 {"query-tiles-enable-trending",
5055 flag_descriptions::kQueryTilesEnableTrendingName,
5056 flag_descriptions::kQueryTilesEnableTrendingDescription, kOsAndroid,
5057 SINGLE_VALUE_TYPE(query_tiles::switches::kQueryTilesEnableTrending)},
Min Qindb99e6f2020-04-29 06:37:265058 {"query-tiles-country-code", flag_descriptions::kQueryTilesCountryCode,
5059 flag_descriptions::kQueryTilesCountryCodeDescription, kOsAndroid,
5060 MULTI_VALUE_TYPE(kQueryTilesCountryChoices)},
Shakti Sahu8fe5edd2020-05-14 18:57:135061 {"query-tiles-instant-fetch",
5062 flag_descriptions::kQueryTilesInstantFetchName,
Xing Liu06f2fa02020-04-30 02:45:195063 flag_descriptions::kQueryTilesInstantFetchDescription, kOsAndroid,
Xing Liu6d873212020-05-13 22:33:495064 SINGLE_VALUE_TYPE(
5065 query_tiles::switches::kQueryTilesInstantBackgroundTask)},
Min Qinbe050b72021-06-26 01:32:395066 {"query-tiles-rank-tiles", flag_descriptions::kQueryTilesRankTilesName,
5067 flag_descriptions::kQueryTilesRankTilesDescription, kOsAndroid,
5068 SINGLE_VALUE_TYPE(query_tiles::switches::kQueryTilesRankTiles)},
Min Qindb789462021-08-26 04:00:115069 {"query-tiles-segmentation", flag_descriptions::kQueryTilesSegmentationName,
5070 flag_descriptions::kQueryTilesSegmentationDescription, kOsAndroid,
5071 FEATURE_VALUE_TYPE(query_tiles::features::kQueryTilesSegmentation)},
Min Qin60ae5b82021-01-07 07:07:505072 {"query-tiles-swap-trending",
5073 flag_descriptions::kQueryTilesSwapTrendingName,
5074 flag_descriptions::kQueryTilesSwapTrendingDescription, kOsAndroid,
5075 FEATURE_VALUE_TYPE(
5076 query_tiles::features::kQueryTilesRemoveTrendingTilesAfterInactivity)},
David Trainora38e60e2020-08-04 23:43:255077 {"reengagement-notification",
5078 flag_descriptions::kReengagementNotificationName,
5079 flag_descriptions::kReengagementNotificationDescription, kOsAndroid,
5080 FEATURE_VALUE_TYPE(chrome::android::kReengagementNotification)},
Lijin Shen88a1b422023-03-31 22:08:215081 {"back-gesture-activity-tab-provider",
5082 flag_descriptions::kBackGestureActivityTabProviderName,
5083 flag_descriptions::kBackGestureActivityTabProviderDescription, kOsAndroid,
5084 FEATURE_VALUE_TYPE(chrome::android::kBackGestureRefactorAndroid)},
Lijin Shence2f5722022-04-26 23:11:525085 {"back-gesture-refactor-android",
5086 flag_descriptions::kBackGestureRefactorAndroidName,
5087 flag_descriptions::kBackGestureRefactorAndroidDescription, kOsAndroid,
5088 FEATURE_VALUE_TYPE(chrome::android::kBackGestureRefactorAndroid)},
Lijin Shen7c494d72023-01-17 23:54:555089 {"back-gesture-refactor-activity-android",
5090 flag_descriptions::kBackGestureRefactorActivityAndroidName,
5091 flag_descriptions::kBackGestureRefactorActivityAndroidDescription,
5092 kOsAndroid,
5093 FEATURE_VALUE_TYPE(chrome::android::kBackGestureRefactorActivityAndroid)},
Donn Denmanc2db1e622023-04-12 17:28:085094 {"draw-edge-to-edge", flag_descriptions::kDrawEdgeToEdgeName,
5095 flag_descriptions::kDrawEdgeToEdgeDescription, kOsAndroid,
5096 FEATURE_VALUE_TYPE(chrome::android::kDrawEdgeToEdge)},
Lijin Shenf3215dcd2022-08-30 00:34:145097 {"infobar-scroll-optimization",
5098 flag_descriptions::kInfobarScrollOptimizationName,
5099 flag_descriptions::kInfobarScrollOptimizationDescription, kOsAndroid,
5100 FEATURE_VALUE_TYPE(chrome::android::kInfobarScrollOptimization)},
Wenyu Fu2518c9802023-02-08 23:52:265101 {"share-sheet-migration-android",
5102 flag_descriptions::kShareSheetMigrationAndroidName,
5103 flag_descriptions::kShareSheetMigrationAndroidDescription, kOsAndroid,
5104 FEATURE_VALUE_TYPE(chrome::android::kShareSheetMigrationAndroid)},
Wenyu Fu385c4962023-04-07 22:19:535105 {"share-sheet-custom-actions-polish",
5106 flag_descriptions::kShareSheetCustomActionsPolishName,
5107 flag_descriptions::kShareSheetCustomActionsPolishDescription, kOsAndroid,
5108 FEATURE_VALUE_TYPE(chrome::android::kShareSheetCustomActionsPolish)},
Wenyu Fu2518c9802023-02-08 23:52:265109
Xiaohan Wang064b68cd2022-01-19 19:12:285110#endif // BUILDFLAG(IS_ANDROID)
bmcquadeed75dc72016-04-12 19:41:235111 {"disallow-doc-written-script-loads",
vabr0215a8e2017-03-28 12:47:345112 flag_descriptions::kDisallowDocWrittenScriptsUiName,
5113 flag_descriptions::kDisallowDocWrittenScriptsUiDescription, kOsAll,
bmcquade43544d72015-08-06 03:39:215114 // NOTE: if we want to add additional experiment entries for other
5115 // features controlled by kBlinkSettings, we'll need to add logic to
5116 // merge the flag values.
shivanishaa96778d2016-10-19 17:18:575117 ENABLE_DISABLE_VALUE_TYPE_AND_VALUE(
Gyuyoung Kima252d4a2020-09-16 07:20:315118 blink::switches::kBlinkSettings,
shivanishaa96778d2016-10-19 17:18:575119 "disallowFetchForDocWrittenScriptsInMainFrame=true",
Gyuyoung Kima252d4a2020-09-16 07:20:315120 blink::switches::kBlinkSettings,
shivanishaa96778d2016-10-19 17:18:575121 "disallowFetchForDocWrittenScriptsInMainFrame=false")},
Yann Dagoc9bca0352023-02-28 16:30:505122#if !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_CHROMEOS_ASH)
5123 {"disallow-managed-profile-signout",
5124 flag_descriptions::kDisallowManagedProfileSignoutName,
5125 flag_descriptions::kDisallowManagedProfileSignoutDescription,
5126 kOsMac | kOsWin | kOsLinux | kOsLacros,
5127 FEATURE_VALUE_TYPE(kDisallowManagedProfileSignout)},
5128#endif // !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_CHROMEOS_ASH)
Vladimir Levin501455e2022-11-04 20:04:545129 {"view-transition", flag_descriptions::kViewTransitionName,
5130 flag_descriptions::kViewTransitionDescription, kOsAll,
5131 FEATURE_VALUE_TYPE(blink::features::kViewTransition)},
Khushal Sagarb5af36e2022-11-09 22:33:295132 {"view-transition-on-navigation",
5133 flag_descriptions::kViewTransitionOnNavigationName,
5134 flag_descriptions::kViewTransitionOnNavigationDescription, kOsAll,
5135 FEATURE_VALUE_TYPE(blink::features::kViewTransitionOnNavigation)},
Xiaohan Wang064b68cd2022-01-19 19:12:285136#if BUILDFLAG(IS_WIN)
vabr0215a8e2017-03-28 12:47:345137 {"use-winrt-midi-api", flag_descriptions::kUseWinrtMidiApiName,
5138 flag_descriptions::kUseWinrtMidiApiDescription, kOsWin,
shaochuan2d340032016-10-29 07:26:005139 FEATURE_VALUE_TYPE(midi::features::kMidiManagerWinrt)},
Xiaohan Wang064b68cd2022-01-19 19:12:285140#endif // BUILDFLAG(IS_WIN)
5141#if defined(TOOLKIT_VIEWS) || BUILDFLAG(IS_ANDROID)
jdonnellydcb7f072016-06-02 16:09:585142 {"enable-autofill-credit-card-upload",
vabr0215a8e2017-03-28 12:47:345143 flag_descriptions::kAutofillCreditCardUploadName,
5144 flag_descriptions::kAutofillCreditCardUploadDescription, kOsAll,
Anne Lim2716ba92018-08-28 01:47:275145 FEATURE_VALUE_TYPE(autofill::features::kAutofillUpstream)},
Xiaohan Wang064b68cd2022-01-19 19:12:285146#endif // defined(TOOLKIT_VIEWS) || BUILDFLAG(IS_ANDROID)
vabr0215a8e2017-03-28 12:47:345147 {"force-ui-direction", flag_descriptions::kForceUiDirectionName,
5148 flag_descriptions::kForceUiDirectionDescription, kOsAll,
mgiuca49ae7c72015-12-04 04:36:485149 MULTI_VALUE_TYPE(kForceUIDirectionChoices)},
krb6822b602017-05-02 14:53:215150 {"force-text-direction", flag_descriptions::kForceTextDirectionName,
5151 flag_descriptions::kForceTextDirectionDescription, kOsAll,
5152 MULTI_VALUE_TYPE(kForceTextDirectionChoices)},
Xiaohan Wang064b68cd2022-01-19 19:12:285153#if BUILDFLAG(IS_ANDROID)
Tommy Nyquist3c02e592018-10-18 23:36:445154 {"force-update-menu-type", flag_descriptions::kUpdateMenuTypeName,
5155 flag_descriptions::kUpdateMenuTypeDescription, kOsAndroid,
5156 MULTI_VALUE_TYPE(kForceUpdateMenuTypeChoices)},
twellingtonce0b29ba2017-04-19 21:01:175157 {"update-menu-item-custom-summary",
5158 flag_descriptions::kUpdateMenuItemCustomSummaryName,
5159 flag_descriptions::kUpdateMenuItemCustomSummaryDescription, kOsAndroid,
5160 SINGLE_VALUE_TYPE_AND_VALUE(
5161 switches::kForceShowUpdateMenuItemCustomSummary,
5162 "Custom Summary")},
vabr0215a8e2017-03-28 12:47:345163 {"force-show-update-menu-badge", flag_descriptions::kUpdateMenuBadgeName,
5164 flag_descriptions::kUpdateMenuBadgeDescription, kOsAndroid,
twellingtonce51db32015-12-30 16:24:295165 SINGLE_VALUE_TYPE(switches::kForceShowUpdateMenuBadge)},
vabr0215a8e2017-03-28 12:47:345166 {"set-market-url-for-testing",
5167 flag_descriptions::kSetMarketUrlForTestingName,
5168 flag_descriptions::kSetMarketUrlForTestingDescription, kOsAndroid,
Caitlin Fischer37e01232019-05-24 13:05:455169 SINGLE_VALUE_TYPE_AND_VALUE(switches::kMarketUrlForTesting,
5170 "https://play.google.com/store/apps/"
5171 "details?id=com.android.chrome")},
Tommy Nyquist5b7ac1a02022-08-16 16:56:005172 {"omaha-min-sdk-version-android",
5173 flag_descriptions::kOmahaMinSdkVersionAndroidName,
5174 flag_descriptions::kOmahaMinSdkVersionAndroidDescription, kOsAndroid,
5175 FEATURE_WITH_PARAMS_VALUE_TYPE(chrome::android::kOmahaMinSdkVersionAndroid,
5176 kOmahaMinSdkVersionAndroidVariations,
5177 "OmahaMinSdkVersionAndroidStudy")},
Xiaohan Wang064b68cd2022-01-19 19:12:285178#endif // BUILDFLAG(IS_ANDROID)
Steven Valdez89a44ea92019-05-01 15:18:495179 {"enable-tls13-early-data", flag_descriptions::kEnableTLS13EarlyDataName,
5180 flag_descriptions::kEnableTLS13EarlyDataDescription, kOsAll,
5181 FEATURE_VALUE_TYPE(net::features::kEnableTLS13EarlyData)},
Adam Langley664d93d2023-05-02 19:38:225182 {"enable-tls13-kyber", flag_descriptions::kEnableTLS13KyberName,
5183 flag_descriptions::kEnableTLS13KyberDescription, kOsAll,
5184 FEATURE_VALUE_TYPE(net::features::kPostQuantumKyber)},
Xiaohan Wang064b68cd2022-01-19 19:12:285185#if BUILDFLAG(IS_ANDROID)
Nick Birnie7982fbe2023-03-01 22:22:525186 {"feed-boc-signin-interstitial",
5187 flag_descriptions::kFeedBoCSigninInterstitialName,
5188 flag_descriptions::kFeedBoCSigninInterstitialDescription, kOsAndroid,
5189 FEATURE_VALUE_TYPE(feed::kFeedBoCSigninInterstitial)},
Jian Lic22a3ce2021-08-31 15:46:595190 {"feed-back-to-top", flag_descriptions::kFeedBackToTopName,
5191 flag_descriptions::kFeedBackToTopDescription, kOsAndroid,
5192 FEATURE_VALUE_TYPE(feed::kFeedBackToTop)},
Justin DeWitt3eca4372021-09-17 19:44:525193 {"feed-loading-placeholder", flag_descriptions::kFeedLoadingPlaceholderName,
5194 flag_descriptions::kFeedLoadingPlaceholderDescription, kOsAndroid,
5195 FEATURE_VALUE_TYPE(feed::kFeedLoadingPlaceholder)},
Dan Harrington0895cee2023-06-29 22:27:165196 {"feed-signed-out-view-demotion",
5197 flag_descriptions::kFeedSignedOutViewDemotionName,
5198 flag_descriptions::kFeedSignedOutViewDemotionDescription, kOsAndroid,
5199 FEATURE_VALUE_TYPE(feed::kFeedSignedOutViewDemotion)},
Dan Harrington4043b222021-01-15 18:33:425200 {"feed-v2-hearts", flag_descriptions::kInterestFeedV2HeartsName,
5201 flag_descriptions::kInterestFeedV2HeartsDescription, kOsAndroid,
5202 FEATURE_VALUE_TYPE(feed::kInterestFeedV2Hearts)},
Jian Lie41ddcb2022-05-04 01:11:565203 {"info-card-acknowledgement-tracking",
5204 flag_descriptions::kInfoCardAcknowledgementTrackingName,
5205 flag_descriptions::kInfoCardAcknowledgementTrackingDescription, kOsAndroid,
5206 FEATURE_VALUE_TYPE(feed::kInfoCardAcknowledgementTracking)},
Carlos Knippschild0cf5a072020-12-01 00:15:535207 {"web-feed", flag_descriptions::kWebFeedName,
5208 flag_descriptions::kWebFeedDescription, kOsAndroid,
Pete Williamson7c878152021-07-01 00:50:385209 FEATURE_WITH_PARAMS_VALUE_TYPE(feed::kWebFeed,
5210 kWebFeedVariations,
5211 "WebFeed")},
Pete Williamson55cbb162022-04-09 02:41:525212 {"web-feed-awareness", flag_descriptions::kWebFeedAwarenessName,
5213 flag_descriptions::kWebFeedAwarenessDescription, kOsAndroid,
Pete Williamson564dee22022-05-02 18:14:375214 FEATURE_WITH_PARAMS_VALUE_TYPE(feed::kWebFeedAwareness,
5215 kWebFeedAwarenessVariations,
5216 "WebFeedAwareness")},
Pete Williamson06a50ba2022-03-10 02:08:535217 {"web-feed-onboarding", flag_descriptions::kWebFeedOnboardingName,
5218 flag_descriptions::kWebFeedOnboardingDescription, kOsAndroid,
5219 FEATURE_VALUE_TYPE(feed::kWebFeedOnboarding)},
Cathy Lie949b3c2021-09-10 20:15:455220 {"web-feed-sort", flag_descriptions::kWebFeedSortName,
5221 flag_descriptions::kWebFeedSortDescription, kOsAndroid,
5222 FEATURE_VALUE_TYPE(feed::kWebFeedSort)},
Cathy Weie5c7d612022-10-14 18:55:075223 {"feed-header-stick-to-top", flag_descriptions::kFeedHeaderStickToTopName,
5224 flag_descriptions::kFeedHeaderStickToTopDescription, kOsAndroid,
5225 FEATURE_VALUE_TYPE(feed::kFeedHeaderStickToTop)},
Justin DeWitt83faf9d12020-12-17 23:18:035226 {"xsurface-metrics-reporting",
5227 flag_descriptions::kXsurfaceMetricsReportingName,
5228 flag_descriptions::kXsurfaceMetricsReportingDescription, kOsAndroid,
Dan Harringtone456f5202022-01-25 19:37:325229 FEATURE_VALUE_TYPE(feed::kXsurfaceMetricsReporting)},
Ian Wells6cf75a82022-07-13 02:11:025230 {"feed-close-refresh", flag_descriptions::kFeedCloseRefreshName,
5231 flag_descriptions::kFeedCloseRefreshDescription, kOsAndroid,
5232 FEATURE_WITH_PARAMS_VALUE_TYPE(feed::kFeedCloseRefresh,
5233 kFeedCloseRefreshVariations,
5234 "FeedCloseRefresh")},
Jonathan Freed4adf604f2022-08-31 17:06:145235 {"feed-discofeed-endpoint", flag_descriptions::kFeedDiscoFeedEndpointName,
5236 flag_descriptions::kFeedDiscoFeedEndpointDescription, kOsAndroid,
5237 FEATURE_VALUE_TYPE(feed::kDiscoFeedEndpoint)},
Cathy Lid4f39a852023-05-18 00:27:315238 {"feed-dynamic-colors", flag_descriptions::kFeedDynamicColorsName,
5239 flag_descriptions::kFeedDynamicColorsDescription, kOsAndroid,
5240 FEATURE_VALUE_TYPE(feed::kFeedDynamicColors)},
Xiaohan Wang064b68cd2022-01-19 19:12:285241#endif // BUILDFLAG(IS_ANDROID)
Jonathan Freed4d92f282022-08-12 19:01:055242#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || \
5243 BUILDFLAG(IS_WIN) || BUILDFLAG(IS_FUCHSIA)
5244 {"following-feed-sidepanel", flag_descriptions::kFollowingFeedSidepanelName,
5245 flag_descriptions::kFollowingFeedSidepanelDescription, kOsDesktop,
5246 FEATURE_VALUE_TYPE(feed::kWebUiFeed)},
5247#endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) ||
5248 // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_FUCHSIA)
Peter Beverloodcd5d9652021-10-11 23:30:595249 {"enable-force-dark", flag_descriptions::kAutoWebContentsDarkModeName,
5250 flag_descriptions::kAutoWebContentsDarkModeDescription, kOsAll,
Yuta Hijikata235fc62b2020-12-08 03:48:325251#if BUILDFLAG(IS_CHROMEOS_ASH)
Kyle Horimotoc0108e112020-10-20 21:41:045252 // TODO(https://crbug.com/1011696): Investigate crash reports and
5253 // re-enable variations for ChromeOS.
5254 FEATURE_VALUE_TYPE(blink::features::kForceWebContentsDarkMode)},
5255#else
Aran Gilman5e9672bed2019-08-02 19:07:495256 FEATURE_WITH_PARAMS_VALUE_TYPE(blink::features::kForceWebContentsDarkMode,
5257 kForceDarkVariations,
5258 "ForceDarkVariations")},
Yuta Hijikata235fc62b2020-12-08 03:48:325259#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Xiaohan Wang064b68cd2022-01-19 19:12:285260#if BUILDFLAG(IS_ANDROID)
Mark Schillacid9ce86c2021-09-30 16:37:535261 {"enable-accessibility-page-zoom",
5262 flag_descriptions::kAccessibilityPageZoomName,
5263 flag_descriptions::kAccessibilityPageZoomDescription, kOsAndroid,
5264 FEATURE_VALUE_TYPE(features::kAccessibilityPageZoom)},
Amanda Lin Dietzfad213752023-05-16 22:09:575265 {"enable-accessibility-performance-filtering",
5266 flag_descriptions::kAccessibilityPerformanceFilteringName,
5267 flag_descriptions::kAccessibilityPerformanceFilteringDescription,
5268 kOsAndroid,
5269 FEATURE_VALUE_TYPE(features::kAccessibilityPerformanceFiltering)},
Mark Schillacicc2476f2023-07-06 17:08:085270 {"enable-smart-zoom", flag_descriptions::kSmartZoomName,
5271 flag_descriptions::kSmartZoomDescription, kOsAndroid,
5272 FEATURE_VALUE_TYPE(features::kSmartZoom)},
Xiaohan Wang064b68cd2022-01-19 19:12:285273#endif // BUILDFLAG(IS_ANDROID)
Chris Hall4a4225f62019-01-18 03:07:165274 {"enable-experimental-accessibility-language-detection",
5275 flag_descriptions::kExperimentalAccessibilityLanguageDetectionName,
5276 flag_descriptions::kExperimentalAccessibilityLanguageDetectionDescription,
Chris Hall2e490ec2019-08-08 02:14:145277 kOsAll,
Chris Hall4a4225f62019-01-18 03:07:165278 SINGLE_VALUE_TYPE(
5279 ::switches::kEnableExperimentalAccessibilityLanguageDetection)},
Chris Hall4f3ca5582019-11-19 02:55:495280 {"enable-experimental-accessibility-language-detection-dynamic",
5281 flag_descriptions::kExperimentalAccessibilityLanguageDetectionDynamicName,
5282 flag_descriptions::
5283 kExperimentalAccessibilityLanguageDetectionDynamicDescription,
5284 kOsAll,
5285 SINGLE_VALUE_TYPE(
5286 ::switches::kEnableExperimentalAccessibilityLanguageDetectionDynamic)},
Dominic Mazzoni34dfc6482020-11-18 22:17:585287 {"enable-aria-element-reflection",
5288 flag_descriptions::kAriaElementReflectionName,
5289 flag_descriptions::kAriaElementReflectionDescription, kOsAll,
5290 FEATURE_VALUE_TYPE(features::kEnableAriaElementReflection)},
Yuta Hijikata235fc62b2020-12-08 03:48:325291#if BUILDFLAG(IS_CHROMEOS_ASH)
Bao-Duy Tran395c169c72022-02-14 06:57:345292 {"enable-cros-autocorrect-params-tuning",
5293 flag_descriptions::kAutocorrectParamsTuningName,
5294 flag_descriptions::kAutocorrectParamsTuningDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:425295 FEATURE_VALUE_TYPE(ash::features::kAutocorrectParamsTuning)},
Zac Partridgeefc2ec02022-11-21 06:28:455296 {"enable-cros-autocorrect-toggle",
5297 flag_descriptions::kAutocorrectToggleName,
5298 flag_descriptions::kAutocorrectToggleDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:425299 FEATURE_VALUE_TYPE(ash::features::kAutocorrectToggle)},
Curtis McMullanf1351802022-12-02 05:23:025300 {"enable-cros-autocorrect-by-default",
5301 flag_descriptions::kAutocorrectByDefaultName,
5302 flag_descriptions::kAutocorrectByDefaultDescription, kOsCrOS,
5303 FEATURE_VALUE_TYPE(ash::features::kAutocorrectByDefault)},
Chuong Hob2718c32023-06-02 07:47:015304 {"enable-cros-autocorrect-use-replace-surrounding-text",
5305 flag_descriptions::kAutocorrectUseReplaceSurroundingTextName,
5306 flag_descriptions::kAutocorrectUseReplaceSurroundingTextDescription,
5307 kOsCrOS,
5308 FEATURE_VALUE_TYPE(ash::features::kAutocorrectUseReplaceSurroundingText)},
Yue Li1c3496412022-08-10 23:37:145309 {"enable-cros-avatars-cloud-migration",
5310 flag_descriptions::kAvatarsCloudMigrationName,
5311 flag_descriptions::kAvatarsCloudMigrationDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:425312 FEATURE_VALUE_TYPE(ash::features::kAvatarsCloudMigration)},
jhtin2c8808102022-02-21 08:53:355313 {"enable-cros-diacritics-on-physical-keyboard-longpress",
5314 flag_descriptions::kDiacriticsOnPhysicalKeyboardLongpressName,
5315 flag_descriptions::kDiacriticsOnPhysicalKeyboardLongpressDescription,
5316 kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:425317 FEATURE_VALUE_TYPE(ash::features::kDiacriticsOnPhysicalKeyboardLongpress)},
John Palmer8cbc27b2023-04-19 00:53:015318 {"enable-cros-diacritics-on-physical-keyboard-longpress-on-by-default",
5319 flag_descriptions::kDiacriticsOnPhysicalKeyboardLongpressDefaultOnName,
5320 flag_descriptions::
5321 kDiacriticsOnPhysicalKeyboardLongpressDefaultOnDescription,
5322 kOsCrOS,
5323 FEATURE_VALUE_TYPE(
5324 ash::features::kDiacriticsOnPhysicalKeyboardLongpressDefaultOn)},
Darren Shen1c21e1e42023-05-11 00:03:395325 {"enable-cros-diacritics-use-replace-surrounding-text",
5326 flag_descriptions::kDiacriticsUseReplaceSurroundingTextName,
5327 flag_descriptions::kDiacriticsUseReplaceSurroundingTextDescription,
5328 kOsCrOS,
5329 FEATURE_VALUE_TYPE(ash::features::kDiacriticsUseReplaceSurroundingText)},
jhtinc1f43aa2022-11-10 03:27:045330 {"enable-cros-first-party-vietnamese-input",
5331 flag_descriptions::kFirstPartyVietnameseInputName,
5332 flag_descriptions::kFirstPartyVietnameseInputDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:425333 FEATURE_VALUE_TYPE(ash::features::kFirstPartyVietnameseInput)},
Jungshik Shin1c8c4882022-09-14 05:35:265334 {"enable-cros-hindi-inscript-layout",
5335 flag_descriptions::kHindiInscriptLayoutName,
5336 flag_descriptions::kHindiInscriptLayoutDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:425337 FEATURE_VALUE_TYPE(ash::features::kHindiInscriptLayout)},
Curtis McMullana1900062021-06-28 01:13:255338 {"enable-cros-ime-assist-emoji-enhanced",
5339 flag_descriptions::kImeAssistEmojiEnhancedName,
5340 flag_descriptions::kImeAssistEmojiEnhancedDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:425341 FEATURE_VALUE_TYPE(ash::features::kAssistEmojiEnhanced)},
Curtis McMullan35800d22020-11-26 06:45:195342 {"enable-cros-ime-assist-multi-word",
5343 flag_descriptions::kImeAssistMultiWordName,
5344 flag_descriptions::kImeAssistMultiWordDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:425345 FEATURE_VALUE_TYPE(ash::features::kAssistMultiWord)},
Curtis McMullan6f6526d2021-07-09 04:22:455346 {"enable-cros-ime-assist-multi-word-expanded",
5347 flag_descriptions::kImeAssistMultiWordExpandedName,
5348 flag_descriptions::kImeAssistMultiWordExpandedDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:425349 FEATURE_VALUE_TYPE(ash::features::kAssistMultiWordExpanded)},
Chuong Ho0db3d5d22023-02-27 02:18:335350 {"enable-cros-ime-fst-decoder-params-update",
5351 flag_descriptions::kImeFstDecoderParamsUpdateName,
5352 flag_descriptions::kImeFstDecoderParamsUpdateDescription, kOsCrOS,
5353 FEATURE_VALUE_TYPE(ash::features::kImeFstDecoderParamsUpdate)},
John Palmer1141d7832022-04-08 00:01:515354 {"enable-cros-virtual-keyboard-new-header",
5355 flag_descriptions::kVirtualKeyboardNewHeaderName,
5356 flag_descriptions::kVirtualKeyboardNewHeaderDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:425357 FEATURE_VALUE_TYPE(ash::features::kVirtualKeyboardNewHeader)},
John Palmer77ce9282021-07-15 09:23:095358 {"enable-cros-ime-system-emoji-picker-clipboard",
5359 flag_descriptions::kImeSystemEmojiPickerClipboardName,
5360 flag_descriptions::kImeSystemEmojiPickerClipboardDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:425361 FEATURE_VALUE_TYPE(ash::features::kImeSystemEmojiPickerClipboard)},
Chuong Hoa3217d52021-12-08 06:36:145362 {"enable-cros-ime-system-emoji-picker-extension",
5363 flag_descriptions::kImeSystemEmojiPickerExtensionName,
5364 flag_descriptions::kImeSystemEmojiPickerExtensionDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:425365 FEATURE_VALUE_TYPE(ash::features::kImeSystemEmojiPickerExtension)},
Kaiqi Liang5ddd91b2022-12-01 23:14:535366 {"enable-cros-ime-system-emoji-picker-gif-support",
5367 flag_descriptions::kImeSystemEmojiPickerGIFSupportName,
5368 flag_descriptions::kImeSystemEmojiPickerGIFSupportDescription, kOsCrOS,
5369 FEATURE_VALUE_TYPE(ash::features::kImeSystemEmojiPickerGIFSupport)},
Chuong Ho7a5781832022-02-09 06:47:265370 {"enable-cros-ime-system-emoji-picker-search-extension",
5371 flag_descriptions::kImeSystemEmojiPickerSearchExtensionName,
5372 flag_descriptions::kImeSystemEmojiPickerSearchExtensionDescription,
5373 kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:425374 FEATURE_VALUE_TYPE(ash::features::kImeSystemEmojiPickerSearchExtension)},
John Palmer90a32212021-08-03 08:49:135375 {"enable-cros-ime-stylus-handwriting",
5376 flag_descriptions::kImeStylusHandwritingName,
5377 flag_descriptions::kImeStylusHandwritingDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:425378 FEATURE_VALUE_TYPE(ash::features::kImeStylusHandwriting)},
Grey Wang8896c882022-09-02 00:21:555379 {"enable-cros-ime-tray-hide-voice-button",
5380 flag_descriptions::kImeTrayHideVoiceButtonName,
5381 flag_descriptions::kImeTrayHideVoiceButtonDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:425382 FEATURE_VALUE_TYPE(ash::features::kImeTrayHideVoiceButton)},
Curtis McMullan6011fe7f2023-02-23 01:22:205383 {"enable-cros-ime-us-english-model-update",
5384 flag_descriptions::kImeUsEnglishModelUpdateName,
5385 flag_descriptions::kImeUsEnglishModelUpdateDescription, kOsCrOS,
5386 FEATURE_VALUE_TYPE(ash::features::kImeUsEnglishModelUpdate)},
Bao-Duy Tranaa329d62020-11-27 05:40:585387 {"enable-cros-multilingual-typing",
5388 flag_descriptions::kMultilingualTypingName,
5389 flag_descriptions::kMultilingualTypingDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:425390 FEATURE_VALUE_TYPE(ash::features::kMultilingualTyping)},
Jing Wang859fb1a2020-11-27 00:26:485391 {"enable-cros-on-device-grammar-check",
5392 flag_descriptions::kCrosOnDeviceGrammarCheckName,
5393 flag_descriptions::kCrosOnDeviceGrammarCheckDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:425394 FEATURE_VALUE_TYPE(ash::features::kOnDeviceGrammarCheck)},
Keith Lee8b2131fe2021-10-11 05:11:065395 {"enable-cros-system-japanese-physical-typing",
5396 flag_descriptions::kSystemJapanesePhysicalTypingName,
5397 flag_descriptions::kSystemJapanesePhysicalTypingDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:425398 FEATURE_VALUE_TYPE(ash::features::kSystemJapanesePhysicalTyping)},
Michelle1569cf32022-03-24 06:34:485399 {"enable-cros-virtual-keyboard-multitouch",
5400 flag_descriptions::kVirtualKeyboardMultitouchName,
5401 flag_descriptions::kVirtualKeyboardMultitouchDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:425402 FEATURE_VALUE_TYPE(ash::features::kVirtualKeyboardMultitouch)},
John Palmer489eda922022-05-13 05:40:415403 {"enable-cros-virtual-keyboard-round-corners",
5404 flag_descriptions::kVirtualKeyboardRoundCornersName,
5405 flag_descriptions::kVirtualKeyboardRoundCornersDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:425406 FEATURE_VALUE_TYPE(ash::features::kVirtualKeyboardRoundCorners)},
Akihiro Ota888750d2023-06-29 14:36:035407 {"enable-experimental-accessibility-chromevox-oobe-dialog-improvements",
5408 flag_descriptions::
5409 kExperimentalAccessibilityChromeVoxOobeDialogImprovementsName,
5410 flag_descriptions::
5411 kExperimentalAccessibilityChromeVoxOobeDialogImprovementsDescription,
5412 kOsCrOS,
5413 FEATURE_VALUE_TYPE(
5414 features::kExperimentalAccessibilityChromeVoxOobeDialogImprovements)},
Jeeva Murugan0c7d43a82022-11-07 01:10:275415 {"enable-experimental-accessibility-dictation-context-checking",
5416 flag_descriptions::kExperimentalAccessibilityDictationContextCheckingName,
5417 flag_descriptions::
5418 kExperimentalAccessibilityDictationContextCheckingDescription,
5419 kOsCrOS,
5420 FEATURE_VALUE_TYPE(
5421 features::kExperimentalAccessibilityDictationContextChecking)},
Josiah Kcb91cd12022-03-22 19:27:065422 {"enable-experimental-accessibility-google-tts-language-packs",
5423 flag_descriptions::kExperimentalAccessibilityGoogleTtsLanguagePacksName,
5424 flag_descriptions::
5425 kExperimentalAccessibilityGoogleTtsLanguagePacksDescription,
5426 kOsCrOS,
Akihiro Otaef83db122022-03-28 18:20:205427 FEATURE_VALUE_TYPE(
5428 features::kExperimentalAccessibilityGoogleTtsLanguagePacks)},
Katie Dektar7143fb02023-03-20 21:01:515429 {"enable-experimental-accessibility-deprecate-chromevox-tabs",
5430 flag_descriptions::kAccessibilityDeprecateChromeVoxTabsName,
5431 flag_descriptions::kAccessibilityDeprecateChromeVoxTabsDescription,
5432 kOsCrOS,
5433 FEATURE_VALUE_TYPE(features::kAccessibilityDeprecateChromeVoxTabs)},
Rose Garcia26e2ae32019-06-25 00:57:545434 {"enable-experimental-accessibility-switch-access-text",
5435 flag_descriptions::kExperimentalAccessibilitySwitchAccessTextName,
5436 flag_descriptions::kExperimentalAccessibilitySwitchAccessTextDescription,
5437 kOsCrOS,
5438 SINGLE_VALUE_TYPE(
5439 ::switches::kEnableExperimentalAccessibilitySwitchAccessText)},
Katie Dektar4cf2df72022-08-26 22:31:195440 {"enable-experimental-accessibility-color-enhancement-settings",
5441 flag_descriptions::kExperimentalAccessibilityColorEnhancementSettingsName,
5442 flag_descriptions::
5443 kExperimentalAccessibilityColorEnhancementSettingsDescription,
5444 kOsCrOS,
5445 FEATURE_VALUE_TYPE(
5446 features::kExperimentalAccessibilityColorEnhancementSettings)},
Andres Calderon Jaramilloa55fccb2023-03-24 19:22:115447 {"expose-out-of-process-video-decoding-to-lacros",
5448 flag_descriptions::kExposeOutOfProcessVideoDecodingToLacrosName,
5449 flag_descriptions::kExposeOutOfProcessVideoDecodingToLacrosDescription,
5450 kOsCrOS,
5451 FEATURE_VALUE_TYPE(media::kExposeOutOfProcessVideoDecodingToLacros)},
Andreea Costinas1e592142021-04-20 13:24:255452 {"enable-system-proxy-for-system-services",
5453 flag_descriptions::kSystemProxyForSystemServicesName,
5454 flag_descriptions::kSystemProxyForSystemServicesDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:425455 FEATURE_VALUE_TYPE(ash::features::kSystemProxyForSystemServices)},
Xinglong Luanff7dec52023-05-30 01:07:505456 {"enable-federated-service", flag_descriptions::kFederatedServiceName,
5457 flag_descriptions::kFederatedServiceDescription, kOsCrOS,
5458 FEATURE_VALUE_TYPE(ash::features::kFederatedService)},
Yuta Hijikata235fc62b2020-12-08 03:48:325459#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Michelle724c6bfb22022-12-15 04:55:385460#if BUILDFLAG(IS_CHROMEOS)
5461 {"enable-cros-touch-text-editing-redesign",
5462 flag_descriptions::kTouchTextEditingRedesignName,
5463 flag_descriptions::kTouchTextEditingRedesignDescription,
5464 kOsCrOS | kOsLacros,
5465 FEATURE_VALUE_TYPE(features::kTouchTextEditingRedesign)},
5466#endif // BUILDFLAG(IS_CHROMEOS)
Xiaohan Wang064b68cd2022-01-19 19:12:285467#if BUILDFLAG(IS_MAC)
Florent Castellibd7db032023-02-22 11:22:035468 {"enable-retry-capture-device-enumeration-on-crash",
5469 flag_descriptions::kRetryGetVideoCaptureDeviceInfosName,
5470 flag_descriptions::kRetryGetVideoCaptureDeviceInfosDescription, kOsMac,
5471 FEATURE_VALUE_TYPE(features::kRetryGetVideoCaptureDeviceInfos)},
5472#endif // BUILDFLAG(IS_MAC)
5473#if BUILDFLAG(IS_MAC)
Sidney San Martín678fd4112019-03-30 00:13:055474 {"enable-immersive-fullscreen-toolbar",
5475 flag_descriptions::kImmersiveFullscreenName,
Elly Fong-Jones94fc8632019-08-14 18:23:035476 flag_descriptions::kImmersiveFullscreenDescription, kOsMac,
Sidney San Martín678fd4112019-03-30 00:13:055477 FEATURE_VALUE_TYPE(features::kImmersiveFullscreen)},
Xiaohan Wang064b68cd2022-01-19 19:12:285478#endif // BUILDFLAG(IS_MAC)
Danyao Wang47a0f312019-05-09 20:52:245479 {"enable-web-payments-experimental-features",
5480 flag_descriptions::kWebPaymentsExperimentalFeaturesName,
5481 flag_descriptions::kWebPaymentsExperimentalFeaturesDescription, kOsAll,
5482 FEATURE_VALUE_TYPE(payments::features::kWebPaymentsExperimentalFeatures)},
Rouslan Solomakhin8c770f582023-01-03 22:23:515483 {"ignore-csp-in-web-payment-api",
5484 flag_descriptions::kIgnoreCSPInWebPaymentAPIName,
5485 flag_descriptions::kIgnoreCSPInWebPaymentAPIDescription, kOsAll,
5486 FEATURE_VALUE_TYPE(blink::features::kIgnoreCSPInWebPaymentAPI)},
Rouslan Solomakhin1b63d252023-01-04 15:36:335487 {"add-identity-in-can-make-payment",
5488 flag_descriptions::kAddIdentityInCanMakePaymentEventName,
5489 flag_descriptions::kAddIdentityInCanMakePaymentEventDescription, kOsAll,
5490 FEATURE_VALUE_TYPE(blink::features::kAddIdentityInCanMakePaymentEvent)},
Liquan (Max) Gu8fcb9192020-05-20 16:22:185491 {"enable-debug-for-store-billing",
5492 flag_descriptions::kAppStoreBillingDebugName,
5493 flag_descriptions::kAppStoreBillingDebugDescription, kOsAll,
5494 FEATURE_VALUE_TYPE(payments::features::kAppStoreBillingDebug)},
Rouslan Solomakhine73fa7852020-08-28 10:33:465495 {"enable-debug-for-secure-payment-confirmation",
5496 flag_descriptions::kSecurePaymentConfirmationDebugName,
5497 flag_descriptions::kSecurePaymentConfirmationDebugDescription, kOsAll,
5498 FEATURE_VALUE_TYPE(features::kSecurePaymentConfirmationDebug)},
Mason Freede8de8802023-05-22 23:54:135499 {"mutation-events", flag_descriptions::kMutationEventsName,
5500 flag_descriptions::kMutationEventsDescription, kOsAll,
5501 FEATURE_VALUE_TYPE(blink::features::kMutationEvents)},
Mason Freed7e294a82023-06-05 23:46:145502 {"popover-attribute", flag_descriptions::kHTMLPopoverAttributeName,
5503 flag_descriptions::kHTMLPopoverAttributeDescription, kOsAll,
5504 FEATURE_VALUE_TYPE(blink::features::kHTMLPopoverAttribute)},
vabr0215a8e2017-03-28 12:47:345505 {"fill-on-account-select", flag_descriptions::kFillOnAccountSelectName,
5506 flag_descriptions::kFillOnAccountSelectDescription, kOsAll,
vabr6bf3a252016-06-20 14:26:405507 FEATURE_VALUE_TYPE(password_manager::features::kFillOnAccountSelect)},
Yuta Hijikata235fc62b2020-12-08 03:48:325508#if BUILDFLAG(IS_CHROMEOS_ASH)
Pattara Teerapong5aad01b2023-05-12 03:15:295509 {"arc-aaudio-mmap-low-latency",
5510 flag_descriptions::kArcAAudioMMAPLowLatencyName,
5511 flag_descriptions::kArcAAudioMMAPLowLatencyDescription, kOsCrOS,
5512 PLATFORM_FEATURE_NAME_TYPE("CrOSLateBootArcVmAAudioMMAPLowLatency")},
Ryo Hashimoto8f4b30ced2019-04-08 12:14:195513 {"arc-custom-tabs-experiment",
5514 flag_descriptions::kArcCustomTabsExperimentName,
Elly Fong-Jones94fc8632019-08-14 18:23:035515 flag_descriptions::kArcCustomTabsExperimentDescription, kOsCrOS,
Ryo Hashimoto8f4b30ced2019-04-08 12:14:195516 FEATURE_VALUE_TYPE(arc::kCustomTabsExperimentFeature)},
Alexander Bolodurin4e0a465c2021-03-31 23:14:035517 {"arc-documents-provider-unknown-size",
5518 flag_descriptions::kArcDocumentsProviderUnknownSizeName,
5519 flag_descriptions::kArcDocumentsProviderUnknownSizeDescription, kOsCrOS,
5520 FEATURE_VALUE_TYPE(arc::kDocumentsProviderUnknownSizeFeature)},
Pattara Teerapong425077a2023-01-12 15:21:405521 {"arc-enable-aaudio-mmap", flag_descriptions::kArcEnableAAudioMMAPName,
5522 flag_descriptions::kArcEnableAAudioMMAPDescription, kOsCrOS,
5523 PLATFORM_FEATURE_NAME_TYPE("CrOSLateBootArcVmAAudioMMAP")},
Youkichi Hosoi47685462022-10-06 01:51:395524 {kArcEnableVirtioBlkForDataInternalName,
Satoshi Niwa4e1c9962022-03-01 00:23:575525 flag_descriptions::kArcEnableVirtioBlkForDataName,
5526 flag_descriptions::kArcEnableVirtioBlkForDataDesc, kOsCrOS,
5527 FEATURE_VALUE_TYPE(arc::kEnableVirtioBlkForData)},
Youkichi Hosoi26d9aa12023-04-21 06:34:355528 {"arc-external-storage-access",
5529 flag_descriptions::kArcExternalStorageAccessName,
5530 flag_descriptions::kArcExternalStorageAccessDescription, kOsCrOS,
5531 FEATURE_VALUE_TYPE(arc::kExternalStorageAccess)},
Satoshi Niwa8b1d5282018-10-24 04:53:035532 {"arc-file-picker-experiment",
5533 flag_descriptions::kArcFilePickerExperimentName,
5534 flag_descriptions::kArcFilePickerExperimentDescription, kOsCrOS,
5535 FEATURE_VALUE_TYPE(arc::kFilePickerExperimentFeature)},
Nakul Vaidyaddfdfbc2022-06-28 23:43:325536 {"arc-game-mode", flag_descriptions::kArcGameModeName,
Matthew DeVoreb8bdedd2022-06-28 15:17:465537 flag_descriptions::kArcGameModeDescription, kOsCrOS,
5538 FEATURE_VALUE_TYPE(arc::kGameModeFeature)},
Shengsong Tan6cb88592022-11-09 01:57:355539 {"arc-instant-response-window-open",
5540 flag_descriptions::kArcInstantResponseWindowOpenName,
5541 flag_descriptions::kArcInstantResponseWindowOpenDescription, kOsCrOS,
5542 FEATURE_VALUE_TYPE(arc::kInstantResponseWindowOpen)},
Tetsui Ohkubo4c6d7f42021-07-07 16:47:375543 {"arc-keyboard-shortcut-helper-integration",
5544 flag_descriptions::kArcKeyboardShortcutHelperIntegrationName,
5545 flag_descriptions::kArcKeyboardShortcutHelperIntegrationDescription,
5546 kOsCrOS,
5547 FEATURE_VALUE_TYPE(arc::kKeyboardShortcutHelperIntegrationFeature)},
Lev Rumyantsev6eddc802019-08-27 19:41:215548 {"arc-native-bridge-toggle", flag_descriptions::kArcNativeBridgeToggleName,
5549 flag_descriptions::kArcNativeBridgeToggleDescription, kOsCrOS,
5550 FEATURE_VALUE_TYPE(arc::kNativeBridgeToggleFeature)},
Yusuke Sato4717d1782021-03-12 23:27:175551 {"arc-rt-vcpu-dual-core", flag_descriptions::kArcRtVcpuDualCoreName,
5552 flag_descriptions::kArcRtVcpuDualCoreDesc, kOsCrOS,
5553 FEATURE_VALUE_TYPE(arc::kRtVcpuDualCore)},
5554 {"arc-rt-vcpu-quad-core", flag_descriptions::kArcRtVcpuQuadCoreName,
5555 flag_descriptions::kArcRtVcpuQuadCoreDesc, kOsCrOS,
5556 FEATURE_VALUE_TYPE(arc::kRtVcpuQuadCore)},
Yuichiro Hanada1d948602023-06-28 09:09:105557 {"arc-touchscreen-emulation",
5558 flag_descriptions::kArcTouchscreenEmulationName,
5559 flag_descriptions::kArcTouchscreenEmulationDesc, kOsCrOS,
5560 FEATURE_VALUE_TYPE(arc::kTouchscreenEmulation)},
5561 {"arc-trackpad-scroll-touchscreen-emulation",
5562 flag_descriptions::kArcTrackpadScrollTouchscreenEmulationName,
5563 flag_descriptions::kArcTrackpadScrollTouchscreenEmulationDesc, kOsCrOS,
5564 FEATURE_VALUE_TYPE(arc::kTrackpadScrollTouchscreenEmulation)},
Yao Li68896be2023-06-09 21:10:125565 {"arc-switch-to-keymint-daemon",
5566 flag_descriptions::kArcSwitchToKeyMintDaemonName,
5567 flag_descriptions::kArcSwitchToKeyMintDaemonDesc, kOsCrOS,
5568 PLATFORM_FEATURE_NAME_TYPE("CrOSLateBootArcSwitchToKeyMintDaemon")},
Yao Li8f4568b12023-02-15 19:59:455569 {"arc-switch-to-keymint-on-t",
5570 flag_descriptions::kArcSwitchToKeyMintOnTName,
5571 flag_descriptions::kArcSwitchToKeyMintOnTDesc, kOsCrOS,
5572 FEATURE_VALUE_TYPE(arc::kSwitchToKeyMintOnT)},
lgchengcda295dce2023-02-22 02:38:315573 {"arc-sync-install-priority",
5574 flag_descriptions::kArcSyncInstallPriorityName,
5575 flag_descriptions::kArcSyncInstallPriorityDescription, kOsCrOS,
5576 FEATURE_VALUE_TYPE(arc::kSyncInstallPriority)},
Shengsong Tan4cc02572023-02-06 05:25:245577 {"arc-vmm-swap-keyboard-shortcut",
5578 flag_descriptions::kArcVmmSwapKBShortcutName,
5579 flag_descriptions::kArcVmmSwapKBShortcutDesc, kOsCrOS,
5580 FEATURE_VALUE_TYPE(arc::kVmmSwapKeyboardShortcut)},
Yuta Hijikata235fc62b2020-12-08 03:48:325581#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Mikhail Pozdnyakov73373a62017-08-24 17:31:255582 {"enable-generic-sensor-extra-classes",
5583 flag_descriptions::kEnableGenericSensorExtraClassesName,
5584 flag_descriptions::kEnableGenericSensorExtraClassesDescription, kOsAll,
5585 FEATURE_VALUE_TYPE(features::kGenericSensorExtraClasses)},
xdai05509b82016-12-19 23:48:145586
Yuta Hijikata235fc62b2020-12-08 03:48:325587#if BUILDFLAG(IS_CHROMEOS_ASH)
Mike Wasserman8f8b0852018-12-03 22:08:105588 {ui_devtools::switches::kEnableUiDevTools,
5589 flag_descriptions::kUiDevToolsName,
bruthigeafb0c02017-06-09 13:11:535590 flag_descriptions::kUiDevToolsDescription, kOsCrOS,
Mike Wasserman8f8b0852018-12-03 22:08:105591 SINGLE_VALUE_TYPE(ui_devtools::switches::kEnableUiDevTools)},
Yuta Hijikata235fc62b2020-12-08 03:48:325592#endif // BUILDFLAG(IS_CHROMEOS_ASH)
bruthigeafb0c02017-06-09 13:11:535593
Vishwas Uppoor416acea2023-03-09 02:25:225594 {"enable-autofill-virtual-cards-on-touch-to-fill",
5595 flag_descriptions::kAutofillVirtualCardsOnTouchToFillAndroidName,
5596 flag_descriptions::kAutofillVirtualCardsOnTouchToFillAndroidDescription,
5597 kOsAll,
5598 FEATURE_VALUE_TYPE(
5599 autofill::features::kAutofillVirtualCardsOnTouchToFillAndroid)},
5600
Xiaohan Wang064b68cd2022-01-19 19:12:285601#if BUILDFLAG(IS_ANDROID)
Vishwas Uppoor940bd242022-12-15 09:49:425602 {"enable-autofill-touch-to-fill-for-credit-cards",
5603 flag_descriptions::kAutofillTouchToFillForCreditCardsAndroidName,
5604 flag_descriptions::kAutofillTouchToFillForCreditCardsAndroidDescription,
5605 kOsAndroid,
5606 FEATURE_VALUE_TYPE(
5607 autofill::features::kAutofillTouchToFillForCreditCardsAndroid)},
kcarattinidb5f41b2017-01-18 13:24:065608#endif
5609
Yuta Hijikata235fc62b2020-12-08 03:48:325610#if BUILDFLAG(IS_CHROMEOS_ASH)
vabr0215a8e2017-03-28 12:47:345611 {"enable-touchscreen-calibration",
5612 flag_descriptions::kTouchscreenCalibrationName,
5613 flag_descriptions::kTouchscreenCalibrationDescription, kOsCrOS,
Henrique Ferreiro93dd33b2022-01-18 16:06:455614 SINGLE_VALUE_TYPE(ash::switches::kEnableTouchCalibrationSetting)},
Yuta Hijikata235fc62b2020-12-08 03:48:325615#endif // BUILDFLAG(IS_CHROMEOS_ASH)
5616#if BUILDFLAG(IS_CHROMEOS_ASH)
Wei Lee4fe87182020-12-22 09:32:445617 {"prefer-constant-frame-rate",
5618 flag_descriptions::kPreferConstantFrameRateName,
5619 flag_descriptions::kPreferConstantFrameRateDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:425620 FEATURE_VALUE_TYPE(ash::features::kPreferConstantFrameRate)},
Wei Lee585fa1b2022-05-15 20:26:255621 {"more-video-capture-buffers",
5622 flag_descriptions::kMoreVideoCaptureBuffersName,
5623 flag_descriptions::kMoreVideoCaptureBuffersDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:425624 FEATURE_VALUE_TYPE(ash::features::kMoreVideoCaptureBuffers)},
mojahsu3144bf32021-05-26 10:14:465625 {"force-control-face-ae", flag_descriptions::kForceControlFaceAeName,
5626 flag_descriptions::kForceControlFaceAeDescription, kOsCrOS,
5627 MULTI_VALUE_TYPE(kForceControlFaceAeChoices)},
Ren-Pei Zeng61605a52021-12-06 13:07:485628 {"auto-framing-override", flag_descriptions::kAutoFramingOverrideName,
5629 flag_descriptions::kAutoFramingOverrideDescription, kOsCrOS,
5630 MULTI_VALUE_TYPE(kAutoFramingOverrideChoices)},
Kam Kwankajornkietbc6eb782023-03-16 04:40:085631 {"camera-app-time-lapse", flag_descriptions::kCameraAppTimeLapseName,
5632 flag_descriptions::kCameraAppTimeLapseDescription, kOsCrOS,
5633 FEATURE_VALUE_TYPE(ash::features::kCameraAppTimeLapse)},
Ben Wells7238dd02019-05-02 08:20:325634 {"crostini-gpu-support", flag_descriptions::kCrostiniGpuSupportName,
5635 flag_descriptions::kCrostiniGpuSupportDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:425636 FEATURE_VALUE_TYPE(ash::features::kCrostiniGpuSupport)},
Ricky Liang8df43372020-07-09 09:41:095637 {"disable-camera-frame-rotation-at-source",
5638 flag_descriptions::kDisableCameraFrameRotationAtSourceName,
5639 flag_descriptions::kDisableCameraFrameRotationAtSourceDescription, kOsCrOS,
5640 FEATURE_VALUE_TYPE(media::features::kDisableCameraFrameRotationAtSource)},
Travis Lane636a4ac2022-05-24 16:28:555641 {"drive-fs-chrome-networking",
5642 flag_descriptions::kDriveFsChromeNetworkingName,
5643 flag_descriptions::kDriveFsChromeNetworkingDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:425644 FEATURE_VALUE_TYPE(ash::features::kDriveFsChromeNetworking)},
Steffen Secklerc95470d2022-08-12 07:26:005645 {"file-transfer-enterprise-connector",
5646 flag_descriptions::kFileTransferEnterpriseConnectorName,
5647 flag_descriptions::kFileTransferEnterpriseConnectorDescription, kOsCrOS,
5648 FEATURE_VALUE_TYPE(features::kFileTransferEnterpriseConnector)},
Luciano Pachecoa2f314ee2022-06-02 14:22:145649 {"files-app-experimental", flag_descriptions::kFilesAppExperimentalName,
5650 flag_descriptions::kFilesAppExperimentalDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:425651 FEATURE_VALUE_TYPE(ash::features::kFilesAppExperimental)},
Noel Gordon5c5a49e62023-01-16 06:14:005652 {"files-conflict-dialog", flag_descriptions::kFilesConflictDialogName,
5653 flag_descriptions::kFilesConflictDialogDescription, kOsCrOS,
5654 FEATURE_VALUE_TYPE(ash::features::kFilesConflictDialog)},
Ben Reich2caaccf2023-02-06 23:17:505655 {"files-drive-shortcuts", flag_descriptions::kFilesDriveShortcutsName,
5656 flag_descriptions::kFilesDriveShortcutsDescription, kOsCrOS,
5657 FEATURE_VALUE_TYPE(ash::features::kFilesDriveShortcuts)},
Marcello Salomaodd0e6de2022-09-14 00:28:475658 {"files-inline-sync-status", flag_descriptions::kFilesInlineSyncStatusName,
5659 flag_descriptions::kFilesInlineSyncStatusDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:425660 FEATURE_VALUE_TYPE(ash::features::kFilesInlineSyncStatus)},
Marcello Salomaoc517be52023-05-18 06:43:365661 {"files-inline-sync-status-progress-events",
5662 flag_descriptions::kFilesInlineSyncStatusProgressEventsName,
5663 flag_descriptions::kFilesInlineSyncStatusProgressEventsDescription,
5664 kOsCrOS,
5665 FEATURE_VALUE_TYPE(ash::features::kFilesInlineSyncStatusProgressEvents)},
Omid Tourzanbf2a0dcf2020-09-10 08:53:555666 {"files-single-partition-format",
5667 flag_descriptions::kFilesSinglePartitionFormatName,
5668 flag_descriptions::kFilesSinglePartitionFormatDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:425669 FEATURE_VALUE_TYPE(ash::features::kFilesSinglePartitionFormat)},
Bo Majewski24757cb2022-09-20 06:42:185670 {"files-search-v2", flag_descriptions::kFilesSearchV2Name,
5671 flag_descriptions::kFilesSearchV2Description, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:425672 FEATURE_VALUE_TYPE(ash::features::kFilesSearchV2)},
Joel Hockey487b679b2023-03-15 04:10:295673 {"files-trash-drive", flag_descriptions::kFilesTrashDriveName,
5674 flag_descriptions::kFilesTrashDriveDescription, kOsCrOS,
5675 FEATURE_VALUE_TYPE(ash::features::kFilesTrashDrive)},
Cassy Chun-Crogan26d8e142023-01-25 02:00:535676 {"force-resync-drive", flag_descriptions::kForceReSyncDriveName,
5677 flag_descriptions::kForceReSyncDriveDescription, kOsCrOS,
5678 FEATURE_VALUE_TYPE(ash::features::kForceReSyncDrive)},
Ricky Liang3bd2754b52020-10-07 02:50:325679 {"force-spectre-v2-mitigation",
5680 flag_descriptions::kForceSpectreVariant2MitigationName,
5681 flag_descriptions::kForceSpectreVariant2MitigationDescription, kOsCrOS,
5682 FEATURE_VALUE_TYPE(
5683 sandbox::policy::features::kForceSpectreVariant2Mitigation)},
Nigel Tao03c69032022-04-23 03:10:475684 {"fuse-box-debug", flag_descriptions::kFuseBoxDebugName,
5685 flag_descriptions::kFuseBoxDebugDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:425686 FEATURE_VALUE_TYPE(ash::features::kFuseBoxDebug)},
James Cook49358cc2022-08-30 20:30:265687 {kWelcomeScreenInternalName, flag_descriptions::kWelcomeScreenName,
5688 flag_descriptions::kWelcomeScreenDescription, kOsCrOS,
5689 FEATURE_VALUE_TYPE(ash::features::kGlanceables)},
Ricky Liang3bd2754b52020-10-07 02:50:325690 {"spectre-v2-mitigation", flag_descriptions::kSpectreVariant2MitigationName,
5691 flag_descriptions::kSpectreVariant2MitigationDescription, kOsCrOS,
5692 FEATURE_VALUE_TYPE(sandbox::policy::features::kSpectreVariant2Mitigation)},
Jérémie Boulic8c1c3fc2022-06-20 05:35:555693 {"upload-office-to-cloud", flag_descriptions::kUploadOfficeToCloudName,
5694 flag_descriptions::kUploadOfficeToCloudName, kOsCrOS,
Alexander Bolodurinb8e43472023-04-20 00:33:535695 FEATURE_VALUE_TYPE(chromeos::features::kUploadOfficeToCloud)},
Kyle Horimoto2d3b6b4b2022-05-13 02:12:165696 {"eap-gtc-wifi-authentication",
5697 flag_descriptions::kEapGtcWifiAuthenticationName,
5698 flag_descriptions::kEapGtcWifiAuthenticationDescription, kOsCrOS,
5699 FEATURE_VALUE_TYPE(ash::features::kEapGtcWifiAuthentication)},
whalechangf06b6ea72022-08-26 01:13:115700 {"audio-peripheral-volume-granularity",
5701 flag_descriptions::kAudioPeripheralVolumeGranularityName,
5702 flag_descriptions::kAudioPeripheralVolumeGranularityDescription, kOsCrOS,
5703 FEATURE_VALUE_TYPE(ash::features::kAudioPeripheralVolumeGranularity)},
whalechang258191d2023-02-14 04:36:425704
paulzhchen26343e92021-02-09 05:43:055705 {"eche-swa", flag_descriptions::kEcheSWAName,
5706 flag_descriptions::kEcheSWADescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:425707 FEATURE_VALUE_TYPE(ash::features::kEcheSWA)},
Jon Manndf97fa52022-11-28 23:01:165708 {"eche-launcher", flag_descriptions::kEcheLauncherName,
5709 flag_descriptions::kEcheLauncherDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:425710 FEATURE_VALUE_TYPE(ash::features::kEcheLauncher)},
Joe Antonettib56b8202023-01-18 20:42:085711 {"eche-launcher-app-icon-in-more-apps-button",
5712 flag_descriptions::kEcheLauncherIconsInMoreAppsButtonName,
5713 flag_descriptions::kEcheLauncherIconsInMoreAppsButtonDescription, kOsCrOS,
5714 FEATURE_VALUE_TYPE(ash::features::kEcheLauncherIconsInMoreAppsButton)},
Pu Shi93793432022-12-20 20:34:575715 {"eche-launcher-list-view", flag_descriptions::kEcheLauncherListViewName,
5716 flag_descriptions::kEcheLauncherListViewDescription, kOsCrOS,
5717 FEATURE_VALUE_TYPE(ash::features::kEcheLauncherListView)},
Crisrael Lucero264086d2023-03-07 02:30:065718 {"eche-network-connection-state",
5719 flag_descriptions::kEcheNetworkConnectionStateName,
5720 flag_descriptions::kEcheNetworkConnectionStateDescription, kOsCrOS,
5721 FEATURE_VALUE_TYPE(ash::features::kEcheNetworkConnectionState)},
Denalex Orakwue44a47a42022-12-07 08:56:085722 {"eche-swa-check-android-network-info",
5723 flag_descriptions::kEcheSWACheckAndroidNetworkInfoName,
5724 flag_descriptions::kEcheSWACheckAndroidNetworkInfoDescription, kOsCrOS,
5725 FEATURE_VALUE_TYPE(ash::features::kEcheSWACheckAndroidNetworkInfo)},
Denalex Orakwuef2ea70a2023-02-22 20:48:265726 {"eche-swa-process-android-accessibility-tree",
5727 flag_descriptions::kEcheSWAProcessAndroidAccessibilityTreeName,
5728 flag_descriptions::kEcheSWAProcessAndroidAccessibilityTreeDescription,
5729 kOsCrOS,
5730 FEATURE_VALUE_TYPE(
5731 ash::features::kEcheSWAProcessAndroidAccessibilityTree)},
paulzhchenfac28192021-10-08 08:14:185732 {"eche-swa-debug-mode", flag_descriptions::kEcheSWADebugModeName,
5733 flag_descriptions::kEcheSWADebugModeDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:425734 FEATURE_VALUE_TYPE(ash::features::kEcheSWADebugMode)},
mavishsu1ebe64a2022-09-29 12:52:245735 {"eche-swa-disable-stun-server",
5736 flag_descriptions::kEcheSWADisableStunServerName,
5737 flag_descriptions::kEcheSWADisableStunServerDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:425738 FEATURE_VALUE_TYPE(ash::features::kEcheSWADisableStunServer)},
paulzhchen7c5907f52022-09-03 17:46:485739 {"eche-swa-measure-latency", flag_descriptions::kEcheSWAMeasureLatencyName,
5740 flag_descriptions::kEcheSWAMeasureLatencyDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:425741 FEATURE_VALUE_TYPE(ash::features::kEcheSWAMeasureLatency)},
mavishsuc3dcafaac2022-09-28 06:27:425742 {"eche-swa-send-start-signaling",
5743 flag_descriptions::kEcheSWASendStartSignalingName,
5744 flag_descriptions::kEcheSWASendStartSignalingDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:425745 FEATURE_VALUE_TYPE(ash::features::kEcheSWASendStartSignaling)},
Jennifer Serranof65bc542023-01-11 01:00:565746 {"phone-hub-nudge", flag_descriptions::kPhoneHubNudgeName,
5747 flag_descriptions::kPhoneHubNudgeDescription, kOsCrOS,
5748 FEATURE_VALUE_TYPE(ash::features::kPhoneHubNudge)},
Ashley Prasad9363e832023-04-04 15:59:565749 {"print-management-jelly", flag_descriptions::kPrintManagementJellyName,
5750 flag_descriptions::kPrintManagementJellyDescription, kOsCrOS,
5751 FEATURE_VALUE_TYPE(ash::features::kPrintManagementJelly)},
Ashley Prasad7909321b2023-05-18 16:27:445752 {"print-management-setup-assistance",
5753 flag_descriptions::kPrintManagementSetupAssistanceName,
5754 flag_descriptions::kPrintManagementSetupAssistanceDescription, kOsCrOS,
5755 FEATURE_VALUE_TYPE(ash::features::kPrintManagementSetupAssistance)},
Gavin Williams2e687bf2023-06-01 17:25:035756 {"print-preview-discovered-printers",
5757 flag_descriptions::kPrintPreviewDiscoveredPrintersName,
5758 flag_descriptions::kPrintPreviewDiscoveredPrintersDescription, kOsCrOS,
5759 FEATURE_VALUE_TYPE(ash::features::kPrintPreviewDiscoveredPrinters)},
Gavin Williamsf92f14962023-05-01 23:19:415760 {"printer-settings-printer-status",
5761 flag_descriptions::kPrinterSettingsPrinterStatusName,
5762 flag_descriptions::kPrinterSettingsPrinterStatusDescription, kOsCrOS,
5763 FEATURE_VALUE_TYPE(ash::features::kPrinterSettingsPrinterStatus)},
Gavin Williams4d4ab1312023-04-18 18:30:385764 {"printer-settings-revamp", flag_descriptions::kPrinterSettingsRevampName,
5765 flag_descriptions::kPrinterSettingsRevampDescription, kOsCrOS,
5766 FEATURE_VALUE_TYPE(ash::features::kPrinterSettingsRevamp)},
Yuta Hijikata235fc62b2020-12-08 03:48:325767#endif // BUILDFLAG(IS_CHROMEOS_ASH)
malaykeshavb43ccf22017-01-20 21:24:575768
Xiaohan Wang064b68cd2022-01-19 19:12:285769#if BUILDFLAG(IS_MAC)
Avi Drissman0095f552021-11-05 19:58:535770 {"enable-universal-links", flag_descriptions::kEnableUniversalLinksName,
5771 flag_descriptions::kEnableUniversalLinksDescription, kOsMac,
5772 FEATURE_VALUE_TYPE(features::kEnableUniveralLinks)},
Xiaohan Wang064b68cd2022-01-19 19:12:285773#endif // BUILDFLAG(IS_MAC)
toyoshim0f1c3f32017-02-10 10:03:325774
Xiaohan Wang064b68cd2022-01-19 19:12:285775#if BUILDFLAG(IS_ANDROID)
Tomasz Wiszkowski1b7e75db82023-04-11 06:27:365776 {"omnibox-adaptive-suggestions-visible-group-eligibility-update",
5777 flag_descriptions::
5778 kOmniboxAdaptiveSuggestionsVisibleGroupEligibilityUpdateName,
5779 flag_descriptions::
5780 kOmniboxAdaptiveSuggestionsVisibleGroupEligibilityUpdateDescription,
5781 kOsAndroid,
5782 FEATURE_VALUE_TYPE(
5783 chrome::android::
5784 kOmniboxAdaptiveSuggestionsVisibleGroupEligibilityUpdate)},
Patrick Nolanddd4774952023-03-09 23:59:585785
5786 {"omnibox-adapt-narrow-tablet-windows",
5787 flag_descriptions::kOmniboxAdaptNarrowTabletWindowsName,
5788 flag_descriptions::kOmniboxAdaptNarrowTabletWindowsDescription, kOsAndroid,
5789 FEATURE_VALUE_TYPE(chrome::android::kOmniboxAdaptNarrowTabletWindows)},
5790
Patrick Noland49cbd3d92023-04-05 21:54:415791 {"omnibox-cache-suggestion-resources",
5792 flag_descriptions::kOmniboxCacheSuggestionResourcesName,
5793 flag_descriptions::kOmniboxCacheSuggestionResourcesDescription, kOsAndroid,
5794 FEATURE_VALUE_TYPE(chrome::android::kOmniboxCacheSuggestionResources)},
5795
Patrick Noland299fa6582023-03-03 16:41:595796 {"omnibox-consumes-ime-insets",
5797 flag_descriptions::kOmniboxConsumesImeInsetsName,
5798 flag_descriptions::kOmniboxConsumesImeInsetsDescription, kOsAndroid,
5799 FEATURE_VALUE_TYPE(chrome::android::kOmniboxConsumesImeInsets)},
5800
Tomasz Wiszkowskia382fc62023-04-12 00:28:365801 {"omnibox-ignore-intermediate-results",
5802 flag_descriptions::kOmniboxIgnoreIntermediateResultsName,
5803 flag_descriptions::kOmniboxIgnoreIntermediateResultsDescription,
5804 kOsAndroid, FEATURE_VALUE_TYPE(omnibox::kIgnoreIntermediateResults)},
5805
Rong Tan01c989902022-10-28 04:06:255806 {"omnibox-match-toolbar-and-status-bar-color",
5807 flag_descriptions::kOmniboxMatchToolbarAndStatusBarColorName,
5808 flag_descriptions::kOmniboxMatchToolbarAndStatusBarColorDescription,
5809 kOsAndroid,
5810 FEATURE_VALUE_TYPE(omnibox::kOmniboxMatchToolbarAndStatusBarColor)},
5811
Gang Wu67847242022-06-30 06:18:515812 {"omnibox-modernize-visual-update",
5813 flag_descriptions::kOmniboxModernizeVisualUpdateName,
5814 flag_descriptions::kOmniboxModernizeVisualUpdateDescription, kOsAndroid,
Tomasz Wiszkowskiad4d7af2023-04-27 21:20:525815 FEATURE_WITH_PARAMS_VALUE_TYPE(omnibox::kOmniboxModernizeVisualUpdate,
5816 kOmniboxModernizeVisualUpdateVariations,
5817 "OmniboxModernizeVisualUpdate")},
Ender0be2add2022-07-13 18:23:485818
Rong Tanef44d632022-11-18 19:02:315819 {"omnibox-most-visited-tiles-add-recycled-view-poll",
5820 flag_descriptions::kOmniboxMostVisitedTilesAddRecycledViewPoolName,
5821 flag_descriptions::kOmniboxMostVisitedTilesAddRecycledViewPoolDescription,
5822 kOsAndroid,
5823 FEATURE_VALUE_TYPE(omnibox::kOmniboxMostVisitedTilesAddRecycledViewPool)},
Patrick Nolanda12a190e2023-04-13 20:15:105824
Patrick Nolandd50e38b2023-06-14 22:32:115825 {"omnibox-suppress-clipboard-suggestion-after-first-used",
5826 flag_descriptions::kOmniboxSuppressClipboardSuggestionAfterFirstUsedName,
5827 flag_descriptions::
5828 kOmniboxSuppressClipboardSuggestionAfterFirstUsedDescription,
5829 kOsAndroid,
5830 FEATURE_VALUE_TYPE(omnibox::kSuppressClipboardSuggestionAfterFirstUsed)},
5831
Patrick Nolanda12a190e2023-04-13 20:15:105832 {"omnibox-warm-recycled-view-pool",
5833 flag_descriptions::kOmniboxWarmRecycledViewPoolName,
5834 flag_descriptions::kOmniboxWarmRecycledViewPoolDescription, kOsAndroid,
5835 FEATURE_VALUE_TYPE(chrome::android::kOmniboxWarmRecycledViewPool)},
Gang Wu83ac7ee2023-04-19 23:22:475836
5837 {"android-app-inintegration", flag_descriptions::kAndroidAppIntegrationName,
5838 flag_descriptions::kAndroidAppIntegrationDescription, kOsAndroid,
5839 FEATURE_VALUE_TYPE(chrome::android::kAndroidAppIntegration)},
Thao Nguyenf8482bc2023-06-13 22:19:575840
5841 {"android-app-inintegration-safesearch",
5842 flag_descriptions::kAndroidAppIntegrationSafeSearchName,
5843 flag_descriptions::kAndroidAppIntegrationSafeSearchDescription, kOsAndroid,
5844 FEATURE_VALUE_TYPE(chrome::android::kAndroidAppIntegrationSafeSearch)},
Xiaohan Wang064b68cd2022-01-19 19:12:285845#endif // BUILDFLAG(IS_ANDROID)
Tomasz Wiszkowskic87dff12019-01-15 02:57:515846
Moe Ahmadi01028f22022-08-06 17:57:355847 {"omnibox-local-history-zero-suggest-beyond-ntp",
5848 flag_descriptions::kOmniboxLocalHistoryZeroSuggestBeyondNTPName,
5849 flag_descriptions::kOmniboxLocalHistoryZeroSuggestBeyondNTPDescription,
5850 kOsAll, FEATURE_VALUE_TYPE(omnibox::kLocalHistoryZeroSuggestBeyondNTP)},
5851
Moe Ahmadi3c2569e2022-10-06 23:41:395852 {"omnibox-on-clobber-focus-type-on-content",
5853 flag_descriptions::kOmniboxOnClobberFocusTypeOnContentName,
5854 flag_descriptions::kOmniboxOnClobberFocusTypeOnContentDescription, kOsAll,
5855 FEATURE_VALUE_TYPE(omnibox::kOmniboxOnClobberFocusTypeOnContent)},
Rong Tan390e219c2022-09-30 23:56:285856
Tommy Li55784022020-04-28 20:58:185857 {"omnibox-on-focus-suggestions-contextual-web",
Moe Ahmadi50223462022-06-30 22:37:275858 flag_descriptions::kOmniboxFocusTriggersContextualWebZeroSuggestName,
Tomasz Wiszkowski8d447752021-07-20 02:58:265859 flag_descriptions::
Moe Ahmadi50223462022-06-30 22:37:275860 kOmniboxFocusTriggersContextualWebZeroSuggestDescription,
Tomasz Wiszkowski8d447752021-07-20 02:58:265861 kOsAll,
Moe Ahmadi50223462022-06-30 22:37:275862 FEATURE_VALUE_TYPE(omnibox::kFocusTriggersContextualWebZeroSuggest)},
5863
5864 {"omnibox-on-focus-suggestions-srp",
5865 flag_descriptions::kOmniboxFocusTriggersSRPZeroSuggestName,
5866 flag_descriptions::kOmniboxFocusTriggersSRPZeroSuggestDescription, kOsAll,
5867 FEATURE_VALUE_TYPE(omnibox::kFocusTriggersSRPZeroSuggest)},
Tomasz Wiszkowski8d447752021-07-20 02:58:265868
Orin Jaworski291b0a32022-05-17 17:29:055869 {"omnibox-fuzzy-url-suggestions",
5870 flag_descriptions::kOmniboxFuzzyUrlSuggestionsName,
Orin Jaworskiee8947fd2022-07-27 21:39:305871 flag_descriptions::kOmniboxFuzzyUrlSuggestionsDescription, kOsAll,
Orin Jaworski291b0a32022-05-17 17:29:055872 FEATURE_VALUE_TYPE(omnibox::kOmniboxFuzzyUrlSuggestions)},
5873
Moe Ahmadi7c889d82022-10-27 20:35:245874 {"omnibox-report-assisted-query-stats",
5875 flag_descriptions::kOmniboxReportAssistedQueryStatsName,
5876 flag_descriptions::kOmniboxReportAssistedQueryStatsDescription, kOsAll,
5877 FEATURE_VALUE_TYPE(omnibox::kReportAssistedQueryStats)},
5878
5879 {"omnibox-report-searchbox-stats",
5880 flag_descriptions::kOmniboxReportSearchboxStatsName,
5881 flag_descriptions::kOmniboxReportSearchboxStatsDescription, kOsAll,
5882 FEATURE_VALUE_TYPE(omnibox::kReportSearchboxStats)},
5883
Moe Ahmadi4d6f27b2021-11-19 01:40:365884 {"omnibox-zero-suggest-prefetching",
5885 flag_descriptions::kOmniboxZeroSuggestPrefetchingName,
5886 flag_descriptions::kOmniboxZeroSuggestPrefetchingDescription, kOsAll,
Moe Ahmadic391a3d42022-07-07 01:43:465887 FEATURE_VALUE_TYPE(omnibox::kZeroSuggestPrefetching)},
Moe Ahmadi4d6f27b2021-11-19 01:40:365888
Khalid Peere26e6962022-07-26 22:39:555889 {"omnibox-zero-suggest-prefetching-on-srp",
5890 flag_descriptions::kOmniboxZeroSuggestPrefetchingOnSRPName,
5891 flag_descriptions::kOmniboxZeroSuggestPrefetchingOnSRPDescription, kOsAll,
5892 FEATURE_VALUE_TYPE(omnibox::kZeroSuggestPrefetchingOnSRP)},
5893
Khalid Peer28546042022-08-12 23:18:085894 {"omnibox-zero-suggest-prefetching-on-web",
5895 flag_descriptions::kOmniboxZeroSuggestPrefetchingOnWebName,
5896 flag_descriptions::kOmniboxZeroSuggestPrefetchingOnWebDescription, kOsAll,
5897 FEATURE_VALUE_TYPE(omnibox::kZeroSuggestPrefetchingOnWeb)},
5898
Khalid Peer4bca7ea2022-08-26 22:51:295899 {"omnibox-zero-suggest-in-memory-caching",
5900 flag_descriptions::kOmniboxZeroSuggestInMemoryCachingName,
5901 flag_descriptions::kOmniboxZeroSuggestInMemoryCachingDescription, kOsAll,
5902 FEATURE_VALUE_TYPE(omnibox::kZeroSuggestInMemoryCaching)},
5903
manukh8fcd3932023-02-28 06:10:525904 {"omnibox-discard-temporary-input-on-tab-switch",
5905 flag_descriptions::kOmniboxDiscardTemporaryInputOnTabSwitchName,
5906 flag_descriptions::kOmniboxDiscardTemporaryInputOnTabSwitchDescription,
5907 kOsAll, FEATURE_VALUE_TYPE(omnibox::kDiscardTemporaryInputOnTabSwitch)},
5908
manukh539d958b2023-03-01 16:50:255909 {"omnibox-redo-current-match",
5910 flag_descriptions::kOmniboxRedoCurrentMatchName,
5911 flag_descriptions::kOmniboxRedoCurrentMatchDescription, kOsAll,
5912 FEATURE_VALUE_TYPE(omnibox::kRedoCurrentMatch)},
5913
5914 {"omnibox-revert-model-before-closing-popup",
5915 flag_descriptions::kOmniboxRevertModelBeforeClosingPopupName,
5916 flag_descriptions::kOmniboxRevertModelBeforeClosingPopupDescription,
5917 kOsAll, FEATURE_VALUE_TYPE(omnibox::kRevertModelBeforeClosingPopup)},
5918
Ryan Sturmb9aaea22023-03-07 21:35:015919 {"omnibox-use-existing-autocomplete-client",
5920 flag_descriptions::kOmniboxUseExistingAutocompleteClientName,
5921 flag_descriptions::kOmniboxUseExistingAutocompleteClientDescription,
5922 kOsAll, FEATURE_VALUE_TYPE(omnibox::kUseExistingAutocompleteClient)},
5923
Xiaohan Wang064b68cd2022-01-19 19:12:285924#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || \
5925 BUILDFLAG(IS_WIN) || BUILDFLAG(IS_FUCHSIA)
manukh37b13bd32022-10-04 16:01:515926 {"omnibox-domain-suggestions",
5927 flag_descriptions::kOmniboxDomainSuggestionsName,
manukh918d82552022-10-11 01:12:225928 flag_descriptions::kOmniboxDomainSuggestionsDescription, kOsDesktop,
manukh37b13bd32022-10-04 16:01:515929 FEATURE_VALUE_TYPE(omnibox::kDomainSuggestions)},
Travis Skarebcdb5ed32018-08-17 01:49:405930 {"omnibox-drive-suggestions",
5931 flag_descriptions::kOmniboxDriveSuggestionsName,
manukh918d82552022-10-11 01:12:225932 flag_descriptions::kOmniboxDriveSuggestionsDescription, kOsDesktop,
manukhff579742023-05-01 21:01:105933 FEATURE_VALUE_TYPE(omnibox::kDocumentProvider)},
Martin Šrámek60a679d22023-06-30 11:30:535934 {"omnibox-drive-suggestions-no-setting",
5935 flag_descriptions::kOmniboxDriveSuggestionsNoSettingName,
5936 flag_descriptions::kOmniboxDriveSuggestionsNoSettingDescription,
5937 kOsDesktop, FEATURE_VALUE_TYPE(omnibox::kDriveSuggestionsNoSetting)},
manukh453ab7e2023-02-02 21:09:575938 {"omnibox-shortcut-boost", flag_descriptions::kOmniboxShortcutBoostName,
5939 flag_descriptions::kOmniboxShortcutBoostDescription, kOsDesktop,
manukhee8f7a6d2023-06-17 01:07:525940 FEATURE_WITH_PARAMS_VALUE_TYPE(
5941 omnibox_feature_configs::ShortcutBoosting::kShortcutBoost,
5942 kOmniboxShortcutBoostVariations,
5943 "OmniboxBundledExperimentV1")},
manukh6b9c59c2020-08-28 19:29:255944 {"omnibox-rich-autocompletion-promising",
5945 flag_descriptions::kOmniboxRichAutocompletionPromisingName,
5946 flag_descriptions::kOmniboxRichAutocompletionPromisingDescription,
5947 kOsDesktop,
5948 FEATURE_WITH_PARAMS_VALUE_TYPE(
5949 omnibox::kRichAutocompletion,
5950 kOmniboxRichAutocompletionPromisingVariations,
5951 "OmniboxBundledExperimentV1")},
Jun Zoud1e35932b2022-12-01 20:01:375952 {"omnibox-ml-log-url-scoring-signals",
5953 flag_descriptions::kOmniboxMlLogUrlScoringSignalsName,
5954 flag_descriptions::kOmniboxMlLogUrlScoringSignalsDescription, kOsDesktop,
5955 FEATURE_VALUE_TYPE(omnibox::kLogUrlScoringSignals)},
Moe Ahmadi6ca4dc52023-04-14 22:47:345956 {"omnibox-ml-url-scoring", flag_descriptions::kOmniboxMlUrlScoringName,
5957 flag_descriptions::kOmniboxMlUrlScoringDescription, kOsDesktop,
5958 FEATURE_WITH_PARAMS_VALUE_TYPE(omnibox::kMlUrlScoring,
5959 kOmniboxMlUrlScoringVariations,
5960 "MlUrlScoring")},
Jun Zoub695a0a2023-01-20 18:55:025961 {"omnibox-ml-url-scoring-model",
5962 flag_descriptions::kOmniboxMlUrlScoringModelName,
5963 flag_descriptions::kOmniboxMlUrlScoringModelDescription, kOsDesktop,
5964 FEATURE_VALUE_TYPE(omnibox::kUrlScoringModel)},
Moe Ahmadi6a814b92023-04-11 23:28:465965
5966 {"realbox-secondary-zero-suggest",
5967 flag_descriptions::kRealboxSecondaryZeroSuggestName,
5968 flag_descriptions::kRealboxSecondaryZeroSuggestDescription, kOsDesktop,
Moe Ahmadia7fe61e2023-04-17 23:49:535969 FEATURE_WITH_PARAMS_VALUE_TYPE(omnibox::kRealboxSecondaryZeroSuggest,
5970 kRealboxSecondaryZeroSuggestVariations,
5971 "RealboxSecondaryZeroSuggest")},
Xiaohan Wang064b68cd2022-01-19 19:12:285972#endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) ||
5973 // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_FUCHSIA)
Moe Ahmadi6a814b92023-04-11 23:28:465974
Tomasz Wiszkowski539249962023-03-16 01:01:425975#if BUILDFLAG(IS_ANDROID)
Moe Ahmadi82cd8302023-04-13 04:04:415976 {"omnibox-actions-in-suggest",
5977 flag_descriptions::kOmniboxActionsInSuggestName,
5978 flag_descriptions::kOmniboxActionsInSuggestDescription, kOsAndroid,
5979 FEATURE_WITH_PARAMS_VALUE_TYPE(omnibox::kActionsInSuggest,
5980 kOmniboxActionsInSuggestVariants,
5981 "OmniboxBundledExperimentV1")},
5982
Tomasz Wiszkowski539249962023-03-16 01:01:425983 {"omnibox-inspire-me", flag_descriptions::kOmniboxInspireMeName,
5984 flag_descriptions::kOmniboxInspireMeDescription, kOsAndroid,
5985 FEATURE_WITH_PARAMS_VALUE_TYPE(omnibox::kInspireMe,
5986 kOmniboxInspireMeVariants,
5987 "OmniboxBundledExperimentV1")},
5988#endif // BUILDFLAG(IS_ANDROID)
Ce Chen7762ef32022-06-17 14:34:175989#if BUILDFLAG(IS_WIN)
5990 {"omnibox-on-device-head-suggestions",
5991 flag_descriptions::kOmniboxOnDeviceHeadSuggestionsName,
5992 flag_descriptions::kOmniboxOnDeviceHeadSuggestionsDescription, kOsWin,
5993 FEATURE_VALUE_TYPE(omnibox::kOnDeviceHeadProviderNonIncognito)},
5994 {"omnibox-on-device-head-suggestions-incognito",
5995 flag_descriptions::kOmniboxOnDeviceHeadSuggestionsIncognitoName,
5996 flag_descriptions::kOmniboxOnDeviceHeadSuggestionsIncognitoDescription,
5997 kOsWin, FEATURE_VALUE_TYPE(omnibox::kOnDeviceHeadProviderIncognito)},
5998#endif // BUILDFLAG(IS_WIN)
krb98783dd2017-03-01 15:45:135999
Ce Chenbdfaed22022-10-20 16:08:356000 {"omnibox-on-device-tail-suggestions",
6001 flag_descriptions::kOmniboxOnDeviceTailSuggestionsName,
6002 flag_descriptions::kOmniboxOnDeviceTailSuggestionsDescription, kOsAll,
6003 FEATURE_VALUE_TYPE(omnibox::kOnDeviceTailModel)},
6004
Yuta Hijikata235fc62b2020-12-08 03:48:326005#if BUILDFLAG(IS_CHROMEOS_ASH)
Mattias Nissler6bb633f2019-02-13 23:41:466006 {"scheduler-configuration", flag_descriptions::kSchedulerConfigurationName,
6007 flag_descriptions::kSchedulerConfigurationDescription, kOsCrOS,
6008 MULTI_VALUE_TYPE(kSchedulerConfigurationChoices)},
Yuta Hijikata235fc62b2020-12-08 03:48:326009#endif // BUILDFLAG(IS_CHROMEOS_ASH)
sammiequond5837762017-03-16 21:14:596010
Xiaohan Wang064b68cd2022-01-19 19:12:286011#if BUILDFLAG(IS_ANDROID)
Lei Tianbd5a3bf2018-02-28 19:01:166012 {"enable-command-line-on-non-rooted-devices",
6013 flag_descriptions::kEnableCommandLineOnNonRootedName,
6014 flag_descriptions::kEnableCommandLineOnNoRootedDescription, kOsAndroid,
6015 FEATURE_VALUE_TYPE(chrome::android::kCommandLineOnNonRooted)},
Xiaohan Wang064b68cd2022-01-19 19:12:286016#endif // BUILDFLAG(IS_ANDROID)
Lei Tianbd5a3bf2018-02-28 19:01:166017
Xiaohan Wang064b68cd2022-01-19 19:12:286018#if BUILDFLAG(IS_ANDROID)
Gang Wua7bfb5f42021-04-09 18:54:216019 {"app-menu-mobile-site-option",
6020 flag_descriptions::kAppMenuMobileSiteOptionName,
6021 flag_descriptions::kAppMenuMobileSiteOptionDescription, kOsAndroid,
6022 FEATURE_VALUE_TYPE(chrome::android::kAppMenuMobileSiteOption)},
Xiaohan Wang064b68cd2022-01-19 19:12:286023#endif // BUILDFLAG(IS_ANDROID)
Sinan Sahin3bafe272019-03-11 17:03:066024
Christopher Cameronceb8727d2017-09-07 23:53:166025 {"force-color-profile", flag_descriptions::kForceColorProfileName,
6026 flag_descriptions::kForceColorProfileDescription, kOsAll,
6027 MULTI_VALUE_TYPE(kForceColorProfileChoices)},
6028
Alison Maherc07a3fb2019-10-07 21:25:036029 {"forced-colors", flag_descriptions::kForcedColorsName,
6030 flag_descriptions::kForcedColorsDescription, kOsAll,
6031 FEATURE_VALUE_TYPE(features::kForcedColors)},
6032
Xiaohan Wang064b68cd2022-01-19 19:12:286033#if BUILDFLAG(IS_ANDROID)
Chris Blumeb504da1f22020-04-27 00:21:446034 {"dynamic-color-gamut", flag_descriptions::kDynamicColorGamutName,
6035 flag_descriptions::kDynamicColorGamutDescription, kOsAndroid,
6036 FEATURE_VALUE_TYPE(features::kDynamicColorGamut)},
6037#endif
6038
Alexei Filippov522a5222019-03-29 03:33:186039 {"memlog", flag_descriptions::kMemlogName,
6040 flag_descriptions::kMemlogDescription, kOsAll,
6041 MULTI_VALUE_TYPE(kMemlogModeChoices)},
erikchen14046432017-08-17 19:55:596042
Alexei Filippov522a5222019-03-29 03:33:186043 {"memlog-sampling-rate", flag_descriptions::kMemlogSamplingRateName,
6044 flag_descriptions::kMemlogSamplingRateDescription, kOsAll,
6045 MULTI_VALUE_TYPE(kMemlogSamplingRateChoices)},
erikchen8bc20d82018-02-14 03:21:516046
Alexei Filippov522a5222019-03-29 03:33:186047 {"memlog-stack-mode", flag_descriptions::kMemlogStackModeName,
6048 flag_descriptions::kMemlogStackModeDescription, kOsAll,
6049 MULTI_VALUE_TYPE(kMemlogStackModeChoices)},
Erik Chen3303fd0232018-01-11 20:29:056050
manukfdd97402020-07-22 18:19:176051 {"omnibox-max-zero-suggest-matches",
6052 flag_descriptions::kOmniboxMaxZeroSuggestMatchesName,
6053 flag_descriptions::kOmniboxMaxZeroSuggestMatchesDescription,
6054 kOsDesktop | kOsAndroid,
6055 FEATURE_WITH_PARAMS_VALUE_TYPE(omnibox::kMaxZeroSuggestMatches,
6056 kMaxZeroSuggestMatchesVariations,
6057 "OmniboxBundledExperimentV1")},
6058
tommyclia5a538f92017-05-15 19:09:386059 {"omnibox-ui-max-autocomplete-matches",
6060 flag_descriptions::kOmniboxUIMaxAutocompleteMatchesName,
Patrick Noland2b4968b2019-06-27 14:50:266061 flag_descriptions::kOmniboxUIMaxAutocompleteMatchesDescription,
6062 kOsDesktop | kOsAndroid,
tommyclia5a538f92017-05-15 19:09:386063 FEATURE_WITH_PARAMS_VALUE_TYPE(
6064 omnibox::kUIExperimentMaxAutocompleteMatches,
6065 kOmniboxUIMaxAutocompleteMatchesVariations,
Patrick Noland9e1fc5052019-07-31 00:24:116066 "OmniboxBundledExperimentV1")},
tommyclia5a538f92017-05-15 19:09:386067
Kevin Baileycd6889922019-05-30 17:22:556068 {"omnibox-max-url-matches", flag_descriptions::kOmniboxMaxURLMatchesName,
6069 flag_descriptions::kOmniboxMaxURLMatchesDescription, kOsAll,
6070 FEATURE_WITH_PARAMS_VALUE_TYPE(omnibox::kOmniboxMaxURLMatches,
6071 kOmniboxMaxURLMatchesVariations,
6072 "OmniboxMaxURLMatchesVariations")},
6073
manuk4e2979d2020-07-08 23:29:286074 {"omnibox-dynamic-max-autocomplete",
6075 flag_descriptions::kOmniboxDynamicMaxAutocompleteName,
6076 flag_descriptions::kOmniboxDynamicMaxAutocompleteDescription, kOsAll,
6077 FEATURE_WITH_PARAMS_VALUE_TYPE(omnibox::kDynamicMaxAutocomplete,
manukhd1870412020-09-15 03:42:146078 kOmniboxDynamicMaxAutocompleteVariations,
6079 "OmniboxBundledExperimentV1")},
Ender49a20282022-04-22 02:16:336080
Yohanes Shimelis53d0f6b2023-01-12 19:09:106081 {"omnibox-square-suggest-icons",
6082 flag_descriptions::kOmniboxSimplifiedUiSquareSuggestIconName,
6083 flag_descriptions::kOmniboxSimplifiedUiSquareSuggestIconDescription,
manukh33cac6c2023-03-01 18:17:226084 kOsAll,
6085 FEATURE_WITH_PARAMS_VALUE_TYPE(omnibox::kSquareSuggestIcons,
6086 kOmniboxSquareSuggestionIconVariations,
6087 "OmniboxBundledExperimentV1")},
Yohanes Shimelis53d0f6b2023-01-12 19:09:106088
Yohanes Shimelisfe3b128d2022-10-14 00:56:046089 {"omnibox-uniform-suggestion-height",
6090 flag_descriptions::kOmniboxSimplifiedUiUniformRowHeightName,
6091 flag_descriptions::kOmniboxSimplifiedUiUniformRowHeightDescription, kOsAll,
6092 FEATURE_WITH_PARAMS_VALUE_TYPE(omnibox::kUniformRowHeight,
6093 kOmniboxSuggestionHeightVariations,
6094 "Uniform Omnibox Suggest Heights")},
manukh221345f2023-04-14 18:46:346095 {"omnibox-cr23-action-chips",
6096 flag_descriptions::kOmniboxCR23ActionChipsName,
6097 flag_descriptions::kOmniboxCR23ActionChipsDescription, kOsDesktop,
6098 FEATURE_VALUE_TYPE(omnibox::kCr2023ActionChips)},
Yohanes Shimelisfe3b128d2022-10-14 00:56:046099
Justin Donnelly8a5df4d2023-06-15 05:40:546100 {"omnibox-cr23-action-chips-icons",
6101 flag_descriptions::kOmniboxCR23ActionChipsIconsName,
6102 flag_descriptions::kOmniboxCR23ActionChipsIconsDescription, kOsDesktop,
6103 FEATURE_VALUE_TYPE(omnibox::kCr2023ActionChipsIcons)},
6104
Justin Donnelly87f3c562023-03-30 02:55:406105 {"omnibox-cr23-expanded-state-height",
6106 flag_descriptions::kOmniboxCR23ExpandedStateHeightName,
6107 flag_descriptions::kOmniboxCR23ExpandedStateHeightDescription, kOsDesktop,
6108 FEATURE_VALUE_TYPE(omnibox::kExpandedStateHeight)},
6109
6110 {"omnibox-cr23-expanded-state-shape",
6111 flag_descriptions::kOmniboxCR23ExpandedStateShapeName,
6112 flag_descriptions::kOmniboxCR23ExpandedStateShapeDescription, kOsDesktop,
6113 FEATURE_VALUE_TYPE(omnibox::kExpandedStateShape)},
6114
Khalid Peer49592462023-04-19 17:16:076115 {"omnibox-cr23-expanded-state-suggest-icons",
6116 flag_descriptions::kOmniboxCR23ExpandedStateSuggestIconsName,
6117 flag_descriptions::kOmniboxCR23ExpandedStateSuggestIconsDescription,
6118 kOsDesktop, FEATURE_VALUE_TYPE(omnibox::kExpandedStateSuggestIcons)},
6119
Shibalik Mohapatra3477e6d52023-04-03 17:24:376120 {"omnibox-cr23-steady-state-icons",
6121 flag_descriptions::kOmniboxCR23SteadyStateIconsName,
6122 flag_descriptions::kOmniboxCR23SteadyStateIconsDescription, kOsAll,
6123 FEATURE_VALUE_TYPE(omnibox::kOmniboxCR23SteadyStateIcons)},
6124
Khalid Peerfe882042023-04-11 20:34:246125 {"omnibox-cr23-expanded-state-colors",
6126 flag_descriptions::kOmniboxCR23ExpandedStateColorsName,
6127 flag_descriptions::kOmniboxCR23ExpandedStateColorsDescription, kOsDesktop,
6128 FEATURE_VALUE_TYPE(omnibox::kExpandedStateColors)},
6129
manukhb82b26f02023-05-02 18:59:196130 {"omnibox-cr23-expanded-state-layout",
6131 flag_descriptions::kOmniboxCR23ExpandedStateLayoutName,
6132 flag_descriptions::kOmniboxCR23ExpandedStateLayoutDescription, kOsDesktop,
6133 FEATURE_VALUE_TYPE(omnibox::kExpandedLayout)},
6134
Khalid Peer55a25642023-06-14 19:08:306135 {"omnibox-cr23-suggestion-hover-fill-shape",
6136 flag_descriptions::kOmniboxCR23SuggestionHoverFillShapeName,
6137 flag_descriptions::kOmniboxCR23SuggestionHoverFillShapeDescription,
6138 kOsDesktop, FEATURE_VALUE_TYPE(omnibox::kSuggestionHoverFillShape)},
6139
Khalid Peer93f49312023-03-06 22:28:136140 {"omnibox-gm3-steady-state-background-color",
6141 flag_descriptions::kOmniboxGM3SteadyStateBackgroundColorName,
6142 flag_descriptions::kOmniboxGM3SteadyStateBackgroundColorDescription,
Khalid Peer7a140ae2023-06-29 20:27:086143 kOsAll, FEATURE_VALUE_TYPE(omnibox::kOmniboxSteadyStateBackgroundColor)},
Khalid Peer93f49312023-03-06 22:28:136144
Khalid Peer3b6c61fb2023-02-17 01:43:286145 {"omnibox-gm3-steady-state-height",
6146 flag_descriptions::kOmniboxGM3SteadyStateHeightName,
6147 flag_descriptions::kOmniboxGM3SteadyStateHeightDescription, kOsAll,
6148 FEATURE_VALUE_TYPE(omnibox::kOmniboxSteadyStateHeight)},
6149
Khalid Peer4ef65ef52023-03-27 23:29:076150 {"omnibox-gm3-steady-state-text-color",
6151 flag_descriptions::kOmniboxGM3SteadyStateTextColorName,
6152 flag_descriptions::kOmniboxGM3SteadyStateTextColorDescription, kOsAll,
6153 FEATURE_VALUE_TYPE(omnibox::kOmniboxSteadyStateTextColor)},
6154
Khalid Peer4520af92023-03-02 21:50:516155 {"omnibox-gm3-steady-state-text-style",
6156 flag_descriptions::kOmniboxGM3SteadyStateTextStyleName,
6157 flag_descriptions::kOmniboxGM3SteadyStateTextStyleDescription, kOsAll,
Khalid Peerf9cc869262023-03-30 20:14:206158 FEATURE_WITH_PARAMS_VALUE_TYPE(omnibox::kOmniboxSteadyStateTextStyle,
6159 kOmniboxFontSizeVariations,
6160 "OmniboxCR2023m113")},
Khalid Peer4520af92023-03-02 21:50:516161
Ender19574f92023-03-16 01:14:266162 {"omnibox-grouping-framework-zps",
6163 flag_descriptions::kOmniboxGroupingFrameworkZPSName,
manukh01e47192022-12-23 00:50:256164 flag_descriptions::kOmniboxGroupingFrameworkDescription, kOsAll,
Ender19574f92023-03-16 01:14:266165 FEATURE_VALUE_TYPE(omnibox::kGroupingFrameworkForZPS)},
6166
6167 {"omnibox-grouping-framework-non-zps",
6168 flag_descriptions::kOmniboxGroupingFrameworkNonZPSName,
6169 flag_descriptions::kOmniboxGroupingFrameworkDescription, kOsAll,
6170 FEATURE_VALUE_TYPE(omnibox::kGroupingFrameworkForNonZPS)},
manukh01e47192022-12-23 00:50:256171
rajendrant277b1ba2022-02-18 01:59:366172 {"optimization-guide-debug-logs",
6173 flag_descriptions::kOptimizationGuideDebugLogsName,
6174 flag_descriptions::kOptimizationGuideDebugLogsDescription, kOsAll,
6175 SINGLE_VALUE_TYPE(optimization_guide::switches::kDebugLoggingEnabled)},
manukhd1870412020-09-15 03:42:146176
rajendrantb6ef55fd2022-10-20 20:25:246177 {"optimization-guide-install-wide-model-store",
6178 flag_descriptions::kOptimizationGuideInstallWideModelStoreName,
6179 flag_descriptions::kOptimizationGuideInstallWideModelStoreDescription,
6180 kOsAll,
6181 FEATURE_VALUE_TYPE(optimization_guide::features::
6182 kOptimizationGuideInstallWideModelStore)},
6183
Moe Ahmadi359d0722022-05-16 23:17:336184 {"organic-repeatable-queries",
6185 flag_descriptions::kOrganicRepeatableQueriesName,
Enderaa53b1da2022-05-25 00:52:006186 flag_descriptions::kOrganicRepeatableQueriesDescription,
6187 kOsDesktop | kOsAndroid,
Moe Ahmadi359d0722022-05-16 23:17:336188 FEATURE_WITH_PARAMS_VALUE_TYPE(history::kOrganicRepeatableQueries,
6189 kOrganicRepeatableQueriesVariations,
6190 "OrganicRepeatableQueries")},
6191
Tommy Lia142e2c2021-09-29 20:35:166192 {"history-journeys", flag_descriptions::kJourneysName,
Patrick Nolandba99e8a2022-03-04 23:12:396193 flag_descriptions::kJourneysDescription, kOsDesktop | kOsAndroid,
Tommy C. Li965b47f2022-03-17 20:42:266194 FEATURE_WITH_PARAMS_VALUE_TYPE(history_clusters::internal::kJourneys,
6195 kJourneysVariations,
6196 "HistoryJourneys")},
Tommy Lia142e2c2021-09-29 20:35:166197
Sophie Chang19b579d2022-09-27 22:30:356198 {"history-journeys-content-clustering",
6199 flag_descriptions::kJourneysContentClusteringName,
6200 flag_descriptions::kJourneysContentClusteringDescription,
6201 kOsDesktop | kOsAndroid,
6202 FEATURE_WITH_PARAMS_VALUE_TYPE(
6203 history_clusters::features::kOnDeviceClusteringContentClustering,
6204 kJourneysContentClusteringVariations,
6205 "HistoryJourneysContentClustering")},
6206
Tommy C. Lie99770072022-10-26 23:24:166207 {"history-journeys-images", flag_descriptions::kJourneysImagesName,
6208 flag_descriptions::kJourneysImagesDescription, kOsDesktop,
Marlon Facey0d963342023-03-27 20:55:226209 FEATURE_WITH_PARAMS_VALUE_TYPE(history_clusters::internal::kJourneysImages,
6210 kJourneysImagesVariations,
6211 "HistoryJourneysImages")},
Tommy C. Lie99770072022-10-26 23:24:166212
Tommy C. Li1d8296b52022-04-27 22:12:176213 {"history-journeys-labels", flag_descriptions::kJourneysLabelsName,
6214 flag_descriptions::kJourneysLabelsDescription, kOsDesktop | kOsAndroid,
6215 FEATURE_WITH_PARAMS_VALUE_TYPE(history_clusters::internal::kJourneysLabels,
6216 kJourneysLabelsVariations,
6217 "HistoryJourneysLabels")},
6218
Tommy Lia142e2c2021-09-29 20:35:166219 {"history-journeys-omnibox-action",
6220 flag_descriptions::kJourneysOmniboxActionName,
Patrick Nolandba99e8a2022-03-04 23:12:396221 flag_descriptions::kJourneysOmniboxActionDescription,
6222 kOsDesktop | kOsAndroid,
Tommy C. Li721981e2022-04-07 20:16:376223 FEATURE_WITH_PARAMS_VALUE_TYPE(history_clusters::internal::kOmniboxAction,
6224 kJourneysOmniboxActionVariations,
manukh5dbeb8362022-10-04 18:34:426225 "JourneysOmniboxTriggering")},
manukh202a6dd2021-02-19 21:23:256226
manukh37c48752022-06-21 15:38:106227 {"history-journeys-omnibox-history-cluster-provider",
6228 flag_descriptions::kJourneysOmniboxHistoryClusterProviderName,
6229 flag_descriptions::kJourneysOmniboxHistoryClusterProviderDescription,
6230 kOsDesktop | kOsAndroid,
manukh5dbeb8362022-10-04 18:34:426231 FEATURE_WITH_PARAMS_VALUE_TYPE(
6232 history_clusters::internal::kOmniboxHistoryClusterProvider,
6233 kJourneysOmniboxHistoryClusterProviderVariations,
6234 "JourneysOmniboxTriggering")},
manukh37c48752022-06-21 15:38:106235
Patrick Nolanda62bf462023-03-20 18:09:346236 {"history-journeys-persist-caches-to-prefs",
6237 flag_descriptions::kJourneysPersistCachesToPrefsName,
6238 flag_descriptions::kJourneysPersistCachesToPrefsDescription,
6239 kOsDesktop | kOsAndroid,
6240 FEATURE_VALUE_TYPE(
6241 history_clusters::internal::kJourneysPersistCachesToPrefs)},
6242
Sophie Changd30f4dc4f2022-10-18 16:10:176243 {"history-journeys-show-all-clusters",
6244 flag_descriptions::kJourneysShowAllClustersName,
6245 flag_descriptions::kJourneysShowAllClustersDescription,
6246 kOsDesktop | kOsAndroid,
6247 SINGLE_VALUE_TYPE(history_clusters::switches::
6248 kShouldShowAllClustersOnProminentUiSurfaces)},
6249
Sophie Chang4b7eff72022-12-08 16:43:296250 {"history-journeys-include-synced-visits",
6251 flag_descriptions::kJourneysIncludeSyncedVisitsName,
6252 flag_descriptions::kJourneysIncludeSyncedVisitsDescription,
6253 kOsDesktop | kOsAndroid,
6254 FEATURE_VALUE_TYPE(
6255 history_clusters::internal::kJourneysIncludeSyncedVisits)},
6256
Sophie Chang8ee03ca2023-04-17 17:30:466257 {"history-journeys-zero-state-filtering",
6258 flag_descriptions::kJourneysZeroStateFilteringName,
6259 flag_descriptions::kJourneysZeroStateFilteringDescription,
6260 kOsDesktop | kOsAndroid,
6261 FEATURE_VALUE_TYPE(
6262 history_clusters::internal::kJourneysZeroStateFiltering)},
6263
Khalid Peer197c7462022-11-28 21:20:366264 {"extract-related-searches-from-prefetched-zps-response",
6265 flag_descriptions::kExtractRelatedSearchesFromPrefetchedZPSResponseName,
6266 flag_descriptions::
6267 kExtractRelatedSearchesFromPrefetchedZPSResponseDescription,
6268 kOsDesktop | kOsAndroid,
6269 FEATURE_VALUE_TYPE(optimization_guide::features::
6270 kExtractRelatedSearchesFromPrefetchedZPSResponse)},
6271
Tommy C. Li7960fc82023-03-03 00:56:456272 {"page-image-service-optimization-guide-salient-images",
6273 flag_descriptions::kPageImageServiceOptimizationGuideSalientImagesName,
6274 flag_descriptions::
6275 kPageImageServiceOptimizationGuideSalientImagesDescription,
6276 kOsDesktop,
Tommy C. Li315f9ff62023-03-16 16:13:156277 FEATURE_WITH_PARAMS_VALUE_TYPE(
Tommy C. Lidf33ea612023-03-29 23:04:526278 page_image_service::kImageServiceOptimizationGuideSalientImages,
Tommy C. Li315f9ff62023-03-16 16:13:156279 kImageServiceOptimizationGuideSalientImagesVariations,
6280 "PageImageService")},
6281
6282 {"page-image-service-suggest-powered-images",
6283 flag_descriptions::kPageImageServiceSuggestPoweredImagesName,
6284 flag_descriptions::kPageImageServiceSuggestPoweredImagesDescription,
6285 kOsDesktop,
Tommy C. Lidf33ea612023-03-29 23:04:526286 FEATURE_VALUE_TYPE(page_image_service::kImageServiceSuggestPoweredImages)},
Tommy C. Li7960fc82023-03-03 00:56:456287
Sophie Chang9081cb32021-09-28 22:39:106288 {"page-content-annotations", flag_descriptions::kPageContentAnnotationsName,
Patrick Nolandba99e8a2022-03-04 23:12:396289 flag_descriptions::kPageContentAnnotationsDescription,
6290 kOsDesktop | kOsAndroid,
Sophie Chang9081cb32021-09-28 22:39:106291 FEATURE_WITH_PARAMS_VALUE_TYPE(
6292 optimization_guide::features::kPageContentAnnotations,
6293 kPageContentAnnotationsVariations,
6294 "PageContentAnnotations")},
6295
Sophie Chang854625a2023-03-22 19:57:336296 {"page-content-annotations-persist-salient-image-metadata",
6297 flag_descriptions::kPageContentAnnotationsPersistSalientImageMetadataName,
6298 flag_descriptions::
6299 kPageContentAnnotationsPersistSalientImageMetadataDescription,
6300 kOsDesktop,
6301 FEATURE_VALUE_TYPE(
6302 optimization_guide::features::
6303 kPageContentAnnotationsPersistSalientImageMetadata)},
6304
Sophie Chang0f519332023-03-28 21:45:306305 {"page-content-annotations-remote-page-metadata",
6306 flag_descriptions::kPageContentAnnotationsRemotePageMetadataName,
6307 flag_descriptions::kPageContentAnnotationsRemotePageMetadataDescription,
6308 kOsDesktop,
6309 FEATURE_VALUE_TYPE(optimization_guide::features::kRemotePageMetadata)},
6310
Sophie Chang8d500672022-02-09 22:45:306311 {"page-entities-page-content-annotations",
6312 flag_descriptions::kPageEntitiesPageContentAnnotationsName,
6313 flag_descriptions::kPageEntitiesPageContentAnnotationsDescription,
Sophie Changec7e07de2022-04-07 16:03:326314 kOsDesktop | kOsAndroid,
Sophie Chang5b5e7372022-04-06 21:23:226315 FEATURE_WITH_PARAMS_VALUE_TYPE(
6316 optimization_guide::features::kPageEntitiesPageContentAnnotations,
6317 kPageEntitiesPageContentAnnotationsVariations,
6318 "PageEntitiesPageContentAnnotations")},
Sophie Chang8d500672022-02-09 22:45:306319
6320 {"page-visibility-page-content-annotations",
6321 flag_descriptions::kPageVisibilityPageContentAnnotationsName,
6322 flag_descriptions::kPageVisibilityPageContentAnnotationsDescription,
Robert Ogden97914f8e2023-01-24 22:25:546323 kOsDesktop | kOsAndroid,
Sophie Chang8d500672022-02-09 22:45:306324 FEATURE_VALUE_TYPE(
6325 optimization_guide::features::kPageVisibilityPageContentAnnotations)},
6326
Yuta Hijikata235fc62b2020-12-08 03:48:326327#if BUILDFLAG(IS_CHROMEOS_ASH)
Curtis McMullanf2e45bf2020-08-26 09:51:396328 {"handwriting-gesture-editing",
6329 flag_descriptions::kHandwritingGestureEditingName,
6330 flag_descriptions::kHandwritingGestureEditingDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:426331 FEATURE_VALUE_TYPE(ash::features::kHandwritingGestureEditing)},
Curtis McMullan88e039e2021-07-27 08:06:316332 {"handwriting-legacy-recognition",
6333 flag_descriptions::kHandwritingLegacyRecognitionName,
6334 flag_descriptions::kHandwritingLegacyRecognitionDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:426335 FEATURE_VALUE_TYPE(ash::features::kHandwritingLegacyRecognition)},
Darren Shenb42629a2022-08-17 02:52:316336 {"handwriting-library-dlc", flag_descriptions::kHandwritingLibraryDlcName,
6337 flag_descriptions::kHandwritingLibraryDlcDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:426338 FEATURE_VALUE_TYPE(ash::features::kHandwritingLibraryDlc)},
Claudio Mf9303632023-06-28 04:33:156339 {"language-packs-in-settings",
6340 flag_descriptions::kLanguagePacksInSettingsName,
6341 flag_descriptions::kLanguagePacksInSettingsDescription, kOsCrOS,
6342 FEATURE_VALUE_TYPE(ash::features::kLanguagePacksInSettings)},
Yuta Hijikata235fc62b2020-12-08 03:48:326343#endif // BUILDFLAG(IS_CHROMEOS_ASH)
yhanadac5bff5b2017-05-18 06:37:096344
Titouan Rigoudyf619f5462020-09-25 16:35:496345 {"block-insecure-private-network-requests",
6346 flag_descriptions::kBlockInsecurePrivateNetworkRequestsName,
6347 flag_descriptions::kBlockInsecurePrivateNetworkRequestsDescription, kOsAll,
6348 FEATURE_VALUE_TYPE(features::kBlockInsecurePrivateNetworkRequests)},
6349
Titouan Rigoudy449de9d2022-02-16 19:14:066350 {"private-network-access-respect-preflight-results",
6351 flag_descriptions::kPrivateNetworkAccessRespectPreflightResultsName,
6352 flag_descriptions::kPrivateNetworkAccessRespectPreflightResultsDescription,
6353 kOsAll,
6354 FEATURE_VALUE_TYPE(
6355 features::kPrivateNetworkAccessRespectPreflightResults)},
6356
Yifan Luo6e4029d52022-08-11 17:28:116357 {"private-network-access-preflight-short-timeout",
6358 flag_descriptions::kPrivateNetworkAccessPreflightShortTimeoutName,
6359 flag_descriptions::kPrivateNetworkAccessPreflightShortTimeoutDescription,
6360 kOsAll,
6361 FEATURE_VALUE_TYPE(
6362 network::features::kPrivateNetworkAccessPreflightShortTimeout)},
6363
Youssef Esmat9cdb6b42022-12-21 19:28:456364 {"main-thread-compositing-priority",
6365 flag_descriptions::kMainThreadCompositingPriorityName,
6366 flag_descriptions::kMainThreadCompositingPriorityDescription, kOsAll,
6367 FEATURE_VALUE_TYPE(features::kMainThreadCompositingPriority)},
6368
Dominic Farolino0e1f9a1a2020-11-25 23:25:006369 {"mbi-mode", flag_descriptions::kMBIModeName,
6370 flag_descriptions::kMBIModeDescription, kOsAll,
6371 FEATURE_WITH_PARAMS_VALUE_TYPE(features::kMBIMode,
6372 kMBIModeVariations,
6373 "MBIMode")},
6374
Yuta Hijikata235fc62b2020-12-08 03:48:326375#if BUILDFLAG(IS_CHROMEOS_ASH)
Ahmed Fakhry4f567e692018-10-16 15:51:086376 {"double-tap-to-zoom-in-tablet-mode",
6377 flag_descriptions::kDoubleTapToZoomInTabletModeName,
6378 flag_descriptions::kDoubleTapToZoomInTabletModeDescription, kOsCrOS,
6379 FEATURE_VALUE_TYPE(features::kDoubleTapToZoomInTabletMode)},
Yulun Wub88a9202021-07-13 19:44:566380
6381 {"quick-settings-pwa-notifications",
6382 flag_descriptions::kQuickSettingsPWANotificationsName,
6383 flag_descriptions::kQuickSettingsPWANotificationsDescription, kOsCrOS,
6384 FEATURE_VALUE_TYPE(features::kQuickSettingsPWANotifications)},
Yuta Hijikata235fc62b2020-12-08 03:48:326385#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Toni Barzic0f3440a62017-07-19 20:19:316386
Alyssa Frederickab694f22021-07-02 20:05:396387 {"tab-groups-save", flag_descriptions::kTabGroupsSaveName,
6388 flag_descriptions::kTabGroupsSaveDescription, kOsDesktop,
dljamesd0603152022-11-15 23:16:566389 FEATURE_VALUE_TYPE(features::kTabGroupsSave)},
Alyssa Frederickab694f22021-07-02 20:05:396390
Elaine Chien2b731c82021-01-28 17:50:566391 {flag_descriptions::kScrollableTabStripFlagId,
6392 flag_descriptions::kScrollableTabStripName,
David Pennington6e8eef62021-12-01 21:13:546393 flag_descriptions::kScrollableTabStripDescription, kOsDesktop,
Taylor Bergquistdb936972021-02-10 23:13:136394 FEATURE_WITH_PARAMS_VALUE_TYPE(features::kScrollableTabStrip,
6395 kTabScrollingVariations,
6396 "TabScrolling")},
Charlene Yan0ccd7f52019-04-12 23:20:596397
David Pennington423db8f2022-10-24 22:30:046398 {flag_descriptions::kTabScrollingButtonPositionFlagId,
6399 flag_descriptions::kTabScrollingButtonPositionName,
6400 flag_descriptions::kTabScrollingButtonPositionDescription, kOsDesktop,
6401 FEATURE_WITH_PARAMS_VALUE_TYPE(features::kTabScrollingButtonPosition,
6402 kTabScrollingButtonPositionVariations,
6403 "TabScrollingButtonPosition")},
6404
Shibalik Mohapatra9a31f7d32022-10-26 23:53:596405 {flag_descriptions::kScrollableTabStripWithDraggingFlagId,
6406 flag_descriptions::kScrollableTabStripWithDraggingName,
6407 flag_descriptions::kScrollableTabStripWithDraggingDescription, kOsDesktop,
6408 FEATURE_WITH_PARAMS_VALUE_TYPE(features::kScrollableTabStripWithDragging,
6409 kTabScrollingWithDraggingVariations,
6410 "TabScrollingWithDragging")},
6411
David Pennington02c635e2022-11-18 01:03:456412 {flag_descriptions::kScrollableTabStripOverflowFlagId,
6413 flag_descriptions::kScrollableTabStripOverflowName,
6414 flag_descriptions::kScrollableTabStripOverflowDescription, kOsDesktop,
6415 FEATURE_WITH_PARAMS_VALUE_TYPE(features::kScrollableTabStripOverflow,
6416 kScrollableTabStripOverflowVariations,
6417 "ScrollableTabStripOverflow")},
6418
Taylor Bergquist9adeb292022-08-25 20:33:086419 {"split-tabstrip", flag_descriptions::kSplitTabStripName,
6420 flag_descriptions::kSplitTabStripDescription, kOsDesktop,
6421 FEATURE_VALUE_TYPE(features::kSplitTabStrip)},
6422
Marlon Faceyfce1a9e2022-03-31 23:48:066423 {flag_descriptions::kSidePanelJourneysFlagId,
6424 flag_descriptions::kSidePanelJourneysName,
6425 flag_descriptions::kSidePanelJourneysDescription, kOsDesktop,
Tommy C. Li2b834a82022-08-03 19:07:466426 FEATURE_WITH_PARAMS_VALUE_TYPE(
Tommy C. Li3d4ee9e2022-12-13 23:43:346427 history_clusters::kSidePanelJourneys,
Tommy C. Li2b834a82022-08-03 19:07:466428 kSidePanelJourneysOpensFromOmniboxVariations,
6429 "SidePanelJourneys")},
Marlon Faceyfce1a9e2022-03-31 23:48:066430
Marlon Facey41373d72b2022-10-11 02:34:096431 {flag_descriptions::kSidePanelJourneysQuerylessFlagId,
6432 flag_descriptions::kSidePanelJourneysQuerylessName,
6433 flag_descriptions::kSidePanelJourneysQuerylessDescription, kOsDesktop,
6434 FEATURE_VALUE_TYPE(features::kSidePanelJourneysQueryless)},
6435
Xiaohan Wang064b68cd2022-01-19 19:12:286436#if BUILDFLAG(IS_ANDROID)
Wei-Yin Chen (陳威尹)41b22412017-07-21 02:51:186437 {"enable-reader-mode-in-cct", flag_descriptions::kReaderModeInCCTName,
6438 flag_descriptions::kReaderModeInCCTDescription, kOsAndroid,
6439 FEATURE_VALUE_TYPE(chrome::android::kReaderModeInCCT)},
Xiaohan Wang064b68cd2022-01-19 19:12:286440#endif // BUILDFLAG(IS_ANDROID)
Wei-Yin Chen (陳威尹)41b22412017-07-21 02:51:186441
Matt Jones169772192022-08-11 17:29:266442 {"shopping-list", commerce::flag_descriptions::kShoppingListName,
6443 commerce::flag_descriptions::kShoppingListDescription,
6444 kOsAndroid | kOsDesktop, FEATURE_VALUE_TYPE(commerce::kShoppingList)},
6445
Matt Jones5c8c8e32023-06-13 22:49:476446 {"shopping-list-track-by-default",
6447 commerce::flag_descriptions::kShoppingListTrackByDefaultName,
6448 commerce::flag_descriptions::kShoppingListTrackByDefaultDescription,
6449 kOsAndroid | kOsDesktop,
6450 FEATURE_VALUE_TYPE(commerce::kShoppingListTrackByDefault)},
6451
Matt Jones1795eda2023-05-09 20:24:486452 {"local-pdp-detection",
6453 commerce::flag_descriptions::kCommerceLocalPDPDetectionName,
6454 commerce::flag_descriptions::kCommerceLocalPDPDetectionDescription,
6455 kOsAndroid | kOsDesktop,
6456 FEATURE_VALUE_TYPE(commerce::kCommerceLocalPDPDetection)},
6457
Xiaohan Wang064b68cd2022-01-19 19:12:286458#if !BUILDFLAG(IS_ANDROID)
Mei Liang4ab1b5d42023-04-20 01:07:486459 {"enable-price-tracking-chip-experiment",
6460 commerce::flag_descriptions::kPriceTrackingChipExperimentName,
6461 commerce::flag_descriptions::kPriceTrackingChipExperimentDescription,
6462 kOsDesktop,
6463 FEATURE_WITH_PARAMS_VALUE_TYPE(
6464 commerce::kCommercePriceTrackingChipExperiment,
6465 kPriceTrackingChipExperimentVariations,
6466 "PriceTrackingChipExperiment")},
6467
Paul Adedeji1ed53002022-06-13 20:15:306468 {"enable-retail-coupons", flag_descriptions::kRetailCouponsName,
6469 flag_descriptions::kRetailCouponsDescription, kOsDesktop,
6470 FEATURE_VALUE_TYPE(commerce::kRetailCoupons)},
6471
Paul Adedejiabbaf292023-04-03 21:21:186472 {"ntp-alpha-background-collections",
6473 flag_descriptions::kNtpAlphaBackgroundCollectionsName,
6474 flag_descriptions::kNtpAlphaBackgroundCollectionsDescription, kOsDesktop,
6475 FEATURE_VALUE_TYPE(ntp_features::kNtpAlphaBackgroundCollections)},
6476
Paul Adedejic4acd3092023-05-22 19:29:136477 {"ntp-background-image-error-detection",
6478 flag_descriptions::kNtpBackgroundImageErrorDetectionName,
6479 flag_descriptions::kNtpBackgroundImageErrorDetectionDescription,
6480 kOsDesktop,
6481 FEATURE_VALUE_TYPE(ntp_features::kNtpBackgroundImageErrorDetection)},
6482
Esmael El-Moslimanyf85849d2021-01-15 02:18:106483 {"ntp-cache-one-google-bar", flag_descriptions::kNtpCacheOneGoogleBarName,
6484 flag_descriptions::kNtpCacheOneGoogleBarDescription, kOsDesktop,
6485 FEATURE_VALUE_TYPE(ntp_features::kCacheOneGoogleBar)},
6486
Yue Zhang9d4bff02023-04-26 15:32:056487 {"ntp-chrome-cart-journeys-module-coexist",
6488 flag_descriptions::kNtpChromeCartHistoryClusterCoexistName,
6489 flag_descriptions::kNtpChromeCartHistoryClusterCoexistDescription,
6490 kOsDesktop,
6491 FEATURE_VALUE_TYPE(ntp_features::kNtpChromeCartHistoryClusterCoexist)},
6492
Yue Zhangb7a521b2023-04-11 22:33:196493 {"ntp-chrome-cart-in-journeys-module",
6494 flag_descriptions::kNtpChromeCartInHistoryClustersModuleName,
6495 flag_descriptions::kNtpChromeCartInHistoryClustersModuleDescription,
6496 kOsDesktop,
Yue Zhang39cc2252023-04-19 15:44:366497 FEATURE_WITH_PARAMS_VALUE_TYPE(
6498 ntp_features::kNtpChromeCartInHistoryClusterModule,
6499 kNtpChromeCartInHistoryClustersModuleVariations,
6500 "DesktopNtpModules")},
Yue Zhangb7a521b2023-04-11 22:33:196501
Paul Adedeji1ed53002022-06-13 20:15:306502 {"ntp-chrome-cart-module", flag_descriptions::kNtpChromeCartModuleName,
6503 flag_descriptions::kNtpChromeCartModuleDescription, kOsDesktop,
6504 FEATURE_WITH_PARAMS_VALUE_TYPE(ntp_features::kNtpChromeCartModule,
6505 kNtpChromeCartModuleVariations,
6506 "DesktopNtpModules")},
Tibor Goldschwendt08c6b882020-10-01 03:09:326507
Yue Zhangb001bb12022-11-01 00:53:366508 {"chrome-cart-dom-based-heuristics",
6509 commerce::flag_descriptions::kChromeCartDomBasedHeuristicsName,
6510 commerce::flag_descriptions::kChromeCartDomBasedHeuristicsDescription,
6511 kOsDesktop, FEATURE_VALUE_TYPE(commerce::kChromeCartDomBasedHeuristics)},
6512
Roman Arora201df092022-10-20 16:53:516513 {"ntp-comprehensive-theme-realbox",
6514 flag_descriptions::kNtpComprehensiveThemeRealboxName,
6515 flag_descriptions::kNtpComprehensiveThemeRealboxDescription, kOsDesktop,
6516 FEATURE_VALUE_TYPE(ntp_features::kNtpComprehensiveThemeRealbox)},
6517
Andre Vincent60a5c5d2020-12-24 02:53:016518 {"ntp-drive-module", flag_descriptions::kNtpDriveModuleName,
6519 flag_descriptions::kNtpDriveModuleDescription, kOsDesktop,
Tibor Goldschwendtd18751b2021-05-11 02:03:266520 FEATURE_WITH_PARAMS_VALUE_TYPE(ntp_features::kNtpDriveModule,
6521 kNtpDriveModuleVariations,
6522 "DesktopNtpModules")},
Andre Vincent60a5c5d2020-12-24 02:53:016523
Paul Adedeji680466942022-01-13 22:10:506524#if !defined(OFFICIAL_BUILD)
6525 {"ntp-dummy-modules", flag_descriptions::kNtpDummyModulesName,
6526 flag_descriptions::kNtpDummyModulesDescription, kOsDesktop,
6527 FEATURE_VALUE_TYPE(ntp_features::kNtpDummyModules)},
6528#endif
6529
Roman Arorac7579c92023-02-27 22:17:176530 {"ntp-journeys-module", flag_descriptions::kNtpHistoryClustersModuleName,
6531 flag_descriptions::kNtpHistoryClustersModuleDescription, kOsDesktop,
Roman Arora6a6024d12023-03-03 21:05:396532 FEATURE_WITH_PARAMS_VALUE_TYPE(ntp_features::kNtpHistoryClustersModule,
6533 kNtpHistoryClustersModuleVariations,
6534 "DesktopNtpModules")},
Roman Arorac7579c92023-02-27 22:17:176535
Marlon Faceydaec90812023-06-29 20:14:056536 {"ntp-journeys-module-suggestion-chip-header",
6537 flag_descriptions::kNtpHistoryClustersModuleSuggestionChipHeaderName,
6538 flag_descriptions::
6539 kNtpHistoryClustersModuleSuggestionChipHeaderDescription,
6540 kOsDesktop,
6541 FEATURE_VALUE_TYPE(
6542 ntp_features::kNtpHistoryClustersModuleSuggestionChipHeader)},
6543
Sophie Changdf637c982023-05-14 17:06:316544 {"ntp-journeys-module-model-ranking",
6545 flag_descriptions::kNtpHistoryClustersModuleUseModelRankingName,
6546 flag_descriptions::kNtpHistoryClustersModuleUseModelRankingDescription,
6547 kOsDesktop,
6548 FEATURE_VALUE_TYPE(
6549 ntp_features::kNtpHistoryClustersModuleUseModelRanking)},
6550
Tibor Goldschwendtf9501a62023-03-23 03:11:196551 {"ntp-modules-header-icon", flag_descriptions::kNtpModulesHeaderIconName,
6552 flag_descriptions::kNtpModulesHeaderIconDescription, kOsDesktop,
6553 FEATURE_VALUE_TYPE(ntp_features::kNtpModulesHeaderIcon)},
6554
6555 {"ntp-wide-modules", flag_descriptions::kNtpWideModulesName,
6556 flag_descriptions::kNtpWideModulesDescription, kOsDesktop,
6557 FEATURE_VALUE_TYPE(ntp_features::kNtpWideModules)},
6558
Tibor Goldschwendta82f86c2023-03-14 00:26:516559 {"ntp-reduced-logo-space", flag_descriptions::kNtpReducedLogoSpaceName,
6560 flag_descriptions::kNtpReducedLogoSpaceDescription, kOsDesktop,
6561 FEATURE_VALUE_TYPE(ntp_features::kNtpReducedLogoSpace)},
6562
Tibor Goldschwendteec42922023-03-22 18:54:546563 {"ntp-single-row-shortcuts", flag_descriptions::kNtpSingleRowShortcutsName,
6564 flag_descriptions::kNtpSingleRowShortcutsDescription, kOsDesktop,
6565 FEATURE_VALUE_TYPE(ntp_features::kNtpSingleRowShortcuts)},
6566
Paul Adedeji1ed53002022-06-13 20:15:306567 {"ntp-middle-slot-promo-dismissal",
6568 flag_descriptions::kNtpMiddleSlotPromoDismissalName,
6569 flag_descriptions::kNtpMiddleSlotPromoDismissalDescription, kOsDesktop,
Paul Adedejif0a215d82022-08-03 01:55:466570 FEATURE_WITH_PARAMS_VALUE_TYPE(ntp_features::kNtpMiddleSlotPromoDismissal,
6571 kNtpMiddleSlotPromoDismissalVariations,
6572 "DesktopNtpModules")},
Paul Adedeji1ed53002022-06-13 20:15:306573
6574 {"ntp-modules-drag-and-drop", flag_descriptions::kNtpModulesDragAndDropName,
6575 flag_descriptions::kNtpModulesDragAndDropDescription, kOsDesktop,
6576 FEATURE_VALUE_TYPE(ntp_features::kNtpModulesDragAndDrop)},
6577
6578 {"ntp-modules-first-run-experience",
6579 flag_descriptions::kNtpModulesFirstRunExperienceName,
6580 flag_descriptions::kNtpModulesFirstRunExperienceDescription, kOsDesktop,
6581 FEATURE_VALUE_TYPE(ntp_features::kNtpModulesFirstRunExperience)},
6582
6583 {"ntp-modules-redesigned", flag_descriptions::kNtpModulesRedesignedName,
6584 flag_descriptions::kNtpModulesRedesignedDescription, kOsDesktop,
6585 FEATURE_VALUE_TYPE(ntp_features::kNtpModulesRedesigned)},
6586
Jeremy Selier6d7e19fe2021-07-20 17:08:346587 {"ntp-photos-module", flag_descriptions::kNtpPhotosModuleName,
6588 flag_descriptions::kNtpPhotosModuleDescription, kOsDesktop,
Jeremy Selier4ced86ee2021-10-02 18:35:196589 FEATURE_WITH_PARAMS_VALUE_TYPE(ntp_features::kNtpPhotosModule,
6590 kNtpPhotosModuleVariations,
6591 "DesktopNtpModules")},
Jeremy Selier6d7e19fe2021-07-20 17:08:346592
Madhuri Palagummib85db64172022-02-18 02:32:056593 {"ntp-photos-opt-in-art-work",
6594 flag_descriptions::kNtpPhotosModuleOptInArtWorkName,
6595 flag_descriptions::kNtpPhotosModuleOptInArtWorkDescription, kOsDesktop,
6596 FEATURE_WITH_PARAMS_VALUE_TYPE(
6597 ntp_features::kNtpPhotosModuleCustomizedOptInArtWork,
6598 kNtpPhotosModuleOptInArtWorkVariations,
6599 "DesktopNtpModules")},
6600
Madhuri Palagummifb44d9e2022-02-17 04:02:066601 {"ntp-photos-opt-in-title",
6602 flag_descriptions::kNtpPhotosModuleOptInTitleName,
6603 flag_descriptions::kNtpPhotosModuleOptInTitleDescription, kOsDesktop,
6604 FEATURE_WITH_PARAMS_VALUE_TYPE(
6605 ntp_features::kNtpPhotosModuleCustomizedOptInTitle,
6606 kNtpPhotosModuleOptInTitleVariations,
6607 "DesktopNtpModules")},
6608
Madhuri Palagummi3939bcb52022-02-18 23:27:066609 {"ntp-photos-soft-opt-out",
6610 flag_descriptions::kNtpPhotosModuleSoftOptOutName,
6611 flag_descriptions::kNtpPhotosModuleSoftOptOutDescription, kOsDesktop,
6612 FEATURE_VALUE_TYPE(ntp_features::kNtpPhotosModuleSoftOptOut)},
6613
Esmael El-Moslimany75e33762020-10-21 18:26:436614 {"ntp-recipe-tasks-module", flag_descriptions::kNtpRecipeTasksModuleName,
6615 flag_descriptions::kNtpRecipeTasksModuleDescription, kOsDesktop,
Tibor Goldschwendtacb655f2020-11-24 23:23:066616 FEATURE_WITH_PARAMS_VALUE_TYPE(ntp_features::kNtpRecipeTasksModule,
6617 kNtpRecipeTasksModuleVariations,
Mei Liang9cdacfe2021-04-08 00:41:056618 "DesktopNtpModules")},
Esmael El-Moslimany75e33762020-10-21 18:26:436619
Tibor Goldschwendt899492d2023-06-14 00:03:516620 {"ntp-realbox-is-tall", flag_descriptions::kNtpRealboxIsTallName,
6621 flag_descriptions::kNtpRealboxIsTallDescription, kOsDesktop,
6622 FEATURE_VALUE_TYPE(ntp_features::kRealboxIsTall)},
6623
Marlon Faceya00e2f92022-01-27 23:04:096624 {"ntp-realbox-match-searchbox-theme",
6625 flag_descriptions::kNtpRealboxMatchSearchboxThemeName,
6626 flag_descriptions::kNtpRealboxMatchSearchboxThemeDescription, kOsDesktop,
Marlon Facey4a2c2072022-09-26 23:24:536627 FEATURE_VALUE_TYPE(ntp_features::kRealboxMatchSearchboxTheme)},
Marlon Faceya00e2f92022-01-27 23:04:096628
Marlon Facey904d12442021-09-02 23:02:246629 {"ntp-realbox-pedals", flag_descriptions::kNtpRealboxPedalsName,
6630 flag_descriptions::kNtpRealboxPedalsDescription, kOsDesktop,
6631 FEATURE_VALUE_TYPE(omnibox::kNtpRealboxPedals)},
6632
Marlon Facey94eac62a02021-12-15 01:16:376633 {"ntp-realbox-use-google-g-icon",
6634 flag_descriptions::kNtpRealboxUseGoogleGIconName,
6635 flag_descriptions::kNtpRealboxUseGoogleGIconDescription, kOsDesktop,
6636 FEATURE_VALUE_TYPE(ntp_features::kRealboxUseGoogleGIcon)},
Paul Adedeji1ed53002022-06-13 20:15:306637
John Lee07f68aa2023-05-19 21:32:586638 {"ntp-realbox-width-behavior",
6639 flag_descriptions::kNtpRealboxWidthBehaviorName,
6640 flag_descriptions::kNtpRealboxWidthBehaviorDescription, kOsDesktop,
6641 FEATURE_WITH_PARAMS_VALUE_TYPE(ntp_features::kRealboxWidthBehavior,
6642 kNtpRealboxWidthBehaviorVariations,
6643 "NtpRealboxWidthBehavior")},
6644
Paul Adedeji1ed53002022-06-13 20:15:306645 {"ntp-safe-browsing-module", flag_descriptions::kNtpSafeBrowsingModuleName,
6646 flag_descriptions::kNtpSafeBrowsingModuleDescription, kOsDesktop,
6647 FEATURE_WITH_PARAMS_VALUE_TYPE(ntp_features::kNtpSafeBrowsingModule,
6648 kNtpSafeBrowsingModuleVariations,
6649 "DesktopNtpModules")},
Yo Wakitadcd38802022-10-12 17:27:076650
6651 {"ntp-desktop-lens", flag_descriptions::kNtpDesktopLensName,
6652 flag_descriptions::kNtpDesktopLensDescription, kOsDesktop,
6653 FEATURE_VALUE_TYPE(ntp_features::kNtpRealboxLensSearch)},
6654
Zhiyuan Cai01e3882f2023-05-12 22:22:146655 {"price-insights", commerce::flag_descriptions::kPriceInsightsName,
6656 commerce::flag_descriptions::kPriceInsightsDescription, kOsDesktop,
6657 FEATURE_VALUE_TYPE(commerce::kPriceInsights)},
6658
Xiaohan Wang064b68cd2022-01-19 19:12:286659#endif // !BUILDFLAG(IS_ANDROID)
Chris Pickel3a227ae62017-08-24 10:47:266660
Sam Zackrissonb49345a2022-03-25 11:15:046661#if BUILDFLAG(CHROME_WIDE_ECHO_CANCELLATION)
6662 {"chrome-wide-echo-cancellation",
6663 flag_descriptions::kChromeWideEchoCancellationName,
Sam Zackrissone8194942022-04-06 16:30:066664 flag_descriptions::kChromeWideEchoCancellationDescription,
Pengchao Caie07a801d2022-09-01 18:28:436665 kOsMac | kOsWin | kOsLinux,
Sam Zackrissonb49345a2022-03-25 11:15:046666 FEATURE_VALUE_TYPE(media::kChromeWideEchoCancellation)},
6667#endif // BUILDFLAG(CHROME_WIDE_ECHO_CANCELLATION)
6668
Wez02cedeba2022-07-26 12:48:386669#if BUILDFLAG(DCHECK_IS_CONFIGURABLE)
Weza6ca5b92018-03-23 19:03:076670 {"dcheck-is-fatal", flag_descriptions::kDcheckIsFatalName,
6671 flag_descriptions::kDcheckIsFatalDescription, kOsWin,
6672 FEATURE_VALUE_TYPE(base::kDCheckIsFatalFeature)},
Wez02cedeba2022-07-26 12:48:386673#endif // BUILDFLAG(DCHECK_IS_CONFIGURABLE)
Wez6656c572017-08-29 22:29:586674
F#m59d036e2017-09-13 07:22:176675 {"enable-pixel-canvas-recording",
6676 flag_descriptions::kEnablePixelCanvasRecordingName,
Bret Sepulveda4dccec92018-03-31 00:02:246677 flag_descriptions::kEnablePixelCanvasRecordingDescription, kOsDesktop,
F#m59d036e2017-09-13 07:22:176678 FEATURE_VALUE_TYPE(features::kEnablePixelCanvasRecording)},
Sammie Quonef6b4882017-09-14 16:50:056679
Xing Liu5400a002017-09-15 21:48:296680 {"enable-parallel-downloading", flag_descriptions::kParallelDownloadingName,
6681 flag_descriptions::kParallelDownloadingDescription, kOsAll,
Min Qind461ee462018-03-09 19:39:156682 FEATURE_VALUE_TYPE(download::features::kParallelDownloading)},
Xing Liu5400a002017-09-15 21:48:296683
David Benjamin371481f2022-06-15 15:57:406684#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX)
Miriam Gershenson8cf1397222018-01-23 22:48:296685 {"enable-async-dns", flag_descriptions::kAsyncDnsName,
David Benjamin371481f2022-06-15 15:57:406686 flag_descriptions::kAsyncDnsDescription, kOsWin | kOsLinux,
Miriam Gershenson8cf1397222018-01-23 22:48:296687 FEATURE_VALUE_TYPE(features::kAsyncDns)},
David Benjamin371481f2022-06-15 15:57:406688#endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX)
Miriam Gershenson8cf1397222018-01-23 22:48:296689
Shakti Sahu5a046f62019-03-12 19:25:346690 {"enable-new-download-backend",
6691 flag_descriptions::kEnableNewDownloadBackendName,
6692 flag_descriptions::kEnableNewDownloadBackendDescription, kOsAll,
6693 FEATURE_VALUE_TYPE(
6694 download::features::kUseDownloadOfflineContentProvider)},
6695
Xing Liua8d6b272021-11-11 00:02:166696 {"download-range", flag_descriptions::kDownloadRangeName,
6697 flag_descriptions::kDownloadRangeDescription, kOsAll,
6698 FEATURE_VALUE_TYPE(download::features::kDownloadRange)},
6699
Charles Mengb48a56c2023-06-26 17:20:076700 {"tab-hover-card-image-settings",
6701 flag_descriptions::kTabHoverCardImageSettingsName,
6702 flag_descriptions::kTabHoverCardImageSettingsDescription, kOsDesktop,
6703 FEATURE_VALUE_TYPE(features::kTabHoverCardImageSettings)},
6704
Eshwar Stalinf1bb82c2023-05-16 17:12:426705 {"tab-hover-card-images", flag_descriptions::kTabHoverCardImagesName,
6706 flag_descriptions::kTabHoverCardImagesDescription, kOsDesktop,
6707 FEATURE_VALUE_TYPE(features::kTabHoverCardImages)},
6708
Lexi Stavrakos094fd642020-06-17 23:26:436709 {"enable-storage-pressure-event",
6710 flag_descriptions::kStoragePressureEventName,
6711 flag_descriptions::kStoragePressureEventDescription, kOsAll,
Lexi Stavrakosd9e64e12020-07-21 21:52:106712 FEATURE_VALUE_TYPE(storage::features::kStoragePressureEvent)},
Lexi Stavrakos094fd642020-06-17 23:26:436713
Bernhard Bauer5533f9912017-11-06 17:56:026714 {"enable-network-logging-to-file",
6715 flag_descriptions::kEnableNetworkLoggingToFileName,
6716 flag_descriptions::kEnableNetworkLoggingToFileDescription, kOsAll,
John Abd-El-Malek91243b32018-01-19 06:08:336717 SINGLE_VALUE_TYPE(network::switches::kLogNetLog)},
Becca Hughes59c05b42017-11-03 13:11:586718
Martin Kreichgauer4c6070762022-03-29 16:27:226719#if !BUILDFLAG(IS_ANDROID)
6720 {"web-authentication-permit-enterprise-attestation",
6721 flag_descriptions::kWebAuthenticationPermitEnterpriseAttestationName,
6722 flag_descriptions::
6723 kWebAuthenticationPermitEnterpriseAttestationDescription,
6724 kOsAll,
6725 ORIGIN_LIST_VALUE_TYPE(
6726 webauthn::switches::kPermitEnterpriseAttestationOriginList,
6727 "")},
6728#endif
6729
Yuta Hijikata235fc62b2020-12-08 03:48:326730#if BUILDFLAG(IS_CHROMEOS_ASH)
Yicheng Li0a78f462020-08-14 00:08:126731 {"enable-web-authentication-chromeos-authenticator",
6732 flag_descriptions::kEnableWebAuthenticationChromeOSAuthenticatorName,
6733 flag_descriptions::
6734 kEnableWebAuthenticationChromeOSAuthenticatorDescription,
6735 kOsCrOS, FEATURE_VALUE_TYPE(device::kWebAuthCrosPlatformAuthenticator)},
6736#endif
Piotr Bialecki0fe14632022-03-09 00:49:246737
6738 {
6739 "zero-copy-tab-capture",
6740 flag_descriptions::kEnableZeroCopyTabCaptureName,
6741 flag_descriptions::kEnableZeroCopyTabCaptureDescription,
Hirokazu Hondadb4e35a42023-02-07 01:30:166742 kOsMac | kOsWin | kOsCrOS,
Piotr Bialecki0fe14632022-03-09 00:49:246743 FEATURE_VALUE_TYPE(blink::features::kZeroCopyTabCapture),
6744 },
6745
Lei Zhangfc8ec942018-11-17 02:53:366746#if BUILDFLAG(ENABLE_PDF)
Ankit Kumar 🌪️cc71c02a2020-08-06 03:44:306747 {"accessible-pdf-form", flag_descriptions::kAccessiblePDFFormName,
6748 flag_descriptions::kAccessiblePDFFormDescription, kOsDesktop,
6749 FEATURE_VALUE_TYPE(chrome_pdf::features::kAccessiblePDFForm)},
Hui Yingst058c23702022-11-06 18:59:226750
6751 {"pdf-use-skia-renderer", flag_descriptions::kPdfUseSkiaRendererName,
6752 flag_descriptions::kPdfUseSkiaRendererDescription, kOsDesktop,
6753 FEATURE_VALUE_TYPE(chrome_pdf::features::kPdfUseSkiaRenderer)},
Lei Zhangfc8ec942018-11-17 02:53:366754#endif // BUILDFLAG(ENABLE_PDF)
Lei Zhang802201c2018-11-14 18:16:286755
Wei Li189867e2018-04-28 03:07:046756#if BUILDFLAG(ENABLE_PRINTING)
Bryan Caind277a9f2023-06-23 20:37:026757#if BUILDFLAG(IS_CHROMEOS)
6758 {"enable-borderless-printing",
6759 flag_descriptions::kEnableBorderlessPrintingName,
6760 flag_descriptions::kEnableBorderlessPrintingDescription,
6761 kOsCrOS | kOsLacros,
6762 FEATURE_VALUE_TYPE(printing::features::kEnableBorderlessPrinting)},
6763#endif // BUILDFLAG(IS_CHROMEOS)
6764
Xiaohan Wang064b68cd2022-01-19 19:12:286765#if BUILDFLAG(IS_MAC)
Daniel Hosseinian159cb3d2020-03-13 03:02:026766 {"cups-ipp-printing-backend",
6767 flag_descriptions::kCupsIppPrintingBackendName,
6768 flag_descriptions::kCupsIppPrintingBackendDescription, kOsMac,
6769 FEATURE_VALUE_TYPE(printing::features::kCupsIppPrintingBackend)},
Xiaohan Wang064b68cd2022-01-19 19:12:286770#endif // BUILDFLAG(IS_MAC)
Daniel Hosseinian159cb3d2020-03-13 03:02:026771
Xiaohan Wang064b68cd2022-01-19 19:12:286772#if BUILDFLAG(IS_WIN)
Lei Zhang1419cab2021-09-09 17:04:446773 {"print-with-postscript-type42-fonts",
6774 flag_descriptions::kPrintWithPostScriptType42FontsName,
6775 flag_descriptions::kPrintWithPostScriptType42FontsDescription, kOsWin,
6776 FEATURE_VALUE_TYPE(printing::features::kPrintWithPostScriptType42Fonts)},
6777
Lei Zhanga6a8a492020-05-14 03:55:036778 {"print-with-reduced-rasterization",
6779 flag_descriptions::kPrintWithReducedRasterizationName,
6780 flag_descriptions::kPrintWithReducedRasterizationDescription, kOsWin,
6781 FEATURE_VALUE_TYPE(printing::features::kPrintWithReducedRasterization)},
6782
Cuc Doan074d8ed2022-03-14 22:03:346783 {"read-printer-capabilities-with-xps",
6784 flag_descriptions::kReadPrinterCapabilitiesWithXpsName,
6785 flag_descriptions::kReadPrinterCapabilitiesWithXpsDescription, kOsWin,
6786 FEATURE_VALUE_TYPE(printing::features::kReadPrinterCapabilitiesWithXps)},
6787
Alan Screen574ffd662019-11-21 22:38:536788 {"use-xps-for-printing", flag_descriptions::kUseXpsForPrintingName,
6789 flag_descriptions::kUseXpsForPrintingDescription, kOsWin,
6790 FEATURE_VALUE_TYPE(printing::features::kUseXpsForPrinting)},
Alan Screen49388112019-12-13 23:34:216791
6792 {"use-xps-for-printing-from-pdf",
6793 flag_descriptions::kUseXpsForPrintingFromPdfName,
6794 flag_descriptions::kUseXpsForPrintingFromPdfDescription, kOsWin,
6795 FEATURE_VALUE_TYPE(printing::features::kUseXpsForPrintingFromPdf)},
Xiaohan Wang064b68cd2022-01-19 19:12:286796#endif // BUILDFLAG(IS_WIN)
Hesen Zhangeb01d402019-12-16 23:15:396797#endif // BUILDFLAG(ENABLE_PRINTING)
Wei Li790e7a8572018-03-23 01:31:556798
Xiaohan Wang064b68cd2022-01-19 19:12:286799#if BUILDFLAG(IS_WIN)
Qiaofei Yebeb9a232020-07-22 23:47:046800 {"enable-windows-gaming-input-data-fetcher",
6801 flag_descriptions::kEnableWindowsGamingInputDataFetcherName,
6802 flag_descriptions::kEnableWindowsGamingInputDataFetcherDescription, kOsWin,
6803 FEATURE_VALUE_TYPE(features::kEnableWindowsGamingInputDataFetcher)},
Jackson Loefflera6915ef2023-05-23 16:36:476804
6805 {"windows11-mica-titlebar", flag_descriptions::kWindows11MicaTitlebarName,
6806 flag_descriptions::kWindows11MicaTitlebarDescription, kOsWin,
6807 FEATURE_VALUE_TYPE(kWindows11MicaTitlebar)},
Qiaofei Yebeb9a232020-07-22 23:47:046808#endif
6809
Xiaohan Wang064b68cd2022-01-19 19:12:286810#if BUILDFLAG(IS_ANDROID)
Mia Glaese57c6b192019-08-05 20:40:406811 {"enable-start-surface", flag_descriptions::kStartSurfaceAndroidName,
6812 flag_descriptions::kStartSurfaceAndroidDescription, kOsAndroid,
6813 FEATURE_WITH_PARAMS_VALUE_TYPE(chrome::android::kStartSurfaceAndroid,
6814 kStartSurfaceAndroidVariations,
Mei Liange569c272020-03-06 02:41:596815 "ChromeStart")},
gogerald939debf2019-07-16 17:31:486816
Xi Han8e1b2452022-05-26 15:43:166817 {"enable-feed-position-on-ntp", flag_descriptions::kFeedPositionAndroidName,
6818 flag_descriptions::kFeedPositionAndroidDescription, kOsAndroid,
6819 FEATURE_WITH_PARAMS_VALUE_TYPE(chrome::android::kFeedPositionAndroid,
6820 kFeedPositionAndroidVariations,
6821 "FeedPositionAndroid")},
6822
Wei-Yin Chen (陳威尹)50c2f462020-05-14 07:27:426823 {"enable-instant-start", flag_descriptions::kInstantStartName,
6824 flag_descriptions::kInstantStartDescription, kOsAndroid,
6825 FEATURE_VALUE_TYPE(chrome::android::kInstantStart)},
6826
spdonghao86345d52022-09-20 20:13:156827 {"enable-start-surface-disabled-feed-improvement",
6828 flag_descriptions::kStartSurfaceDisabledFeedImprovementName,
6829 flag_descriptions::kStartSurfaceDisabledFeedImprovementDescription,
6830 kOsAndroid,
6831 FEATURE_VALUE_TYPE(chrome::android::kStartSurfaceDisabledFeedImprovement)},
6832
spdonghao921dbdf42022-07-12 19:02:346833 {"enable-start-surface-refactor",
6834 flag_descriptions::kStartSurfaceRefactorName,
6835 flag_descriptions::kStartSurfaceRefactorDescription, kOsAndroid,
6836 FEATURE_VALUE_TYPE(chrome::android::kStartSurfaceRefactor)},
6837
Xinyi Ji411f38f2023-02-10 23:32:506838 {"enable-start-surface-on-tablet",
6839 flag_descriptions::kStartSurfaceOnTabletName,
6840 flag_descriptions::kStartSurfaceOnTabletDescription, kOsAndroid,
6841 FEATURE_VALUE_TYPE(chrome::android::kStartSurfaceOnTablet)},
6842
Sreeja Kamishetty0ecfb5602023-05-02 16:20:526843 {"enable-start-surface-spare-tab",
6844 flag_descriptions::kStartSurfaceSpareTabName,
6845 flag_descriptions::kStartSurfaceSpareTabDescription, kOsAndroid,
6846 FEATURE_VALUE_TYPE(chrome::android::kStartSurfaceSpareTab)},
6847
Xinyi Jie3289432023-03-08 20:42:226848 {"enable-start-surface-with-accessibility",
6849 flag_descriptions::kStartSurfaceWithAccessibilityName,
6850 flag_descriptions::kStartSurfaceWithAccessibilityDescription, kOsAndroid,
6851 FEATURE_VALUE_TYPE(chrome::android::kStartSurfaceWithAccessibility)},
6852
Xinyi Ji55e1c77db2023-05-29 19:22:226853 {"enable-surface-polish", flag_descriptions::kSurfacePolishName,
6854 flag_descriptions::kSurfacePolishDescription, kOsAndroid,
Xinyi Ji1f663ab2023-06-12 18:27:206855 FEATURE_WITH_PARAMS_VALUE_TYPE(chrome::android::kSurfacePolish,
6856 kSurfacePolishVariations,
6857 "SurfacePolish")},
Xinyi Ji55e1c77db2023-05-29 19:22:226858
spdonghaoe4b51242022-03-14 23:06:186859 {"enable-show-scrollable-mvt-on-ntp",
6860 flag_descriptions::kShowScrollableMVTOnNTPAndroidName,
6861 flag_descriptions::kShowScrollableMVTOnNTPAndroidDescription, kOsAndroid,
6862 FEATURE_VALUE_TYPE(chrome::android::kShowScrollableMVTOnNTPAndroid)},
6863
Xi Hanfe309c02022-06-07 16:57:266864 {"enable-search-resumption-module",
6865 flag_descriptions::kSearchResumptionModuleAndroidName,
6866 flag_descriptions::kSearchResumptionModuleAndroidDescription, kOsAndroid,
Xi Han502b0892022-07-06 18:22:166867 FEATURE_WITH_PARAMS_VALUE_TYPE(
6868 chrome::android::kSearchResumptionModuleAndroid,
6869 kSearchResumptionModuleAndroidVariations,
6870 "kSearchResumptionModuleAndroid")},
Xi Hanfe309c02022-06-07 16:57:266871
David Maunder915c7ef2019-09-20 16:22:086872 {"enable-close-tab-suggestions",
6873 flag_descriptions::kCloseTabSuggestionsName,
6874 flag_descriptions::kCloseTabSuggestionsDescription, kOsAndroid,
6875 FEATURE_WITH_PARAMS_VALUE_TYPE(chrome::android::kCloseTabSuggestions,
David Maunderc1dfc022019-08-27 18:00:376876 kCloseTabSuggestionsStaleVariations,
David Maunder915c7ef2019-09-20 16:22:086877 "CloseSuggestionsTab")},
David Maunderc1dfc022019-08-27 18:00:376878
David Maunder8cf7fd82020-08-20 19:31:546879 {"enable-critical-persisted-tab-data",
6880 flag_descriptions::kCriticalPersistedTabDataName,
6881 flag_descriptions::kCriticalPersistedTabDataDescription, kOsAndroid,
David Maunder19af778b2022-08-17 15:10:426882 FEATURE_WITH_PARAMS_VALUE_TYPE(chrome::android::kCriticalPersistedTabData,
6883 kCriticalPersistedTabDataVariations,
6884 "CriticalPersistedTabData")},
David Maunder8cf7fd82020-08-20 19:31:546885
Patrick Nolandfa5abf92022-02-02 20:26:136886 {"suppress-toolbar-captures",
6887 flag_descriptions::kSuppressToolbarCapturesName,
6888 flag_descriptions::kSuppressToolbarCapturesDescription, kOsAndroid,
6889 FEATURE_VALUE_TYPE(chrome::android::kSuppressToolbarCaptures)},
6890
Yusuf Ozuysal67f05a02019-02-15 19:30:526891 {"enable-tab-grid-layout", flag_descriptions::kTabGridLayoutAndroidName,
6892 flag_descriptions::kTabGridLayoutAndroidDescription, kOsAndroid,
Yue Zhangd7013b532019-06-20 00:06:226893 FEATURE_WITH_PARAMS_VALUE_TYPE(chrome::android::kTabGridLayoutAndroid,
6894 kTabGridLayoutAndroidVariations,
6895 "TabGridLayoutAndroid")},
Yusuf Ozuysal436d90b82019-03-15 22:17:586896
Ayman Almadhoun5a72fa742021-04-28 05:49:156897 {"enable-commerce-merchant-viewer",
6898 flag_descriptions::kCommerceMerchantViewerAndroidName,
6899 flag_descriptions::kCommerceMerchantViewerAndroidDescription, kOsAndroid,
Zhiyuan Cai7a67fff2021-06-18 21:35:536900 FEATURE_VALUE_TYPE(commerce::kCommerceMerchantViewer)},
6901
6902 {"enable-commerce-price-tracking",
Matt Jones125dfb42022-02-11 17:23:426903 commerce::flag_descriptions::kCommercePriceTrackingName,
6904 commerce::flag_descriptions::kCommercePriceTrackingDescription, kOsAndroid,
6905 FEATURE_WITH_PARAMS_VALUE_TYPE(
6906 commerce::kCommercePriceTracking,
6907 commerce::kCommercePriceTrackingAndroidVariations,
6908 "CommercePriceTracking")},
Ayman Almadhoun5a72fa742021-04-28 05:49:156909
Yue Zhange5610102019-11-01 19:46:396910 {"enable-tab-groups-continuation",
6911 flag_descriptions::kTabGroupsContinuationAndroidName,
6912 flag_descriptions::kTabGroupsContinuationAndroidDescription, kOsAndroid,
Calder Kitagawa42d24892023-03-14 18:25:436913 FEATURE_WITH_PARAMS_VALUE_TYPE(
6914 chrome::android::kTabGroupsContinuationAndroid,
6915 kTabGroupsContinuationAndroidVariations,
6916 "TabGroupsContinuationAndroid")},
Yue Zhange5610102019-11-01 19:46:396917
Xi Han3dec5782022-10-26 20:23:196918 {"enable-start-surface-return-time",
6919 flag_descriptions::kStartSurfaceReturnTimeName,
6920 flag_descriptions::kStartSurfaceReturnTimeDescription, kOsAndroid,
6921 FEATURE_WITH_PARAMS_VALUE_TYPE(chrome::android::kStartSurfaceReturnTime,
6922 kStartSurfaceReturnTimeVariations,
6923 "StartSurfaceReturnTime")},
Wei-Yin Chen (陳威尹)102222492019-05-22 19:27:096924
Ranjith Kagathi Anandad13a1a72023-05-20 00:28:306925 {"tab-drag-drop", flag_descriptions::kTabDragDropName,
6926 flag_descriptions::kTabDragDropDescription, kOsAndroid,
6927 FEATURE_VALUE_TYPE(chrome::android::kTabDragDropAndroid)},
6928
Matt Simmons1fd0c9f2019-04-15 19:08:226929 {"enable-tab-engagement-reporting",
6930 flag_descriptions::kTabEngagementReportingName,
6931 flag_descriptions::kTabEngagementReportingDescription, kOsAndroid,
6932 FEATURE_VALUE_TYPE(chrome::android::kTabEngagementReportingAndroid)},
Yue Zhange9e90c5a2019-11-26 21:44:036933
Sirisha Kavuluru263350ba2022-09-08 21:40:216934 {"enable-discover-multi-column",
6935 flag_descriptions::kDiscoverFeedMultiColumnAndroidName,
6936 flag_descriptions::kDiscoverFeedMultiColumnAndroidDescription, kOsAndroid,
6937 FEATURE_VALUE_TYPE(chrome::android::kDiscoverFeedMultiColumn)},
6938
Zhe Li5d302c82022-10-12 16:56:546939 {"enable-tab-strip-redesign",
6940 flag_descriptions::kTabStripRedesignAndroidName,
6941 flag_descriptions::kTabStripRedesignAndroidDescription, kOsAndroid,
Zhe Lib99a5faa62022-10-14 22:57:446942 FEATURE_WITH_PARAMS_VALUE_TYPE(chrome::android::kTabStripRedesign,
6943 kTabStripRedesignVariations,
6944 "TabStripRedesignAndroid")},
Zhe Li5d302c82022-10-12 16:56:546945
Zhe Lidbe38d12023-05-17 23:55:526946 {"enable-tablet-toolbar-reordering",
6947 flag_descriptions::kTabletToolbarReorderingAndroidName,
6948 flag_descriptions::kTabletToolbarReorderingAndroidDescription, kOsAndroid,
6949 FEATURE_VALUE_TYPE(chrome::android::kTabletToolbarReordering)},
6950
Zhe Li6ed8d9c2023-04-14 18:24:216951 {"enable-empty-states", flag_descriptions::kEmptyStatesAndroidName,
6952 flag_descriptions::kEmptyStatesAndroidDescription, kOsAndroid,
6953 FEATURE_VALUE_TYPE(chrome::android::kEmptyStates)},
6954
Sirisha Kavulurue968d502022-10-27 19:37:406955 {"enable-foldable-jank-fix", flag_descriptions::kFoldableJankFixAndroidName,
6956 flag_descriptions::kFoldableJankFixAndroidDescription, kOsAndroid,
Sirisha Kavuluru22e7a202022-10-31 21:06:016957 FEATURE_WITH_PARAMS_VALUE_TYPE(chrome::android::kFoldableJankFix,
6958 kFoldableJankFixDelayVariations,
6959 "FoldableJankFix")},
Neil Coronado97e135512023-01-11 20:21:096960
Neil Coronado6a12ed82023-05-11 23:59:006961 {"enable-tab-strip-startup-refactoring",
6962 flag_descriptions::kTabStripStartupRefactoringName,
6963 flag_descriptions::kTabStripStartupRefactoringDescription, kOsAndroid,
6964 FEATURE_VALUE_TYPE(chrome::android::kTabStripStartupRefactoring)},
6965
Neil Coronado97e135512023-01-11 20:21:096966 {"enable-baseline-gm3-surface-colors",
6967 flag_descriptions::kBaselineGM3SurfaceColorsName,
6968 flag_descriptions::kBaselineGM3SurfaceColorsDescription, kOsAndroid,
6969 FEATURE_VALUE_TYPE(chrome::android::kBaselineGM3SurfaceColors)},
Neil Coronado28176942023-05-01 23:17:456970
6971 {"enable-delay-temp-strip-removal",
6972 flag_descriptions::kDelayTempStripRemovalName,
6973 flag_descriptions::kDelayTempStripRemovalDescription, kOsAndroid,
6974 FEATURE_VALUE_TYPE(chrome::android::kDelayTempStripRemoval)},
Xiaohan Wang064b68cd2022-01-19 19:12:286975#endif // BUILDFLAG(IS_ANDROID)
Matt Simmons2048b2a2018-12-20 20:12:566976
Mustafa Emre Acerb3aa36a82018-05-22 21:44:056977 {"unsafely-treat-insecure-origin-as-secure",
6978 flag_descriptions::kTreatInsecureOriginAsSecureName,
Elly Fong-Jones94fc8632019-08-14 18:23:036979 flag_descriptions::kTreatInsecureOriginAsSecureDescription, kOsAll,
Lukasz Anforowicz9527fd42019-03-13 19:08:506980 ORIGIN_LIST_VALUE_TYPE(
6981 network::switches::kUnsafelyTreatInsecureOriginAsSecure,
6982 "")},
Adam Ricec786ad8a2018-05-22 09:49:156983
Sharon Yangf390ea92021-06-23 19:55:406984 {"disable-process-reuse", flag_descriptions::kDisableProcessReuse,
6985 flag_descriptions::kDisableProcessReuseDescription, kOsDesktop,
6986 FEATURE_VALUE_TYPE(features::kDisableProcessReuse)},
6987
Xiaohan Wang064b68cd2022-01-19 19:12:286988#if !BUILDFLAG(IS_ANDROID)
evliu467c11b82020-11-17 01:29:306989 {"enable-accessibility-live-caption",
6990 flag_descriptions::kEnableAccessibilityLiveCaptionName,
Mark Schillaci7a5cf4f2022-02-10 17:12:036991 flag_descriptions::kEnableAccessibilityLiveCaptionDescription, kOsDesktop,
Katie Df558c1a2020-04-21 20:33:596992 FEATURE_VALUE_TYPE(media::kLiveCaption)},
Irem Uguza84737922022-05-19 09:37:156993
Abigail Kleincef69482023-01-24 22:14:376994 {"read-anything", flag_descriptions::kReadAnythingName,
6995 flag_descriptions::kReadAnythingDescription, kOsDesktop,
6996 FEATURE_VALUE_TYPE(features::kReadAnything)},
6997
6998 {"read-anything-with-screen2x",
6999 flag_descriptions::kReadAnythingWithScreen2xName,
7000 flag_descriptions::kReadAnythingWithScreen2xDescription, kOsDesktop,
7001 FEATURE_VALUE_TYPE(features::kReadAnythingWithScreen2x)},
7002
Irem Uguza84737922022-05-19 09:37:157003 {"support-tool", flag_descriptions::kSupportTool,
7004 flag_descriptions::kSupportToolDescription, kOsDesktop,
7005 FEATURE_VALUE_TYPE(features::kSupportTool)},
Yumin Su90c764de2022-09-28 19:56:157006
Irem Uguz1eca96212023-04-24 14:04:157007 {"support-tool-copy-token-button",
7008 flag_descriptions::kSupportToolCopyTokenButton,
7009 flag_descriptions::kSupportToolCopyTokenButtonDescription, kOsDesktop,
7010 FEATURE_VALUE_TYPE(features::kSupportToolCopyTokenButton)},
7011
Yumin Su90c764de2022-09-28 19:56:157012 {"support-tool-screenshot", flag_descriptions::kSupportToolScreenshot,
7013 flag_descriptions::kSupportToolScreenshotDescription, kOsDesktop,
7014 FEATURE_VALUE_TYPE(features::kSupportToolScreenshot)},
Mark Schillaci402301cb2022-02-02 18:36:377015#endif // !BUILDFLAG(IS_ANDROID)
Abigail Kleine01032972021-11-02 21:50:207016
7017 {"enable-auto-disable-accessibility",
7018 flag_descriptions::kEnableAutoDisableAccessibilityName,
Mark Schillaci7a5cf4f2022-02-10 17:12:037019 flag_descriptions::kEnableAutoDisableAccessibilityDescription, kOsAll,
Abigail Kleine01032972021-11-02 21:50:207020 FEATURE_VALUE_TYPE(features::kAutoDisableAccessibility)},
Katie Df558c1a2020-04-21 20:33:597021
Xiaohan Wang064b68cd2022-01-19 19:12:287022#if BUILDFLAG(IS_ANDROID)
Jack Lynchef0bac52022-11-01 21:22:187023 {"enable-auto-disable-accessibility-v2",
7024 flag_descriptions::kEnableAutoDisableAccessibilityV2Name,
7025 flag_descriptions::kEnableAutoDisableAccessibilityV2Description,
7026 kOsAndroid, FEATURE_VALUE_TYPE(features::kAutoDisableAccessibilityV2)},
7027#endif
7028
7029#if BUILDFLAG(IS_ANDROID)
Ramin Halavatiba7ddcc2019-11-13 06:19:287030 {"cct-incognito", flag_descriptions::kCCTIncognitoName,
7031 flag_descriptions::kCCTIncognitoDescription, kOsAndroid,
7032 FEATURE_VALUE_TYPE(chrome::android::kCCTIncognito)},
Michael van Ouwerkerkbda4ad82018-06-19 14:08:007033#endif
7034
Xiaohan Wang064b68cd2022-01-19 19:12:287035#if BUILDFLAG(IS_ANDROID)
Rohit Agarwalc3973312020-11-18 14:40:237036 {"cct-incognito-available-to-third-party",
7037 flag_descriptions::kCCTIncognitoAvailableToThirdPartyName,
7038 flag_descriptions::kCCTIncognitoAvailableToThirdPartyDescription,
7039 kOsAndroid,
7040 FEATURE_VALUE_TYPE(chrome::android::kCCTIncognitoAvailableToThirdParty)},
7041#endif
7042
Xiaohan Wang064b68cd2022-01-19 19:12:287043#if BUILDFLAG(IS_ANDROID)
Jinsuk Kim9d042572023-05-16 03:31:347044 {"cct-page-insights-hub", flag_descriptions::kCCTPageInsightsHubName,
7045 flag_descriptions::kCCTPageInsightsHubDescription, kOsAndroid,
7046 FEATURE_VALUE_TYPE(chrome::android::kCCTPageInsightsHub)},
7047
Shimi Zhangdabb3c22021-09-16 22:10:257048 {"cct-resizable-90-maximum-height",
7049 flag_descriptions::kCCTResizable90MaximumHeightName,
7050 flag_descriptions::kCCTResizable90MaximumHeightDescription, kOsAndroid,
7051 FEATURE_VALUE_TYPE(chrome::android::kCCTResizable90MaximumHeight)},
Shimi Zhangdabb3c22021-09-16 22:10:257052 {"cct-resizable-for-third-parties",
7053 flag_descriptions::kCCTResizableForThirdPartiesName,
7054 flag_descriptions::kCCTResizableForThirdPartiesDescription, kOsAndroid,
Jinsuk Kim6fdac9242022-01-26 21:58:007055 FEATURE_WITH_PARAMS_VALUE_TYPE(
7056 chrome::android::kCCTResizableForThirdParties,
7057 kCCTResizableThirdPartiesDefaultPolicyVariations,
7058 "CCTResizableThirdPartiesDefaultPolicy")},
Kevin Grosu617332a2022-11-22 23:24:557059 {"cct-resizable-side-sheet", flag_descriptions::kCCTResizableSideSheetName,
7060 flag_descriptions::kCCTResizableSideSheetDescription, kOsAndroid,
7061 FEATURE_VALUE_TYPE(chrome::android::kCCTResizableSideSheet)},
Zach Katzadd35f12023-03-24 19:48:437062 {"cct-resizable-side-sheet-discover-feed-settings",
7063 flag_descriptions::kCCTResizableSideSheetDiscoverFeedSettingsName,
7064 flag_descriptions::kCCTResizableSideSheetDiscoverFeedSettingsDescription,
7065 kOsAndroid,
7066 FEATURE_VALUE_TYPE(
7067 chrome::android::kCCTResizableSideSheetDiscoverFeedSettings)},
Zach Katzec1cc2f2023-01-26 01:37:467068 {"cct-resizable-side-sheet-for-third-parties",
7069 flag_descriptions::kCCTResizableSideSheetForThirdPartiesName,
7070 flag_descriptions::kCCTResizableSideSheetForThirdPartiesDescription,
7071 kOsAndroid,
7072 FEATURE_VALUE_TYPE(
7073 chrome::android::kCCTResizableSideSheetForThirdParties)},
Zach Katzdc587ef2022-10-28 18:35:267074 {"cct-retaining-state-in-memory",
7075 flag_descriptions::kCCTRetainingStateInMemoryName,
7076 flag_descriptions::kCCTRetainingStateInMemoryDescription, kOsAndroid,
7077 FEATURE_VALUE_TYPE(chrome::android::kCCTRetainingStateInMemory)},
Shimi Zhangdabb3c22021-09-16 22:10:257078#endif
7079
Sinan Sahinc04b1c62022-07-01 18:14:027080#if BUILDFLAG(IS_ANDROID)
7081 {"cct-real-time-engagement-signals",
7082 flag_descriptions::kCCTRealTimeEngagementSignalsName,
7083 flag_descriptions::kCCTRealTimeEngagementSignalsDescription, kOsAndroid,
Sinan Sahince2514f2022-12-01 02:51:337084 FEATURE_WITH_PARAMS_VALUE_TYPE(
7085 chrome::android::kCCTRealTimeEngagementSignals,
7086 kCCTRealTimeEngagementSignalsVariations,
7087 "CCTRealTimeEngagementSignals")},
Sinan Sahind9fa5c52023-03-02 02:57:047088 {"cct-real-time-engagement-signals-alternative-impl",
7089 flag_descriptions::kCCTRealTimeEngagementSignalsAlternativeImplName,
7090 flag_descriptions::kCCTRealTimeEngagementSignalsAlternativeImplDescription,
7091 kOsAndroid,
7092 FEATURE_WITH_PARAMS_VALUE_TYPE(
7093 chrome::android::kCCTRealTimeEngagementSignalsAlternativeImpl,
7094 kCCTRealTimeEngagementSignalsAlternativeImplVariations,
7095 "CCTRealTimeEngagementSignalsAlternativeImpl")},
Sinan Sahinc04b1c62022-07-01 18:14:027096#endif
7097
Wenyu Fuf929f732022-07-08 19:48:477098#if BUILDFLAG(IS_ANDROID)
7099 {"cct-brand-transparency", flag_descriptions::kCCTBrandTransparencyName,
7100 flag_descriptions::kCCTBrandTransparencyDescription, kOsAndroid,
Wenyu Fuabf67d472022-08-12 00:49:287101 FEATURE_WITH_PARAMS_VALUE_TYPE(chrome::android::kCCTBrandTransparency,
7102 kCctBrandTransparencyVariations,
7103 "CCTBrandTransparency")},
Wenyu Fuf929f732022-07-08 19:48:477104#endif
7105
Eric Willigers02f80aa2022-04-29 01:29:327106#if BUILDFLAG(IS_CHROMEOS)
Per Åhgrenbbd354032022-02-18 17:12:177107 {"allow-dsp-based-aec", flag_descriptions::kCrOSDspBasedAecAllowedName,
Fred Shihebe9cf82022-04-19 21:06:267108 flag_descriptions::kCrOSDspBasedAecAllowedDescription, kOsCrOS | kOsLacros,
Lionel Koenigc9ba57b2023-01-20 09:56:567109 FEATURE_VALUE_TYPE(media::kCrOSDspBasedAecAllowed)},
Per Åhgrenbbd354032022-02-18 17:12:177110 {"allow-dsp-based-ns", flag_descriptions::kCrOSDspBasedNsAllowedName,
Fred Shihebe9cf82022-04-19 21:06:267111 flag_descriptions::kCrOSDspBasedNsAllowedDescription, kOsCrOS | kOsLacros,
Lionel Koenigc9ba57b2023-01-20 09:56:567112 FEATURE_VALUE_TYPE(media::kCrOSDspBasedNsAllowed)},
Per Åhgrenbbd354032022-02-18 17:12:177113 {"allow-dsp-based-agc", flag_descriptions::kCrOSDspBasedAgcAllowedName,
Fred Shihebe9cf82022-04-19 21:06:267114 flag_descriptions::kCrOSDspBasedAgcAllowedDescription, kOsCrOS | kOsLacros,
Lionel Koenigc9ba57b2023-01-20 09:56:567115 FEATURE_VALUE_TYPE(media::kCrOSDspBasedAgcAllowed)},
Per Åhgrend439e1e2021-05-16 13:49:557116 {"enforce-system-aec", flag_descriptions::kCrOSEnforceSystemAecName,
Fred Shihebe9cf82022-04-19 21:06:267117 flag_descriptions::kCrOSEnforceSystemAecDescription, kOsCrOS | kOsLacros,
Lionel Koenigc9ba57b2023-01-20 09:56:567118 FEATURE_VALUE_TYPE(media::kCrOSEnforceSystemAec)},
Per Åhgrend439e1e2021-05-16 13:49:557119 {"enforce-system-aec-agc", flag_descriptions::kCrOSEnforceSystemAecAgcName,
Fred Shih87e6a562022-04-13 19:51:517120 flag_descriptions::kCrOSEnforceSystemAecAgcDescription,
Joseph Kim03f9cda52023-01-23 05:25:217121 kOsCrOS | kOsLacros, FEATURE_VALUE_TYPE(media::kCrOSEnforceSystemAecAgc)},
Per Åhgrend439e1e2021-05-16 13:49:557122 {"enforce-system-aec-ns-agc",
7123 flag_descriptions::kCrOSEnforceSystemAecNsAgcName,
Hsin-Yu Chaoe46eb5992022-03-18 13:34:277124 flag_descriptions::kCrOSEnforceSystemAecNsAgcDescription,
Fred Shihebe9cf82022-04-19 21:06:267125 kOsCrOS | kOsLacros,
Lionel Koenigc9ba57b2023-01-20 09:56:567126 FEATURE_VALUE_TYPE(media::kCrOSEnforceSystemAecNsAgc)},
Per Åhgrend439e1e2021-05-16 13:49:557127 {"enforce-system-aec-ns", flag_descriptions::kCrOSEnforceSystemAecNsName,
Fred Shihebe9cf82022-04-19 21:06:267128 flag_descriptions::kCrOSEnforceSystemAecNsDescription, kOsCrOS | kOsLacros,
Lionel Koenigc9ba57b2023-01-20 09:56:567129 FEATURE_VALUE_TYPE(media::kCrOSEnforceSystemAecNs)},
Per Åhgrend439e1e2021-05-16 13:49:557130#endif
7131
Eddy Hsu26abc1ce2023-05-31 01:00:587132#if BUILDFLAG(IS_CHROMEOS)
7133 {"ignore-ui-gains", flag_descriptions::kIgnoreUiGainsName,
7134 flag_descriptions::kIgnoreUiGainsDescription, kOsCrOS | kOsLacros,
7135 FEATURE_VALUE_TYPE(media::kIgnoreUiGains)},
Eddy Hsu03885a02023-06-05 20:29:577136 {"show-force-respect-ui-gains-toggle",
7137 flag_descriptions::kShowForceRespectUiGainsToggleName,
7138 flag_descriptions::kShowForceRespectUiGainsToggleDescription,
7139 kOsCrOS | kOsLacros,
7140 FEATURE_VALUE_TYPE(media::kShowForceRespectUiGainsToggle)},
Eddy Hsu26abc1ce2023-05-31 01:00:587141#endif
7142
Mehdi Kazemif155bc92021-11-22 18:35:527143 {"enable-css-selector-fragment-anchor",
7144 flag_descriptions::kEnableCssSelectorFragmentAnchorName,
7145 flag_descriptions::kEnableCssSelectorFragmentAnchorDescription, kOsAll,
7146 FEATURE_VALUE_TYPE(blink::features::kCssSelectorFragmentAnchor)},
7147
Mehdi Kazemi4db00b92022-07-08 14:25:207148 {"drop-input-events-before-first-paint",
7149 flag_descriptions::kDropInputEventsBeforeFirstPaintName,
7150 flag_descriptions::kDropInputEventsBeforeFirstPaintDescription, kOsAll,
7151 FEATURE_VALUE_TYPE(blink::features::kDropInputEventsBeforeFirstPaint)},
7152
Joao Victor Almeida371702c2021-01-08 18:41:567153 // Should only be available if kResamplingScrollEvents is on, and using
7154 // linear resampling.
7155 {"enable-resampling-scroll-events-experimental-prediction",
7156 flag_descriptions::kEnableResamplingScrollEventsExperimentalPredictionName,
7157 flag_descriptions::
7158 kEnableResamplingScrollEventsExperimentalPredictionDescription,
7159 kOsAll,
7160 FEATURE_WITH_PARAMS_VALUE_TYPE(
7161 ::features::kResamplingScrollEventsExperimentalPrediction,
7162 kResamplingScrollEventsExperimentalPredictionVariations,
7163 "ResamplingScrollEventsExperimentalLatency")},
7164
Yuta Hijikata235fc62b2020-12-08 03:48:327165#if BUILDFLAG(IS_CHROMEOS_ASH)
Andres Calderon Jaramillo43c0e8a2018-08-21 02:46:237166 {"enable-vaapi-jpeg-image-decode-acceleration",
7167 flag_descriptions::kVaapiJpegImageDecodeAccelerationName,
Andres Calderon Jaramillo806aeefb2019-08-01 19:21:417168 flag_descriptions::kVaapiJpegImageDecodeAccelerationDescription, kOsCrOS,
Andres Calderon Jaramillo43c0e8a2018-08-21 02:46:237169 FEATURE_VALUE_TYPE(features::kVaapiJpegImageDecodeAcceleration)},
Gil Dekel8f4b5642019-07-27 05:27:407170
7171 {"enable-vaapi-webp-image-decode-acceleration",
7172 flag_descriptions::kVaapiWebPImageDecodeAccelerationName,
7173 flag_descriptions::kVaapiWebPImageDecodeAccelerationDescription, kOsCrOS,
7174 FEATURE_VALUE_TYPE(features::kVaapiWebPImageDecodeAcceleration)},
Andres Calderon Jaramillo43c0e8a2018-08-21 02:46:237175#endif
Sammie Quone302a1802019-02-11 17:54:457176
Bill Carr49f46082022-02-28 17:54:417177#if BUILDFLAG(IS_WIN)
7178 {"calculate-native-win-occlusion",
7179 flag_descriptions::kCalculateNativeWinOcclusionName,
7180 flag_descriptions::kCalculateNativeWinOcclusionDescription, kOsWin,
7181 FEATURE_VALUE_TYPE(features::kCalculateNativeWinOcclusion)},
7182#endif // BUILDFLAG(IS_WIN)
7183
Xiaohan Wang064b68cd2022-01-19 19:12:287184#if !BUILDFLAG(IS_ANDROID)
Huanzhong Huang8058ea92020-02-05 09:49:327185 {"happiness-tracking-surveys-for-desktop-demo",
7186 flag_descriptions::kHappinessTrackingSurveysForDesktopDemoName,
7187 flag_descriptions::kHappinessTrackingSurveysForDesktopDemoDescription,
7188 kOsDesktop,
7189 FEATURE_VALUE_TYPE(features::kHappinessTrackingSurveysForDesktopDemo)},
Xiaohan Wang064b68cd2022-01-19 19:12:287190#endif // !BUILDFLAG(IS_ANDROID)
Jeffrey Cohenf04130a42018-08-29 00:22:277191
Nicolas Ouellet-Payeura77464c2020-10-14 15:19:497192 {"destroy-profile-on-browser-close",
7193 flag_descriptions::kDestroyProfileOnBrowserCloseName,
7194 flag_descriptions::kDestroyProfileOnBrowserCloseDescription,
Fred Shih87e6a562022-04-13 19:51:517195 kOsMac | kOsWin | kOsLinux | kOsLacros | kOsFuchsia,
Nicolas Ouellet-Payeura77464c2020-10-14 15:19:497196 FEATURE_VALUE_TYPE(features::kDestroyProfileOnBrowserClose)},
7197
Nicolas Ouellet-Payeur4aff8682022-01-26 16:03:167198 {"destroy-system-profiles", flag_descriptions::kDestroySystemProfilesName,
7199 flag_descriptions::kDestroySystemProfilesDescription,
Fred Shih87e6a562022-04-13 19:51:517200 kOsCrOS | kOsMac | kOsWin | kOsLinux | kOsLacros | kOsFuchsia,
Nicolas Ouellet-Payeur4aff8682022-01-26 16:03:167201 FEATURE_VALUE_TYPE(features::kDestroySystemProfiles)},
7202
Xiaohan Wang064b68cd2022-01-19 19:12:287203#if BUILDFLAG(IS_WIN)
Olli Etuaho122321192018-09-07 10:15:297204 {"use-angle", flag_descriptions::kUseAngleName,
Jonah Ryan-Davis90ae3322021-09-21 17:34:487205 flag_descriptions::kUseAngleDescriptionWindows, kOsWin,
7206 MULTI_VALUE_TYPE(kUseAngleChoicesWindows)},
Xiaohan Wang064b68cd2022-01-19 19:12:287207#elif BUILDFLAG(IS_MAC)
Jonah Ryan-Davis90ae3322021-09-21 17:34:487208 {"use-angle", flag_descriptions::kUseAngleName,
7209 flag_descriptions::kUseAngleDescriptionMac, kOsMac,
7210 MULTI_VALUE_TYPE(kUseAngleChoicesMac)},
Olli Etuaho122321192018-09-07 10:15:297211#endif
Varun Khaneja80712a82018-10-12 23:34:597212
Yuta Hijikata235fc62b2020-12-08 03:48:327213#if BUILDFLAG(IS_CHROMEOS_ASH)
Xiaohui Chenf4283f32018-11-26 20:02:507214 {"enable-assistant-dsp", flag_descriptions::kEnableGoogleAssistantDspName,
Xiaohui Chene6dd8892019-08-12 21:50:097215 flag_descriptions::kEnableGoogleAssistantDspDescription, kOsCrOS,
Yeunjoo Choi65c73cc2022-08-02 05:30:167216 FEATURE_VALUE_TYPE(ash::assistant::features::kEnableDspHotword)},
Yue Li806e5d82022-09-14 00:16:027217#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Angela Xiaod9f6c682022-05-07 01:00:217218
Yue Li806e5d82022-09-14 00:16:027219#if BUILDFLAG(IS_CHROMEOS)
Yue Li26c44942021-08-12 17:25:117220 {"disable-quick-answers-v2-translation",
7221 flag_descriptions::kDisableQuickAnswersV2TranslationName,
Yue Li806e5d82022-09-14 00:16:027222 flag_descriptions::kDisableQuickAnswersV2TranslationDescription,
7223 kOsCrOS | kOsLacros,
Yue Li26c44942021-08-12 17:25:117224 FEATURE_VALUE_TYPE(chromeos::features::kDisableQuickAnswersV2Translation)},
Angela Xiao34964f72023-04-19 20:19:207225 {"quick-answers-rich-card", flag_descriptions::kQuickAnswersRichCardName,
7226 flag_descriptions::kQuickAnswersRichCardDescription, kOsCrOS | kOsLacros,
7227 FEATURE_VALUE_TYPE(chromeos::features::kQuickAnswersRichCard)},
Yue Li806e5d82022-09-14 00:16:027228#endif // BUILDFLAG(IS_CHROMEOS)
Michael Lippautz6081dfa2018-10-18 13:10:147229
Xiaohan Wang064b68cd2022-01-19 19:12:287230#if BUILDFLAG(IS_ANDROID)
Jinsuk Kimfa1b7eb2021-06-30 00:04:327231 {"instance-switcher", flag_descriptions::kInstanceSwitcherName,
7232 flag_descriptions::kInstanceSwitcherDescription, kOsAndroid,
7233 FEATURE_VALUE_TYPE(chrome::android::kInstanceSwitcher)},
Xiaohan Wang064b68cd2022-01-19 19:12:287234#endif // BUILDFLAG(IS_ANDROID)
Jinsuk Kim55b5ab72021-05-17 00:11:307235
James Hollyer24f30cb722021-06-18 21:22:247236 {"enable-gamepad-button-axis-events",
7237 flag_descriptions::kEnableGamepadButtonAxisEventsName,
7238 flag_descriptions::kEnableGamepadButtonAxisEventsDescription, kOsAll,
7239 FEATURE_VALUE_TYPE(features::kEnableGamepadButtonAxisEvents)},
7240
Bradley Needham835f0f492023-04-04 23:00:547241 {"enable-gamepad-multitouch",
7242 flag_descriptions::kEnableGamepadMultitouchName,
7243 flag_descriptions::kEnableGamepadMultitouchDescription, kOsWin,
7244 FEATURE_VALUE_TYPE(features::kEnableGamepadMultitouch)},
7245
James Hollyer6e5f5c32020-07-27 21:18:107246 {"restrict-gamepad-access", flag_descriptions::kRestrictGamepadAccessName,
7247 flag_descriptions::kRestrictGamepadAccessDescription, kOsAll,
7248 FEATURE_VALUE_TYPE(features::kRestrictGamepadAccess)},
7249
Xiaohan Wang064b68cd2022-01-19 19:12:287250#if !BUILDFLAG(IS_ANDROID)
Kyle Milkacf3aa6e12021-07-28 00:34:027251 {"sharing-desktop-screenshots",
7252 flag_descriptions::kSharingDesktopScreenshotsName,
7253 flag_descriptions::kSharingDesktopScreenshotsDescription, kOsDesktop,
7254 FEATURE_VALUE_TYPE(sharing_hub::kDesktopScreenshots)},
7255#endif
7256
Yuta Hijikata235fc62b2020-12-08 03:48:327257#if BUILDFLAG(IS_CHROMEOS_ASH)
sophiewencc86b2c2023-02-07 18:29:467258 {"window-layout-menu", flag_descriptions::kWindowLayoutMenu,
7259 flag_descriptions::kWindowLayoutMenuDescription, kOsCrOS,
7260 FEATURE_VALUE_TYPE(chromeos::wm::features::kWindowLayoutMenu)},
Richard Chui9bb649182022-12-09 07:12:027261 {"cros-labs-overview-desk-navigation",
7262 flag_descriptions::kOverviewDeskNavigationName,
7263 flag_descriptions::kOverviewDeskNavigationDescription, kOsCrOS,
7264 FEATURE_VALUE_TYPE(ash::features::kOverviewDeskNavigation)},
Yuta Hijikata235fc62b2020-12-08 03:48:327265#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Xiaohui Chenc3baca42018-11-30 19:29:377266
Yuta Hijikata235fc62b2020-12-08 03:48:327267#if BUILDFLAG(IS_CHROMEOS_ASH)
Xiaohui Chenc3baca42018-11-30 19:29:377268 {"enable-assistant-stereo-input",
7269 flag_descriptions::kEnableGoogleAssistantStereoInputName,
Xiaohui Chene6dd8892019-08-12 21:50:097270 flag_descriptions::kEnableGoogleAssistantStereoInputDescription, kOsCrOS,
Yeunjoo Choi65c73cc2022-08-02 05:30:167271 FEATURE_VALUE_TYPE(ash::assistant::features::kEnableStereoAudioInput)},
Yuta Hijikata235fc62b2020-12-08 03:48:327272#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Henrik Grunell63f2d772018-12-06 17:25:207273
Vikas Soni78daa632019-01-12 01:32:527274 {"enable-gpu-service-logging",
7275 flag_descriptions::kEnableGpuServiceLoggingName,
7276 flag_descriptions::kEnableGpuServiceLoggingDescription, kOsAll,
7277 SINGLE_VALUE_TYPE(switches::kEnableGPUServiceLogging)},
Daniel Ng96ab0c82019-01-16 01:21:557278
Xiaohan Wang064b68cd2022-01-19 19:12:287279#if !BUILDFLAG(IS_ANDROID)
Tommy Steimel1aadd7b2019-01-18 19:39:427280 {"hardware-media-key-handling",
7281 flag_descriptions::kHardwareMediaKeyHandling,
Tommy Steimelc9bc2ce2019-03-12 22:45:587282 flag_descriptions::kHardwareMediaKeyHandlingDescription, kOsDesktop,
Tommy Steimel1aadd7b2019-01-18 19:39:427283 FEATURE_VALUE_TYPE(media::kHardwareMediaKeyHandling)},
7284#endif
Xing Liu7d57dd32019-01-20 02:34:187285
Yuta Hijikata235fc62b2020-12-08 03:48:327286#if BUILDFLAG(IS_CHROMEOS_ASH)
echo linkerb7f43382022-02-10 23:20:347287 {"app-management-app-details",
7288 flag_descriptions::kAppManagementAppDetailsName,
7289 flag_descriptions::kAppManagementAppDetailsDescription, kOsCrOS,
7290 FEATURE_VALUE_TYPE(features::kAppManagementAppDetails)},
7291
Shengsong Tan81338972021-12-22 05:27:507292 {"arc-window-predictor", flag_descriptions::kArcWindowPredictorName,
7293 flag_descriptions::kArcWindowPredictorDescription, kOsCrOS,
7294 FEATURE_VALUE_TYPE(full_restore::features::kArcWindowPredictor)},
7295
Miguel Casas-Sanchezdcd69152019-09-04 21:22:367296 {"use-fake-device-for-media-stream",
7297 flag_descriptions::kUseFakeDeviceForMediaStreamName,
7298 flag_descriptions::kUseFakeDeviceForMediaStreamDescription, kOsCrOS,
7299 FEATURE_VALUE_TYPE(media::kUseFakeDeviceForMediaStream)},
Yuta Hijikata235fc62b2020-12-08 03:48:327300#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Reka Normana11e57fc2019-01-29 21:56:587301
Cici Ruan846b6712022-08-12 21:08:187302#if BUILDFLAG(IS_CHROMEOS_ASH)
Cici Ruan846b6712022-08-12 21:08:187303 {"arc-input-overlay-beta", flag_descriptions::kArcInputOverlayNameBeta,
7304 flag_descriptions::kArcInputOverlayDescriptionBeta, kOsCrOS,
7305 FEATURE_VALUE_TYPE(ash::features::kArcInputOverlayBeta)},
Joseph Panga61e7db2022-11-29 21:23:387306
Cici Ruan2374f1b02022-12-07 01:19:587307 {"arc-input-overlay-alpha-v2",
7308 flag_descriptions::kArcInputOverlayNameAlphaV2,
7309 flag_descriptions::kArcInputOverlayDescriptionAlphaV2, kOsCrOS,
7310 FEATURE_VALUE_TYPE(ash::features::kArcInputOverlayAlphaV2)},
Cici Ruan846b6712022-08-12 21:08:187311#endif // BUILDFLAG(IS_CHROMEOS_ASH)
7312
Xiaohan Wang064b68cd2022-01-19 19:12:287313#if BUILDFLAG(IS_CHROMEOS) && BUILDFLAG(USE_CHROMEOS_MEDIA_ACCELERATION)
Miguel Casas0f1575a2020-07-01 01:01:257314 {"chromeos-direct-video-decoder",
7315 flag_descriptions::kChromeOSDirectVideoDecoderName,
Pilar Molina Lopezfb5103b72021-02-26 23:35:527316 flag_descriptions::kChromeOSDirectVideoDecoderDescription,
Fred Shihebe9cf82022-04-19 21:06:267317 kOsCrOS | kOsLacros,
Miguel Casas0f1575a2020-07-01 01:01:257318 FEATURE_VALUE_TYPE(media::kUseChromeOSDirectVideoDecoder)},
Hirokazu Honda5a3450c2022-06-17 14:16:257319
7320 {"enable-vbr-encode-acceleration",
7321 flag_descriptions::kChromeOSHWVBREncodingName,
7322 flag_descriptions::kChromeOSHWVBREncodingDescription, kOsCrOS | kOsLacros,
7323 FEATURE_VALUE_TYPE(media::kChromeOSHWVBREncoding)},
Fritz Koeniga0770f5c2022-04-06 18:17:557324#if defined(ARCH_CPU_ARM_FAMILY)
Justin Green0b5c48992022-10-10 22:16:047325 {"prefer-gl-image-processor",
7326 flag_descriptions::kPreferGLImageProcessorName,
7327 flag_descriptions::kPreferGLImageProcessorDescription, kOsCrOS | kOsLacros,
7328 FEATURE_VALUE_TYPE(media::kPreferGLImageProcessor)},
Fritz Koeniga0770f5c2022-04-06 18:17:557329#endif // defined(ARCH_CPU_ARM_FAMILY)
7330#endif // BUILDFLAG(IS_CHROMEOS) && BUILDFLAG(USE_CHROMEOS_MEDIA_ACCELERATION)
Frank Liberato754d14f2019-01-30 23:31:177331
Xiaohan Wang064b68cd2022-01-19 19:12:287332#if BUILDFLAG(IS_ANDROID)
Alice Wang345e09442021-07-05 09:03:297333 {"force-startup-signin-promo",
7334 flag_descriptions::kForceStartupSigninPromoName,
7335 flag_descriptions::kForceStartupSigninPromoDescription, kOsAndroid,
7336 FEATURE_VALUE_TYPE(switches::kForceStartupSigninPromo)},
Alice Wang97469582022-05-09 08:00:267337
7338 {"tangible-sync", flag_descriptions::kTangibleSyncName,
7339 flag_descriptions::kTangibleSyncDescription, kOsAndroid,
Tanmoy Mollik3256aec2022-08-17 21:45:237340 FEATURE_WITH_PARAMS_VALUE_TYPE(switches::kTangibleSync,
7341 kTangibleSyncVariations,
7342 "TangibleSyncVariations")},
Tanmoy Mollik429d21a2022-11-28 15:42:067343
7344 {"identity-status-consistency",
7345 flag_descriptions::kIdentityStatusConsistencyName,
7346 flag_descriptions::kIdentityStatusConsistencyDescription, kOsAndroid,
7347 FEATURE_VALUE_TYPE(switches::kIdentityStatusConsistency)},
Xiaohan Wang064b68cd2022-01-19 19:12:287348#endif // BUILDFLAG(IS_ANDROID)
Ioana Pandeled8dc2b692019-02-20 12:04:157349
Christopher Cameron1e62f192023-04-18 23:21:057350 {"gainmap-hdr-images", flag_descriptions::kGainmapHdrImagesName,
7351 flag_descriptions::kGainmapHdrImagesDescription, kOsAll,
7352 FEATURE_VALUE_TYPE(blink::features::kGainmapHdrImages)},
7353
Maryla26d1a412023-06-27 19:18:287354 {"avif-gainmap-hdr-images", flag_descriptions::kAvifGainmapHdrImagesName,
7355 flag_descriptions::kAvifGainmapHdrImagesDescription, kOsAll,
7356 FEATURE_VALUE_TYPE(blink::features::kAvifGainmapHdrImages)},
7357
Caitlin Fischer31e60b22019-03-21 21:43:377358 {"autofill-use-improved-label-disambiguation",
7359 flag_descriptions::kAutofillUseImprovedLabelDisambiguationName,
7360 flag_descriptions::kAutofillUseImprovedLabelDisambiguationDescription,
7361 kOsAll,
7362 FEATURE_VALUE_TYPE(
7363 autofill::features::kAutofillUseImprovedLabelDisambiguation)},
Caitlin Fischerfd366e72019-02-20 20:47:327364
Darwin Huang1473bc32021-06-18 01:56:237365 {"file-handling-icons", flag_descriptions::kFileHandlingIconsName,
7366 flag_descriptions::kFileHandlingIconsDescription, kOsDesktop,
7367 FEATURE_VALUE_TYPE(blink::features::kFileHandlingIcons)},
7368
W. James MacLeanf79c97e2019-05-02 20:35:467369 {"strict-origin-isolation", flag_descriptions::kStrictOriginIsolationName,
7370 flag_descriptions::kStrictOriginIsolationDescription, kOsAll,
7371 FEATURE_VALUE_TYPE(features::kStrictOriginIsolation)},
7372
Xiaohan Wang064b68cd2022-01-19 19:12:287373#if BUILDFLAG(IS_ANDROID)
Hazem Ashmawyf1cd7e42019-03-25 18:17:327374 {"enable-logging-js-console-messages",
7375 flag_descriptions::kLogJsConsoleMessagesName,
7376 flag_descriptions::kLogJsConsoleMessagesDescription, kOsAndroid,
7377 FEATURE_VALUE_TYPE(features::kLogJsConsoleMessages)},
Xiaohan Wang064b68cd2022-01-19 19:12:287378#endif // BUILDFLAG(IS_ANDROID)
Hazem Ashmawyf1cd7e42019-03-25 18:17:327379
Yuta Hijikata235fc62b2020-12-08 03:48:327380#if BUILDFLAG(IS_CHROMEOS_ASH)
Vyshu9ea9e182021-02-04 17:53:067381 {"allow-repeated-updates", flag_descriptions::kAllowRepeatedUpdatesName,
7382 flag_descriptions::kAllowRepeatedUpdatesDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:427383 FEATURE_VALUE_TYPE(ash::features::kAllowRepeatedUpdates)},
Vyshu9ea9e182021-02-04 17:53:067384
Kyle Horimoto734f0752020-03-20 20:46:547385 {"allow-scroll-settings", flag_descriptions::kAllowScrollSettingsName,
7386 flag_descriptions::kAllowScrollSettingsDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:427387 FEATURE_VALUE_TYPE(ash::features::kAllowScrollSettings)},
Kyle Horimoto734f0752020-03-20 20:46:547388
alanlxl43ddc2082022-02-01 00:24:167389 {"enable-neural-palm-adaptive-hold",
7390 flag_descriptions::kEnableNeuralPalmAdaptiveHoldName,
7391 flag_descriptions::kEnableNeuralPalmAdaptiveHoldDescription, kOsCrOS,
7392 FEATURE_VALUE_TYPE(ui::kEnableNeuralPalmAdaptiveHold)},
7393
Rob Schonbergerc258473f2019-11-08 05:09:357394 {"enable-neural-stylus-palm-rejection",
7395 flag_descriptions::kEnableNeuralStylusPalmRejectionName,
7396 flag_descriptions::kEnableNeuralStylusPalmRejectionDescription, kOsCrOS,
7397 FEATURE_VALUE_TYPE(ui::kEnableNeuralPalmDetectionFilter)},
7398
Catherine Zhang9df0c472023-03-09 07:33:217399 {"enable-edge-detection", flag_descriptions::kEnableEdgeDetectionName,
7400 flag_descriptions::kEnableEdgeDetectionDescription, kOsCrOS,
7401 FEATURE_VALUE_TYPE(ui::kEnableEdgeDetection)},
7402
Xiangdong Kongec5a0772021-05-03 21:53:017403 {"enable-os-feedback", flag_descriptions::kEnableOsFeedbackName,
7404 flag_descriptions::kEnableOsFeedbackDescription, kOsCrOS,
7405 FEATURE_VALUE_TYPE(ash::features::kOsFeedback)},
7406
Jon Mann8e448142021-07-29 19:31:307407 {"fast-pair", flag_descriptions::kFastPairName,
7408 flag_descriptions::kFastPairDescription, kOsCrOS,
7409 FEATURE_VALUE_TYPE(ash::features::kFastPair)},
7410
Alex Kingsborough31acba6e2023-01-17 21:47:457411 {"fast-pair-handshake-refactor",
7412 flag_descriptions::kFastPairHandshakeRefactorName,
7413 flag_descriptions::kFastPairHandshakeRefactorDescription, kOsCrOS,
7414 FEATURE_VALUE_TYPE(ash::features::kFastPairHandshakeRefactor)},
7415
Daniel Classon1def7072023-03-30 17:16:397416 {"fast-pair-hid", flag_descriptions::kFastPairHIDName,
7417 flag_descriptions::kFastPairHIDDescription, kOsCrOS,
7418 FEATURE_VALUE_TYPE(ash::features::kFastPairHID)},
7419
Shane Fitzpatrickea882292022-01-24 20:30:157420 {"fast-pair-low-power", flag_descriptions::kFastPairLowPowerName,
7421 flag_descriptions::kFastPairLowPowerDescription, kOsCrOS,
7422 FEATURE_VALUE_TYPE(ash::features::kFastPairLowPower)},
7423
Juliet Levesqueaa230e02022-04-19 18:11:147424 {"fast-pair-saved-devices", flag_descriptions::kFastPairSavedDevicesName,
7425 flag_descriptions::kFastPairSavedDevicesDescription, kOsCrOS,
7426 FEATURE_VALUE_TYPE(ash::features::kFastPairSavedDevices)},
7427
Jon Mann022bd3522022-01-19 22:11:517428 {"fast-pair-software-scanning",
7429 flag_descriptions::kFastPairSoftwareScanningName,
7430 flag_descriptions::kFastPairSoftwareScanningDescription, kOsCrOS,
7431 FEATURE_VALUE_TYPE(ash::features::kFastPairSoftwareScanning)},
7432
Jimmy Gong35094482021-10-06 23:14:287433 {"pcie-billboard-notification",
7434 flag_descriptions::kPcieBillboardNotificationName,
7435 flag_descriptions::kPcieBillboardNotificationDescription, kOsCrOS,
7436 FEATURE_VALUE_TYPE(ash::features::kPcieBillboardNotification)},
7437
Zentaro Kavanagh892851f2019-05-29 15:13:317438 {"use-search-click-for-right-click",
7439 flag_descriptions::kUseSearchClickForRightClickName,
7440 flag_descriptions::kUseSearchClickForRightClickDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:427441 FEATURE_VALUE_TYPE(ash::features::kUseSearchClickForRightClick)},
Jimmy Gong09aff042019-10-23 20:13:077442
Steven Bennetts66bc3542020-06-25 23:05:287443 {"show-metered-toggle", flag_descriptions::kMeteredShowToggleName,
7444 flag_descriptions::kMeteredShowToggleDescription, kOsCrOS,
7445 FEATURE_VALUE_TYPE(features::kMeteredShowToggle)},
7446
Bailey Berro01f09742020-07-21 05:40:597447 {"display-alignment-assistance",
7448 flag_descriptions::kDisplayAlignmentAssistanceName,
7449 flag_descriptions::kDisplayAlignmentAssistanceDescription, kOsCrOS,
7450 FEATURE_VALUE_TYPE(ash::features::kDisplayAlignAssist)},
Gavin Williams206629d2020-08-05 01:50:597451
Michael Checo26110cc92022-05-04 00:55:077452 {"enable-experimental-rgb-keyboard-patterns",
7453 flag_descriptions::kExperimentalRgbKeyboardPatternsName,
7454 flag_descriptions::kExperimentalRgbKeyboardPatternsDescription, kOsCrOS,
7455 FEATURE_VALUE_TYPE(ash::features::kExperimentalRgbKeyboardPatterns)},
7456
xiangdong kong7348a6562023-02-15 18:10:057457 {"enable-get-debugd-logs-in-parallel",
7458 flag_descriptions::kEnableGetDebugdLogsInParallelName,
7459 flag_descriptions::kEnableGetDebugdLogsInParallelDescription, kOsCrOS,
7460 FEATURE_VALUE_TYPE(ash::features::kEnableGetDebugdLogsInParallel)},
7461
James Hawkinsa9fefa8d2020-10-08 00:24:037462 {"enable-hostname-setting", flag_descriptions::kEnableHostnameSettingName,
7463 flag_descriptions::kEnableHostnameSettingDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:427464 FEATURE_VALUE_TYPE(ash::features::kEnableHostnameSetting)},
Kyle Horimotoc0108e112020-10-20 21:41:047465
Pranav Batra96b8eba2021-07-02 21:17:217466 {"enable-oauth-ipp", flag_descriptions::kEnableOAuthIppName,
7467 flag_descriptions::kEnableOAuthIppDescription, kOsCrOS,
7468 FEATURE_VALUE_TYPE(ash::features::kEnableOAuthIpp)},
7469
Jimmy Gong07656e42021-04-08 02:31:087470 {"enable-shortcut-customization-app",
7471 flag_descriptions::kEnableShortcutCustomizationAppName,
7472 flag_descriptions::kEnableShortcutCustomizationAppDescription, kOsCrOS,
7473 FEATURE_VALUE_TYPE(features::kShortcutCustomizationApp)},
Joel Riley700551502021-05-28 00:20:007474
Cam Bickeld363a1792022-10-06 16:59:097475 {"enable-shortcut-customization",
7476 flag_descriptions::kEnableShortcutCustomizationName,
7477 flag_descriptions::kEnableShortcutCustomizationDescription, kOsCrOS,
7478 FEATURE_VALUE_TYPE(features::kShortcutCustomization)},
7479
xiangdong kong72ae8d12023-06-13 16:47:527480 {"enable-search-customizable-shortcuts-in-launcher",
7481 flag_descriptions::kEnableSearchCustomizableShortcutsInLauncherName,
7482 flag_descriptions::kEnableSearchCustomizableShortcutsInLauncherDescription,
7483 kOsCrOS,
7484 FEATURE_VALUE_TYPE(ash::features::kSearchCustomizableShortcutsInLauncher)},
7485
Cam Bickelfd253282023-02-09 20:12:227486 {"enable-search-in-shortcuts-app",
7487 flag_descriptions::kEnableSearchInShortcutsAppName,
7488 flag_descriptions::kEnableSearchInShortcutsAppDescription, kOsCrOS,
7489 FEATURE_VALUE_TYPE(ash::features::kSearchInShortcutsApp)},
7490
David Padlipskycc06de12023-02-03 01:17:327491 {"enable-input-device-settings-split",
7492 flag_descriptions::kEnableInputDeviceSettingsSplitName,
7493 flag_descriptions::kEnableInputDeviceSettingsSplitDescription, kOsCrOS,
7494 FEATURE_VALUE_TYPE(ash::features::kInputDeviceSettingsSplit)},
7495
YuhanYangf34f292f2023-06-01 23:56:237496 {"enable-peripheral-customization",
7497 flag_descriptions::kEnablePeripheralCustomizationName,
7498 flag_descriptions::kEnablePeripheralCustomizationDescription, kOsCrOS,
7499 FEATURE_VALUE_TYPE(ash::features::kPeripheralCustomization)},
7500
Katie Dektar7faf40ba2023-01-11 22:19:307501 {"enable-accessibility-accelerators-notifications-timeout",
7502 flag_descriptions::kAccessibilityAcceleratorNotificationsTimeoutName,
7503 flag_descriptions::
7504 kAccessibilityAcceleratorNotificationsTimeoutDescription,
7505 kOsCrOS,
7506 FEATURE_VALUE_TYPE(
7507 features::kAccessibilityAcceleratorNotificationsTimeout)},
7508
Katie Dektar29e670d82022-08-23 17:54:407509 {"enable-accessibility-service",
7510 flag_descriptions::kAccessibilityServiceName,
7511 flag_descriptions::kAccessibilityServiceDescription, kOsCrOS,
7512 FEATURE_VALUE_TYPE(features::kAccessibilityService)},
Josiah Krutze41033b2022-09-02 19:48:397513
Josiah Krutzf581bb02022-10-13 22:57:017514 {"enable-accessibility-select-to-speak-hover-text-improvements",
7515 flag_descriptions::kAccessibilitySelectToSpeakHoverTextImprovementsName,
7516 flag_descriptions::
7517 kAccessibilitySelectToSpeakHoverTextImprovementsDescription,
7518 kOsCrOS,
7519 FEATURE_VALUE_TYPE(
7520 features::kAccessibilitySelectToSpeakHoverTextImprovements)},
7521
Josiah Krutzef021612023-02-10 05:04:547522 {"enable-accessibility-chromevox-page-migration",
7523 flag_descriptions::kAccessibilityChromeVoxPageMigrationName,
7524 flag_descriptions::kAccessibilityChromeVoxPageMigrationDescription,
7525 kOsCrOS,
7526 FEATURE_VALUE_TYPE(features::kAccessibilityChromeVoxPageMigration)},
7527
Michael Checo91977f562023-01-25 01:02:227528 {"enable-only-show-new-shortcut-app",
7529 flag_descriptions::kOnlyShowNewShortcutsAppName,
7530 flag_descriptions::kOnlyShowNewShortcutsAppDescription, kOsCrOS,
7531 FEATURE_VALUE_TYPE(ash::features::kOnlyShowNewShortcutsApp)},
7532
Brandon Nguyen11e89212023-06-22 20:46:587533 {"enable-pip-double-tap-to-resize",
7534 flag_descriptions::kPipDoubleTapToResizeName,
7535 flag_descriptions::kPipDoubleTapToResizeDescription, kOsCrOS,
7536 FEATURE_VALUE_TYPE(ash::features::kPipDoubleTapToResize)},
7537
Yunke Zhoua42f6472021-08-18 17:25:377538#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Alex Ilinb4148422021-07-16 17:16:247539
Dominic Farolinoaf2f3b72021-05-03 23:44:167540 {"enable-fenced-frames", flag_descriptions::kEnableFencedFramesName,
7541 flag_descriptions::kEnableFencedFramesDescription, kOsAll,
Dominic Farolino0b067632022-11-11 02:57:497542 FEATURE_VALUE_TYPE(blink::features::kFencedFrames)},
Dominic Farolinoaf2f3b72021-05-03 23:44:167543
Liam Brady1ead36c2023-05-30 17:37:387544 {"enable-fenced-frames-developer-mode",
7545 flag_descriptions::kEnableFencedFramesDeveloperModeName,
7546 flag_descriptions::kEnableFencedFramesDeveloperModeDescription, kOsAll,
7547 FEATURE_VALUE_TYPE(blink::features::kFencedFramesDefaultMode)},
7548
Brandon Maslenda12cf82019-08-23 20:54:187549 {"storage-access-api", flag_descriptions::kStorageAccessAPIName,
7550 flag_descriptions::kStorageAccessAPIDescription, kOsAll,
Christian Dullweber9c020232023-06-06 07:44:287551 FEATURE_WITH_PARAMS_VALUE_TYPE(blink::features::kStorageAccessAPI,
7552 kStorageAccessAPIVariations,
7553 "kStorageAccessAPI")},
Brandon Maslenda12cf82019-08-23 20:54:187554
François Beaufortdb160c12019-05-01 06:28:147555 {"enable-unsafe-webgpu", flag_descriptions::kUnsafeWebGPUName,
Brandon Jones11b7db02023-03-10 18:39:127556 flag_descriptions::kUnsafeWebGPUDescription, kOsAll,
François Beaufortdb160c12019-05-01 06:28:147557 SINGLE_VALUE_TYPE(switches::kEnableUnsafeWebGPU)},
7558
Brandon Jones2ebd9a62022-06-15 19:55:597559 {"enable-webgpu-developer-features",
7560 flag_descriptions::kWebGpuDeveloperFeaturesName,
Brandon Jones11b7db02023-03-10 18:39:127561 flag_descriptions::kWebGpuDeveloperFeaturesDescription, kOsAll,
Brandon Jones2ebd9a62022-06-15 19:55:597562 SINGLE_VALUE_TYPE(switches::kEnableWebGPUDeveloperFeatures)},
7563
Xiaohan Wang064b68cd2022-01-19 19:12:287564#if BUILDFLAG(IS_ANDROID)
Caitlin Fischer43edd90a2019-05-01 13:24:307565 {"autofill-use-mobile-label-disambiguation",
7566 flag_descriptions::kAutofillUseMobileLabelDisambiguationName,
7567 flag_descriptions::kAutofillUseMobileLabelDisambiguationDescription,
7568 kOsAndroid,
Caitlin Fischer37e01232019-05-24 13:05:457569 FEATURE_WITH_PARAMS_VALUE_TYPE(
7570 autofill::features::kAutofillUseMobileLabelDisambiguation,
7571 kAutofillUseMobileLabelDisambiguationVariations,
7572 "AutofillUseMobileLabelDisambiguation")},
Xiaohan Wang064b68cd2022-01-19 19:12:287573#endif // BUILDFLAG(IS_ANDROID)
Caitlin Fischer43edd90a2019-05-01 13:24:307574
Xiaohan Wang064b68cd2022-01-19 19:12:287575#if BUILDFLAG(IS_ANDROID)
Andrey Zaytsevad83cbc32020-09-30 15:43:187576 {"metrics-settings-android", flag_descriptions::kMetricsSettingsAndroidName,
7577 flag_descriptions::kMetricsSettingsAndroidDescription, kOsAndroid,
Andrey Zaytsev466cfd92020-10-13 12:02:327578 FEATURE_WITH_PARAMS_VALUE_TYPE(features::kMetricsSettingsAndroid,
Andrey Zaytsevad83cbc32020-09-30 15:43:187579 kMetricsSettingsAndroidVariations,
7580 "MetricsSettingsAndroid")},
7581#endif
7582
Yuta Hijikata235fc62b2020-12-08 03:48:327583#if BUILDFLAG(IS_CHROMEOS_ASH)
Harry Cuttscfe6d934f2019-06-05 21:45:557584 {"gesture-properties-dbus-service",
7585 flag_descriptions::kEnableGesturePropertiesDBusServiceName,
7586 flag_descriptions::kEnableGesturePropertiesDBusServiceDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:427587 FEATURE_VALUE_TYPE(ash::features::kGesturePropertiesDBusService)},
Yuta Hijikata235fc62b2020-12-08 03:48:327588#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Harry Cuttscfe6d934f2019-06-05 21:45:557589
Christopher Thompsonf3ba20122019-06-06 22:01:017590 {"ev-details-in-page-info", flag_descriptions::kEvDetailsInPageInfoName,
7591 flag_descriptions::kEvDetailsInPageInfoDescription, kOsDesktop,
7592 FEATURE_VALUE_TYPE(features::kEvDetailsInPageInfo)},
7593
Takumi Fujimotoc266c3f2022-07-11 00:42:407594#if BUILDFLAG(IS_CHROMEOS)
Jazz Xu7b2047a2023-01-19 10:44:097595 {"global-media-controls-cros-updated-ui",
7596 flag_descriptions::kGlobalMediaControlsCrOSUpdatedUIName,
7597 flag_descriptions::kGlobalMediaControlsCrOSUpdatedUIDescription, kOsCrOS,
7598 FEATURE_VALUE_TYPE(media::kGlobalMediaControlsCrOSUpdatedUI)},
Takumi Fujimotoc266c3f2022-07-11 00:42:407599#endif // BUILDFLAG(IS_CHROMEOS)
7600
Keishi Hattori15299742020-04-20 04:00:097601 {"enable-cooperative-scheduling",
7602 flag_descriptions::kCooperativeSchedulingName,
7603 flag_descriptions::kCooperativeSchedulingDescription, kOsAll,
7604 FEATURE_VALUE_TYPE(features::kCooperativeScheduling)},
7605
Yuta Hijikata235fc62b2020-12-08 03:48:327606#if BUILDFLAG(IS_CHROMEOS_ASH)
Andre Le29427c22022-09-23 23:01:577607 {"enable-privacy-indicators", flag_descriptions::kPrivacyIndicatorsName,
7608 flag_descriptions::kPrivacyIndicatorsDescription, kOsCrOS,
7609 FEATURE_VALUE_TYPE(ash::features::kPrivacyIndicators)},
7610#endif // BUILDFLAG(IS_CHROMEOS_ASH)
7611
Tomasz Jurkiewicz6a32bda2023-04-06 17:27:507612#if BUILDFLAG(ENABLE_SUPERVISED_USERS)
7613 {"enable-proto-api-for-classify-url",
7614 flag_descriptions::kEnableProtoApiForClassifyUrlName,
7615 flag_descriptions::kEnableProtoApiForClassifyUrlDescription,
7616 kOsAndroid | (kOsDesktop & ~kOsFuchsia),
7617 FEATURE_VALUE_TYPE(supervised_user::kEnableProtoApiForClassifyUrl)},
7618#endif // BUILDFLAG(ENABLE_SUPERVISED_USERS)
7619
Pilar Molina Lopez6bceb9a2023-04-22 00:46:037620#if BUILDFLAG(ALLOW_OOP_VIDEO_DECODER)
Andres Calderon Jaramilloa55fccb2023-03-24 19:22:117621 {"use-out-of-process-video-decoding",
7622 flag_descriptions::kUseOutOfProcessVideoDecodingName,
7623 flag_descriptions::kUseOutOfProcessVideoDecodingDescription,
7624 kOsLinux | kOsCrOS | kOsLacros,
7625 FEATURE_VALUE_TYPE(media::kUseOutOfProcessVideoDecoding)},
Pilar Molina Lopez6bceb9a2023-04-22 00:46:037626#endif // BUILDFLAG(ALLOW_OOP_VIDEO_DECODER)
Andres Calderon Jaramilloa55fccb2023-03-24 19:22:117627
Aga Wronska344fa8282021-10-07 14:18:057628#if BUILDFLAG(ENABLE_SUPERVISED_USERS)
James Leee2190152023-06-06 11:45:397629
7630 {"enable-family-link-supervision",
7631 flag_descriptions::kEnableSupervisionOnDesktopName,
7632 flag_descriptions::kEnableSupervisionOnDesktopDescription,
7633 kOsLinux | kOsMac | kOsWin,
7634 FEATURE_VALUE_TYPE(supervised_user::kEnableSupervisionOnDesktopAndIOS)},
7635
7636 {"enable-family-link-website-filtering",
7637 flag_descriptions::kFilterWebsitesForSupervisedUsersOnDesktopName,
7638 flag_descriptions::kFilterWebsitesForSupervisedUsersOnDesktopDescription,
7639 kOsLinux | kOsMac | kOsWin,
7640 FEATURE_VALUE_TYPE(
7641 supervised_user::kFilterWebsitesForSupervisedUsersOnDesktopAndIOS)},
7642
7643 {"enable-family-link-extensions-permissions",
7644 flag_descriptions::
7645 kEnableExtensionsPermissionsForSupervisedUsersOnDesktopName,
7646 flag_descriptions::
7647 kEnableExtensionsPermissionsForSupervisedUsersOnDesktopDescription,
7648 kOsLinux | kOsMac | kOsWin,
7649 FEATURE_VALUE_TYPE(
7650 supervised_user::
7651 kEnableExtensionsPermissionsForSupervisedUsersOnDesktop)},
7652
7653 {"enable-family-link-prefs-controls",
7654 flag_descriptions::kSupervisedPrefsControlledBySupervisedStoreName,
7655 flag_descriptions::kSupervisedPrefsControlledBySupervisedStoreDescription,
7656 kOsLinux | kOsMac | kOsWin,
7657 FEATURE_VALUE_TYPE(
7658 supervised_user::kSupervisedPrefsControlledBySupervisedStore)},
7659
7660 {"enable-family-link-managed-ui",
7661 flag_descriptions::kEnableManagedByParentUiName,
7662 flag_descriptions::kEnableManagedByParentUiDescription,
7663 kOsLinux | kOsMac | kOsWin,
7664 FEATURE_VALUE_TYPE(supervised_user::kEnableManagedByParentUi)},
Liza Bipinac549552023-06-21 13:18:547665
7666 {"enable-supervised-users-remain-signed-in",
7667 flag_descriptions::kClearingCookiesKeepsSupervisedUsersSignedInName,
7668 flag_descriptions::kClearingCookiesKeepsSupervisedUsersSignedInDescription,
7669 kOsLinux | kOsMac | kOsWin,
7670 FEATURE_VALUE_TYPE(
7671 supervised_user::kClearingCookiesKeepsSupervisedUsersSignedIn)},
Aga Wronska344fa8282021-10-07 14:18:057672#endif // BUILDFLAG(ENABLE_SUPERVISED_USERS)
7673
Xing Liub9070262021-01-07 20:52:167674 {"notification-scheduler", flag_descriptions::kNotificationSchedulerName,
7675 flag_descriptions::kNotificationSchedulerDescription, kOsAndroid,
7676 FEATURE_VALUE_TYPE(notifications::features::kNotificationScheduleService)},
7677
Xing Liu1919ec232019-07-22 20:38:047678 {"notification-scheduler-debug-options",
7679 flag_descriptions::kNotificationSchedulerDebugOptionName,
7680 flag_descriptions::kNotificationSchedulerDebugOptionDescription,
7681 kOsAndroid, MULTI_VALUE_TYPE(kNotificationSchedulerChoices)},
7682
Xiaohan Wang064b68cd2022-01-19 19:12:287683#if BUILDFLAG(IS_ANDROID)
Xing Liuf84cb1a2020-08-10 19:06:357684
Xing Liu1e6b43d2021-03-15 19:26:457685 {"debug-chime-notification",
7686 flag_descriptions::kChimeAlwaysShowNotificationName,
7687 flag_descriptions::kChimeAlwaysShowNotificationDescription, kOsAndroid,
7688 SINGLE_VALUE_TYPE(notifications::switches::kDebugChimeNotification)},
7689
7690 {"use-chime-android-sdk", flag_descriptions::kChimeAndroidSdkName,
7691 flag_descriptions::kChimeAndroidSdkDescription, kOsAndroid,
Xing Liuf84cb1a2020-08-10 19:06:357692 FEATURE_VALUE_TYPE(notifications::features::kUseChimeAndroidSdk)},
7693
Xiaohan Wang064b68cd2022-01-19 19:12:287694#endif // BUILDFLAG(IS_ANDROID)
Patrick Noland76b5c442019-07-30 01:01:397695
Vikas Soni973650612023-05-24 08:59:467696 {"use-client-gmb-interface", flag_descriptions::kUseClientGmbInterfaceName,
7697 flag_descriptions::kUseClientGmbInterfaceDescription, kOsAll,
7698 FEATURE_VALUE_TYPE(features::kUseClientGmbInterface)},
7699
Yuta Hijikata235fc62b2020-12-08 03:48:327700#if BUILDFLAG(IS_CHROMEOS_ASH)
Yulun Wu1e355132020-02-11 20:12:227701 {"contextual-nudges", flag_descriptions::kContextualNudgesName,
7702 flag_descriptions::kContextualNudgesDescription, kOsCrOS,
7703 FEATURE_VALUE_TYPE(ash::features::kContextualNudges)},
Angela Xiao69e8fc22023-06-01 22:05:227704
7705 {"scalable-iph", flag_descriptions::kScalableIphName,
7706 flag_descriptions::kScalableIphDescription, kOsCrOS,
7707 FEATURE_VALUE_TYPE(ash::features::kScalableIph)},
Angela Xiao64360742023-06-15 21:35:077708
7709 {"help-app-welcome-tips", flag_descriptions::kHelpAppWelcomeTipsName,
7710 flag_descriptions::kHelpAppWelcomeTipsDescription, kOsCrOS,
7711 FEATURE_VALUE_TYPE(ash::features::kHelpAppWelcomeTips)},
Yuta Hijikata235fc62b2020-12-08 03:48:327712#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Yulun Wu1e355132020-02-11 20:12:227713
Yulun Wuc7439a652021-06-18 17:24:187714#if BUILDFLAG(IS_CHROMEOS_ASH)
7715 {"settings-app-notification-settings",
7716 flag_descriptions::kSettingsAppNotificationSettingsName,
7717 flag_descriptions::kSettingsAppNotificationSettingsDescription, kOsCrOS,
7718 FEATURE_VALUE_TYPE(ash::features::kSettingsAppNotificationSettings)},
7719#endif // BUILDFLAG(IS_CHROMEOS_ASH)
7720
Bob Beckd9873c22023-02-21 22:56:457721 {"use-sha1-server-handshakes", flag_descriptions::kSHA1ServerSignatureName,
7722 flag_descriptions::kSHA1ServerSignatureDescription, kOsAll,
7723 FEATURE_VALUE_TYPE(net::features::kSHA1ServerSignature)},
7724
David Benjamin371481f2022-06-15 15:57:407725 {"encrypted-client-hello", flag_descriptions::kEncryptedClientHelloName,
7726 flag_descriptions::kEncryptedClientHelloDescription, kOsAll,
7727 FEATURE_VALUE_TYPE(net::features::kEncryptedClientHello)},
Daniel McArdleb87dd0092020-02-10 20:23:467728
Tsuyoshi Horod81149602022-07-04 01:34:097729 {"use-dns-https-svcb-alpn", flag_descriptions::kUseDnsHttpsSvcbAlpnName,
7730 flag_descriptions::kUseDnsHttpsSvcbAlpnDescription,
7731 kOsLinux | kOsMac | kOsWin | kOsCrOS | kOsAndroid,
7732 FEATURE_VALUE_TYPE(net::features::kUseDnsHttpsSvcbAlpn)},
7733
Klaus Weidner90b78032022-06-01 22:48:337734#if !BUILDFLAG(IS_ANDROID)
7735 {"hidpi-capture", flag_descriptions::kWebContentsCaptureHiDpiName,
7736 flag_descriptions::kWebContentsCaptureHiDpiDescription, kOsDesktop,
7737 FEATURE_VALUE_TYPE(media::kWebContentsCaptureHiDpi)},
7738#endif // !BUILDFLAG(IS_ANDROID)
7739
Xiaohan Wang064b68cd2022-01-19 19:12:287740#if BUILDFLAG(IS_ANDROID)
Ayu Ishiidbdd5c92020-03-20 23:40:527741 {"web-otp-backend", flag_descriptions::kWebOtpBackendName,
7742 flag_descriptions::kWebOtpBackendDescription, kOsAndroid,
Yi Gu13cc7242020-12-10 03:23:377743 MULTI_VALUE_TYPE(kWebOtpBackendChoices)},
Ayu Ishiidbdd5c92020-03-20 23:40:527744
Lijin Shen5feade62019-09-17 03:01:017745 {"darken-websites-checkbox-in-themes-setting",
7746 flag_descriptions::kDarkenWebsitesCheckboxInThemesSettingName,
7747 flag_descriptions::kDarkenWebsitesCheckboxInThemesSettingDescription,
7748 kOsAndroid,
7749 FEATURE_VALUE_TYPE(
Neil Coronadoa0f571b82021-11-23 18:45:397750 content_settings::kDarkenWebsitesCheckboxInThemesSetting)},
Xiaohan Wang064b68cd2022-01-19 19:12:287751#endif // BUILDFLAG(IS_ANDROID)
Lijin Shen5feade62019-09-17 03:01:017752
Christos Froussios13b412df2019-09-19 19:12:477753 {"enable-autofill-upi-vpa", flag_descriptions::kAutofillSaveAndFillVPAName,
7754 flag_descriptions::kAutofillSaveAndFillVPADescription, kOsAll,
7755 FEATURE_VALUE_TYPE(autofill::features::kAutofillSaveAndFillVPA)},
Jan Wilken Dörriee8a6b3c2019-08-20 14:14:467756
Xiaohan Wang064b68cd2022-01-19 19:12:287757#if BUILDFLAG(IS_ANDROID)
Nandhini11a6a87b2019-08-22 22:45:247758 {"context-menu-search-with-google-lens",
7759 flag_descriptions::kContextMenuSearchWithGoogleLensName,
7760 flag_descriptions::kContextMenuSearchWithGoogleLensDescription, kOsAndroid,
Yu Sue12813392022-02-15 19:26:257761 FEATURE_WITH_PARAMS_VALUE_TYPE(
7762 chrome::android::kContextMenuSearchWithGoogleLens,
7763 kLensContextMenuSearchVariations,
7764 "ContextMenuSearchWithGoogleLens")},
Yu Su50dfedd52020-06-19 02:34:497765
Anudeep Palankic903c59e2023-01-26 16:46:557766 {"context-menu-google-lens-search-optimizations",
7767 flag_descriptions::kContextMenuGoogleLensSearchOptimizationsName,
7768 flag_descriptions::kContextMenuGoogleLensSearchOptimizationsDescription,
7769 kOsAndroid,
7770 FEATURE_WITH_PARAMS_VALUE_TYPE(
7771 chrome::android::kContextMenuGoogleLensSearchOptimizations,
7772 kContextMenuGoogleLensSearchOptimizationVariations,
7773 "ContextMenuGoogleLensSearchOptimizations")},
7774
Yu Suc19bb6cc2021-02-25 06:38:297775 {"lens-camera-assisted-search",
7776 flag_descriptions::kLensCameraAssistedSearchName,
7777 flag_descriptions::kLensCameraAssistedSearchDescription, kOsAndroid,
Yu Su49408c02021-03-12 02:04:137778 FEATURE_WITH_PARAMS_VALUE_TYPE(chrome::android::kLensCameraAssistedSearch,
7779 kLensCameraAssistedSearchVariations,
Yu Su1238dc672022-03-17 05:10:557780 "LensCameraAssistedSearch")},
Xiaohan Wang064b68cd2022-01-19 19:12:287781#endif // BUILDFLAG(IS_ANDROID)
Andy Paicu4d675fe2019-08-22 15:30:067782
Anne Lim24031e9d2019-09-12 23:03:197783 {"autofill-always-return-cloud-tokenized-card",
7784 flag_descriptions::kAutofillAlwaysReturnCloudTokenizedCardName,
7785 flag_descriptions::kAutofillAlwaysReturnCloudTokenizedCardDescription,
7786 kOsAll,
7787 FEATURE_VALUE_TYPE(
7788 autofill::features::kAutofillAlwaysReturnCloudTokenizedCard)},
7789
Alexander Timin6ae060b62019-09-17 11:21:377790 {"back-forward-cache", flag_descriptions::kBackForwardCacheName,
7791 flag_descriptions::kBackForwardCacheDescription, kOsAll,
Alexander Timin6d24bd2f2019-09-17 19:52:037792 FEATURE_WITH_PARAMS_VALUE_TYPE(features::kBackForwardCache,
7793 kBackForwardCacheVariations,
7794 "BackForwardCache")},
Yuzu Saijo312b8432022-03-01 03:27:317795 {"enable-back-forward-cache-for-screen-reader",
7796 flag_descriptions::kEnableBackForwardCacheForScreenReaderName,
7797 flag_descriptions::kEnableBackForwardCacheForScreenReaderDescription,
7798 kOsAll,
7799 FEATURE_VALUE_TYPE(features::kEnableBackForwardCacheForScreenReader)},
Alexander Timin6ae060b62019-09-17 11:21:377800
Gaston Rodriguez Lopez8baf0132022-07-13 18:58:247801 {"windows-scrolling-personality",
7802 flag_descriptions::kWindowsScrollingPersonalityName,
7803 flag_descriptions::kWindowsScrollingPersonalityDescription, kOsAll,
7804 FEATURE_VALUE_TYPE(features::kWindowsScrollingPersonality)},
Matt Amertecf4bf32019-09-25 19:50:397805
Robert Flack2aeba7dc2022-11-23 21:02:127806#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_ANDROID)
Robert Flackd69659f2021-06-02 22:32:337807 {"elastic-overscroll", flag_descriptions::kElasticOverscrollName,
7808 flag_descriptions::kElasticOverscrollDescription, kOsWin | kOsAndroid,
7809 FEATURE_VALUE_TYPE(features::kElasticOverscroll)},
Rahul Arakerif87184f2020-04-16 23:29:397810#endif
7811
Alexis Menard61ecb91d2021-07-17 04:10:337812 {"device-posture", flag_descriptions::kDevicePostureName,
7813 flag_descriptions::kDevicePostureDescription, kOsAll,
7814 FEATURE_VALUE_TYPE(features::kDevicePosture)},
7815
Yuta Hijikata235fc62b2020-12-08 03:48:327816#if BUILDFLAG(IS_CHROMEOS_ASH)
Sanja Perisica1e5cd82022-02-24 11:52:507817 {"device-force-scheduled-reboot",
7818 flag_descriptions::kDeviceForceScheduledRebootName,
7819 flag_descriptions::kDeviceForceScheduledRebootDescription, kOsCrOS,
7820 FEATURE_VALUE_TYPE(ash::features::kDeviceForceScheduledReboot)},
Xiaohui Chen3f3a5bf12019-09-28 00:29:457821 {"enable-assistant-aec", flag_descriptions::kEnableGoogleAssistantAecName,
7822 flag_descriptions::kEnableGoogleAssistantAecDescription, kOsCrOS,
Yeunjoo Choi65c73cc2022-08-02 05:30:167823 FEATURE_VALUE_TYPE(ash::assistant::features::kAssistantAudioEraser)},
Xiaohui Chen3f3a5bf12019-09-28 00:29:457824#endif
7825
Xiaohan Wang064b68cd2022-01-19 19:12:287826#if BUILDFLAG(IS_WIN)
Pete Lavallee2d4415c72019-10-07 20:43:567827 {"enable-winrt-geolocation-implementation",
7828 flag_descriptions::kWinrtGeolocationImplementationName,
7829 flag_descriptions::kWinrtGeolocationImplementationDescription, kOsWin,
7830 FEATURE_VALUE_TYPE(features::kWinrtGeolocationImplementation)},
7831#endif
7832
Xiaohan Wang064b68cd2022-01-19 19:12:287833#if BUILDFLAG(IS_MAC)
James Hollyer1b943edb2020-10-28 03:28:067834 {"enable-core-location-backend",
7835 flag_descriptions::kMacCoreLocationBackendName,
7836 flag_descriptions::kMacCoreLocationBackendDescription, kOsMac,
7837 FEATURE_VALUE_TYPE(features::kMacCoreLocationBackend)},
7838#endif
7839
Xiaohan Wang064b68cd2022-01-19 19:12:287840#if !BUILDFLAG(IS_ANDROID)
Richard Knoll7b293562021-07-08 08:49:067841 {"mute-notification-snooze-action",
7842 flag_descriptions::kMuteNotificationSnoozeActionName,
7843 flag_descriptions::kMuteNotificationSnoozeActionDescription, kOsDesktop,
7844 FEATURE_VALUE_TYPE(features::kMuteNotificationSnoozeAction)},
Xiaohan Wang064b68cd2022-01-19 19:12:287845#endif // !BUILDFLAG(IS_ANDROID)
Richard Knoll7b293562021-07-08 08:49:067846
Xiaohan Wang064b68cd2022-01-19 19:12:287847#if BUILDFLAG(IS_MAC)
Mohamed Adel52ac1ae2020-09-08 16:10:277848 {"enable-new-mac-notification-api",
7849 flag_descriptions::kNewMacNotificationAPIName,
7850 flag_descriptions::kNewMacNotificationAPIDescription, kOsMac,
7851 FEATURE_VALUE_TYPE(features::kNewMacNotificationAPI)},
7852#endif
7853
Yuta Hijikata235fc62b2020-12-08 03:48:327854#if BUILDFLAG(IS_CHROMEOS_ASH)
Hidehiko Abe826511f2023-03-24 06:58:437855 {"exo-consumed-by-ime-by-flag",
7856 flag_descriptions::kExoConsumedByImeByFlagName,
7857 flag_descriptions::kExoConsumedByImeByFlagDescription, kOsCrOS,
7858 FEATURE_VALUE_TYPE(ash::features::kExoConsumedByImeByFlag)},
Prabir Pradhan67677e82020-09-11 18:26:527859 {"exo-gamepad-vibration", flag_descriptions::kExoGamepadVibrationName,
7860 flag_descriptions::kExoGamepadVibrationDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:427861 FEATURE_VALUE_TYPE(ash::features::kGamepadVibration)},
Nicholas Hollingum4cbff262020-09-08 04:02:157862 {"exo-ordinal-motion", flag_descriptions::kExoOrdinalMotionName,
7863 flag_descriptions::kExoOrdinalMotionDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:427864 FEATURE_VALUE_TYPE(ash::features::kExoOrdinalMotion)},
Hidehiko Abe03ab7322023-05-17 10:22:187865 {"exo-surrounding-text-offset",
7866 flag_descriptions::kExoSurroundingTextOffsetName,
7867 flag_descriptions::kExoSurroundingTextOffsetDescription, kOsCrOS,
7868 FEATURE_VALUE_TYPE(ash::features::kExoSurroundingTextOffset)},
Yuta Hijikata235fc62b2020-12-08 03:48:327869#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Nicholas Hollingume9a6744f2019-10-03 05:57:297870
Xiaohan Wang064b68cd2022-01-19 19:12:287871#if BUILDFLAG(IS_MAC)
Leonard Grey2e90921c2021-12-02 22:46:137872 {"screentime", flag_descriptions::kScreenTimeName,
7873 flag_descriptions::kScreenTimeDescription, kOsMac,
7874 FEATURE_VALUE_TYPE(screentime::kScreenTime)},
Christopher Cameron93855ff2019-10-10 19:26:547875#endif
7876
John Delaney782c77762019-10-28 15:53:567877 {"enable-heavy-ad-intervention",
7878 flag_descriptions::kHeavyAdInterventionName,
7879 flag_descriptions::kHeavyAdInterventionDescription, kOsAll,
Colin Blundell7aff5842021-03-29 08:56:567880 FEATURE_VALUE_TYPE(heavy_ad_intervention::features::kHeavyAdIntervention)},
John Delaney782c77762019-10-28 15:53:567881
John Delaney521fe9f2020-04-29 22:18:197882 {"heavy-ad-privacy-mitigations",
7883 flag_descriptions::kHeavyAdPrivacyMitigationsName,
7884 flag_descriptions::kHeavyAdPrivacyMitigationsDescription, kOsAll,
Colin Blundell7aff5842021-03-29 08:56:567885 FEATURE_VALUE_TYPE(
7886 heavy_ad_intervention::features::kHeavyAdPrivacyMitigations)},
John Delaney782c77762019-10-28 15:53:567887
Yuta Hijikata235fc62b2020-12-08 03:48:327888#if BUILDFLAG(IS_CHROMEOS_ASH)
Fergus Dall9d0e95a2021-07-30 08:10:117889 {"crostini-container-install",
7890 flag_descriptions::kCrostiniContainerInstallName,
7891 flag_descriptions::kCrostiniContainerInstallDescription, kOsCrOS,
7892 MULTI_VALUE_TYPE(kCrostiniContainerChoices)},
Yuta Hijikata235fc62b2020-12-08 03:48:327893#endif // BUILDFLAG(IS_CHROMEOS_ASH)
David Munro3728ef72019-10-30 07:22:157894
Yuta Hijikata235fc62b2020-12-08 03:48:327895#if BUILDFLAG(IS_CHROMEOS_ASH)
Ethan Mooney01e6f192021-06-10 13:14:077896 {"os-settings-app-notifications-page",
7897 flag_descriptions::kOsSettingsAppNotificationsPageName,
7898 flag_descriptions::kOsSettingsAppNotificationsPageDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:427899 FEATURE_VALUE_TYPE(ash::features::kOsSettingsAppNotificationsPage)},
Callistusd4ba8b0d2023-04-03 05:34:597900 {"help-app-apps-discovery", flag_descriptions::kHelpAppAppsDiscoveryName,
7901 flag_descriptions::kHelpAppAppsDiscoveryDescription, kOsCrOS,
7902 FEATURE_VALUE_TYPE(ash::features::kHelpAppAppsDiscovery)},
Callistus3b862272023-05-09 02:34:087903 {"help-app-auto-trigger-install-dialog",
7904 flag_descriptions::kHelpAppAutoTriggerInstallDialogName,
7905 flag_descriptions::kHelpAppAutoTriggerInstallDialogDescription, kOsCrOS,
7906 FEATURE_VALUE_TYPE(ash::features::kHelpAppAutoTriggerInstallDialog)},
Zufeng Wang9d3362eb822021-03-11 00:23:297907 {"help-app-launcher-search", flag_descriptions::kHelpAppLauncherSearchName,
7908 flag_descriptions::kHelpAppLauncherSearchDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:427909 FEATURE_VALUE_TYPE(ash::features::kHelpAppLauncherSearch)},
Pattid12c5eb2023-04-03 01:37:007910 {"media-app-pdf-signature", flag_descriptions::kMediaAppPdfSignatureName,
7911 flag_descriptions::kMediaAppPdfSignatureDescription, kOsCrOS,
7912 FEATURE_VALUE_TYPE(ash::features::kMediaAppPdfSignature)},
Rachel Carpenter57c8523c2020-09-23 01:11:227913 {"release-notes-notification-all-channels",
7914 flag_descriptions::kReleaseNotesNotificationAllChannelsName,
7915 flag_descriptions::kReleaseNotesNotificationAllChannelsDescription,
7916 kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:427917 FEATURE_VALUE_TYPE(ash::features::kReleaseNotesNotificationAllChannels)},
Chad Duffin73b2226f2023-05-29 16:53:327918 {"use-android-staging-smds", flag_descriptions::kUseAndroidStagingSmdsName,
7919 flag_descriptions::kUseAndroidStagingSmdsDescription, kOsCrOS,
7920 FEATURE_VALUE_TYPE(ash::features::kUseAndroidStagingSmds)},
Regan Hsu3243afa2021-06-21 18:27:277921 {"use-stork-smds-server-address",
7922 flag_descriptions::kUseStorkSmdsServerAddressName,
7923 flag_descriptions::kUseStorkSmdsServerAddressDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:427924 FEATURE_VALUE_TYPE(ash::features::kUseStorkSmdsServerAddress)},
Regan Hsu1ffea922020-09-10 17:08:477925 {"use-wallpaper-staging-url",
7926 flag_descriptions::kUseWallpaperStagingUrlName,
7927 flag_descriptions::kUseWallpaperStagingUrlDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:427928 FEATURE_VALUE_TYPE(ash::features::kUseWallpaperStagingUrl)},
Yuta Hijikata235fc62b2020-12-08 03:48:327929#endif // BUILDFLAG(IS_CHROMEOS_ASH)
James Cook9348f362019-11-15 01:15:587930
siyua19593222019-12-04 22:27:067931 {"autofill-enable-virtual-card",
7932 flag_descriptions::kAutofillEnableVirtualCardName,
7933 flag_descriptions::kAutofillEnableVirtualCardDescription, kOsDesktop,
7934 FEATURE_VALUE_TYPE(autofill::features::kAutofillEnableVirtualCard)},
Vipul Vinod Koul7830cc092022-05-04 00:42:467935
siashahd779824402022-03-31 20:06:557936#if BUILDFLAG(IS_ANDROID)
7937 {"autofill-enable-manual-fallback-for-virtual-cards",
7938 flag_descriptions::kAutofillEnableManualFallbackForVirtualCardsName,
7939 flag_descriptions::kAutofillEnableManualFallbackForVirtualCardsDescription,
7940 kOsAndroid,
7941 FEATURE_VALUE_TYPE(
7942 autofill::features::kAutofillEnableManualFallbackForVirtualCards)},
7943#endif // BUILDFLAG(IS_ANDROID)
siyua19593222019-12-04 22:27:067944
Vishwas Uppoor89303a92022-08-03 00:56:267945 {"autofill-enable-card-product-name",
7946 flag_descriptions::kAutofillEnableCardProductNameName,
7947 flag_descriptions::kAutofillEnableCardProductNameDescription, kOsAll,
7948 FEATURE_VALUE_TYPE(autofill::features::kAutofillEnableCardProductName)},
7949
Xiaohan Wang064b68cd2022-01-19 19:12:287950#if BUILDFLAG(ENABLE_PAINT_PREVIEW) && BUILDFLAG(IS_ANDROID)
Mehran Mahmoudib8d0b7c2020-03-14 18:10:567951 {"paint-preview-demo", flag_descriptions::kPaintPreviewDemoName,
7952 flag_descriptions::kPaintPreviewDemoDescription, kOsAndroid,
7953 FEATURE_VALUE_TYPE(paint_preview::kPaintPreviewDemo)},
Xiaohan Wang064b68cd2022-01-19 19:12:287954#endif // BUILDFLAG(ENABLE_PAINT_PREVIEW) && BUILDFLAG(IS_ANDROID)
ckitagawa8dad53d2020-01-07 16:03:357955
Mike Wasserman90ee63f2023-04-10 22:35:487956 {"fullscreen-popup-windows", flag_descriptions::kFullscreenPopupWindowsName,
7957 flag_descriptions::kFullscreenPopupWindowsDescription,
7958 kOsDesktop | kOsAndroid,
7959 FEATURE_VALUE_TYPE(blink::features::kFullscreenPopupWindows)},
7960
Xiaohan Wang064b68cd2022-01-19 19:12:287961#if BUILDFLAG(IS_WIN)
Armando Miragliab4a2e382020-03-04 14:27:077962 {"run-video-capture-service-in-browser",
7963 flag_descriptions::kRunVideoCaptureServiceInBrowserProcessName,
7964 flag_descriptions::kRunVideoCaptureServiceInBrowserProcessDescription,
7965 kOsWin,
7966 FEATURE_VALUE_TYPE(features::kRunVideoCaptureServiceInBrowserProcess)},
Xiaohan Wang064b68cd2022-01-19 19:12:287967#endif // BUILDFLAG(IS_WIN)
Kamila5e9935682022-08-05 12:43:297968 {"disruptive-notification-permission-revocation",
7969 flag_descriptions::kDisruptiveNotificationPermissionRevocationName,
7970 flag_descriptions::kDisruptiveNotificationPermissionRevocationDescription,
7971 kOsAll,
7972 FEATURE_VALUE_TYPE(features::kDisruptiveNotificationPermissionRevocation)},
Daniele Castagna6a5cbdeb62020-02-18 22:48:147973 {"double-buffer-compositing",
7974 flag_descriptions::kDoubleBufferCompositingName,
7975 flag_descriptions::kDoubleBufferCompositingDescription, kOsCrOS,
7976 SINGLE_VALUE_TYPE(switches::kDoubleBufferCompositing)},
Dominic Mazzoni380f04f2020-02-18 18:49:277977
Norge Vizcay8f1b1e1e2022-11-18 17:28:597978#if !BUILDFLAG(IS_ANDROID)
Zofia Salata1f9c6ae2022-07-21 16:23:317979 {"page-info-hide-site-settings",
7980 flag_descriptions::kPageInfoHideSiteSettingsName,
7981 flag_descriptions::kPageInfoHideSiteSettingsDescription, kOsDesktop,
7982 FEATURE_VALUE_TYPE(page_info::kPageInfoHideSiteSettings)},
7983#endif // !BUILDFLAG(IS_ANDROID)
7984
7985#if BUILDFLAG(IS_ANDROID)
Zaina Al-Mashni2df0e5f2023-01-20 11:09:267986 {"page-info-about-this-site-improved-bottomsheet",
7987 flag_descriptions::kPageInfoAboutThisSiteImprovedBottomSheetName,
7988 flag_descriptions::kPageInfoAboutThisSiteImprovedBottomSheetDescription,
7989 kOsAndroid,
7990 FEATURE_VALUE_TYPE(page_info::kPageInfoAboutThisSiteImprovedBottomSheet)},
Xiaohan Wang064b68cd2022-01-19 19:12:287991#endif // BUILDFLAG(IS_ANDROID)
Ehimare Okoyomon2eccb6072020-05-12 12:22:277992
Xiaohan Wang064b68cd2022-01-19 19:12:287993#if !BUILDFLAG(IS_ANDROID)
Olesia Marukhno4f39c7fb2021-12-14 16:55:487994 {"page-info-history-desktop",
7995 flag_descriptions::kPageInfoHistoryDesktopName,
7996 flag_descriptions::kPageInfoHistoryDesktopDescription, kOsDesktop,
7997 FEATURE_VALUE_TYPE(page_info::kPageInfoHistoryDesktop)},
Xiaohan Wang064b68cd2022-01-19 19:12:287998#endif // !BUILDFLAG(IS_ANDROID)
Olesia Marukhno4f39c7fb2021-12-14 16:55:487999
Filipa Senrab5787562023-02-20 11:03:508000 {"page-info-about-this-site-new-icon",
8001 flag_descriptions::kPageInfoAboutThisSiteNewIconName,
8002 flag_descriptions::kPageInfoAboutThisSiteNewIconDescription,
8003 kOsDesktop | kOsAndroid,
8004 FEATURE_VALUE_TYPE(page_info::kPageInfoAboutThisSiteNewIcon)},
8005
Christian Dullweber77ae6752022-12-14 18:58:388006 {"page-info-about-this-site-non-en",
8007 flag_descriptions::kPageInfoAboutThisSiteNonEnName,
8008 flag_descriptions::kPageInfoAboutThisSiteNonEnDescription,
8009 kOsDesktop | kOsAndroid,
Christian Dullweber686e52c2023-06-15 08:52:188010 FEATURE_VALUE_TYPE(page_info::kPageInfoAboutThisSiteMoreLangs)},
Christian Dullweber77ae6752022-12-14 18:58:388011
Christian Dullwebera0b16c1872022-09-22 09:44:028012#if !BUILDFLAG(IS_ANDROID)
Christian Dullweber8fdeb5d2022-08-24 20:14:578013 {"page-info-about-this-page-persistent-side-panel-entry",
8014 flag_descriptions::kPageInfoboutThisPagePersistentEntryName,
8015 flag_descriptions::kPageInfoboutThisPagePersistentEntryDescription,
8016 kOsDesktop,
8017 FEATURE_VALUE_TYPE(page_info::kAboutThisSitePersistentSidePanelEntry)},
Filipa Senrafc3fb4522023-03-17 18:12:228018
8019 {"page-info-about-this-site-keep-side-panel-open-on-same-tab-navs",
8020 flag_descriptions::kPageInfoAboutThisSiteKeepSidePanelOnSameTabNavs,
8021 flag_descriptions::
8022 kPageInfoAboutThisSiteKeepSidePanelOnSameTabNavsDescription,
8023 kOsDesktop,
8024 FEATURE_VALUE_TYPE(
8025 page_info::kPageInfoAboutThisSiteKeepSidePanelOnSameTabNavs)},
Christian Dullwebera0b16c1872022-09-22 09:44:028026#endif
Christian Dullweber8fdeb5d2022-08-24 20:14:578027
Olesia Marukhnocfcb3882023-06-06 08:55:118028 {"user-bypass-ui", flag_descriptions::kUserBypassUIName,
8029 flag_descriptions::kUserBypassUIDescription, kOsDesktop | kOsAndroid,
8030 FEATURE_VALUE_TYPE(content_settings::features::kUserBypassUI)},
8031
Yuta Hijikata235fc62b2020-12-08 03:48:328032#if BUILDFLAG(IS_CHROMEOS_ASH)
Colin Kincaidfdf46612023-03-23 01:23:238033 {kClipboardHistoryLongpressInternalName,
8034 flag_descriptions::kClipboardHistoryLongpressName,
8035 flag_descriptions::kClipboardHistoryLongpressDescription, kOsCrOS,
8036 FEATURE_VALUE_TYPE(ash::features::kClipboardHistoryLongpress)},
Colin Kincaidb78ba322023-06-22 02:25:378037 {kClipboardHistoryRefreshInternalName,
8038 flag_descriptions::kClipboardHistoryRefreshName,
8039 flag_descriptions::kClipboardHistoryRefreshDescription, kOsCrOS,
8040 FEATURE_VALUE_TYPE(chromeos::features::kClipboardHistoryRefresh)},
Yuta Hijikata235fc62b2020-12-08 03:48:328041#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Avery Musbach62777822020-03-06 05:49:048042
Xiaohan Wang064b68cd2022-01-19 19:12:288043#if BUILDFLAG(IS_WIN)
Armando Miragliad2e6fc9e2020-03-06 09:23:098044 {"enable-media-foundation-video-capture",
8045 flag_descriptions::kEnableMediaFoundationVideoCaptureName,
8046 flag_descriptions::kEnableMediaFoundationVideoCaptureDescription, kOsWin,
8047 FEATURE_VALUE_TYPE(media::kMediaFoundationVideoCapture)},
Xiaohan Wang064b68cd2022-01-19 19:12:288048#endif // BUILDFLAG(IS_WIN)
Armando Miragliad2e6fc9e2020-03-06 09:23:098049
Sergey Kataevc3be71f12022-11-18 20:11:558050 {"private-state-tokens", flag_descriptions::kPrivateStateTokensName,
8051 flag_descriptions::kPrivateStateTokensDescription, kOsAll,
Sam Schlesinger59f51442022-12-07 21:36:178052 FEATURE_VALUE_TYPE(network::features::kPrivateStateTokens)},
David Van Cleve08c5bc012020-03-26 17:31:468053
Xiaohan Wang064b68cd2022-01-19 19:12:288054#if !BUILDFLAG(IS_ANDROID)
John Lee651b47672020-09-14 19:55:028055 {"copy-link-to-text", flag_descriptions::kCopyLinkToTextName,
8056 flag_descriptions::kCopyLinkToTextDescription, kOsDesktop,
8057 FEATURE_VALUE_TYPE(features::kCopyLinkToText)},
Xiaohan Wang064b68cd2022-01-19 19:12:288058#endif // !BUILDFLAG(IS_ANDROID)
Josh Nohle928fdb62020-11-03 18:54:238059
Cheick Cisse006ab4e12022-06-03 17:30:058060 {"shared-highlighting-manager",
8061 flag_descriptions::kSharedHighlightingManagerName,
8062 flag_descriptions::kSharedHighlightingManagerDescription, kOsAll,
8063 FEATURE_VALUE_TYPE(shared_highlighting::kSharedHighlightingManager)},
Gayane Petrosyan65380732021-01-15 01:09:538064
Yuta Hijikata235fc62b2020-12-08 03:48:328065#if BUILDFLAG(IS_CHROMEOS_ASH)
Anton Swifton1917b872022-05-26 06:27:438066 {"shimless-rma-os-update", flag_descriptions::kShimlessRMAOsUpdateName,
8067 flag_descriptions::kShimlessRMAOsUpdateDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:428068 FEATURE_VALUE_TYPE(ash::features::kShimlessRMAOsUpdate)},
Cam Bickela8297462023-06-15 19:36:528069 {"shimless-rma-compliance-check",
8070 flag_descriptions::kShimlessRMAComplianceCheckName,
8071 flag_descriptions::kShimlessRMAComplianceCheckDescription, kOsCrOS,
8072 FEATURE_VALUE_TYPE(ash::features::kShimlessRMAComplianceCheck)},
wenyu zhang98000162022-06-16 17:02:538073 {"shimless-rma-disable-dark-mode",
8074 flag_descriptions::kShimlessRMADisableDarkModeName,
8075 flag_descriptions::kShimlessRMADisableDarkModeDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:428076 FEATURE_VALUE_TYPE(ash::features::kShimlessRMADisableDarkMode)},
Gavin Williams1a14b9212023-03-22 19:42:298077 {"shimless-rma-diagnostic-page",
8078 flag_descriptions::kShimlessRMADiagnosticPageName,
8079 flag_descriptions::kShimlessRMADiagnosticPageDescription, kOsCrOS,
Gavin Williams849e64d2023-04-04 23:50:178080 FEATURE_VALUE_TYPE(ash::features::kShimlessRMADiagnosticPage)},
Ashley Prasada370c0602023-04-04 20:54:058081 {"shortcut-customization-jelly",
8082 flag_descriptions::kShortcutCustomizationJellyName,
8083 flag_descriptions::kShortcutCustomizationJellyDescription, kOsCrOS,
8084 FEATURE_VALUE_TYPE(ash::features::kShortcutCustomizationJelly)},
Brando51a6f882023-05-26 19:02:448085 {"nearby-sharing-self-share",
8086 flag_descriptions::kNearbySharingSelfShareName,
8087 flag_descriptions::kNearbySharingSelfShareDescription, kOsCrOS,
8088 FEATURE_VALUE_TYPE(features::kNearbySharingSelfShare)},
Yuta Hijikata235fc62b2020-12-08 03:48:328089#endif // BUILDFLAG(IS_CHROMEOS_ASH)
James Vecore30f589c22020-04-03 23:16:178090
Yuta Hijikata235fc62b2020-12-08 03:48:328091#if BUILDFLAG(IS_CHROMEOS_ASH)
Rob Schonbergere0a8e3c2020-04-21 03:04:398092 {"enable-palm-suppression", flag_descriptions::kEnablePalmSuppressionName,
8093 flag_descriptions::kEnablePalmSuppressionDescription, kOsCrOS,
8094 FEATURE_VALUE_TYPE(ui::kEnablePalmSuppression)},
Yuta Hijikata235fc62b2020-12-08 03:48:328095#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Rob Schonbergere0a8e3c2020-04-21 03:04:398096
Lily Chen17c57972020-04-22 19:27:448097 {"enable-experimental-cookie-features",
8098 flag_descriptions::kEnableExperimentalCookieFeaturesName,
8099 flag_descriptions::kEnableExperimentalCookieFeaturesDescription, kOsAll,
8100 MULTI_VALUE_TYPE(kEnableExperimentalCookieFeaturesChoices)},
8101
Alisa Lin79251142021-06-15 20:22:128102 {"canvas-2d-layers", flag_descriptions::kCanvas2DLayersName,
8103 flag_descriptions::kCanvas2DLayersDescription, kOsAll,
8104 SINGLE_VALUE_TYPE(switches::kEnableCanvas2DLayers)},
8105
Honglin Yua0a14fa2022-03-31 22:40:058106 {"enable-machine-learning-model-loader-web-platform-api",
8107 flag_descriptions::kEnableMachineLearningModelLoaderWebPlatformApiName,
8108 flag_descriptions::
8109 kEnableMachineLearningModelLoaderWebPlatformApiDescription,
8110 kOsAll,
8111 FEATURE_VALUE_TYPE(
8112 features::kEnableMachineLearningModelLoaderWebPlatformApi)},
8113
Florian Jackyca9da172022-09-26 16:29:468114 {"confirmation-chip", flag_descriptions::kConfirmationChipName,
8115 flag_descriptions::kConfirmationChipNameDescription, kOsDesktop,
8116 FEATURE_VALUE_TYPE(permissions::features::kConfirmationChip)},
8117
8118 {"chip-location-bar-icon-override",
8119 flag_descriptions::kChipLocationBarIconOverrideName,
8120 flag_descriptions::kChipLocationBarIconOverrideDescription, kOsDesktop,
8121 FEATURE_VALUE_TYPE(permissions::features::kChipLocationBarIconOverride)},
8122
Florian Jacky3560a402023-04-03 16:39:038123 {"one-time-permission", flag_descriptions::kOneTimePermissionName,
8124 flag_descriptions::kOneTimePermissionDescription, kOsDesktop,
8125 FEATURE_VALUE_TYPE(permissions::features::kOneTimePermission)},
8126
Illia Klimov693a6cc2023-07-06 15:20:428127 {"improved-semantics-activity-indicators",
8128 flag_descriptions::kImprovedSemanticsActivityIndicatorsName,
8129 flag_descriptions::kImprovedSemanticsActivityIndicatorsDescription,
8130 kOsDesktop,
8131 FEATURE_VALUE_TYPE(
8132 permissions::features::kImprovedSemanticsActivityIndicators)},
8133
Doug Arnettc52291a2020-05-07 18:52:308134 {"enable-translate-sub-frames",
8135 flag_descriptions::kEnableTranslateSubFramesName,
8136 flag_descriptions::kEnableTranslateSubFramesDescription, kOsAll,
8137 FEATURE_VALUE_TYPE(translate::kTranslateSubFrames)},
8138
Andrew Paseltiner11afa4e2022-07-26 14:23:498139 {"attribution-reporting-debug-mode",
8140 flag_descriptions::kAttributionReportingDebugModeName,
8141 flag_descriptions::kAttributionReportingDebugModeDescription, kOsAll,
8142 SINGLE_VALUE_TYPE(switches::kAttributionReportingDebugMode)},
John Delaneycd1a54d42020-05-13 23:06:338143
Alex Turnerb6d89fa2022-10-12 18:33:578144 {"private-aggregation-developer-mode",
8145 flag_descriptions::kPrivateAggregationDeveloperModeName,
8146 flag_descriptions::kPrivateAggregationDeveloperModeDescription, kOsAll,
8147 SINGLE_VALUE_TYPE(switches::kPrivateAggregationDeveloperMode)},
Alex Turner2d504952022-09-21 23:56:498148
Yuta Hijikata235fc62b2020-12-08 03:48:328149#if BUILDFLAG(IS_CHROMEOS_ASH)
James Cookb661f3802021-09-30 21:43:208150 {"productivity-launcher", flag_descriptions::kProductivityLauncherName,
8151 flag_descriptions::kProductivityLauncherDescription, kOsCrOS,
tby630ca622022-02-02 07:22:178152 FEATURE_WITH_PARAMS_VALUE_TYPE(ash::features::kProductivityLauncher,
8153 kProductivityLauncherVariations,
8154 "ProductivityLauncher")},
Rachel Wongbde90d72022-07-11 06:18:278155 {"launcher-item-suggest", flag_descriptions::kLauncherItemSuggestName,
8156 flag_descriptions::kLauncherItemSuggestDescription, kOsCrOS,
andrewxuf7efde22023-01-12 00:25:288157 FEATURE_WITH_PARAMS_VALUE_TYPE(ash::kLauncherItemSuggest,
Rachel Wongbde90d72022-07-11 06:18:278158 kLauncherItemSuggestVariations,
8159 "LauncherItemSuggest")},
Matthew Mourgos0f79f502023-03-17 21:22:408160 {"eol-incentive", flag_descriptions::kEolIncentiveName,
8161 flag_descriptions::kEolIncentiveDescription, kOsCrOS,
8162 FEATURE_WITH_PARAMS_VALUE_TYPE(ash::features::kEolIncentive,
8163 kEolIncentiveVariations,
8164 "EolIncentive")},
Yulun Wufad53772022-06-22 22:56:358165 {"autocomplete-extended-suggestions",
8166 flag_descriptions::kAutocompleteExtendedSuggestionsName,
8167 flag_descriptions::kAutocompleteExtendedSuggestionsDescription, kOsCrOS,
8168 FEATURE_VALUE_TYPE(ash::features::kAutocompleteExtendedSuggestions)},
Yulun Wu2f5597992022-08-12 23:57:208169 {"productivity-launcher-image-search",
8170 flag_descriptions::kProductivityLauncherImageSearchName,
8171 flag_descriptions::kProductivityLauncherImageSearchDescription, kOsCrOS,
8172 FEATURE_VALUE_TYPE(ash::features::kProductivityLauncherImageSearch)},
Ashley Prasad0b9fb6082023-04-05 17:36:198173 {"scanning-app-jelly", flag_descriptions::kScanningAppJellyName,
8174 flag_descriptions::kScanningAppJellyDescription, kOsCrOS,
8175 FEATURE_VALUE_TYPE(ash::features::kScanningAppJelly)},
Elliot Tuck5551fdd2022-07-25 21:10:148176 {"shelf-auto-hide-separation",
8177 flag_descriptions::kShelfAutoHideSeparationName,
8178 flag_descriptions::kShelfAutoHideSeparationDescription, kOsCrOS,
8179 FEATURE_VALUE_TYPE(ash::features::kShelfAutoHideSeparation)},
Yulun Wuee444262023-01-31 22:40:528180 {"shelf-stacked-hotseat", flag_descriptions::kShelfStackedHotseatName,
8181 flag_descriptions::kShelfStackedHotseatDescription, kOsCrOS,
8182 FEATURE_VALUE_TYPE(ash::features::kShelfStackedHotseat)},
tbye50bce9a2022-03-31 03:32:548183 {"launcher-game-search", flag_descriptions::kLauncherGameSearchName,
8184 flag_descriptions::kLauncherGameSearchDescription, kOsCrOS,
8185 FEATURE_VALUE_TYPE(search_features::kLauncherGameSearch)},
Lauren Commeignes9c601fe32023-06-05 02:47:308186 {"launcher-fuzzy-match-across-providers",
8187 flag_descriptions::kLauncherFuzzyMatchAcrossProvidersName,
8188 flag_descriptions::kLauncherFuzzyMatchAcrossProvidersDescription, kOsCrOS,
8189 FEATURE_VALUE_TYPE(search_features::kLauncherFuzzyMatchAcrossProviders)},
Rebecca Hsu1d633912022-12-14 06:09:338190 {"launcher-keyword-extraction-scoring",
8191 flag_descriptions::kLauncherKeywordExtractionScoring,
8192 flag_descriptions::kLauncherKeywordExtractionScoringDescription, kOsCrOS,
8193 FEATURE_VALUE_TYPE(search_features::kLauncherKeywordExtractionScoring)},
Lauren Commeignes9f0db8f2022-12-21 00:03:478194 {"launcher-fuzzy-match-for-omnibox",
8195 flag_descriptions::kLauncherFuzzyMatchForOmniboxName,
8196 flag_descriptions::kLauncherFuzzyMatchForOmniboxDescription, kOsCrOS,
Lauren Commeignes6cae7452023-06-27 07:07:518197 FEATURE_VALUE_TYPE(search_features::kLauncherFuzzyMatchForOmnibox)},
Lauren Commeignes33aea8b2023-01-03 02:38:288198 {"launcher-system-info-answer-cards",
8199 flag_descriptions::kLauncherSystemInfoAnswerCardsName,
8200 flag_descriptions::kLauncherSystemInfoAnswerCardsDescription, kOsCrOS,
8201 FEATURE_VALUE_TYPE(search_features::kLauncherSystemInfoAnswerCards)},
Ana Salazarbb287bcc42023-01-11 00:34:208202 {"app-list-drag-and-drop-refactor",
8203 flag_descriptions::kAppListDragAndDropRefactorName,
8204 flag_descriptions::kAppListDragAndDropRefactorDescription, kOsCrOS,
8205 FEATURE_VALUE_TYPE(app_list_features::kDragAndDropRefactor)},
Wen-Chien Wange893a8d2022-10-05 16:53:258206 {"text-in-shelf", flag_descriptions::kTextInShelfName,
8207 flag_descriptions::kTextInShelfDescription, kOsCrOS,
8208 FEATURE_VALUE_TYPE(ash::features::kHomeButtonWithText)},
Wen-Chien Wangecbea052023-03-02 00:02:238209 {"app-collection-folder-refresh",
8210 flag_descriptions::kAppCollectionFolderRefreshName,
8211 flag_descriptions::kAppCollectionFolderRefreshDescription, kOsCrOS,
8212 FEATURE_VALUE_TYPE(ash::features::kAppCollectionFolderRefresh)},
Dmitry Grebenyuk462003b2023-03-26 23:42:268213 {"launcher-local-image-search",
8214 flag_descriptions::kLauncherLocalImageSearchName,
8215 flag_descriptions::kLauncherLocalImageSearchDescription, kOsCrOS,
8216 FEATURE_VALUE_TYPE(search_features::kLauncherImageSearch)},
Dmitry Grebenyuk5f388ac22023-05-22 03:24:398217 {"launcher-local-image-search-ocr",
8218 flag_descriptions::kLauncherLocalImageSearchOcrName,
8219 flag_descriptions::kLauncherLocalImageSearchOcrDescription, kOsCrOS,
8220 FEATURE_VALUE_TYPE(search_features::kLauncherImageSearchOcr)},
8221 {"launcher-local-image-search-ica",
8222 flag_descriptions::kLauncherLocalImageSearchIcaName,
8223 flag_descriptions::kLauncherLocalImageSearchIcaDescription, kOsCrOS,
8224 FEATURE_VALUE_TYPE(search_features::kLauncherImageSearchIca)},
Matthew Mourgos467fb1e2023-04-26 21:28:308225 {"quick-app-access-test-ui", flag_descriptions::kQuickAppAccessTestUIName,
8226 flag_descriptions::kQuickAppAccessTestUIDescription, kOsCrOS,
8227 FEATURE_VALUE_TYPE(ash::features::kQuickAppAccessTestUI)},
8228
Yuta Hijikata235fc62b2020-12-08 03:48:328229#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Ana Salazar270fed42020-06-11 14:44:408230
tby989a5b5ad2021-04-16 06:42:208231#if BUILDFLAG(IS_CHROMEOS_ASH)
Chad Duffincdab9362022-07-29 18:31:388232 {"mac-address-randomization",
8233 flag_descriptions::kMacAddressRandomizationName,
8234 flag_descriptions::kMacAddressRandomizationDescription, kOsCrOS,
8235 FEATURE_VALUE_TYPE(ash::features::kMacAddressRandomization)},
tby9a3d8072021-09-01 00:35:458236
Simon Ziegltrum55f69bc2022-12-22 16:05:518237 {"oobe-jelly", flag_descriptions::kOobeJellyName,
8238 flag_descriptions::kOobeJellyDescription, kOsCrOS,
8239 FEATURE_VALUE_TYPE(ash::features::kOobeJelly)},
Simon Ziegltrumffe92cee82023-06-30 19:44:348240 {"oobe-jelly-modal", flag_descriptions::kOobeJellyModalName,
8241 flag_descriptions::kOobeJellyModalDescription, kOsCrOS,
8242 FEATURE_VALUE_TYPE(ash::features::kOobeJellyModal)},
Simon Ziegltrumf02c98af2023-03-16 23:03:288243 {"oobe-simon", flag_descriptions::kOobeSimonName,
8244 flag_descriptions::kOobeSimonDescription, kOsCrOS,
8245 FEATURE_VALUE_TYPE(ash::features::kOobeSimon)},
Simon Ziegltrumc23cb6c52022-09-22 19:43:448246
Yulun Wu04255512022-02-15 01:34:158247 {"search-result-inline-icon",
8248 flag_descriptions::kSearchResultInlineIconName,
8249 flag_descriptions::kSearchResultInlineIconDescription, kOsCrOS,
8250 FEATURE_VALUE_TYPE(app_list_features::kSearchResultInlineIcon)},
8251
Chad Duffinea47d502023-04-12 23:25:378252 {"smds-support", flag_descriptions::kSmdsSupportName,
8253 flag_descriptions::kSmdsSupportDescription, kOsCrOS,
8254 FEATURE_VALUE_TYPE(ash::features::kSmdsSupport)},
8255
Chad Duffine34312d2023-04-13 00:17:108256 {"smds-support-euicc-upload",
8257 flag_descriptions::kSmdsSupportEuiccUploadName,
8258 flag_descriptions::kSmdsSupportEuiccUploadDescription, kOsCrOS,
8259 FEATURE_VALUE_TYPE(ash::features::kSmdsSupportEuiccUpload)},
8260
Chad Duffinc8c37082023-03-07 17:04:058261 {"smds-dbus-migration", flag_descriptions::kSmdsDbusMigrationName,
8262 flag_descriptions::kSmdsDbusMigrationDescription, kOsCrOS,
8263 FEATURE_VALUE_TYPE(ash::features::kSmdsDbusMigration)},
8264
Yulun Wu1cd0faa2022-03-03 06:59:218265 {"dynamic-search-update-animation",
8266 flag_descriptions::kDynamicSearchUpdateAnimationName,
8267 flag_descriptions::kDynamicSearchUpdateAnimationDescription, kOsCrOS,
8268 FEATURE_WITH_PARAMS_VALUE_TYPE(
8269 app_list_features::kDynamicSearchUpdateAnimation,
8270 kDynamicSearchUpdateAnimationVariations,
8271 "LauncherDynamicAnimations")},
tby989a5b5ad2021-04-16 06:42:208272#endif // BUILDFLAG(IS_CHROMEOS_ASH)
8273
Vicky Minb02c3e92020-07-07 20:56:528274 {"enable-bluetooth-spp-in-serial-api",
8275 flag_descriptions::kEnableBluetoothSerialPortProfileInSerialApiName,
8276 flag_descriptions::kEnableBluetoothSerialPortProfileInSerialApiDescription,
Chris Mumford57923e22022-01-05 23:31:568277 kOsDesktop,
Jesse Melhuish845fee92023-05-23 22:07:078278 FEATURE_VALUE_TYPE(
8279 features::kEnableBluetoothSerialPortProfileInSerialApi)},
Vicky Minb02c3e92020-07-07 20:56:528280
Yuta Hijikata235fc62b2020-12-08 03:48:328281#if BUILDFLAG(IS_CHROMEOS_ASH)
yjliu8f78e8b2020-07-22 20:51:218282 {"frame-throttle-fps", flag_descriptions::kFrameThrottleFpsName,
8283 flag_descriptions::kFrameThrottleFpsDescription, kOsCrOS,
Jeffrey Kardatzke9340e242020-08-05 22:00:228284 MULTI_VALUE_TYPE(kFrameThrottleFpsChoices)},
Yuta Hijikata235fc62b2020-12-08 03:48:328285#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Carlos IL0dc832832020-07-17 01:14:448286
Xiaohan Wang064b68cd2022-01-19 19:12:288287#if BUILDFLAG(IS_ANDROID)
Rohit Agarwal6e9b6022021-08-10 19:44:378288 {"incognito-reauthentication-for-android",
8289 flag_descriptions::kIncognitoReauthenticationForAndroidName,
8290 flag_descriptions::kIncognitoReauthenticationForAndroidDescription,
8291 kOsAndroid,
Rohit Agarwal90fbdf352021-09-01 11:05:438292 FEATURE_VALUE_TYPE(chrome::android::kIncognitoReauthenticationForAndroid)},
Side Yilmaz424606f2021-04-09 14:08:298293#endif
8294
Xiaohan Wang064b68cd2022-01-19 19:12:288295#if BUILDFLAG(IS_ANDROID)
Vikas Sonif14e32c2020-08-15 06:17:228296 {"enable-surface-control", flag_descriptions::kAndroidSurfaceControlName,
8297 flag_descriptions::kAndroidSurfaceControlDescription, kOsAndroid,
8298 FEATURE_VALUE_TYPE(features::kAndroidSurfaceControl)},
Vikas Soni5463f1a2020-08-17 22:47:308299
8300 {"enable-image-reader", flag_descriptions::kAImageReaderName,
8301 flag_descriptions::kAImageReaderDescription, kOsAndroid,
8302 FEATURE_VALUE_TYPE(features::kAImageReader)},
Xiaohan Wang064b68cd2022-01-19 19:12:288303#endif // BUILDFLAG(IS_ANDROID)
Eric Secklerb9545b32020-08-11 21:29:428304
Xiaohan Wang064b68cd2022-01-19 19:12:288305#if BUILDFLAG(IS_ANDROID)
Hung Vuc394db62020-08-21 21:26:528306 {"smart-suggestion-for-large-downloads",
8307 flag_descriptions::kSmartSuggestionForLargeDownloadsName,
8308 flag_descriptions::kSmartSuggestionForLargeDownloadsDescription,
8309 kOsAndroid,
8310 FEATURE_VALUE_TYPE(download::features::kSmartSuggestionForLargeDownloads)},
Xiaohan Wang064b68cd2022-01-19 19:12:288311#endif // BUILDFLAG(IS_ANDROID)
Hung Vuc394db62020-08-21 21:26:528312
Xiaohan Wang064b68cd2022-01-19 19:12:288313#if BUILDFLAG(IS_ANDROID)
Aishwarya Rajesh0dd71922021-07-28 20:22:388314 {"messages-for-android-ads-blocked",
8315 flag_descriptions::kMessagesForAndroidAdsBlockedName,
8316 flag_descriptions::kMessagesForAndroidAdsBlockedDescription, kOsAndroid,
8317 FEATURE_VALUE_TYPE(messages::kMessagesForAndroidAdsBlocked)},
Pavel Yatsuk358291752020-09-03 18:25:228318 {"messages-for-android-infrastructure",
8319 flag_descriptions::kMessagesForAndroidInfrastructureName,
8320 flag_descriptions::kMessagesForAndroidInfrastructureDescription,
8321 kOsAndroid,
8322 FEATURE_VALUE_TYPE(messages::kMessagesForAndroidInfrastructure)},
Vishwas Uppoor8031d642022-05-10 01:28:518323 {"messages-for-android-offer-notification",
8324 flag_descriptions::kMessagesForAndroidOfferNotificationName,
8325 flag_descriptions::kMessagesForAndroidOfferNotificationDescription,
8326 kOsAndroid,
8327 FEATURE_VALUE_TYPE(messages::kMessagesForAndroidOfferNotification)},
Lijin Shen2d61a0a32021-07-20 23:15:528328 {"messages-for-android-permission-update",
8329 flag_descriptions::kMessagesForAndroidPermissionUpdateName,
8330 flag_descriptions::kMessagesForAndroidPermissionUpdateDescription,
8331 kOsAndroid,
8332 FEATURE_VALUE_TYPE(messages::kMessagesForAndroidPermissionUpdate)},
Lijin Shenba9a6b0e2021-02-18 01:59:068333 {"messages-for-android-popup-blocked",
8334 flag_descriptions::kMessagesForAndroidPopupBlockedName,
8335 flag_descriptions::kMessagesForAndroidPopupBlockedDescription, kOsAndroid,
8336 FEATURE_VALUE_TYPE(messages::kMessagesForAndroidPopupBlocked)},
Pavel Yatsukb7307fa2021-09-15 18:02:308337 {"messages-for-android-pwa-install",
8338 flag_descriptions::kMessagesForAndroidPWAInstallName,
8339 flag_descriptions::kMessagesForAndroidPWAInstallDescription, kOsAndroid,
8340 FEATURE_VALUE_TYPE(webapps::features::kInstallableAmbientBadgeMessage)},
Lijin Shend98ce992021-05-01 01:47:428341 {"messages-for-android-save-card",
8342 flag_descriptions::kMessagesForAndroidSaveCardName,
8343 flag_descriptions::kMessagesForAndroidSaveCardDescription, kOsAndroid,
8344 FEATURE_VALUE_TYPE(messages::kMessagesForAndroidSaveCard)},
Lijin Shen0e049c432022-04-05 23:12:438345 {"messages-for-android-stacking-animation",
8346 flag_descriptions::kMessagesForAndroidStackingAnimationName,
8347 flag_descriptions::kMessagesForAndroidStackingAnimationDescription,
8348 kOsAndroid,
8349 FEATURE_VALUE_TYPE(messages::kMessagesForAndroidStackingAnimation)},
Pavel Yatsuk358291752020-09-03 18:25:228350#endif
8351
Xiaohan Wang064b68cd2022-01-19 19:12:288352#if BUILDFLAG(IS_ANDROID)
Trevor Perrierc1384bb2021-06-04 23:54:038353 {"android-force-app-language-prompt",
8354 flag_descriptions::kAndroidForceAppLanguagePromptName,
8355 flag_descriptions::kAndroidForceAppLanguagePromptDescription, kOsAndroid,
8356 FEATURE_VALUE_TYPE(language::kForceAppLanguagePrompt)},
Trevor Perrier990a1c62020-09-11 20:27:328357#endif
8358
Xiaohan Wang064b68cd2022-01-19 19:12:288359#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \
8360 BUILDFLAG(IS_FUCHSIA)
Leonard Greye2b8fe92022-03-04 20:36:018361 {"quick-commands", flag_descriptions::kQuickCommandsName,
8362 flag_descriptions::kQuickCommandsDescription, kOsDesktop,
8363 FEATURE_VALUE_TYPE(features::kQuickCommands)},
Josh Santana0863d7042021-02-04 20:56:458364#endif
8365
Rohit Agarwal5e1c17fc2023-02-03 11:44:158366#if BUILDFLAG(IS_ANDROID)
8367 {"quick-delete-for-android", flag_descriptions::kQuickDeleteForAndroidName,
8368 flag_descriptions::kQuickDeleteForAndroidDescription, kOsAndroid,
8369 FEATURE_VALUE_TYPE(chrome::android::kQuickDeleteForAndroid)},
8370#endif // BUILDFLAG(IS_ANDROID)
8371
Finnur Thorarinsson528355742022-03-07 10:57:018372 {"pwa-update-dialog-for-icon",
8373 flag_descriptions::kPwaUpdateDialogForAppIconName,
8374 flag_descriptions::kPwaUpdateDialogForAppIconDescription, kOsAll,
8375 FEATURE_VALUE_TYPE(features::kPwaUpdateDialogForIcon)},
8376
Alan Screened2fdda2021-09-15 17:24:468377#if BUILDFLAG(ENABLE_OOP_PRINTING)
Alan Screen652ddbb2020-09-16 07:14:538378 {"enable-oop-print-drivers", flag_descriptions::kEnableOopPrintDriversName,
8379 flag_descriptions::kEnableOopPrintDriversDescription, kOsDesktop,
8380 FEATURE_VALUE_TYPE(printing::features::kEnableOopPrintDrivers)},
8381#endif
8382
Finnur Thorarinsson4e43a0852023-03-23 09:20:028383#if BUILDFLAG(IS_ANDROID)
8384 {"media-picker-adoption", flag_descriptions::kMediaPickerAdoptionStudyName,
8385 flag_descriptions::kMediaPickerAdoptionStudyDescription, kOsAndroid,
8386 FEATURE_WITH_PARAMS_VALUE_TYPE(
8387 photo_picker::features::kAndroidMediaPickerAdoption,
8388 kPhotoPickerAdoptionStudyFeatureVariations,
8389 "MediaPickerAdoption")},
8390#endif // BUILDFLAG(IS_ANDROID)
8391
John Delaney1d6e4b5c2022-03-25 02:19:228392 {"privacy-sandbox-ads-apis",
8393 flag_descriptions::kPrivacySandboxAdsAPIsOverrideName,
8394 flag_descriptions::kPrivacySandboxAdsAPIsOverrideDescription, kOsAll,
Alex Turner8c6cd1dc2022-09-27 02:21:188395 SINGLE_VALUE_TYPE(switches::kEnablePrivacySandboxAdsApis)},
John Delaney1d6e4b5c2022-03-25 02:19:228396
Theodore Olsauskas-Warren474cdb52023-01-04 10:16:348397 {"privacy-sandbox-settings-4",
8398 flag_descriptions::kPrivacySandboxSettings4Name,
8399 flag_descriptions::kPrivacySandboxSettings4Description, kOsAll,
8400 FEATURE_WITH_PARAMS_VALUE_TYPE(privacy_sandbox::kPrivacySandboxSettings4,
8401 kPrivacySandboxSettings4Variations,
8402 "PrivacySandboxSettings4")},
8403
Andrey Zaytsev5794f892022-07-14 16:16:558404#if BUILDFLAG(IS_ANDROID)
8405 {"site-data-improvements", flag_descriptions::kSiteDataImprovementsName,
8406 flag_descriptions::kSiteDataImprovementsDescription, kOsAndroid,
8407 FEATURE_VALUE_TYPE(browser_ui::kSiteDataImprovements)},
8408#endif // BUILDFLAG(IS_ANDROID)
8409
Chris Blumed5d85872021-02-17 18:21:018410 {"animated-image-resume", flag_descriptions::kAnimatedImageResumeName,
8411 flag_descriptions::kAnimatedImageResumeDescription, kOsAll,
8412 FEATURE_VALUE_TYPE(features::kAnimatedImageResume)},
8413
Xiaohan Wang064b68cd2022-01-19 19:12:288414#if !BUILDFLAG(IS_ANDROID)
Awad Osman33029872022-12-02 19:04:268415 {"enable-enhanced-safe-browsing-settings-improvements",
8416 flag_descriptions::kEnableEnhancedSafeBrowsingSettingsImprovementsName,
8417 flag_descriptions::
8418 kEnableEnhancedSafeBrowsingSettingsImprovementsDescription,
8419 kOsDesktop,
Awad Osman0d0fa312023-02-09 19:06:408420 FEATURE_WITH_PARAMS_VALUE_TYPE(
8421 safe_browsing::kEsbIphBubbleAndCollapseSettings,
8422 kEsbIphBubbleAndCollapseSettingsVariations,
8423 "EsbIphBubbleAndCollapseSettingsVariations")},
Awad Osman33029872022-12-02 19:04:268424#endif // !BUILDFLAG(IS_ANDROID)
8425
Awad Osmana930e9c2023-06-12 17:33:018426 {"enable-friendlier-safe-browsing-settings",
8427 flag_descriptions::kEnableFriendlierSafeBrowsingSettingsName,
8428 flag_descriptions::kEnableFriendlierSafeBrowsingSettingsDescription,
8429 kOsAll,
8430 FEATURE_VALUE_TYPE(safe_browsing::kFriendlierSafeBrowsingSettings)},
8431
Javier Castro44dd9c12023-06-22 20:05:498432 {"enable-tailored-security-retry-for-sync-users",
8433 flag_descriptions::kTailoredSecurityRetryForSyncUsersName,
8434 flag_descriptions::kTailoredSecurityRetryForSyncUsersDescription, kOsAll,
8435 FEATURE_VALUE_TYPE(safe_browsing::kTailoredSecurityRetryForSyncUsers)},
8436
Awad Osman0bbaafd2023-04-14 01:35:298437 {"enable-tailored-security-updated-messages",
8438 flag_descriptions::kEnableTailoredSecurityUpdatedMessagesName,
8439 flag_descriptions::kEnableTailoredSecurityUpdatedMessagesDescription,
8440 kOsAll,
8441 FEATURE_VALUE_TYPE(safe_browsing::kTailoredSecurityUpdatedMessages)},
8442
Awad Osman33029872022-12-02 19:04:268443#if !BUILDFLAG(IS_ANDROID)
Chris Thompson657d5c82020-10-08 23:04:108444 {"sct-auditing", flag_descriptions::kSCTAuditingName,
8445 flag_descriptions::kSCTAuditingDescription, kOsDesktop,
8446 FEATURE_WITH_PARAMS_VALUE_TYPE(features::kSCTAuditing,
8447 kSCTAuditingVariations,
8448 "SCTAuditingVariations")},
Xiaohan Wang064b68cd2022-01-19 19:12:288449#endif // !BUILDFLAG(IS_ANDROID)
Chris Thompson657d5c82020-10-08 23:04:108450
Xiaohan Wang064b68cd2022-01-19 19:12:288451#if BUILDFLAG(IS_ANDROID)
Zaina Al-Mashni9ff754072023-06-13 11:39:148452 // TODO(https://crbug.com/985245): remove flag when API version 33 is the
8453 // lowest supported version and the kImprovedIncognitoScreenshot flag is
8454 // cleaned up, Since this flag has no effect when
8455 // kImprovedIncognitoScreenshot is enabled and is used as a fallback when
8456 // kImprovedIncognitoScreenshot is disabled.
Ramin Halavatidf9668c2020-10-30 15:35:538457 {"incognito-screenshot", flag_descriptions::kIncognitoScreenshotName,
8458 flag_descriptions::kIncognitoScreenshotDescription, kOsAndroid,
8459 FEATURE_VALUE_TYPE(chrome::android::kIncognitoScreenshot)},
Side YILMAZ99a468a02022-05-23 08:02:418460
Alex Ilasiab901f92021-09-13 09:27:278461 {"incognito-downloads-warning",
8462 flag_descriptions::kIncognitoDownloadsWarningName,
Side YILMAZ99a468a02022-05-23 08:02:418463 flag_descriptions::kIncognitoDownloadsWarningDescription, kOsAndroid,
Side YILMAZ5b0e0af12022-05-11 15:02:438464 FEATURE_VALUE_TYPE(features::kIncognitoDownloadsWarning)},
Zaina Al-Mashni9ff754072023-06-13 11:39:148465
8466 {"improved-incognito-screenshot",
8467 flag_descriptions::kImprovedIncognitoScreenshotName,
8468 flag_descriptions::kImprovedIncognitoScreenshotDescription, kOsAndroid,
8469 FEATURE_VALUE_TYPE(chrome::android::kImprovedIncognitoScreenshot)},
Side YILMAZ99a468a02022-05-23 08:02:418470#endif
Alex Ilasiab901f92021-09-13 09:27:278471
Saba Khukhunashvili92538942021-08-11 14:27:268472 {"incognito-ntp-revamp", flag_descriptions::kIncognitoNtpRevampName,
8473 flag_descriptions::kIncognitoNtpRevampDescription, kOsAll,
8474 FEATURE_VALUE_TYPE(features::kIncognitoNtpRevamp)},
8475
Joe DeBlasiob82518ad2023-05-18 17:42:198476 {"insecure-download-warnings",
8477 flag_descriptions::kInsecureDownloadWarningsName,
8478 flag_descriptions::kInsecureDownloadWarningsDescription, kOsAll,
8479 FEATURE_VALUE_TYPE(features::kInsecureDownloadWarnings)},
Joe DeBlasioe349bdd2022-12-28 00:39:598480
Weiliang Chene39e7652020-11-18 05:30:158481 {"show-performance-metrics-hud",
8482 flag_descriptions::kShowPerformanceMetricsHudName,
8483 flag_descriptions::kShowPerformanceMetricsHudDescription, kOsAll,
8484 FEATURE_VALUE_TYPE(features::kHudDisplayForPerformanceMetrics)},
8485
Yuta Hijikata235fc62b2020-12-08 03:48:328486#if BUILDFLAG(IS_CHROMEOS_ASH)
Pilar Molina Lopezd5b787512020-11-19 00:21:488487 {"disable-buffer-bw-compression",
8488 flag_descriptions::kDisableBufferBWCompressionName,
8489 flag_descriptions::kDisableBufferBWCompressionDescription, kOsCrOS,
8490 SINGLE_VALUE_TYPE(switches::kDisableBufferBWCompression)},
Yuta Hijikata235fc62b2020-12-08 03:48:328491#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Pilar Molina Lopezd5b787512020-11-19 00:21:488492
Robert Lin4035ebb2021-10-08 12:23:418493 {"omnibox-trigger-for-prerender2",
8494 flag_descriptions::kOmniboxTriggerForPrerender2Name,
8495 flag_descriptions::kOmniboxTriggerForPrerender2Description, kOsAll,
8496 FEATURE_VALUE_TYPE(features::kOmniboxTriggerForPrerender2)},
Lingqi Chi357fcda12022-02-18 03:34:158497 {"search-suggestion-for-prerender2",
8498 flag_descriptions::kSupportSearchSuggestionForPrerender2Name,
8499 flag_descriptions::kSupportSearchSuggestionForPrerender2Description,
8500 kOsAll,
Lingqi Chif3f3fe72022-07-21 12:02:508501 FEATURE_WITH_PARAMS_VALUE_TYPE(
8502 features::kSupportSearchSuggestionForPrerender2,
Felipe Andrade579b7fd2022-10-14 15:17:288503 kSearchSuggestionPrerenderTypeVariations,
Lingqi Chif3f3fe72022-07-21 12:02:508504 "SearchSuggestionPrerender")},
Shimi Zhang86c5f212020-11-23 20:36:518505
Ryan Sturm0c7162f72022-09-16 15:13:418506 {"omnibox-search-prefetch",
8507 flag_descriptions::kEnableOmniboxSearchPrefetchName,
8508 flag_descriptions::kEnableOmniboxSearchPrefetchDescription, kOsAll,
8509 FEATURE_WITH_PARAMS_VALUE_TYPE(kSearchPrefetchServicePrefetching,
8510 kSearchPrefetchServicePrefetchingVariations,
8511 "SearchSuggestionPrefetch")},
8512 {"omnibox-search-client-prefetch",
8513 flag_descriptions::kEnableOmniboxClientSearchPrefetchName,
8514 flag_descriptions::kEnableOmniboxClientSearchPrefetchDescription, kOsAll,
8515 FEATURE_VALUE_TYPE(kSearchNavigationPrefetch)},
8516
Elaine Chienaeb4adc2020-12-08 04:22:058517 {"chrome-labs", flag_descriptions::kChromeLabsName,
Elaine Chien3e956ede2021-05-10 19:18:238518 flag_descriptions::kChromeLabsDescription, kOsDesktop,
Elaine Chienaeb4adc2020-12-08 04:22:058519 FEATURE_VALUE_TYPE(features::kChromeLabs)},
8520
Elaine Chienaef6d932023-05-15 18:29:418521 {flag_descriptions::kChromeRefresh2023Id,
8522 flag_descriptions::kChromeRefresh2023Name,
Elaine Chienf90ffa72023-01-25 19:18:328523 flag_descriptions::kChromeRefresh2023Description, kOsDesktop,
Keren Zhueaf0e022023-04-06 18:16:298524 FEATURE_WITH_PARAMS_VALUE_TYPE(features::kChromeRefresh2023,
8525 kChromeRefresh2023Variations,
8526 "ChromeRefresh2023")},
Elaine Chienf90ffa72023-01-25 19:18:328527
John Leee6d9a8682023-04-22 00:58:398528 {"chrome-webui-refresh-2023",
8529 flag_descriptions::kChromeWebuiRefresh2023Name,
8530 flag_descriptions::kChromeWebuiRefresh2023Description, kOsDesktop,
8531 FEATURE_VALUE_TYPE(features::kChromeWebuiRefresh2023)},
8532
Keren Zhu28ac51822023-04-10 18:27:538533#if BUILDFLAG(IS_MAC)
8534 {"cr2023-mac-font-smoothing",
8535 flag_descriptions::kCr2023MacFontSmoothingName,
8536 flag_descriptions::kCr2023MacFontSmoothingDescription, kOsMac,
8537 FEATURE_VALUE_TYPE(features::kCr2023MacFontSmoothing)},
8538#endif
8539
cfredric6f155762020-12-10 18:52:408540 {"enable-first-party-sets", flag_descriptions::kEnableFirstPartySetsName,
8541 flag_descriptions::kEnableFirstPartySetsDescription, kOsAll,
Kirubel Akliluc9b4e412022-01-12 01:00:018542 FEATURE_VALUE_TYPE(features::kFirstPartySets)},
cfredric6f155762020-12-10 18:52:408543
Xiaohan Wang064b68cd2022-01-19 19:12:288544#if BUILDFLAG(IS_ANDROID)
siashaheb118ad52020-12-15 00:17:078545 {"autofill-enable-offers-in-clank-keyboard-accessory",
8546 flag_descriptions::kAutofillEnableOffersInClankKeyboardAccessoryName,
8547 flag_descriptions::
8548 kAutofillEnableOffersInClankKeyboardAccessoryDescription,
8549 kOsAndroid,
8550 FEATURE_VALUE_TYPE(
8551 autofill::features::kAutofillEnableOffersInClankKeyboardAccessory)},
8552#endif
8553
Carlos ILc5c2e2702020-12-15 21:19:508554#if BUILDFLAG(ENABLE_PDF)
Nektarios Paisios989068702022-03-02 09:06:568555
8556#if !BUILDFLAG(IS_ANDROID)
Ramin Halavati749df2f2023-05-08 18:46:088557 // TODO(https://crbug.com/1443341): Add Windows once library supports it.
Nektarios Paisios989068702022-03-02 09:06:568558 {"pdf-ocr", flag_descriptions::kPdfOcrName,
Ramin Halavati12a8d33c2022-11-16 05:46:058559 flag_descriptions::kPdfOcrDescription,
8560 kOsMac | kOsLinux | kOsCrOS | kOsLacros,
Nektarios Paisios989068702022-03-02 09:06:568561 FEATURE_VALUE_TYPE(features::kPdfOcr)},
8562#endif // !BUILDFLAG(IS_ANDROID)
8563
Carlos ILc5c2e2702020-12-15 21:19:508564 {"pdf-xfa-forms", flag_descriptions::kPdfXfaFormsName,
Lei Zhang14671ef52021-10-25 18:10:468565 flag_descriptions::kPdfXfaFormsDescription, kOsDesktop,
Carlos ILc5c2e2702020-12-15 21:19:508566 FEATURE_VALUE_TYPE(chrome_pdf::features::kPdfXfaSupport)},
8567#endif // BUILDFLAG(ENABLE_PDF)
8568
Victor Hugo Vianna Silvaf0a44002022-02-16 10:38:008569 {"send-tab-to-self-signin-promo",
8570 flag_descriptions::kSendTabToSelfSigninPromoName,
8571 flag_descriptions::kSendTabToSelfSigninPromoDescription, kOsAll,
8572 FEATURE_VALUE_TYPE(send_tab_to_self::kSendTabToSelfSigninPromo)},
8573
Xiaohan Wang064b68cd2022-01-19 19:12:288574#if BUILDFLAG(IS_ANDROID)
Kyle Milka9b53215c32021-05-10 18:40:348575 {"send-tab-to-self-v2", flag_descriptions::kSendTabToSelfV2Name,
Elly Fong-Jones6fde14c2022-01-05 18:10:588576 flag_descriptions::kSendTabToSelfV2Description, kOsAndroid,
Kyle Milka9b53215c32021-05-10 18:40:348577 FEATURE_VALUE_TYPE(send_tab_to_self::kSendTabToSelfV2)},
Xiaohan Wang064b68cd2022-01-19 19:12:288578#endif // BUILDFLAG(IS_ANDROID)
Kyle Milka9b53215c32021-05-10 18:40:348579
Xiaohan Wang064b68cd2022-01-19 19:12:288580#if BUILDFLAG(IS_WIN)
henrikac66d1012021-01-19 13:59:188581 {"raw-audio-capture", flag_descriptions::kRawAudioCaptureName,
8582 flag_descriptions::kRawAudioCaptureDescription, kOsWin,
8583 FEATURE_VALUE_TYPE(media::kWasapiRawAudioCapture)},
Xiaohan Wang064b68cd2022-01-19 19:12:288584#endif // BUILDFLAG(IS_WIN)
henrikac66d1012021-01-19 13:59:188585
Anatoliy Potapchukf096475c2021-04-06 15:51:598586 {"enable-managed-configuration-web-api",
8587 flag_descriptions::kEnableManagedConfigurationWebApiName,
8588 flag_descriptions::kEnableManagedConfigurationWebApiDescription, kOsCrOS,
8589 FEATURE_VALUE_TYPE(blink::features::kManagedConfiguration)},
8590
Anqing Zhaoc7136af2021-01-20 05:52:398591 {"enable-restricted-web-apis",
8592 flag_descriptions::kEnableRestrictedWebApisName,
8593 flag_descriptions::kEnableRestrictedWebApisDescription, kOsCrOS,
8594 FEATURE_VALUE_TYPE(features::kEnableRestrictedWebApis)},
8595
Shuran Huangd11e73e2021-04-14 16:10:128596 {"clear-cross-site-cross-browsing-context-group-window-name",
8597 flag_descriptions::kClearCrossSiteCrossBrowsingContextGroupWindowNameName,
8598 flag_descriptions::
8599 kClearCrossSiteCrossBrowsingContextGroupWindowNameDescription,
Shuran Huanga5be08b2021-01-20 18:46:298600 kOsAll,
8601 FEATURE_VALUE_TYPE(
Shuran Huangd11e73e2021-04-14 16:10:128602 features::kClearCrossSiteCrossBrowsingContextGroupWindowName)},
Shuran Huanga5be08b2021-01-20 18:46:298603
Simon Hanglf8a8cf52023-05-16 19:58:108604#if BUILDFLAG(IS_CHROMEOS)
8605 {kTaskManagerEndProcessDisabledForExtensionInternalName,
8606 flag_descriptions::kTaskManagerEndProcessDisabledForExtensionName,
8607 flag_descriptions::kTaskManagerEndProcessDisabledForExtensionDescription,
8608 kOsCrOS | kOsLacros,
8609 FEATURE_VALUE_TYPE(features::kDesktopPWAsRunOnOsLogin)},
8610#endif // BUILDFLAG(IS_CHROMEOS)
8611
Jeffrey Young35f24d32021-01-27 22:58:218612#if BUILDFLAG(IS_CHROMEOS_ASH)
Colin Kincaid292cfc42022-05-03 19:17:078613 {kWallpaperFastRefreshInternalName,
8614 flag_descriptions::kWallpaperFastRefreshName,
8615 flag_descriptions::kWallpaperFastRefreshDescription, kOsCrOS,
8616 FEATURE_VALUE_TYPE(ash::features::kWallpaperFastRefresh)},
Jerry Liua21b61622022-12-20 00:52:128617 {kWallpaperGooglePhotosSharedAlbumsInternalName,
8618 flag_descriptions::kWallpaperGooglePhotosSharedAlbumsName,
8619 flag_descriptions::kWallpaperGooglePhotosSharedAlbumsDescription, kOsCrOS,
8620 FEATURE_VALUE_TYPE(ash::features::kWallpaperGooglePhotosSharedAlbums)},
Sean Kau1d8791e32021-11-08 22:51:548621 {kWallpaperPerDeskName, flag_descriptions::kWallpaperPerDeskName,
8622 flag_descriptions::kWallpaperPerDeskDescription, kOsCrOS,
8623 FEATURE_VALUE_TYPE(ash::features::kWallpaperPerDesk)},
Jeffrey Young35f24d32021-01-27 22:58:218624#endif // BUILDFLAG(IS_CHROMEOS_ASH)
8625
Simon Hangl05d1f6a2023-01-13 15:33:598626#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX)
Simon Hanglcfe153b2023-04-03 14:38:408627 {"enable-get-all-screens-media", flag_descriptions::kGetAllScreensMediaName,
8628 flag_descriptions::kGetAllScreensMediaDescription,
8629 kOsCrOS | kOsLacros | kOsLinux,
8630 FEATURE_VALUE_TYPE(blink::features::kGetAllScreensMedia)},
Simon Hangl05d1f6a2023-01-13 15:33:598631#endif // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX)
8632
8633#if BUILDFLAG(IS_CHROMEOS)
Sebastian Fiß8f6d9a82023-03-07 09:04:258634 {"enable-run-on-os-login", flag_descriptions::kRunOnOsLoginName,
8635 flag_descriptions::kRunOnOsLoginDescription, kOsCrOS | kOsLacros,
8636 FEATURE_VALUE_TYPE(features::kDesktopPWAsRunOnOsLogin)},
Simon Hangl39e525b2023-04-14 17:19:388637 {"enable-prevent-close", flag_descriptions::kPreventCloseName,
8638 flag_descriptions::kPreventCloseDescription, kOsCrOS | kOsLacros,
8639 FEATURE_VALUE_TYPE(features::kDesktopPWAsPreventClose)},
Sebastian Fiß8f6d9a82023-03-07 09:04:258640#endif // BUILDFLAG(IS_CHROMEOS)
8641
8642#if BUILDFLAG(IS_CHROMEOS)
Jon Mannf67d2fb2022-02-28 06:26:228643 {"messages-preinstall", flag_descriptions::kMessagesPreinstallName,
8644 flag_descriptions::kMessagesPreinstallDescription, kOsCrOS,
8645 FEATURE_VALUE_TYPE(web_app::kMessagesPreinstall)},
Femi Adegunloyec22dc3e2022-09-08 15:25:588646
8647 {"lacros-color-management", flag_descriptions::kLacrosColorManagementName,
Femi Adegunloye546a2042023-06-14 22:59:468648 flag_descriptions::kLacrosColorManagementDescription, kOsLacros,
Femi Adegunloyec22dc3e2022-09-08 15:25:588649 FEATURE_VALUE_TYPE(features::kLacrosColorManagement)},
Glen Robertson371a2df2023-02-15 04:18:198650#endif
Sebastian Fiß8f6d9a82023-03-07 09:04:258651
Glen Robertson371a2df2023-02-15 04:18:198652#if BUILDFLAG(IS_CHROMEOS)
8653 {"preinstalled-web-app-window-experiment",
8654 flag_descriptions::kPreinstalledWebAppWindowExperimentName,
8655 flag_descriptions::kPreinstalledWebAppWindowExperimentDescription,
8656 kOsCrOS | kOsLacros,
8657 FEATURE_WITH_PARAMS_VALUE_TYPE(
8658 features::kPreinstalledWebAppWindowExperiment,
8659 kPreinstalledWebAppWindowExperimentVariations,
8660 "PreinstalledWebAppWindowExperimentVariations")},
Xiaohan Wang064b68cd2022-01-19 19:12:288661#endif // BUILDFLAG(IS_CHROMEOS)
Clarissa Garvey124eb7c2021-01-28 23:10:428662
Pilar Molina Lopezae61dfc2022-01-21 21:04:458663#if defined(ARCH_CPU_X86_FAMILY) && BUILDFLAG(IS_CHROMEOS)
8664 // TODO(b/214589754): revisit the need for this flag when the final design
8665 // for HW encoding is implemented for lacros-chrome.
Miguel Casasb93a0e352021-07-16 04:07:218666 {"enable-vaapi-vp9-kSVC-encode-acceleration",
8667 flag_descriptions::kVaapiVP9kSVCEncoderName,
Fred Shihebe9cf82022-04-19 21:06:268668 flag_descriptions::kVaapiVP9kSVCEncoderDescription, kOsCrOS | kOsLacros,
Miguel Casas5de4a002021-07-16 20:14:268669 FEATURE_VALUE_TYPE(media::kVaapiVp9kSVCHWEncoding)},
Pilar Molina Lopezae61dfc2022-01-21 21:04:458670#endif // defined(ARCH_CPU_X86_FAMILY) && BUILDFLAG(IS_CHROMEOS)
Miguel Casasb93a0e352021-07-16 04:07:218671
Jeff Chen64a0458a2022-01-13 17:12:178672 {"enable-global-vaapi-lock", flag_descriptions::kGlobalVaapiLockName,
Fred Shih87e6a562022-04-13 19:51:518673 flag_descriptions::kGlobalVaapiLockDescription,
8674 kOsCrOS | kOsLinux | kOsLacros,
Jeff Chen64a0458a2022-01-13 17:12:178675 FEATURE_VALUE_TYPE(media::kGlobalVaapiLock)},
8676
Hirokazu Honda22eb73a2021-10-29 03:58:388677 {"enable-vp9-kSVC-decode-acceleration",
8678 flag_descriptions::kVp9kSVCHWDecodingName,
8679 flag_descriptions::kVp9kSVCHWDecodingDescription, kOsAll,
8680 FEATURE_VALUE_TYPE(media::kVp9kSVCHWDecoding)},
8681
Xiaohan Wang064b68cd2022-01-19 19:12:288682#if BUILDFLAG(IS_WIN) || \
8683 (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS)) || \
8684 BUILDFLAG(IS_MAC) || BUILDFLAG(IS_FUCHSIA)
Wei Li51e9c162021-02-01 19:53:358685 {
8686 "ui-debug-tools",
8687 flag_descriptions::kUIDebugToolsName,
8688 flag_descriptions::kUIDebugToolsDescription,
Fred Shih87e6a562022-04-13 19:51:518689 kOsWin | kOsLinux | kOsLacros | kOsMac | kOsFuchsia,
Wei Li51e9c162021-02-01 19:53:358690 FEATURE_VALUE_TYPE(features::kUIDebugTools),
8691 },
Gabriel Oliveirac1792c82022-08-17 17:31:418692
Tibor Goldschwendtf9501a62023-03-23 03:11:198693 {"sync-poll-immediately-on-every-startup",
8694 flag_descriptions::kSyncPollImmediatelyOnEveryStartupName,
8695 flag_descriptions::kSyncPollImmediatelyOnEveryStartupDescription,
8696 kOsDesktop,
8697 FEATURE_VALUE_TYPE(syncer::kSyncPollImmediatelyOnEveryStartup)},
Wei Li51e9c162021-02-01 19:53:358698#endif
shivanigithub75489e352021-02-22 19:24:308699 {"http-cache-partitioning",
8700 flag_descriptions::kSplitCacheByNetworkIsolationKeyName,
8701 flag_descriptions::kSplitCacheByNetworkIsolationKeyDescription,
Fred Shih87e6a562022-04-13 19:51:518702 kOsWin | kOsLinux | kOsLacros | kOsMac | kOsCrOS | kOsAndroid | kOsFuchsia,
shivanigithub75489e352021-02-22 19:24:308703 FEATURE_VALUE_TYPE(net::features::kSplitCacheByNetworkIsolationKey)},
Wei Li51e9c162021-02-01 19:53:358704
Xiaohan Wang064b68cd2022-01-19 19:12:288705#if BUILDFLAG(IS_ANDROID)
Basia Zimirskab0d235a2021-02-24 19:42:538706 {"content-languages-in-language-picker",
8707 flag_descriptions::kContentLanguagesInLanguagePickerName,
Trent Apted1d296d62021-08-10 00:47:598708 flag_descriptions::kContentLanguagesInLanguagePickerDescription,
8709 kOsAndroid,
Basia Zimirska12b7edca2021-08-09 17:24:468710 FEATURE_WITH_PARAMS_VALUE_TYPE(language::kContentLanguagesInLanguagePicker,
8711 kContentLanguagesInLanguaePickerVariations,
8712 "ContentLanguagesInLanguagePicker")},
Basia Zimirskab0d235a2021-02-24 19:42:538713#endif
8714
Viktor Semeniukd5cfc262021-02-25 12:51:228715 {"filling-across-affiliated-websites",
8716 flag_descriptions::kFillingAcrossAffiliatedWebsitesName,
8717 flag_descriptions::kFillingAcrossAffiliatedWebsitesDescription, kOsAll,
8718 FEATURE_VALUE_TYPE(
8719 password_manager::features::kFillingAcrossAffiliatedWebsites)},
8720
Din Nezametdinov9e537c22023-04-25 11:42:448721#if !BUILDFLAG(IS_ANDROID)
8722 {"filling-across-grouped-sites",
8723 flag_descriptions::kFillingAcrossGroupedSitesName,
8724 flag_descriptions::kFillingAcrossGroupedSitesDescription, kOsDesktop,
8725 FEATURE_VALUE_TYPE(
8726 password_manager::features::kFillingAcrossGroupedSites)},
8727#endif // !BUILDFLAG(IS_ANDROID)
8728
Mario Bianucci3be046eb2021-02-26 18:41:488729 {"draw-predicted-ink-point", flag_descriptions::kDrawPredictedPointsName,
8730 flag_descriptions::kDrawPredictedPointsDescription, kOsAll,
Joao Victor Almeida947a3c7c2021-07-29 23:44:368731 FEATURE_WITH_PARAMS_VALUE_TYPE(features::kDrawPredictedInkPoint,
8732 kDrawPredictedPointVariations,
8733 "DrawPredictedInkPoint")},
Mario Bianucci3be046eb2021-02-26 18:41:488734
Xiaohan Wang064b68cd2022-01-19 19:12:288735#if BUILDFLAG(IS_ANDROID)
Robert Ogden52285a52021-07-01 19:26:208736 {"optimization-guide-push-notifications",
Tarun Bansalca4fae3d2022-04-05 21:17:348737 flag_descriptions::kOptimizationGuidePushNotificationName,
8738 flag_descriptions::kOptimizationGuidePushNotificationDescription,
Robert Ogden52285a52021-07-01 19:26:208739 kOsAndroid,
8740 FEATURE_VALUE_TYPE(optimization_guide::features::kPushNotifications)},
8741#endif
8742
Peter Kotwicz980079f2021-12-02 07:18:348743 {"fedcm", flag_descriptions::kFedCmName,
Peter Kotwicz72ac9992022-04-14 20:12:168744 flag_descriptions::kFedCmDescription, kOsAll,
Peter Kotwicz980079f2021-12-02 07:18:348745 FEATURE_WITH_PARAMS_VALUE_TYPE(features::kFedCm,
8746 kFedCmFeatureVariations,
8747 "FedCmFeatureVariations")},
Yi Guc1648582022-10-13 19:45:248748
Sam Goto0b64ffc22023-04-01 00:02:308749 {"fedcm-authz", flag_descriptions::kFedCmAuthzName,
8750 flag_descriptions::kFedCmAuthzDescription, kOsDesktop,
8751 FEATURE_VALUE_TYPE(features::kFedCmAuthz)},
8752
Sam Gotoa0b477b2023-02-07 06:37:298753 {"fedcm-idp-registration", flag_descriptions::kFedCmIdPRegistrationName,
8754 flag_descriptions::kFedCmIdPRegistrationDescription, kOsDesktop,
8755 FEATURE_VALUE_TYPE(features::kFedCmIdPRegistration)},
8756
Yi Guc1648582022-10-13 19:45:248757 {"fedcm-metrics-endpoint", flag_descriptions::kFedCmMetricsEndpointName,
8758 flag_descriptions::kFedCmMetricsEndpointDescription, kOsAll,
8759 FEATURE_VALUE_TYPE(features::kFedCmMetricsEndpoint)},
8760
Nicolás Peña Moreno4f77c4b2022-09-06 22:16:548761 {"fedcm-multi-idp", flag_descriptions::kFedCmMultiIdpName,
8762 flag_descriptions::kFedCmMultiIdpDescription, kOsDesktop,
8763 FEATURE_VALUE_TYPE(features::kFedCmMultipleIdentityProviders)},
Ken Buchanan26fbf14c2021-03-04 05:36:148764
Sam Goto2cff8a52022-12-21 00:50:348765 {"fedcm-selective-disclosure",
8766 flag_descriptions::kFedCmSelectiveDisclosureName,
8767 flag_descriptions::kFedCmSelectiveDisclosureDescription, kOsAll,
8768 FEATURE_VALUE_TYPE(features::kFedCmSelectiveDisclosure)},
8769
Christian Biesinger88c922642023-06-21 03:52:428770 {"fedcm-idp-signin-status-api",
8771 flag_descriptions::kFedCmIdpSigninStatusName,
8772 flag_descriptions::kFedCmIdpSigninStatusDescription, kOsAll,
8773 FEATURE_VALUE_TYPE(features::kFedCmIdpSigninStatusEnabled)},
8774
Nicolás Peña Moreno8e558562022-12-20 18:57:448775 {"fedcm-without-third-party-cookies",
8776 flag_descriptions::kFedCmWithoutThirdPartyCookiesName,
8777 flag_descriptions::kFedCmWithoutThirdPartyCookiesDescription, kOsAll,
8778 FEATURE_VALUE_TYPE(features::kFedCmWithoutThirdPartyCookies)},
8779
Yi Gu70a988f2023-06-28 16:51:148780 {"fedcm-without-well-known-enforcement",
8781 flag_descriptions::kFedCmWithoutWellKnownEnforcementName,
8782 flag_descriptions::kFedCmWithoutWellKnownEnforcementDescription, kOsAll,
8783 FEATURE_VALUE_TYPE(features::kFedCmWithoutWellKnownEnforcement)},
8784
Sam Goto4edd6392023-02-28 16:15:288785 {"web-identity-mdocs", flag_descriptions::kWebIdentityMDocsName,
8786 flag_descriptions::kWebIdentityMDocsDescription, kOsAndroid,
8787 FEATURE_VALUE_TYPE(features::kWebIdentityMDocs)},
8788
Yu Liu9d01d342021-03-12 20:05:168789#if BUILDFLAG(IS_CHROMEOS_ASH)
8790 {"bluetooth-sessionized-metrics",
8791 flag_descriptions::kBluetoothSessionizedMetricsName,
8792 flag_descriptions::kBluetoothSessionizedMetricsDescription, kOsCrOS,
8793 FEATURE_VALUE_TYPE(metrics::structured::kBluetoothSessionizedMetrics)},
8794#endif
8795
Matthias Körber44082a492021-09-15 18:29:188796 {"autofill-highlight-only-changed-value-in-preview-mode",
8797 flag_descriptions::kAutofillHighlightOnlyChangedValuesInPreviewModeName,
8798 flag_descriptions::
8799 kAutofillHighlightOnlyChangedValuesInPreviewModeDescription,
8800 kOsDesktop,
8801 FEATURE_VALUE_TYPE(
8802 autofill::features::kAutofillHighlightOnlyChangedValuesInPreviewMode)},
8803
Daniel Vogelheim236d9a82021-04-01 15:40:538804 {"sanitizer-api", flag_descriptions::kSanitizerApiName,
8805 flag_descriptions::kSanitizerApiDescription, kOsAll,
8806 FEATURE_VALUE_TYPE(blink::features::kSanitizerAPI)},
8807
Eric Willigersc805ad612021-04-01 19:50:098808#if BUILDFLAG(IS_CHROMEOS_ASH)
Harry Cutts8b445de2021-06-10 02:25:558809 {"enable-input-event-logging",
8810 flag_descriptions::kEnableInputEventLoggingName,
8811 flag_descriptions::kEnableInputEventLoggingDescription, kOsCrOS,
8812 FEATURE_VALUE_TYPE(ui::kEnableInputEventLogging)},
Eric Willigersc805ad612021-04-01 19:50:098813#endif
8814
siashah2b698e2b2021-04-21 15:09:558815 {"autofill-enable-sticky-manual-fallback-for-cards",
8816 flag_descriptions::kAutofillEnableStickyManualFallbackForCardsName,
8817 flag_descriptions::kAutofillEnableStickyManualFallbackForCardsDescription,
8818 kOsAndroid,
8819 FEATURE_VALUE_TYPE(
8820 autofill::features::kAutofillEnableStickyManualFallbackForCards)},
8821
8822 {"autofill-auto-trigger-manual-fallback-for-cards",
8823 flag_descriptions::kAutofillAutoTriggerManualFallbackForCardsName,
8824 flag_descriptions::kAutofillAutoTriggerManualFallbackForCardsDescription,
8825 kOsAndroid,
8826 FEATURE_VALUE_TYPE(
8827 autofill::features::kAutofillAutoTriggerManualFallbackForCards)},
8828
Vidhan5885afa2022-06-23 15:18:168829 {"autofill-prevent-overriding-prefilled-values",
8830 flag_descriptions::kAutofillPreventOverridingPrefilledValuesName,
8831 flag_descriptions::kAutofillPreventOverridingPrefilledValuesDescription,
8832 kOsDesktop | kOsAndroid,
8833 FEATURE_VALUE_TYPE(
8834 autofill::features::kAutofillPreventOverridingPrefilledValues)},
8835
Jan Keitel05180472023-03-01 11:01:428836 {"autofill-show-autocomplete-delete-button",
8837 flag_descriptions::kAutofillShowAutocompleteDeleteButtonName,
8838 flag_descriptions::kAutofillShowAutocompleteDeleteButtonDescription,
8839 kOsDesktop,
8840 FEATURE_VALUE_TYPE(
8841 autofill::features::kAutofillShowAutocompleteDeleteButton)},
8842
Vidhanb03b1ea2022-05-19 12:07:588843 {"autofill-show-manual-fallbacks-in-context-menu",
8844 flag_descriptions::kAutofillShowManualFallbackInContextMenuName,
8845 flag_descriptions::kAutofillShowManualFallbackInContextMenuDescription,
8846 kOsDesktop,
8847 FEATURE_VALUE_TYPE(
8848 autofill::features::kAutofillShowManualFallbackInContextMenu)},
8849
Juan Mojica6ea85d072022-03-17 20:33:198850 {flag_descriptions::kEnableLensStandaloneFlagId,
8851 flag_descriptions::kEnableLensStandaloneName,
8852 flag_descriptions::kEnableLensStandaloneDescription, kOsDesktop,
Juan Mojica65fab6c2022-12-21 01:05:158853 FEATURE_VALUE_TYPE(lens::features::kLensStandalone)},
Ali Stanfield980a7492021-07-21 19:21:268854
Duncan Mercer80e99102022-12-28 21:30:278855#if BUILDFLAG(ENABLE_LENS_DESKTOP_GOOGLE_BRANDED_FEATURES)
Ali Stanfield561043282023-03-10 03:04:308856 {"csc", flag_descriptions::kCscName, flag_descriptions::kCscDescription,
8857 kOsDesktop,
Tarun Bansal083f2742023-06-16 16:46:128858 FEATURE_WITH_PARAMS_VALUE_TYPE(
8859 companion::features::internal::kSidePanelCompanion,
8860 kCscVariations,
8861 "CSC")},
Ali Stanfield561043282023-03-10 03:04:308862
mcrouseff4a6cf2023-05-31 04:46:428863 {"csc-pinned-state", flag_descriptions::kCscPinnedName,
8864 flag_descriptions::kCscPinnedDescription, kOsDesktop,
8865 MULTI_VALUE_TYPE(kSidePanelPinnedStateChoices)},
8866
Pierre St Juste9bc615e32023-05-26 01:58:328867 {"csc-vss", flag_descriptions::kCscVssName,
8868 flag_descriptions::kCscVssDescription, kOsDesktop,
Pierre St Justeaacb2332023-06-01 22:41:448869 FEATURE_VALUE_TYPE(
8870 companion::visual_search::features::kVisualSearchSuggestions)},
Pierre St Juste9bc615e32023-05-26 01:58:328871
Juan Mojicaa2c06482022-10-14 18:27:018872 {"enable-lens-region-search-static-page",
8873 flag_descriptions::kLensRegionSearchStaticPageName,
8874 flag_descriptions::kLensRegionSearchStaticPageDescription, kOsDesktop,
8875 FEATURE_VALUE_TYPE(lens::features::kLensRegionSearchStaticPage)},
Duncan Mercer80e99102022-12-28 21:30:278876#endif // BUILDFLAG(ENABLE_LENS_DESKTOP_GOOGLE_BRANDED_FEATURES)
Juan Mojicaa2c06482022-10-14 18:27:018877
Duncan Mercer10a2000a2022-11-07 23:00:538878 {"enable-lens-image-format-optimizations",
8879 flag_descriptions::kLensImageFormatOptimizationsName,
8880 flag_descriptions::kLensImageFormatOptimizationsDescription, kOsDesktop,
8881 FEATURE_WITH_PARAMS_VALUE_TYPE(
8882 lens::features::kLensImageFormatOptimizations,
8883 kLensImageFormatVariations,
8884 "LensImageFormatOptimizations")},
8885
Bryan Nguyend7f0cd742023-02-10 21:16:228886 {"enable-lens-image-translate", flag_descriptions::kLensImageTranslateName,
8887 flag_descriptions::kLensImageTranslateDescription, kOsDesktop,
8888 FEATURE_VALUE_TYPE(lens::features::kEnableImageTranslate)},
8889
Jason Hua755d79832023-04-27 00:26:448890 {"enable-lens-ping", flag_descriptions::kEnableLensPingName,
8891 flag_descriptions::kEnableLensPingDescription, kOsDesktop,
8892 FEATURE_WITH_PARAMS_VALUE_TYPE(lens::features::kEnableLensPing,
8893 kLensPingVariations,
8894 "EnableLensPing")},
8895
Xiaohan Wang064b68cd2022-01-19 19:12:288896#if BUILDFLAG(IS_ANDROID)
Ioana Pandele69fe4672021-04-28 08:06:378897 {"biometric-reauth-password-filling",
8898 flag_descriptions::kBiometricReauthForPasswordFillingName,
8899 flag_descriptions::kBiometricReauthForPasswordFillingDescription,
8900 kOsAndroid,
8901 FEATURE_VALUE_TYPE(password_manager::features::kBiometricTouchToFill)},
Norge Vizcay5f6bfb42022-06-10 08:33:148902 {"fast-checkout", flag_descriptions::kFastCheckoutName,
8903 flag_descriptions::kFastCheckoutDescription, kOsAndroid,
Norge Vizcayd0432e172022-11-23 09:58:208904 FEATURE_VALUE_TYPE(features::kFastCheckout)},
Norge Vizcay81af8802022-09-06 09:57:128905 {"force-enable-fast-checkout-capabilities",
8906 flag_descriptions::kForceEnableFastCheckoutCapabilitiesName,
8907 flag_descriptions::kForceEnableFastCheckoutCapabilitiesDescription,
8908 kOsAndroid,
8909 FEATURE_VALUE_TYPE(features::kForceEnableFastCheckoutCapabilities)},
Ioana Pandele69fe4672021-04-28 08:06:378910#endif
siashah2b698e2b2021-04-21 15:09:558911
Nicolas MacBeth3dcf7532023-04-21 21:30:138912#if !BUILDFLAG(IS_ANDROID) && BUILDFLAG(GOOGLE_CHROME_BRANDING)
8913 {"ios-promo-password-bubble",
8914 flag_descriptions::kIOSPromoPasswordBubbleName,
8915 flag_descriptions::kIOSPromoPasswordBubbleDecription, kOsDesktop,
Nicolas MacBeth53fa8142023-06-20 15:06:098916 FEATURE_WITH_PARAMS_VALUE_TYPE(promos_features::kIOSPromoPasswordBubble,
Nicolas MacBeth3dcf7532023-04-21 21:30:138917 kIOSPromoPasswordBubbleVariations,
8918 "IOSPromoPasswordBubble")},
8919#endif
8920
Rachel Wong0210c452021-04-29 03:40:028921#if BUILDFLAG(IS_CHROMEOS_ASH)
Roger Tinkoff6c1bed22022-01-07 14:52:018922 {"enable-keyboard-backlight-toggle",
8923 flag_descriptions::kEnableKeyboardBacklightToggleName,
8924 flag_descriptions::kEnableKeyboardBacklightToggleDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:428925 FEATURE_VALUE_TYPE(ash::features::kEnableKeyboardBacklightToggle)},
Rachel Wong0210c452021-04-29 03:40:028926#endif // BUILDFLAG(IS_CHROMEOS_ASH)
8927
Etienne Pierre-dorayb6e0b672022-07-06 17:17:368928 {"align-wakeups", flag_descriptions::kAlignWakeUpsName,
8929 flag_descriptions::kAlignWakeUpsDescription, kOsAll,
8930 FEATURE_VALUE_TYPE(base::kAlignWakeUps)},
8931
W. James MacLean17fc6852021-05-06 18:29:298932 {"enable-throttle-display-none-and-visibility-hidden-cross-origin-iframes",
8933 flag_descriptions::
8934 kThrottleDisplayNoneAndVisibilityHiddenCrossOriginIframesName,
8935 flag_descriptions::
8936 kThrottleDisplayNoneAndVisibilityHiddenCrossOriginIframesDescription,
8937 kOsDesktop | kOsAndroid,
8938 FEATURE_VALUE_TYPE(
8939 blink::features::
Harry Cuttsf74356712021-05-14 02:13:388940 kThrottleDisplayNoneAndVisibilityHiddenCrossOriginIframes)},
8941
W. James MacLean853cd422022-10-17 14:08:588942 {"enable-new-base-url-inheritance-behavior",
8943 flag_descriptions::kNewBaseUrlInheritanceBehaviorName,
8944 flag_descriptions::kNewBaseUrlInheritanceBehaviorDescription,
8945 kOsDesktop | kOsAndroid,
8946 FEATURE_VALUE_TYPE(blink::features::kNewBaseUrlInheritanceBehavior)},
8947
Vasiliy Telezhnikovef7a1a7b42023-01-11 19:16:458948#if BUILDFLAG(ENABLE_VALIDATING_COMMAND_DECODER)
Peng Huang723f26e2021-06-04 01:55:108949 {"use-passthrough-command-decoder",
8950 flag_descriptions::kUsePassthroughCommandDecoderName,
Geoff Langacba5b082022-11-08 20:10:468951 flag_descriptions::kUsePassthroughCommandDecoderDescription, kOsAll,
Peng Huang723f26e2021-06-04 01:55:108952 FEATURE_VALUE_TYPE(features::kDefaultPassthroughCommandDecoder)},
Vasiliy Telezhnikovef7a1a7b42023-01-11 19:16:458953#endif // BUILDFLAG(ENABLE_VALIDATING_COMMAND_DECODER)
Peng Huang723f26e2021-06-04 01:55:108954
Daniel Anderssona36c4bc2021-06-04 22:09:438955#if BUILDFLAG(IS_CHROMEOS_ASH)
8956 {"focus-follows-cursor", flag_descriptions::kFocusFollowsCursorName,
8957 flag_descriptions::kFocusFollowsCursorDescription, kOsCrOS,
8958 FEATURE_VALUE_TYPE(::features::kFocusFollowsCursor)},
8959#endif // BUILDFLAG(IS_CHROMEOS_ASH)
8960
rgod9bbe0a52023-05-10 16:04:298961#if !BUILDFLAG(IS_ANDROID)
8962 {"password-generation-experiment",
8963 flag_descriptions::kPasswordGenerationExperimentName,
8964 flag_descriptions::kPasswordGenerationExperimentDescription, kOsDesktop,
rgod7029ae52023-05-16 13:01:368965 FEATURE_WITH_PARAMS_VALUE_TYPE(
8966 password_manager::features::kPasswordGenerationExperiment,
8967 kPasswordGenerationExperimentVariations,
8968 "PasswordGenerationExperiment")},
rgod9bbe0a52023-05-10 16:04:298969#endif
8970
Ashley Prasad55deb362023-06-22 23:55:338971#if BUILDFLAG(IS_CHROMEOS)
8972 {"print-preview-setup-assistance",
8973 flag_descriptions::kPrintPreviewSetupAssistanceName,
8974 flag_descriptions::kPrintPreviewSetupAssistanceDescription,
8975 kOsCrOS | kOsLacros,
8976 FEATURE_VALUE_TYPE(features::kPrintPreviewSetupAssistance)},
8977#endif
8978
Xiaohan Wang064b68cd2022-01-19 19:12:288979#if BUILDFLAG(IS_ANDROID)
Andrey Zaytsev7c790c12022-05-23 13:07:308980 {"privacy-guide-android", flag_descriptions::kPrivacyGuideAndroidName,
8981 flag_descriptions::kPrivacyGuideAndroidDescription, kOsAndroid,
8982 FEATURE_VALUE_TYPE(features::kPrivacyGuideAndroid)},
8983#endif
8984
Yuheng Huang59d1d302021-10-29 21:21:148985 {"tab-search-fuzzy-search", flag_descriptions::kTabSearchFuzzySearchName,
8986 flag_descriptions::kTabSearchFuzzySearchDescription, kOsDesktop,
8987 FEATURE_WITH_PARAMS_VALUE_TYPE(features::kTabSearchFuzzySearch,
8988 kTabSearchSearchThresholdVariations,
8989 "TabSearchFuzzySearch")},
8990
rbpottere877c1f2021-06-15 00:23:558991 {"chrome-whats-new-ui", flag_descriptions::kChromeWhatsNewUIName,
8992 flag_descriptions::kChromeWhatsNewUIDescription, kOsDesktop,
8993 FEATURE_VALUE_TYPE(features::kChromeWhatsNewUI)},
8994
shivanigithub99368382021-06-16 18:33:378995 {"debug-history-intervention-no-user-activation",
8996 flag_descriptions::kDebugHistoryInterventionNoUserActivationName,
8997 flag_descriptions::kDebugHistoryInterventionNoUserActivationDescription,
8998 kOsAll,
8999 FEATURE_VALUE_TYPE(features::kDebugHistoryInterventionNoUserActivation)},
9000
Curt Clemens37a5c99c2021-06-19 00:30:069001#if BUILDFLAG(IS_CHROMEOS_ASH)
Sam Chiu1dee4a12021-10-12 18:21:279002 {"enable-phone-hub-call-notification",
9003 flag_descriptions::kPhoneHubCallNotificationName,
9004 flag_descriptions::kPhoneHubCallNotificationDescription, kOsCrOS,
9005 FEATURE_VALUE_TYPE(ash::features::kPhoneHubCallNotification)},
Jason Sun1d947912021-06-21 16:54:239006#endif // BUILDFLAG(IS_CHROMEOS_ASH)
9007
Dylan Cutlerc2988fe2021-08-05 14:24:379008 {"partitioned-cookies", flag_descriptions::kPartitionedCookiesName,
Dylan Cutlerab2b4a32022-03-17 20:42:389009 flag_descriptions::kPartitionedCookiesDescription, kOsAll,
Dylan Cutlerc2988fe2021-08-05 14:24:379010 FEATURE_VALUE_TYPE(net::features::kPartitionedCookies)},
9011
Nathan Eliason320cf312022-07-26 23:02:329012 {"third-party-storage-partitioning",
9013 flag_descriptions::kThirdPartyStoragePartitioningName,
9014 flag_descriptions::kThirdPartyStoragePartitioningDescription, kOsAll,
Chris Fredricksone139a8d72022-08-10 22:58:069015 FEATURE_VALUE_TYPE(net::features::kThirdPartyStoragePartitioning)},
Nathan Eliason320cf312022-07-26 23:02:329016
Jonathan Njeunje9dc4e6c2023-04-10 03:05:329017 {"bounce-tracking-mitigations", flag_descriptions::kDIPSName,
9018 flag_descriptions::kDIPSDescription, kOsAll,
9019 FEATURE_WITH_PARAMS_VALUE_TYPE(dips::kFeature, kDIPSVariations, "DIPS")},
9020
danielng1078c6372021-06-28 06:31:369021#if BUILDFLAG(IS_CHROMEOS_ASH)
danielngdd3ef942021-10-28 06:42:489022 {kBorealisBigGlInternalName, flag_descriptions::kBorealisBigGlName,
9023 flag_descriptions::kBorealisBigGlDescription, kOsCrOS,
9024 FEATURE_VALUE_TYPE(ash::features::kBorealisBigGl)},
Dominik Behr03b5c24f2023-04-18 21:20:529025 {kBorealisDGPUInternalName, flag_descriptions::kBorealisDGPUName,
9026 flag_descriptions::kBorealisDGPUDescription, kOsCrOS,
9027 FEATURE_VALUE_TYPE(ash::features::kBorealisDGPU)},
danielng1078c6372021-06-28 06:31:369028 {kBorealisDiskManagementInternalName,
9029 flag_descriptions::kBorealisDiskManagementName,
9030 flag_descriptions::kBorealisDiskManagementDescription, kOsCrOS,
9031 FEATURE_VALUE_TYPE(ash::features::kBorealisDiskManagement)},
Nicholas Hollingum449d8252021-11-29 00:18:299032 {kBorealisForceBetaClientInternalName,
9033 flag_descriptions::kBorealisForceBetaClientName,
9034 flag_descriptions::kBorealisForceBetaClientDescription, kOsCrOS,
9035 FEATURE_VALUE_TYPE(ash::features::kBorealisForceBetaClient)},
Nicholas Hollingume8672092022-08-25 04:23:169036 {kBorealisForceDoubleScaleInternalName,
9037 flag_descriptions::kBorealisForceDoubleScaleName,
9038 flag_descriptions::kBorealisForceDoubleScaleDescription, kOsCrOS,
9039 FEATURE_VALUE_TYPE(ash::features::kBorealisForceDoubleScale)},
Nicholas Hollingum449d8252021-11-29 00:18:299040 {kBorealisLinuxModeInternalName, flag_descriptions::kBorealisLinuxModeName,
9041 flag_descriptions::kBorealisLinuxModeDescription, kOsCrOS,
9042 FEATURE_VALUE_TYPE(ash::features::kBorealisLinuxMode)},
Nicholas Hollingum97500cc12022-03-03 22:44:439043 {kBorealisPermittedInternalName, flag_descriptions::kBorealisPermittedName,
9044 flag_descriptions::kBorealisPermittedDescription, kOsCrOS,
9045 FEATURE_VALUE_TYPE(ash::features::kBorealisPermitted)},
danielng573ad3742022-07-06 05:26:249046 {kBorealisStorageBallooningInternalName,
9047 flag_descriptions::kBorealisStorageBallooningName,
9048 flag_descriptions::kBorealisStorageBallooningDescription, kOsCrOS,
9049 FEATURE_VALUE_TYPE(ash::features::kBorealisStorageBallooning)},
Max Leefb53d9c2022-09-01 00:23:349050 {kVmPerBootShaderCacheName, flag_descriptions::kVmPerBootShaderCacheName,
9051 flag_descriptions::kVmPerBootShaderCacheDescription, kOsCrOS,
9052 FEATURE_VALUE_TYPE(ash::features::kVmPerBootShaderCache)},
danielng1078c6372021-06-28 06:31:369053#endif // BUILDFLAG(IS_CHROMEOS_ASH)
9054
Emily Stark70158ce2021-07-16 18:26:319055 {"https-only-mode-setting", flag_descriptions::kHttpsOnlyModeName,
9056 flag_descriptions::kHttpsOnlyModeDescription, kOsDesktop | kOsAndroid,
9057 FEATURE_VALUE_TYPE(features::kHttpsOnlyMode)},
9058
Chris Thompson69d09012022-12-21 01:26:059059 {"https-first-mode-v2", flag_descriptions::kHttpsFirstModeV2Name,
9060 flag_descriptions::kHttpsFirstModeV2Description, kOsDesktop | kOsAndroid,
9061 FEATURE_VALUE_TYPE(features::kHttpsFirstModeV2)},
9062
Mustafa Emre Acer002821e2023-05-09 23:47:029063 {"https-first-mode-v2-for-engaged-sites",
9064 flag_descriptions::kHttpsFirstModeV2ForEngagedSitesName,
9065 flag_descriptions::kHttpsFirstModeV2ForEngagedSitesDescription,
9066 kOsDesktop | kOsAndroid,
9067 FEATURE_VALUE_TYPE(features::kHttpsFirstModeV2ForEngagedSites)},
9068
Chris Thompsonde18f3d62022-12-08 01:23:279069 {"https-upgrades", flag_descriptions::kHttpsUpgradesName,
9070 flag_descriptions::kHttpsUpgradesDescription, kOsDesktop | kOsAndroid,
9071 FEATURE_VALUE_TYPE(features::kHttpsUpgrades)},
9072
Mustafa Emre Acer0626cbb2021-07-14 20:35:049073 {"omnibox-updated-connection-security-indicators",
9074 flag_descriptions::kOmniboxUpdatedConnectionSecurityIndicatorsName,
9075 flag_descriptions::kOmniboxUpdatedConnectionSecurityIndicatorsDescription,
9076 kOsDesktop | kOsAndroid,
9077 FEATURE_VALUE_TYPE(omnibox::kUpdatedConnectionSecurityIndicators)},
Mustafa Emre Acer0626cbb2021-07-14 20:35:049078
Vikas Soni7981a2d2021-07-30 18:51:119079 {"enable-drdc", flag_descriptions::kEnableDrDcName,
9080 flag_descriptions::kEnableDrDcDescription, kOsAll,
9081 FEATURE_VALUE_TYPE(features::kEnableDrDc)},
vikassoni93f244b2022-05-12 21:58:269082
Le Hoang Quyend6ceade62022-05-20 07:13:109083 {"force-gpu-main-thread-to-normal-priority-drdc",
9084 flag_descriptions::kForceGpuMainThreadToNormalPriorityDrDcName,
9085 flag_descriptions::kForceGpuMainThreadToNormalPriorityDrDcDescription,
9086 kOsAll,
9087 FEATURE_VALUE_TYPE(features::kForceGpuMainThreadToNormalPriorityDrDc)},
9088
vikassoni93f244b2022-05-12 21:58:269089#if BUILDFLAG(IS_ANDROID)
9090 {"enable-drdc-vulkan", flag_descriptions::kEnableDrDcVulkanName,
9091 flag_descriptions::kEnableDrDcDescription, kOsAndroid,
9092 FEATURE_VALUE_TYPE(features::kEnableDrDcVulkan)},
9093#endif // BUILDFLAG(IS_ANDROID)
9094
Jared Saul2188f762021-08-02 21:22:239095 {"autofill-fill-merchant-promo-code-fields",
9096 flag_descriptions::kAutofillFillMerchantPromoCodeFieldsName,
9097 flag_descriptions::kAutofillFillMerchantPromoCodeFieldsDescription, kOsAll,
9098 FEATURE_VALUE_TYPE(
9099 autofill::features::kAutofillFillMerchantPromoCodeFields)},
Vikas Soni7981a2d2021-07-30 18:51:119100
Kartik Hegde5af70932021-08-12 23:04:209101#if BUILDFLAG(IS_CHROMEOS_ASH)
Steven Bennetts9b695dc2022-04-12 17:10:279102 {"traffic-counters", flag_descriptions::kTrafficCountersEnabledName,
9103 flag_descriptions::kTrafficCountersEnabledDescription, kOsCrOS,
9104 FEATURE_VALUE_TYPE(ash::features::kTrafficCountersEnabled)},
Kartik Hegde5af70932021-08-12 23:04:209105#endif // BUILDFLAG(IS_CHROMEOS_ASH)
9106
Devlin Cronin15608c32022-06-01 01:39:529107#if BUILDFLAG(ENABLE_EXTENSIONS)
Emilia Pazd7cce422021-08-14 00:50:489108 {"extensions-menu-access-control",
9109 flag_descriptions::kExtensionsMenuAccessControlName,
9110 flag_descriptions::kExtensionsMenuAccessControlDescription, kOsDesktop,
Devlin Cronin15608c32022-06-01 01:39:529111 FEATURE_VALUE_TYPE(extensions_features::kExtensionsMenuAccessControl)},
Solomon Kinard6b014f0b2023-02-24 02:20:349112
9113#if BUILDFLAG(IS_CHROMEOS_ASH)
9114 {"extension-web-file-handlers",
9115 flag_descriptions::kExtensionWebFileHandlersName,
9116 flag_descriptions::kExtensionWebFileHandlersDescription, kOsCrOS,
9117 FEATURE_VALUE_TYPE(extensions_features::kExtensionWebFileHandlers)},
9118#endif // IS_CHROMEOS_ASH
Eric Lawrencebff3a1652023-05-23 04:12:039119#if BUILDFLAG(IS_WIN)
9120 {"launch-windows-native-hosts-directly",
9121 flag_descriptions::kLaunchWindowsNativeHostsDirectlyName,
9122 flag_descriptions::kLaunchWindowsNativeHostsDirectlyDescription, kOsWin,
9123 FEATURE_VALUE_TYPE(
9124 extensions_features::kLaunchWindowsNativeHostsDirectly)},
9125#endif // IS_WIN
Solomon Kinard6b014f0b2023-02-24 02:20:349126#endif // ENABLE_EXTENSIONS
Emilia Pazd7cce422021-08-14 00:50:489127
Justin Novosad8faf6952021-08-20 22:36:499128 {"canvas-oop-rasterization", flag_descriptions::kCanvasOopRasterizationName,
9129 flag_descriptions::kCanvasOopRasterizationDescription, kOsAll,
9130 FEATURE_VALUE_TYPE(features::kCanvasOopRasterization)},
9131
Sunny Sachanandaniad91d1a2023-05-18 23:31:319132 {"skia-graphite", flag_descriptions::kSkiaGraphiteName,
9133 flag_descriptions::kSkiaGraphiteDescription, kOsAll,
9134 FEATURE_VALUE_TYPE(features::kSkiaGraphite)},
9135
Xiaohan Wang064b68cd2022-01-19 19:12:289136#if BUILDFLAG(IS_ANDROID)
Brandon Wylie955a16942021-09-24 22:43:109137 {"bookmarks-improved-save-flow",
9138 flag_descriptions::kBookmarksImprovedSaveFlowName,
9139 flag_descriptions::kBookmarksImprovedSaveFlowDescription, kOsAndroid,
9140 FEATURE_VALUE_TYPE(chrome::android::kBookmarksImprovedSaveFlow)},
9141
Brandon Wylie9fe37582021-08-24 01:22:539142 {"bookmarks-refresh", flag_descriptions::kBookmarksRefreshName,
9143 flag_descriptions::kBookmarksRefreshDescription, kOsAndroid,
Brandon Wylief203eee2021-10-11 22:55:459144 FEATURE_WITH_PARAMS_VALUE_TYPE(chrome::android::kBookmarksRefresh,
9145 kBookmarksRefreshVariations,
bttk110e53012022-02-07 23:04:369146 "Collections")},
Brandon Wylie9fe37582021-08-24 01:22:539147#endif
9148
evliue454a132022-01-25 23:03:439149 {"enable-tab-audio-muting", flag_descriptions::kTabAudioMutingName,
9150 flag_descriptions::kTabAudioMutingDescription, kOsDesktop,
9151 FEATURE_VALUE_TYPE(media::kEnableTabMuting)},
9152
Jared Saul702563e2021-09-20 22:36:529153 {"autofill-enable-offer-notification-for-promo-codes",
9154 flag_descriptions::kAutofillEnableOfferNotificationForPromoCodesName,
9155 flag_descriptions::
9156 kAutofillEnableOfferNotificationForPromoCodesDescription,
9157 kOsAll,
9158 FEATURE_VALUE_TYPE(
9159 autofill::features::kAutofillEnableOfferNotificationForPromoCodes)},
Ali Beyad3070c422021-09-20 18:47:559160
Elly Fong-Jones43624372023-02-16 19:36:119161 {"upcoming-follow-features", flag_descriptions::kUpcomingFollowFeaturesName,
9162 flag_descriptions::kUpcomingFollowFeaturesDescription, kOsAll,
9163 FEATURE_VALUE_TYPE(follow::kUpcomingFollowFeatures)},
9164
Yuheng Huang48cf225e2022-05-12 02:33:299165#if defined(TOOLKIT_VIEWS)
Mohamed Amir Yosef4d5d526b2022-11-10 11:05:259166 {"revamped-password-management-bubble",
9167 flag_descriptions::kRevampedPasswordManagementBubbleName,
9168 flag_descriptions::kRevampedPasswordManagementBubbleDescription,
9169 kOsDesktop,
9170 FEATURE_VALUE_TYPE(
9171 password_manager::features::kRevampedPasswordManagementBubble)},
9172
Michael Crouseb56427f2023-04-12 00:47:499173 {"side-search", flag_descriptions::kSideSearchName,
9174 flag_descriptions::kSideSearchDescription, kOsDesktop,
9175 FEATURE_VALUE_TYPE(features::kSideSearch)},
9176
Pengchao Cai74b3379d2022-09-09 18:55:189177 {"search-web-in-side-panel", flag_descriptions::kSearchWebInSidePanelName,
9178 flag_descriptions::kSearchWebInSidePanelDescription, kOsDesktop,
9179 FEATURE_VALUE_TYPE(features::kSearchWebInSidePanel)},
Yuheng Huang48cf225e2022-05-12 02:33:299180#endif // defined(TOOLKIT_VIEWS)
tom927b2ab82021-09-23 03:45:279181
Nihar Majmudarc934f4f2022-08-02 23:56:159182#if !BUILDFLAG(IS_ANDROID)
9183 {"customize-chrome-side-panel",
9184 flag_descriptions::kCustomizeChromeSidePanelName,
9185 flag_descriptions::KCustomizeChromeSidePanelDescription, kOsDesktop,
9186 FEATURE_VALUE_TYPE(ntp_features::kCustomizeChromeSidePanel)},
Riley Tatum8a784fdb2022-10-19 16:48:529187
9188 {"customize-chrome-color-extraction",
9189 flag_descriptions::kCustomizeChromeColorExtractionName,
9190 flag_descriptions::kCustomizeChromeColorExtractionDescription, kOsDesktop,
9191 FEATURE_VALUE_TYPE(ntp_features::kCustomizeChromeColorExtraction)},
Nihar Majmudarc934f4f2022-08-02 23:56:159192#endif
9193
Roman Arora595d5712021-09-24 18:06:059194#if BUILDFLAG(IS_CHROMEOS_ASH)
9195 {"enable-component-updater-test-request",
9196 flag_descriptions::kComponentUpdaterTestRequestName,
9197 flag_descriptions::kComponentUpdaterTestRequestDescription, kOsCrOS,
9198 SINGLE_VALUE_TYPE_AND_VALUE(switches::kComponentUpdater,
9199 component_updater::kSwitchTestRequestParam)},
9200#endif
9201
Peng Huanga0f7d7e52021-09-29 13:27:139202 {"enable-raw-draw", flag_descriptions::kEnableRawDrawName,
9203 flag_descriptions::kEnableRawDrawDescription, kOsAll,
9204 FEATURE_VALUE_TYPE(features::kRawDraw)},
9205
Peter McNeeley8a0156d22022-02-01 20:37:549206#if BUILDFLAG(IS_CHROMEOS_LACROS)
9207 {"enable-delegated-compositing",
9208 flag_descriptions::kEnableDelegatedCompositingName,
9209 flag_descriptions::kEnableDelegatedCompositingDescription, kOsAll,
9210 FEATURE_VALUE_TYPE(features::kDelegatedCompositing)},
9211#endif
9212
Tommy Steimelc79b2e02022-07-07 19:07:519213#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \
9214 BUILDFLAG(IS_CHROMEOS_ASH)
9215 {"document-picture-in-picture-api",
9216 flag_descriptions::kDocumentPictureInPictureApiName,
9217 flag_descriptions::kDocumentPictureInPictureApiDescription,
9218 kOsMac | kOsWin | kOsLinux | kOsCrOS,
François Beaufortcbab5d42022-11-23 17:43:029219 FEATURE_VALUE_TYPE(blink::features::kDocumentPictureInPictureAPI)},
Tommy Steimelc79b2e02022-07-07 19:07:519220#endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) ||
9221 // BUILDFLAG(IS_CHROMEOS_ASH)
9222
Reilly Grant679f59d2021-09-29 18:39:389223 {"web-midi", flag_descriptions::kWebMidiName,
9224 flag_descriptions::kWebMidiDescription, kOsAll,
9225 FEATURE_VALUE_TYPE(features::kWebMidi)},
9226
Andreea Costinas81bed8a2022-11-23 16:03:389227#if BUILDFLAG(IS_CHROMEOS_ASH)
9228 {"dns-over-https-with-identifiers-reuse-old-policy",
9229 flag_descriptions::kDnsOverHttpsWithIdentifiersReuseOldPolicyName,
9230 flag_descriptions::kDnsOverHttpsWithIdentifiersReuseOldPolicyDescription,
9231 kOsCrOS,
9232 FEATURE_VALUE_TYPE(
9233 ash::features::kDnsOverHttpsWithIdentifiersReuseOldPolicy)},
9234#endif
9235
Mei Liang6b296982021-10-06 22:49:049236 {"enable-commerce-developer", flag_descriptions::kCommerceDeveloperName,
9237 flag_descriptions::kCommerceDeveloperDescription, kOsAll,
9238 FEATURE_VALUE_TYPE(commerce::kCommerceDeveloper)},
9239
Harry Cutts932c80a2021-10-07 15:00:389240#if BUILDFLAG(IS_CHROMEOS_ASH)
9241 {"enable-libinput-to-handle-touchpad",
9242 flag_descriptions::kEnableLibinputToHandleTouchpadName,
9243 flag_descriptions::kEnableLibinputToHandleTouchpadDescription, kOsCrOS,
9244 FEATURE_VALUE_TYPE(ui::kLibinputHandleTouchpad)},
9245#endif // BUILDFLAG(IS_CHROMEOS_ASH)
9246
Xiaohan Wang064b68cd2022-01-19 19:12:289247#if BUILDFLAG(IS_ANDROID)
Sirisha Kavuluru003e0962021-12-08 21:40:309248 {"enable-tab-groups-for-tablets",
9249 flag_descriptions::kTabGroupsForTabletsName,
9250 flag_descriptions::kTabGroupsForTabletsDescription, kOsAndroid,
9251 FEATURE_VALUE_TYPE(chrome::android::kTabGroupsForTablets)},
Xiaohan Wang064b68cd2022-01-19 19:12:289252#endif // BUILDFLAG(IS_ANDROID)
Fabio Tirelo20aa0562021-10-20 15:07:589253
Richard Chuif823bf62021-10-29 21:06:019254#if BUILDFLAG(IS_CHROMEOS_ASH)
9255 {"enable-desks-templates", flag_descriptions::kDesksTemplatesName,
9256 flag_descriptions::kDesksTemplatesDescription, kOsCrOS,
9257 FEATURE_VALUE_TYPE(ash::features::kDesksTemplates)},
9258#endif
9259
bttk90927fd2021-11-12 19:38:279260 {"large-favicon-from-google",
9261 flag_descriptions::kLargeFaviconFromGoogleName,
9262 flag_descriptions::kLargeFaviconFromGoogleDescription, kOsAndroid,
9263 FEATURE_WITH_PARAMS_VALUE_TYPE(features::kLargeFaviconFromGoogle,
9264 kLargeFaviconFromGoogleVariations,
9265 "LargeFaviconFromGoogle")},
9266
Xiaohan Wang064b68cd2022-01-19 19:12:289267#if BUILDFLAG(IS_ANDROID)
Philip Rogers388e07a2023-03-27 17:54:339268 {"force-off-text-autosizing",
9269 flag_descriptions::kForceOffTextAutosizingName,
9270 flag_descriptions::kForceOffTextAutosizingDescription, kOsAndroid,
9271 FEATURE_VALUE_TYPE(features::kForceOffTextAutosizing)},
Shu Yanga2ec2d12021-11-15 22:13:159272#endif
9273
Michael Martisecdb5842021-11-29 04:45:249274#if BUILDFLAG(IS_CHROMEOS_ASH)
Guoxing Zhao7e129632023-01-25 03:58:559275 {"video-conference", flag_descriptions::kVideoConferenceName,
9276 flag_descriptions::kVideoConferenceDescription, kOsCrOS,
9277 FEATURE_VALUE_TYPE(ash::features::kVideoConference)},
Jim Pollockc74e3822022-10-17 03:56:509278
Guoxing Zhao7e129632023-01-25 03:58:559279 {"vc-background-replace", flag_descriptions::kVcBackgroundReplaceName,
9280 flag_descriptions::kVcBackgroundReplaceDescription, kOsCrOS,
9281 FEATURE_VALUE_TYPE(ash::features::kVcBackgroundReplace)},
Ard Oerlemansc550dd02023-03-13 10:02:159282
9283 {"vc-segmentation-model", flag_descriptions::kVcSegmentationModelName,
9284 flag_descriptions::kVcSegmentationModelDescription, kOsCrOS,
9285 FEATURE_WITH_PARAMS_VALUE_TYPE(ash::features::kVcSegmentationModel,
9286 kVcSegmentationModelVariations,
9287 "VCSegmentationModel")},
Nikolas Bowe2d3e0c52023-05-22 00:20:129288 {"vc-light-intensity", flag_descriptions::kVcLightIntensityName,
9289 flag_descriptions::kVcLightIntensityDescription, kOsCrOS,
9290 FEATURE_WITH_PARAMS_VALUE_TYPE(ash::features::kVcLightIntensity,
9291 kVcLightIntensityVariations,
9292 "VCLightIntensity")},
9293
Guoxing Zhao13538c62022-09-15 06:08:169294#endif
9295
Xiaohan Wang064b68cd2022-01-19 19:12:289296#if BUILDFLAG(IS_ANDROID)
Mustaq Ahmeda130fec2022-02-09 19:03:269297 {"touch-drag-and-context-menu",
9298 flag_descriptions::kTouchDragAndContextMenuName,
9299 flag_descriptions::kTouchDragAndContextMenuDescription, kOsAndroid,
9300 FEATURE_VALUE_TYPE(features::kTouchDragAndContextMenu)},
Peter E Conn9eea1c0b2023-04-24 15:53:459301 {"twa-post-message", flag_descriptions::kTwaPostMessageName,
9302 flag_descriptions::kTwaPostMessageDescription, kOsAndroid,
9303 FEATURE_VALUE_TYPE(chrome::android::kTrustedWebActivityPostMessage)},
Shu Yang95506102023-01-11 19:16:329304 {"animated-image-drag-shadow",
9305 flag_descriptions::kAnimatedImageDragShadowName,
9306 flag_descriptions::kAnimatedImageDragShadowDescription, kOsAndroid,
9307 FEATURE_VALUE_TYPE(chrome::android::kAnimatedImageDragShadow)},
Joel Tan-Aristy1d2809372023-07-05 20:45:369308 {"drag-drop-into-omnibox", flag_descriptions::kDragDropIntoOmniboxName,
9309 flag_descriptions::kDragDropIntoOmniboxDescription, kOsAndroid,
9310 FEATURE_VALUE_TYPE(chrome::android::kDragDropIntoOmnibox)},
Xiaohan Wang064b68cd2022-01-19 19:12:289311#endif // BUILDFLAG(IS_ANDROID)
Wenyu Fub78c22e2021-12-29 21:26:179312
Vinny Perskyf98de022022-01-05 22:14:109313 {"autofill-enable-update-virtual-card-enrollment",
9314 flag_descriptions::kAutofillEnableUpdateVirtualCardEnrollmentName,
9315 flag_descriptions::kAutofillEnableUpdateVirtualCardEnrollmentDescription,
9316 kOsAll,
9317 FEATURE_VALUE_TYPE(
9318 autofill::features::kAutofillEnableUpdateVirtualCardEnrollment)},
9319
Yishui Liub55635462023-05-23 04:22:299320 {"autofill-move-legal-terms-and-icon-for-new-card-enrollment",
9321 flag_descriptions::kAutofillMoveLegalTermsAndIconForNewCardEnrollmentName,
9322 flag_descriptions::
9323 kAutofillMoveLegalTermsAndIconForNewCardEnrollmentDescription,
9324 kOsDesktop,
9325 FEATURE_VALUE_TYPE(
9326 autofill::features::
9327 kAutofillMoveLegalTermsAndIconForNewCardEnrollment)},
9328
Jan Krcald11ad892022-01-17 12:37:029329#if BUILDFLAG(IS_CHROMEOS_LACROS)
Alex Cooper9ec625a2022-02-11 23:17:229330
Alex Cooperdad8fb692022-10-03 22:42:419331 {"enable-lacros-aura-capture", flag_descriptions::kLacrosAuraCaptureName,
9332 flag_descriptions::kLacrosAuraCaptureDescription, kOsCrOS | kOsLacros,
9333 FEATURE_VALUE_TYPE(features::kLacrosAuraCapture)},
9334
Andrea Orrue14d8fd82022-02-24 16:47:519335 {"lacros-merge-icu-data-file",
9336 flag_descriptions::kLacrosMergeIcuDataFileName,
Fred Shihebe9cf82022-04-19 21:06:269337 flag_descriptions::kLacrosMergeIcuDataFileDescription, kOsCrOS | kOsLacros,
Andrea Orrue14d8fd82022-02-24 16:47:519338 FEATURE_VALUE_TYPE(base::i18n::kLacrosMergeIcuDataFile)},
Jan Krcald11ad892022-01-17 12:37:029339#endif
9340
Ramin Halavati4633ca42022-02-01 09:51:389341#if !BUILDFLAG(IS_ANDROID)
Ramin Halavati749df2f2023-05-08 18:46:089342 // TODO(https://crbug.com/1443349): Add Windows once library supports it.
Ramin Halavati7935b622022-11-16 08:11:469343 {"layout-extraction", flag_descriptions::kLayoutExtractionName,
9344 flag_descriptions::kLayoutExtractionDescription,
Ramin Halavati12a8d33c2022-11-16 05:46:059345 kOsMac | kOsLinux | kOsCrOS | kOsLacros,
Ramin Halavati7935b622022-11-16 08:11:469346 FEATURE_VALUE_TYPE(features::kLayoutExtraction)},
Ramin Halavati4633ca42022-02-01 09:51:389347#endif
9348
Siyu Ana8b9a0bc2022-01-31 19:40:419349 {"autofill-enable-virtual-card-management-in-desktop-settings-page",
9350 flag_descriptions::
9351 kAutofillEnableVirtualCardManagementInDesktopSettingsPageName,
9352 flag_descriptions::
9353 kAutofillEnableVirtualCardManagementInDesktopSettingsPageDescription,
9354 kOsDesktop,
9355 FEATURE_VALUE_TYPE(
9356 autofill::features::
9357 kAutofillEnableVirtualCardManagementInDesktopSettingsPage)},
9358
Daniel Vogelheim88d1ca9e2022-02-04 19:53:459359 {"origin-agent-cluster-default",
9360 flag_descriptions::kOriginAgentClusterDefaultName,
9361 flag_descriptions::kOriginAgentClusterDefaultDescription, kOsAll,
9362 FEATURE_VALUE_TYPE(blink::features::kOriginAgentClusterDefaultEnabled)},
9363
W. James MacLean2f339dc2023-05-25 14:43:419364 {"origin-keyed-processes-by-default",
9365 flag_descriptions::kOriginKeyedProcessesByDefaultName,
9366 flag_descriptions::kOriginKeyedProcessesByDefaultDescription, kOsAll,
9367 FEATURE_VALUE_TYPE(features::kOriginKeyedProcessesByDefault)},
9368
Yann Dago716d1de2022-02-07 18:49:309369#if !BUILDFLAG(IS_ANDROID)
Mei Liangd5813c32022-10-29 01:09:079370 {"enable-code-based-rbd", flag_descriptions::kCodeBasedRBDName,
9371 flag_descriptions::kCodeBasedRBDDescription, kOsDesktop,
9372 FEATURE_WITH_PARAMS_VALUE_TYPE(commerce::kCodeBasedRBD,
9373 kCodeBasedRBDVariations,
9374 "CodeBasedRBD")},
9375
Mei Liang36e41a5e2022-02-10 01:43:509376 {"enable-discount-consent-v2", flag_descriptions::kDiscountConsentV2Name,
9377 flag_descriptions::kDiscountConsentV2Description, kOsDesktop,
Mei Lianga696d2272022-02-25 02:06:079378 FEATURE_WITH_PARAMS_VALUE_TYPE(commerce::kDiscountConsentV2,
Mei Liang5415f2d2022-02-25 07:49:259379 kDiscountConsentV2Variations,
Mei Lianga696d2272022-02-25 02:06:079380 "DiscountConsentV2")},
Mei Liangd79d3822022-10-26 21:55:259381
9382 {"enable-merchant-wide-promotions",
9383 flag_descriptions::kMerchantWidePromotionsName,
9384 flag_descriptions::kMerchantWidePromotionsDescription, kOsDesktop,
Mei Liangd3726df2022-10-31 18:29:029385 FEATURE_WITH_PARAMS_VALUE_TYPE(commerce::kMerchantWidePromotion,
9386 kMerchantWidePromotionVariations,
9387 "MerchantWidePromotion")},
Mei Liang36e41a5e2022-02-10 01:43:509388#endif
9389
Anupam Snigdhaecc5739e2022-02-14 18:35:589390 {"edit-context", flag_descriptions::kEditContextName,
9391 flag_descriptions::kEditContextDescription, kOsAll,
9392 FEATURE_VALUE_TYPE(blink::features::kEditContext)},
William Mahon9d1605f2022-04-22 23:54:599393#if BUILDFLAG(IS_CHROMEOS_ASH)
9394 {"enable-fake-keyboard-heuristic",
9395 flag_descriptions::kEnableFakeKeyboardHeuristicName,
9396 flag_descriptions::kEnableFakeKeyboardHeuristicDescription, kOsCrOS,
9397 FEATURE_VALUE_TYPE(ui::kEnableFakeKeyboardHeuristic)},
9398#endif // BUILDFLAG(IS_CHROMEOS_ASH)
W. James MacLean0d757fa2022-02-16 16:13:319399#if !BUILDFLAG(IS_ANDROID)
9400 {"enable-isolated-sandboxed-iframes",
9401 flag_descriptions::kIsolatedSandboxedIframesName,
9402 flag_descriptions::kIsolatedSandboxedIframesDescription, kOsDesktop,
W. James MacLean3b6d0872022-06-24 16:16:149403 FEATURE_WITH_PARAMS_VALUE_TYPE(
W. James MacLean7d2869732022-10-14 19:11:569404 blink::features::kIsolateSandboxedIframes,
W. James MacLean3b6d0872022-06-24 16:16:149405 kIsolateSandboxedIframesGroupingVariations,
9406 "IsolateSandboxedIframes" /* trial name */)},
W. James MacLean0d757fa2022-02-16 16:13:319407#endif
9408
Varun Khanejae493d2b22022-02-18 18:17:319409 {"download-bubble", flag_descriptions::kDownloadBubbleName,
Fred Shih87e6a562022-04-13 19:51:519410 flag_descriptions::kDownloadBubbleDescription,
9411 kOsLinux | kOsLacros | kOsMac | kOsWin,
Varun Khanejae493d2b22022-02-18 18:17:319412 FEATURE_VALUE_TYPE(safe_browsing::kDownloadBubble)},
9413
thefroge0ea8bd2022-06-24 15:04:539414 {"download-bubble-v2", flag_descriptions::kDownloadBubbleV2Name,
9415 flag_descriptions::kDownloadBubbleV2Description,
9416 kOsLinux | kOsLacros | kOsMac | kOsWin,
9417 FEATURE_VALUE_TYPE(safe_browsing::kDownloadBubbleV2)},
9418
Etienne Pierre-doray247abce2022-03-08 18:45:489419 {"unthrottled-nested-timeout",
9420 flag_descriptions::kUnthrottledNestedTimeoutName,
9421 flag_descriptions::kUnthrottledNestedTimeoutDescription, kOsAll,
9422 FEATURE_WITH_PARAMS_VALUE_TYPE(
9423 blink::features::kMaxUnthrottledTimeoutNestingLevel,
9424 kUnthrottledNestedTimeout_Variations,
9425 "NestingLevel")},
9426
Victor Tan0e75ea52022-08-12 16:46:289427 {"reduce-accept-language", flag_descriptions::kReduceAcceptLanguageName,
9428 flag_descriptions::kReduceAcceptLanguageDescription, kOsAll,
9429 FEATURE_VALUE_TYPE(network::features::kReduceAcceptLanguage)},
9430
Andrew Wolfersa051f742022-03-03 21:08:229431#if BUILDFLAG(IS_CHROMEOS_ASH)
9432 {"enable-variable-refresh-rate",
9433 flag_descriptions::kEnableVariableRefreshRateName,
9434 flag_descriptions::kEnableVariableRefreshRateDescription, kOsCrOS,
9435 FEATURE_VALUE_TYPE(features::kEnableVariableRefreshRate)},
Melissa Zhangb77b96f2022-03-07 06:05:309436
Toby Huang6a77193f22022-08-12 18:07:309437 {"enable-projector-local-playback",
9438 flag_descriptions::kProjectorLocalPlaybackName,
9439 flag_descriptions::kProjectorLocalPlaybackDescription, kOsCrOS,
9440 FEATURE_VALUE_TYPE(ash::features::kProjectorLocalPlayback)},
9441
9442 {"enable-projector-app-debug", flag_descriptions::kProjectorAppDebugName,
9443 flag_descriptions::kProjectorAppDebugDescription, kOsCrOS,
9444 FEATURE_VALUE_TYPE(ash::features::kProjectorAppDebug)},
Yilkal2bc65312023-02-23 21:27:129445
9446 {kProjectorServerSideSpeechRecognition,
9447 flag_descriptions::kProjectorServerSideSpeechRecognitionName,
9448 flag_descriptions::kProjectorServerSideSpeechRecognitionDescription,
9449 kOsCrOS,
9450 FEATURE_VALUE_TYPE(ash::features::kInternalServerSideSpeechRecognition)},
Andrew Wolfersa051f742022-03-03 21:08:229451#endif // BUILDFLAG(IS_CHROMEOS_ASH)
9452
Ari Chivukula8edcb692022-03-10 19:22:319453 {"web-sql-access", flag_descriptions::kWebSQLAccessName,
9454 flag_descriptions::kWebSQLAccessDescription, kOsAll,
9455 FEATURE_VALUE_TYPE(blink::features::kWebSQLAccess)},
9456
momoka0122yda18aeb2022-03-15 08:23:549457 {"omit-cors-client-cert", flag_descriptions::kOmitCorsClientCertName,
9458 flag_descriptions::kOmitCorsClientCertDescription, kOsAll,
9459 FEATURE_VALUE_TYPE(network::features::kOmitCorsClientCert)},
9460
Mustafa Emre Acerc6b51352022-11-18 18:43:519461 {"use-idna2008-non-transitional",
9462 flag_descriptions::kUseIDNA2008NonTransitionalName,
9463 flag_descriptions::kUseIDNA2008NonTransitionalDescription, kOsAll,
9464 FEATURE_VALUE_TYPE(url::kUseIDNA2008NonTransitional)},
9465
Tim Sergeante9c45c42022-03-17 21:53:529466#if BUILDFLAG(IS_CHROMEOS)
Maksim Moskvitin70a77cb2022-04-06 12:26:409467 {"sync-chromeos-explicit-passphrase-sharing",
9468 flag_descriptions::kSyncChromeOSExplicitPassphraseSharingName,
9469 flag_descriptions::kSyncChromeOSExplicitPassphraseSharingDescription,
Fred Shihebe9cf82022-04-19 21:06:269470 kOsCrOS | kOsLacros,
Maksim Moskvitin70a77cb2022-04-06 12:26:409471 FEATURE_VALUE_TYPE(syncer::kSyncChromeOSExplicitPassphraseSharing)},
Tim Sergeante9c45c42022-03-17 21:53:529472#endif
9473
Rachel Wong29efa072022-03-24 07:37:419474#if BUILDFLAG(IS_CHROMEOS_ASH)
Jeffrey Kardatzkea686ded22022-03-28 18:28:469475 {"always-enable-hdcp", flag_descriptions::kAlwaysEnableHdcpName,
9476 flag_descriptions::kAlwaysEnableHdcpDescription, kOsCrOS,
9477 MULTI_VALUE_TYPE(kAlwaysEnableHdcpChoices)},
Eric Sum2971b952022-10-20 04:55:379478 {"throttle-ambient-animations",
9479 flag_descriptions::kAmbientModeThrottleAnimationName,
9480 flag_descriptions::kAmbientModeThrottleAnimationDescription, kOsCrOS,
9481 FEATURE_VALUE_TYPE(ash::features::kAmbientModeThrottleAnimation)},
Harry Cuttsbc6941802022-04-07 22:57:479482 {"enable-touchpads-in-diagnostics-app",
9483 flag_descriptions::kEnableTouchpadsInDiagnosticsAppName,
9484 flag_descriptions::kEnableTouchpadsInDiagnosticsAppDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:429485 FEATURE_VALUE_TYPE(ash::features::kEnableTouchpadsInDiagnosticsApp)},
Harry Cuttsbc6941802022-04-07 22:57:479486 {"enable-touchscreens-in-diagnostics-app",
9487 flag_descriptions::kEnableTouchscreensInDiagnosticsAppName,
9488 flag_descriptions::kEnableTouchscreensInDiagnosticsAppDescription, kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:429489 FEATURE_VALUE_TYPE(ash::features::kEnableTouchscreensInDiagnosticsApp)},
Harry Cutts6deecd82022-04-08 01:30:239490 {"enable-external-keyboards-in-diagnostics-app",
9491 flag_descriptions::kEnableExternalKeyboardsInDiagnosticsAppName,
9492 flag_descriptions::kEnableExternalKeyboardsInDiagnosticsAppDescription,
9493 kOsCrOS,
Henrique Ferreiro9d7def182022-11-30 12:38:429494 FEATURE_VALUE_TYPE(ash::features::kEnableExternalKeyboardsInDiagnostics)},
Hongyu Long3bd31e52022-11-21 20:08:309495 {"enable-power-sounds", flag_descriptions::kSystemSoundsName,
9496 flag_descriptions::kSystemSoundsDescription, kOsCrOS,
9497 FEATURE_VALUE_TYPE(ash::features::kSystemSounds)},
Harry Cuttsbc6941802022-04-07 22:57:479498#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Rachel Wong29efa072022-03-24 07:37:419499
Siyu Anff02e742022-04-07 19:08:229500 {"autofill-enforce-delays-in-strike-database",
9501 flag_descriptions::kAutofillEnforceDelaysInStrikeDatabaseName,
9502 flag_descriptions::kAutofillEnforceDelaysInStrikeDatabaseDescription,
9503 kOsAll,
9504 FEATURE_VALUE_TYPE(
9505 autofill::features::kAutofillEnforceDelaysInStrikeDatabase)},
9506
Siyu An003243c2022-04-07 22:13:119507 {"autofill-enable-virtual-card-metadata",
9508 flag_descriptions::kAutofillEnableVirtualCardMetadataName,
9509 flag_descriptions::kAutofillEnableVirtualCardMetadataDescription, kOsAll,
9510 FEATURE_VALUE_TYPE(
9511 autofill::features::kAutofillEnableVirtualCardMetadata)},
9512
Anna Tsvirchkova94fecb5f2022-04-14 10:34:049513#if BUILDFLAG(IS_ANDROID)
9514 {"password-edit-dialog-with-details",
9515 flag_descriptions::kPasswordEditDialogWithDetailsName,
9516 flag_descriptions::kPasswordEditDialogWithDetailsDescription, kOsAndroid,
9517 FEATURE_VALUE_TYPE(
9518 password_manager::features::kPasswordEditDialogWithDetails)},
9519#endif // BUILDFLAG(IS_ANDROID)
Alexander Tekleb4643812023-01-06 23:12:309520 {"autofill-enable-ranking-formula-address-profiles",
9521 flag_descriptions::kAutofillEnableRankingFormulaAddressProfilesName,
9522 flag_descriptions::kAutofillEnableRankingFormulaAddressProfilesDescription,
9523 kOsAll,
9524 FEATURE_VALUE_TYPE(
9525 autofill::features::kAutofillEnableRankingFormulaAddressProfiles)},
9526
Alexander Tekle35dfbbd2023-01-31 08:32:399527 {"autofill-enable-ranking-formula-credit-cards",
9528 flag_descriptions::kAutofillEnableRankingFormulaCreditCardsName,
9529 flag_descriptions::kAutofillEnableRankingFormulaCreditCardsDescription,
9530 kOsAll,
9531 FEATURE_VALUE_TYPE(
9532 autofill::features::kAutofillEnableRankingFormulaCreditCards)},
9533
Vinny Persky650f84402022-04-14 18:46:189534 {"autofill-enable-virtual-card-fido-enrollment",
9535 flag_descriptions::kAutofillEnableVirtualCardFidoEnrollmentName,
9536 flag_descriptions::kAutofillEnableVirtualCardFidoEnrollmentDescription,
9537 kOsAll,
9538 FEATURE_VALUE_TYPE(
9539 autofill::features::kAutofillEnableVirtualCardFidoEnrollment)},
Jared Saulb0473bd2022-04-20 00:03:419540 {"autofill-upstream-allow-additional-email-domains",
9541 flag_descriptions::kAutofillUpstreamAllowAdditionalEmailDomainsName,
9542 flag_descriptions::kAutofillUpstreamAllowAdditionalEmailDomainsDescription,
9543 kOsAll,
9544 FEATURE_VALUE_TYPE(
9545 autofill::features::kAutofillUpstreamAllowAdditionalEmailDomains)},
9546 {"autofill-upstream-allow-all-email-domains",
9547 flag_descriptions::kAutofillUpstreamAllowAllEmailDomainsName,
9548 flag_descriptions::kAutofillUpstreamAllowAllEmailDomainsDescription,
9549 kOsAll,
9550 FEATURE_VALUE_TYPE(
9551 autofill::features::kAutofillUpstreamAllowAllEmailDomains)},
Vinny Persky650f84402022-04-14 18:46:189552
Henrique Nakashimaaa6c3142022-07-14 21:53:119553#if BUILDFLAG(IS_ANDROID)
9554 {"safe-mode-for-cached-flags",
9555 flag_descriptions::kSafeModeForCachedFlagsName,
9556 flag_descriptions::kSafeModeForCachedFlagsDescription, kOsAndroid,
9557 FEATURE_VALUE_TYPE(chrome::android::kSafeModeForCachedFlags)},
9558#endif // BUILDFLAG(IS_ANDROID)
9559
George Benz37338b72022-05-02 23:28:039560#if !BUILDFLAG(IS_ANDROID)
Eduard Hez0141dce2022-09-22 11:46:509561 {"safety-check-notification-permissions",
9562 flag_descriptions::kSafetyCheckNotificationPermissionsName,
9563 flag_descriptions::kSafetyCheckNotificationPermissionsDescription,
9564 kOsDesktop,
9565 FEATURE_VALUE_TYPE(features::kSafetyCheckNotificationPermissions)},
9566
Side Yilmazd828f162022-10-11 00:05:249567 {"notification-interaction-history",
9568 flag_descriptions::kNotificationInteractionHistoryName,
9569 flag_descriptions::kNotificationInteractionHistoryDescription, kOsDesktop,
9570 FEATURE_VALUE_TYPE(
9571 permissions::features::kNotificationInteractionHistory)},
9572
Eduard Hez0141dce2022-09-22 11:46:509573 {"safety-check-unused-site-permissions",
9574 flag_descriptions::kSafetyCheckUnusedSitePermissionsName,
9575 flag_descriptions::kSafetyCheckUnusedSitePermissionsDescription,
9576 kOsDesktop,
Tom Van Goethema0ecc5b2022-12-13 13:21:329577 FEATURE_WITH_PARAMS_VALUE_TYPE(
9578 content_settings::features::kSafetyCheckUnusedSitePermissions,
9579 kSafetyCheckUnusedSitePermissionsVariations,
9580 "SafetyCheckUnusedSitePermissions")},
Tom Van Goethem7ad67c082022-12-13 18:56:269581
9582 {"record-permission-expiration-timestamps",
9583 flag_descriptions::kRecordPermissionExpirationTimestampsName,
9584 flag_descriptions::kRecordPermissionExpirationTimestampsDescription,
9585 kOsDesktop,
9586 FEATURE_VALUE_TYPE(
9587 permissions::features::kRecordPermissionExpirationTimestamps)},
Side Yilmaz468cad22023-05-10 10:43:069588
9589 {"safety-hub", flag_descriptions::kSafetyHubName,
9590 flag_descriptions::kSafetyHubDescription, kOsDesktop,
Aisulu Rakhmetullina431fe562023-07-05 15:39:219591 FEATURE_VALUE_TYPE(features::kSafetyHub)},
Side Yilmazcdd69f782022-07-22 08:05:309592#endif // !BUILDFLAG(IS_ANDROID)
9593
Yutaka Hirano639d9742022-05-13 12:35:169594#if BUILDFLAG(IS_ANDROID)
9595 {"network-service-in-process",
9596 flag_descriptions::kNetworkServiceInProcessName,
9597 flag_descriptions::kNetworkServiceInProcessDescription, kOsAndroid,
9598 FEATURE_VALUE_TYPE(features::kNetworkServiceInProcess)},
9599#endif
9600
Yutaka Hirano92bdfa22022-06-01 15:51:339601 {"broker-file-operations-on-disk-cache-in-network-service",
9602 flag_descriptions::kBrokerFileOperationsOnDiskCacheInNetworkServiceName,
9603 flag_descriptions::
9604 kBrokerFileOperationsOnDiskCacheInNetworkServiceDescription,
9605 kOsAll,
9606 FEATURE_VALUE_TYPE(
9607 features::kBrokerFileOperationsOnDiskCacheInNetworkService)},
9608
Yue Zhang25d72962022-06-13 21:14:059609#if BUILDFLAG(IS_ANDROID)
9610 {"enable-commerce-hint-android",
9611 flag_descriptions::kCommerceHintAndroidName,
9612 flag_descriptions::kCommerceHintAndroidDescription, kOsAndroid,
9613 FEATURE_VALUE_TYPE(commerce::kCommerceHintAndroid)},
9614#endif
9615
Alvin Ji3443b9b2022-06-17 19:57:479616#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX)
9617 {"enable-web-bluetooth-confirm-pairing-support",
9618 flag_descriptions::kWebBluetoothConfirmPairingSupportName,
9619 flag_descriptions::kWebBluetoothConfirmPairingSupportDescription,
9620 kOsDesktop,
9621 FEATURE_VALUE_TYPE(device::features::kWebBluetoothConfirmPairingSupport)},
9622#endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX)
9623
Jiahe Zhangc3577e332022-06-22 11:20:389624 {"quick-intensive-throttling-after-loading",
9625 flag_descriptions::kQuickIntensiveWakeUpThrottlingAfterLoadingName,
9626 flag_descriptions::kQuickIntensiveWakeUpThrottlingAfterLoadingDescription,
9627 kOsAll,
9628 FEATURE_VALUE_TYPE(
9629 blink::features::kQuickIntensiveWakeUpThrottlingAfterLoading)},
9630
Tom Burgin5c3fde02022-06-23 18:24:079631#if BUILDFLAG(IS_MAC)
9632 {"system-color-chooser", flag_descriptions::kSystemColorChooserName,
9633 flag_descriptions::kSystemColorChooserDescription, kOsMac,
9634 FEATURE_VALUE_TYPE(blink::features::kSystemColorChooser)},
9635#endif // BUILDFLAG(IS_MAC)
9636
Victor Hugo Vianna Silva020f8dc2022-06-27 19:36:439637 {"ignore-sync-encryption-keys-long-missing",
9638 flag_descriptions::kIgnoreSyncEncryptionKeysLongMissingName,
9639 flag_descriptions::kIgnoreSyncEncryptionKeysLongMissingDescription, kOsAll,
9640 FEATURE_VALUE_TYPE(syncer::kIgnoreSyncEncryptionKeysLongMissing)},
9641
Nakul Vaidyaddfdfbc2022-06-28 23:43:329642 {"autofill-parse-iban-fields",
Nakul Vaidya876210f2022-08-08 17:47:199643 flag_descriptions::kAutofillParseIBANFieldsName,
9644 flag_descriptions::kAutofillParseIBANFieldsDescription, kOsAll,
9645 FEATURE_VALUE_TYPE(autofill::features::kAutofillParseIBANFields)},
Nakul Vaidyaddfdfbc2022-06-28 23:43:329646
Yi An8b28bef2022-06-29 19:11:329647#if BUILDFLAG(IS_ANDROID)
9648 {"autofill-enable-fido-progress-dialog",
9649 flag_descriptions::kAutofillEnableFIDOProgressDialogName,
9650 flag_descriptions::kAutofillEnableFIDOProgressDialogDescription,
9651 kOsAndroid,
9652 FEATURE_VALUE_TYPE(autofill::features::kAutofillEnableFIDOProgressDialog)},
9653#endif // BUILDFLAG(IS_ANDROID)
Shu Yangd1d8f6b82022-06-30 18:46:289654
Alexander Timina812932f2022-06-29 23:39:349655 {"enable-perfetto-system-tracing",
9656 flag_descriptions::kEnablePerfettoSystemTracingName,
9657 flag_descriptions::kEnablePerfettoSystemTracingDescription, kOsAndroid,
9658 FEATURE_VALUE_TYPE(features::kEnablePerfettoSystemTracing)},
Yi An8b28bef2022-06-29 19:11:329659
liyanbo.monster41ebdd12022-06-30 04:32:329660#if BUILDFLAG(IS_ANDROID)
9661 {"enable-android-gamepad-vibration",
9662 flag_descriptions::kEnableAndroidGamepadVibrationName,
9663 flag_descriptions::kEnableAndroidGamepadVibrationDescription, kOsAndroid,
9664 FEATURE_VALUE_TYPE(features::kEnableAndroidGamepadVibration)},
9665#endif // BUILDFLAG(IS_ANDROID)
9666
Shu Yangd1d8f6b82022-06-30 18:46:289667#if BUILDFLAG(IS_ANDROID)
9668 {"request-desktop-site-additions",
9669 flag_descriptions::kRequestDesktopSiteAdditionsName,
9670 flag_descriptions::kRequestDesktopSiteAdditionsDescription, kOsAndroid,
9671 FEATURE_VALUE_TYPE(features::kRequestDesktopSiteAdditions)},
9672#endif // BUILDFLAG(IS_ANDROID)
9673
Aishwarya Rajesh3d0bd212022-07-22 22:48:319674#if BUILDFLAG(IS_ANDROID)
9675 {"request-desktop-site-defaults",
9676 flag_descriptions::kRequestDesktopSiteDefaultsName,
9677 flag_descriptions::kRequestDesktopSiteDefaultsDescription, kOsAndroid,
9678 FEATURE_VALUE_TYPE(chrome::android::kRequestDesktopSiteDefaults)},
9679#endif // BUILDFLAG(IS_ANDROID)
9680
Aishwarya Rajesh63e60f72022-08-26 00:34:199681#if BUILDFLAG(IS_ANDROID)
Aishwarya Rajeshed9865f82022-09-12 22:46:579682 {"request-desktop-site-defaults-downgrade",
9683 flag_descriptions::kRequestDesktopSiteDefaultsDowngradeName,
9684 flag_descriptions::kRequestDesktopSiteDefaultsDowngradeDescription,
9685 kOsAndroid,
9686 FEATURE_VALUE_TYPE(chrome::android::kRequestDesktopSiteDefaultsDowngrade)},
9687#endif // BUILDFLAG(IS_ANDROID)
9688
9689#if BUILDFLAG(IS_ANDROID)
Shu Yang6673a042023-02-28 00:27:369690 {"request-desktop-site-defaults-logging",
9691 flag_descriptions::kRequestDesktopSiteDefaultsLoggingName,
9692 flag_descriptions::kRequestDesktopSiteDefaultsLoggingDescription,
9693 kOsAndroid,
9694 FEATURE_VALUE_TYPE(chrome::android::kRequestDesktopSiteDefaultsLogging)},
9695#endif // BUILDFLAG(IS_ANDROID)
9696
9697#if BUILDFLAG(IS_ANDROID)
Aishwarya Rajesha327b162023-01-06 01:34:429698 {"request-desktop-site-per-site-iph",
9699 flag_descriptions::kRequestDesktopSitePerSiteIphName,
9700 flag_descriptions::kRequestDesktopSitePerSiteIphDescription, kOsAndroid,
9701 FEATURE_VALUE_TYPE(chrome::android::kRequestDesktopSitePerSiteIph)},
9702#endif // BUILDFLAG(IS_ANDROID)
9703
9704#if BUILDFLAG(IS_ANDROID)
Aishwarya Rajesh7b43f262022-11-02 20:22:049705 {"request-desktop-site-zoom",
9706 flag_descriptions::kRequestDesktopSiteZoomName,
9707 flag_descriptions::kRequestDesktopSiteZoomDescription, kOsAndroid,
9708 FEATURE_VALUE_TYPE(features::kRequestDesktopSiteZoom)},
9709#endif // BUILDFLAG(IS_ANDROID)
9710
Jack Hsieh1e6d84a2022-07-01 16:18:579711#if !BUILDFLAG(IS_ANDROID)
9712 {"enable-web-hid-on-extension-service-worker",
9713 flag_descriptions::kEnableWebHidOnExtensionServiceWorkerName,
9714 flag_descriptions::kEnableWebHidOnExtensionServiceWorkerDescription,
9715 kOsDesktop,
9716 FEATURE_VALUE_TYPE(features::kEnableWebHidOnExtensionServiceWorker)},
9717#endif
9718
Marc Treibb9d8ed802022-07-05 15:15:499719 {"enable-sync-history-datatype",
9720 flag_descriptions::kSyncEnableHistoryDataTypeName,
9721 flag_descriptions::kSyncEnableHistoryDataTypeDescription, kOsAll,
9722 FEATURE_VALUE_TYPE(syncer::kSyncEnableHistoryDataType)},
9723
Karol Sygiet901acb42022-08-08 16:00:049724#if BUILDFLAG(IS_MAC)
9725 {"biometric-authentication-in-settings",
9726 flag_descriptions::kBiometricAuthenticationInSettingsName,
9727 flag_descriptions::kBiometricAuthenticationInSettingsDescription, kOsMac,
Karol Sygiet3f6a8162022-07-07 11:34:439728 FEATURE_VALUE_TYPE(
Karol Sygiet901acb42022-08-08 16:00:049729 password_manager::features::kBiometricAuthenticationInSettings)},
9730#endif // BUILDFLAG(IS_MAC)
Tim Sergeanta596e2f2022-07-06 05:27:309731
Siyu An3194bda2022-07-13 19:30:379732 {"autofill-enable-remade-downstream-metrics",
9733 flag_descriptions::kAutofillEnableRemadeDownstreamMetricsName,
9734 flag_descriptions::kAutofillEnableRemadeDownstreamMetricsDescription,
9735 kOsAll,
9736 FEATURE_VALUE_TYPE(
9737 autofill::features::kAutofillEnableRemadeDownstreamMetrics)},
9738
Drew Davenportef725712022-07-13 21:05:089739#if BUILDFLAG(IS_CHROMEOS_ASH)
9740 {"enable-seamless-refresh-rate-switching",
9741 flag_descriptions::kEnableSeamlessRefreshRateSwitchingName,
9742 flag_descriptions::kEnableSeamlessRefreshRateSwitchingDescription, kOsCrOS,
9743 FEATURE_VALUE_TYPE(ash::features::kSeamlessRefreshRateSwitching)},
9744#endif // BUILDFLAG(IS_CHROMEOS_ASH)
9745
Elly Fong-Jones6d1e47c72023-02-24 16:12:579746 {"click-to-call", flag_descriptions::kClickToCallName,
9747 flag_descriptions::kClickToCallDescription, kOsAll,
9748 FEATURE_VALUE_TYPE(kClickToCall)},
9749
Ana SollanoKim2266c112022-07-14 23:38:159750 {"clipboard-unsanitized-content",
9751 flag_descriptions::kClipboardUnsanitizedContentName,
9752 flag_descriptions::kClipboardUnsanitizedContentDescription, kOsAll,
9753 FEATURE_VALUE_TYPE(blink::features::kClipboardUnsanitizedContent)},
9754
Patrick Nolandd50e38b2023-06-14 22:32:119755 {"clipboard-maximum-age", flag_descriptions::kClipboardMaximumAgeName,
9756 flag_descriptions::kClipboardMaximumAgeDescription, kOsAndroid,
9757 FEATURE_WITH_PARAMS_VALUE_TYPE(kClipboardMaximumAge,
9758 kClipboardMaximumAgeVariations,
9759 "ClipboardMaximumAge")},
9760
Erin Parkbbb5decc2022-07-21 21:37:139761#if BUILDFLAG(IS_CHROMEOS_ASH)
9762 {"enable-media-dynamic-cgroup", flag_descriptions::kMediaDynamicCgroupName,
9763 flag_descriptions::kMediaDynamicCgroupDescription, kOsCrOS,
9764 PLATFORM_FEATURE_NAME_TYPE("CrOSLateBootMediaDynamicCgroup")},
9765#endif // BUILDFLAG(IS_CHROMEOS_ASH)
9766
Qihui Zhao30bf4ca2022-07-26 20:24:599767 {"autofill-fill-iban-fields",
9768 flag_descriptions::kAutofillFillIbanFieldsName,
9769 flag_descriptions::kAutofillFillIbanFieldsDescription, kOsDesktop,
9770 FEATURE_VALUE_TYPE(autofill::features::kAutofillFillIbanFields)},
9771
Nakul Vaidya13ca2042022-07-27 01:59:559772 {"autofill-parse-vcn-card-on-file-standalone-cvc-fields",
9773 flag_descriptions::kAutofillParseVcnCardOnFileStandaloneCvcFieldsName,
9774 flag_descriptions::
9775 kAutofillParseVcnCardOnFileStandaloneCvcFieldsDescription,
9776 kOsAll,
9777 FEATURE_VALUE_TYPE(
9778 autofill::features::kAutofillParseVcnCardOnFileStandaloneCvcFields)},
9779
Tsuyoshi Horo41b0fe002023-01-30 03:04:579780 {"background-resource-fetch",
9781 flag_descriptions::kBackgroundResourceFetchName,
9782 flag_descriptions::kBackgroundResourceFetchDescription, kOsAll,
9783 FEATURE_VALUE_TYPE(blink::features::kBackgroundResourceFetch)},
9784
Karol Sygietc5e3da652022-08-02 15:47:509785#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN)
9786 {"biometric-authentication-for-filling",
9787 flag_descriptions::kBiometricAuthenticationForFillingName,
9788 flag_descriptions::kBiometricAuthenticationForFillingDescription,
9789 kOsMac | kOsWin,
9790 FEATURE_VALUE_TYPE(
9791 password_manager::features::kBiometricAuthenticationForFilling)},
9792#endif
Yoshisato Yanagisawa577d82822022-08-17 01:51:109793 {"skip-service-worker-fetch-handler",
9794 flag_descriptions::kSkipServiceWorkerFetchHandlerName,
9795 flag_descriptions::kSkipServiceWorkerFetchHandlerDescription, kOsAll,
9796 FEATURE_WITH_PARAMS_VALUE_TYPE(
9797 features::kServiceWorkerSkipIgnorableFetchHandler,
9798 kServiceWorkerSkipIgnorableFetchHandlerVariations,
9799 "ServiceWorkerSkipIgnorableFetchHandler")},
Karol Sygietc5e3da652022-08-02 15:47:509800
Andrii Natiahlyi653c24092023-02-16 11:37:359801 {"passwords-import-m2", flag_descriptions::kPasswordsImportM2Name,
9802 flag_descriptions::kPasswordsImportM2Description, kOsDesktop,
9803 FEATURE_VALUE_TYPE(password_manager::features::kPasswordsImportM2)},
Andrii Natiahlyi653c24092023-02-16 11:37:359804
liqining.keiling151bedd62022-08-17 19:18:269805#if !BUILDFLAG(IS_CHROMEOS) && !BUILDFLAG(IS_ANDROID)
9806 {flag_descriptions::kDesktopPWAsAppHomePageFlagId,
9807 flag_descriptions::kDesktopPWAsAppHomePageName,
9808 flag_descriptions::kDesktopPWAsAppHomePageDescription, kOsDesktop,
9809 FEATURE_VALUE_TYPE(features::kDesktopPWAsAppHomePage)},
9810#endif // !BUILDFLAG(IS_CHROMEOS) && !BUILDFLAG(IS_ANDROID)
9811
Michael Thiessen495a0d32022-08-24 17:58:199812#if BUILDFLAG(IS_ANDROID)
9813 {"external-navigation-debug-logs",
9814 flag_descriptions::kExternalNavigationDebugLogsName,
9815 flag_descriptions::kExternalNavigationDebugLogsDescription, kOsAndroid,
9816 FEATURE_VALUE_TYPE(external_intents::kExternalNavigationDebugLogs)},
9817#endif
9818
Charles Meng17ba75d2022-08-23 18:45:289819#if !BUILDFLAG(IS_ANDROID)
Anthony Vallee-Dubois3d3039fb2023-03-17 16:11:159820 {"heuristic-memory-saver-mode",
9821 flag_descriptions::kHeuristicMemorySaverName,
9822 flag_descriptions::kHeuristicMemorySaverDescription, kOsDesktop,
9823 FEATURE_WITH_PARAMS_VALUE_TYPE(
9824 performance_manager::features::kHeuristicMemorySaver,
9825 kHeuristicMemorySaverVariations,
9826 "HeuristicMemorySaver")},
Baitinq8e9648d2023-06-05 10:52:349827
9828 {"hide-incognito-media-metadata",
9829 flag_descriptions::kHideIncognitoMediaMetadataName,
9830 flag_descriptions::kHideIncognitoMediaMetadataDescription, kOsDesktop,
9831 FEATURE_VALUE_TYPE(media::kHideIncognitoMediaMetadata)},
9832
Alison Galea48e0e12023-05-10 22:57:529833 {"memory-saver-multi-state-mode",
9834 flag_descriptions::kHighEfficiencyMultistateModeAvailableName,
9835 flag_descriptions::kHighEfficiencyMultistateModeAvailableDescription,
9836 kOsDesktop,
Charles Meng095d98b2023-06-14 16:21:579837 FEATURE_WITH_PARAMS_VALUE_TYPE(
9838 performance_manager::features::kHighEfficiencyMultistateMode,
9839 kHighEfficiencyMultistateModeVariations,
9840 "HighEfficiencyMultistateMode")},
Alison Galea48e0e12023-05-10 22:57:529841
Alison Galee124dea32023-05-05 21:39:059842 {"memory-saver-discarded-tab-treatment",
9843 flag_descriptions::kHighEfficiencyDiscardedTabTreatmentName,
9844 flag_descriptions::kHighEfficiencyDiscardedTabTreatmentDescription,
9845 kOsDesktop,
9846 FEATURE_WITH_PARAMS_VALUE_TYPE(
9847 performance_manager::features::kDiscardedTabTreatment,
9848 kDiscardedTabTreatmentVariations,
9849 "DiscardedTabTreatment")},
9850
Alison Galeeebae682023-06-06 20:30:539851 {"memory-saver-memory-usage-in-hovercards",
9852 flag_descriptions::kHighEfficiencyMemoryUsageInHovercardsName,
9853 flag_descriptions::kHighEfficiencyMemoryUsageInHovercardsDescription,
9854 kOsDesktop,
9855 FEATURE_VALUE_TYPE(
9856 performance_manager::features::kMemoryUsageInHovercards)},
9857
Alison Galeaf767012023-05-12 18:27:069858 {"memory-saver-discard-exceptions-improvements",
9859 flag_descriptions::kHighEfficiencyDiscardExceptionsImprovementsName,
9860 flag_descriptions::kHighEfficiencyDiscardExceptionsImprovementsDescription,
9861 kOsDesktop,
9862 FEATURE_VALUE_TYPE(
9863 performance_manager::features::kDiscardExceptionsImprovements)},
9864
Alison Gale56cd69b2023-04-25 16:56:329865 {"memory-saver-savings-reporting-improvements",
9866 flag_descriptions::kHighEfficiencySavingsReportingImprovementsName,
9867 flag_descriptions::kHighEfficiencySavingsReportingImprovementsDescription,
9868 kOsDesktop,
Alison Galea37182632023-05-11 17:44:569869 FEATURE_WITH_PARAMS_VALUE_TYPE(
9870 performance_manager::features::kMemorySavingsReportingImprovements,
9871 kHighEfficiencyMemorySavingsReportingVariations,
9872 "MemorySavingsReportingImprovements")},
Alison Gale56cd69b2023-04-25 16:56:329873
Charles Meng17ba75d2022-08-23 18:45:289874#endif
9875
Moe Ahmadi40e0eba52022-12-22 01:44:259876 {"webui-omnibox-popup", flag_descriptions::kWebUIOmniboxPopupName,
9877 flag_descriptions::kWebUIOmniboxPopupDescription, kOsDesktop,
9878 FEATURE_VALUE_TYPE(omnibox::kWebUIOmniboxPopup)},
9879
dpapad36b3a3b22023-04-19 17:07:469880#if !BUILDFLAG(IS_LINUX)
dpapad7c00cc7f02023-03-24 17:54:359881 {"webui-system-font", flag_descriptions::kWebUiSystemFontName,
9882 flag_descriptions::kWebUiSystemFontDescription, kOsAll,
9883 FEATURE_VALUE_TYPE(features::kWebUiSystemFont)},
dpapad36b3a3b22023-04-19 17:07:469884#endif
dpapad7c00cc7f02023-03-24 17:54:359885
Tim Sergeantb2f5dc02022-09-14 08:07:179886#if BUILDFLAG(IS_CHROMEOS_ASH)
9887 {"arc-nearby-share-fuse-box", flag_descriptions::kArcNearbyShareFuseBoxName,
9888 flag_descriptions::kArcNearbyShareFuseBoxDescription, kOsCrOS,
Siyu An042eac82022-09-19 23:55:039889 FEATURE_VALUE_TYPE(arc::kEnableArcNearbyShareFuseBox)},
Tim Sergeantb2f5dc02022-09-14 08:07:179890#endif
9891
Siyu An042eac82022-09-19 23:55:039892 {"autofill-enable-card-art-image",
9893 flag_descriptions::kAutofillEnableCardArtImageName,
9894 flag_descriptions::kAutofillEnableCardArtImageDescription, kOsAll,
9895 FEATURE_VALUE_TYPE(autofill::features::kAutofillEnableCardArtImage)},
9896
Calder Kitagawa621534c2022-09-20 19:12:519897#if BUILDFLAG(IS_ANDROID)
Brandon Fong7ec73ac2023-06-15 19:08:599898 {"restore-tabs-on-fre", flag_descriptions::kRestoreTabsOnFREName,
9899 flag_descriptions::kRestoreTabsOnFREDescription, kOsAndroid,
9900 FEATURE_WITH_PARAMS_VALUE_TYPE(chrome::android::kRestoreTabsOnFRE,
9901 kRestoreTabsOnFREVariations,
9902 "RestoreTabsOnFRE")},
9903
Wenyu Fu54672f42022-09-22 17:51:519904 {"context-menu-popup-for-all-screen-sizes",
9905 flag_descriptions::kContextMenuPopupForAllScreenSizesName,
9906 flag_descriptions::kContextMenuPopupForAllScreenSizesDescription,
9907 kOsAndroid,
9908 FEATURE_VALUE_TYPE(chrome::android::kContextMenuPopupForAllScreenSizes)},
Calder Kitagawa621534c2022-09-20 19:12:519909#endif
Vasiliy Telezhnikova4164812022-10-03 18:38:209910 {"use-dmsaa-for-tiles", flag_descriptions::kUseDMSAAForTilesName,
9911 flag_descriptions::kUseDMSAAForTilesDescription, kOsAll,
9912 FEATURE_VALUE_TYPE(::features::kUseDMSAAForTiles)},
Calder Kitagawa621534c2022-09-20 19:12:519913
Matt Reynolds9e96d08d2022-09-30 01:28:509914 {"enable-web-usb-on-extension-service-worker",
9915 flag_descriptions::kEnableWebUsbOnExtensionServiceWorkerName,
9916 flag_descriptions::kEnableWebUsbOnExtensionServiceWorkerDescription,
9917 kOsAndroid | kOsDesktop,
9918 FEATURE_VALUE_TYPE(features::kEnableWebUsbOnExtensionServiceWorker)},
9919
David Black6fca0bc2022-10-08 00:35:179920#if BUILDFLAG(IS_CHROMEOS_ASH)
9921 {"enable-holding-space-predictability",
9922 flag_descriptions::kHoldingSpacePredictabilityName,
9923 flag_descriptions::kHoldingSpacePredictabilityDescription, kOsCrOS,
9924 FEATURE_VALUE_TYPE(ash::features::kHoldingSpacePredictability)},
9925 {"enable-holding-space-refresh",
9926 flag_descriptions::kHoldingSpaceRefreshName,
9927 flag_descriptions::kHoldingSpaceRefreshDescription, kOsCrOS,
9928 FEATURE_VALUE_TYPE(ash::features::kHoldingSpaceRefresh)},
9929 {"enable-holding-space-suggestions",
9930 flag_descriptions::kHoldingSpaceSuggestionsName,
9931 flag_descriptions::kHoldingSpaceSuggestionsDescription, kOsCrOS,
9932 FEATURE_VALUE_TYPE(ash::features::kHoldingSpaceSuggestions)},
9933#endif
9934
Momoka Yamamotof1accfce2022-10-13 10:00:199935 {"use-nat64-for-ipv4-literal",
9936 flag_descriptions::kUseNAT64ForIPv4LiteralName,
9937 flag_descriptions::kUseNAT64ForIPv4LiteralDescription, kOsAll,
9938 FEATURE_VALUE_TYPE(net::features::kUseNAT64ForIPv4Literal)},
9939
Victor Hugo Vianna Silvabb878dea2022-10-18 10:19:049940#if BUILDFLAG(IS_ANDROID)
9941 {"enable-passwords-account-storage",
9942 flag_descriptions::kEnablePasswordsAccountStorageName,
9943 flag_descriptions::kEnablePasswordsAccountStorageDescription, kOsAndroid,
9944 FEATURE_VALUE_TYPE(
9945 password_manager::features::kEnablePasswordsAccountStorage)},
9946#endif // BUILDFLAG(IS_CHROMEOS_ASH)
9947
Matt Mueller8b02b1902023-03-07 00:06:369948#if BUILDFLAG(CHROME_ROOT_STORE_OPTIONAL)
Hubert Chaod8adfa72022-10-19 18:18:529949 {"chrome-root-store-enabled",
9950 flag_descriptions::kChromeRootStoreEnabledName,
Hubert Chaoce53df362022-12-05 21:19:399951 flag_descriptions::kChromeRootStoreEnabledDescription,
Matt Mueller8b02b1902023-03-07 00:06:369952 kOsAndroid | kOsLinux | kOsCrOS | kOsLacros,
Hubert Chaod8adfa72022-10-19 18:18:529953 FEATURE_VALUE_TYPE(net::features::kChromeRootStoreUsed)},
Matt Mueller8b02b1902023-03-07 00:06:369954#endif // BUILDFLAG(CHROME_ROOT_STORE_OPTIONAL)
Hubert Chaod8adfa72022-10-19 18:18:529955
Hubert Chaoc30058a2022-12-01 01:08:449956#if BUILDFLAG(TRIAL_COMPARISON_CERT_VERIFIER_SUPPORTED)
9957 {"cert-dual-verification-enabled",
9958 flag_descriptions::kCertDualVerificationEnabledName,
9959 flag_descriptions::kCertDualVerificationEnabledDescription, kOsAndroid,
9960 FEATURE_VALUE_TYPE(net::features::kCertDualVerificationTrialFeature)},
9961#endif // BUILDFLAG(TRIAL_COMPARISON_CERT_VERIFIER_SUPPORTED)
9962
Fabio Tirelo86429cb2022-10-25 22:25:199963#if BUILDFLAG(IS_ANDROID)
Salma Elmahallawydcdfa9e2023-01-30 18:42:249964 {"policy-logs-page-android", flag_descriptions::kPolicyLogsPageAndroidName,
9965 flag_descriptions::kPolicyLogsPageAndroidDescription, kOsAndroid,
9966 FEATURE_VALUE_TYPE(policy::features::kPolicyLogsPageAndroid)},
9967#endif
9968
Fabio Tirelo343dcc82023-03-13 16:34:109969#if BUILDFLAG(IS_ANDROID)
9970 {"safe-sites-filter-behavior-policy-android",
9971 flag_descriptions::kSafeSitesFilterBehaviorPolicyAndroidName,
9972 flag_descriptions::kSafeSitesFilterBehaviorPolicyAndroidDescription,
9973 kOsAndroid,
9974 FEATURE_VALUE_TYPE(
9975 policy::features::kSafeSitesFilterBehaviorPolicyAndroid)},
9976#endif
9977
Igor Ruvinovb1f7bea2022-11-08 23:20:509978#if BUILDFLAG(IS_WIN)
Igor Ruvinova21c076a2023-05-10 18:51:099979 {"cloud-ap-auth-attach-as-header",
9980 flag_descriptions::kCloudApAuthAttachAsHeaderName,
9981 flag_descriptions::kCloudApAuthAttachAsHeaderDescription, kOsWin,
9982 FEATURE_VALUE_TYPE(enterprise_auth::kCloudApAuthAttachAsHeader)},
Igor Ruvinovb1f7bea2022-11-08 23:20:509983#endif // BUILDFLAG(IS_WIN)
9984
Tao Wu4b5d8162022-11-10 19:58:079985#if BUILDFLAG(IS_CHROMEOS_ASH)
9986 {kLibAssistantV2MigrationInternalName,
9987 flag_descriptions::kLibAssistantV2MigrationName,
9988 flag_descriptions::kLibAssistantV2MigrationDescription, kOsCrOS,
9989 FEATURE_VALUE_TYPE(ash::assistant::features::kEnableLibAssistantV2)},
9990#endif // BUILDFLAG(IS_CHROMEOS_ASH)
9991
Daniel Andersson3a71e982022-11-17 02:34:079992#if BUILDFLAG(IS_CHROMEOS_ASH)
9993 {"enable-per-desk-z-order", flag_descriptions::kEnablePerDeskZOrderName,
9994 flag_descriptions::kEnablePerDeskZOrderDescription, kOsCrOS,
9995 FEATURE_VALUE_TYPE(ash::features::kEnablePerDeskZOrder)},
9996#endif // BUILDFLAG(IS_CHROMEOS_ASH)
9997
Emily Shack675ca992022-11-18 22:07:249998#if !BUILDFLAG(IS_ANDROID)
9999 {"power-bookmarks-side-panel", flag_descriptions::kPowerBookmarksSidePanel,
10000 flag_descriptions::kPowerBookmarksSidePanelDescription, kOsDesktop,
10001 FEATURE_VALUE_TYPE(features::kPowerBookmarksSidePanel)},
10002#endif
10003
Yuki Awanoeeaad0f2022-11-22 22:44:5910004#if BUILDFLAG(IS_CHROMEOS_ASH)
10005 {"gallery-app-pdf-edit-notification",
10006 flag_descriptions::kGalleryAppPdfEditNotificationName,
10007 flag_descriptions::kGalleryAppPdfEditNotificationDescription, kOsCrOS,
10008 FEATURE_WITH_PARAMS_VALUE_TYPE(
10009 ash::features::kGalleryAppPdfEditNotification,
10010 kGalleryAppPdfEditNotificationVariations,
10011 "GalleryAppPdfEditNotification")},
10012#endif
10013
Yuki Awano6ac1a1dc2023-01-21 00:50:2410014#if BUILDFLAG(IS_CHROMEOS_ASH)
10015 {"google-one-offer-files-banner",
10016 flag_descriptions::kGoogleOneOfferFilesBannerName,
10017 flag_descriptions::kGoogleOneOfferFilesBannerDescription, kOsCrOS,
10018 FEATURE_VALUE_TYPE(ash::features::kGoogleOneOfferFilesBanner)},
10019#endif
10020
Alexander Tekle629b1be2022-12-05 23:55:1210021 {"sync-autofill-wallet-usage-data",
10022 flag_descriptions::kSyncAutofillWalletUsageDataName,
10023 flag_descriptions::kSyncAutofillWalletUsageDataDescription, kOsAll,
10024 FEATURE_VALUE_TYPE(syncer::kSyncAutofillWalletUsageData)},
10025
Maksim Sisovdc5d70a2022-11-23 08:03:0210026#if !BUILDFLAG(IS_ANDROID)
10027 {"ui-enable-shared-image-cache-for-gpu",
10028 flag_descriptions::kUIEnableSharedImageCacheForGpuName,
10029 flag_descriptions::kUIEnableSharedImageCacheForGpuDescription, kOsDesktop,
10030 FEATURE_VALUE_TYPE(::features::kUIEnableSharedImageCacheForGpu)},
10031#endif
10032
Danil Somsikov0d206142022-11-28 23:37:2010033#if !BUILDFLAG(IS_ANDROID)
10034 {"devtools-tab-target", flag_descriptions::kDevToolsTabTargetLiteralName,
10035 flag_descriptions::kDevToolsTabTargetLiteralDescription, kOsDesktop,
10036 FEATURE_VALUE_TYPE(::features::kDevToolsTabTarget)},
10037#endif
Andrew Pantera67b07b42022-12-06 19:32:0010038
10039#if BUILDFLAG(IS_CHROMEOS_ASH)
10040 {"cros-labs-window-cycle-shortcut",
10041 flag_descriptions::kSameAppWindowCycleName,
10042 flag_descriptions::kSameAppWindowCycleDescription, kOsCrOS,
10043 FEATURE_VALUE_TYPE(ash::features::kSameAppWindowCycle)},
10044#endif
George Benz57b4f6a2022-12-06 22:57:1810045
Vivian Paofc22288b2022-12-07 03:00:1110046#if BUILDFLAG(IS_CHROMEOS_ASH)
10047 {"promise-icons", flag_descriptions::kPromiseIconsName,
10048 flag_descriptions::kPromiseIconsDescription, kOsCrOS,
10049 FEATURE_VALUE_TYPE(ash::features::kPromiseIcons)},
10050#endif
Piotr Pawliczek49732c92022-12-12 18:10:5810051
10052#if BUILDFLAG(IS_CHROMEOS_ASH)
10053 {"printing-ppd-channel", flag_descriptions::kPrintingPpdChannelName,
10054 flag_descriptions::kPrintingPpdChannelDescription, kOsCrOS,
Piotr Pawliczekd05f69682023-03-07 03:42:0410055 MULTI_VALUE_TYPE(kPrintingPpdChannelChoices)},
Piotr Pawliczek49732c92022-12-12 18:10:5810056#endif
10057
Salma Elmahallawy65cafa52023-04-18 16:34:3410058#if BUILDFLAG(IS_WIN) || (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)) || \
10059 BUILDFLAG(IS_MAC) || BUILDFLAG(IS_ANDROID)
10060 {"data-retention-policies-disable-sync-types-needed",
10061 flag_descriptions::kDataRetentionPoliciesDisableSyncTypesNeededName,
10062 flag_descriptions::kDataRetentionPoliciesDisableSyncTypesNeededDescription,
10063 kOsLinux | kOsWin | kOsMac | kOsCrOS | kOsAndroid,
10064 FEATURE_VALUE_TYPE(browsing_data::features::
10065 kDataRetentionPoliciesDisableSyncTypesNeeded)},
10066#endif
10067
Ayu Ishii1e06316f2022-12-14 14:54:5010068 {"storage-buckets", flag_descriptions::kStorageBucketsName,
10069 flag_descriptions::kStorageBucketsDescription, kOsAll,
10070 FEATURE_VALUE_TYPE(blink::features::kStorageBuckets)},
10071
sisidovskia29a3022023-04-20 07:53:5410072 {"service-worker-bypass-fetch-handler",
10073 flag_descriptions::kServiceWorkerBypassFetchHandlerName,
10074 flag_descriptions::kServiceWorkerBypassFetchHandlerDescription, kOsAll,
10075 FEATURE_WITH_PARAMS_VALUE_TYPE(features::kServiceWorkerBypassFetchHandler,
10076 kServiceWorkerBypassFetchHandlerVariations,
10077 "ServiceWorkerBypassFetchHandler")},
10078
sisidovski62b577f22022-12-15 03:10:0010079 {"service-worker-bypass-fetch-handler-for-main-resource",
10080 flag_descriptions::kServiceWorkerBypassFetchHandlerForMainResourceName,
10081 flag_descriptions::
10082 kServiceWorkerBypassFetchHandlerForMainResourceDescription,
Qihui Zhao69ac9eee2022-12-15 21:36:3910083 kOsAll, FEATURE_VALUE_TYPE(features::kServiceWorkerBypassFetchHandler)},
10084
Yoshisato Yanagisawa9dc8ebe2023-06-13 07:07:0410085 {"service-worker-static-router",
10086 flag_descriptions::kServiceWorkerStaticRouterName,
10087 flag_descriptions::kServiceWorkerStaticRouterDescription, kOsAll,
10088 FEATURE_VALUE_TYPE(features::kServiceWorkerStaticRouter)},
10089
Qihui Zhao69ac9eee2022-12-15 21:36:3910090 {"autofill-remove-card-expiration-and-type-titles",
10091 flag_descriptions::kAutofillRemoveCardExpirationAndTypeTitlesName,
10092 flag_descriptions::kAutofillRemoveCardExpirationAndTypeTitlesDescription,
10093 kOsDesktop,
10094 FEATURE_VALUE_TYPE(
10095 autofill::features::kAutofillRemoveCardExpirationAndTypeTitles)},
Qihui Zhao72836c62022-12-16 04:31:4110096
10097 {"autofill-offer-to-save-card-with-same-last-four",
10098 flag_descriptions::kAutofillOfferToSaveCardWithSameLastFourName,
10099 flag_descriptions::kAutofillOfferToSaveCardWithSameLastFourDescription,
10100 kOsAll,
10101 FEATURE_VALUE_TYPE(
10102 autofill::features::kAutofillOfferToSaveCardWithSameLastFour)},
10103
Nikki Fang32bf6282023-01-04 05:28:4110104#if BUILDFLAG(IS_CHROMEOS_ASH)
10105 {"app-deduplication-service-fondue",
10106 flag_descriptions::kAppDeduplicationServiceFondueName,
10107 flag_descriptions::kAppDeduplicationServiceFondueDescription, kOsCrOS,
10108 FEATURE_VALUE_TYPE(features::kAppDeduplicationServiceFondue)},
10109#endif
10110
Vipul Vinod Koulaebbcb3a2023-01-05 19:50:5010111 {"autofill-suggest-server-card-instead-of-local-card",
10112 flag_descriptions::kAutofillSuggestServerCardInsteadOfLocalCardName,
10113 flag_descriptions::kAutofillSuggestServerCardInsteadOfLocalCardDescription,
10114 kOsAll,
10115 FEATURE_VALUE_TYPE(
10116 autofill::features::kAutofillSuggestServerCardInsteadOfLocalCard)},
Sky Malice300d5fc2023-01-12 19:37:3310117
10118#if BUILDFLAG(IS_ANDROID)
10119 {"android-improved-bookmarks",
10120 flag_descriptions::kAndroidImprovedBookmarksName,
10121 flag_descriptions::kAndroidImprovedBookmarksDescription, kOsAndroid,
Brandon Wylie294073a2023-03-31 22:15:3110122 FEATURE_VALUE_TYPE(chrome::android::kAndroidImprovedBookmarks)},
Sky Malice300d5fc2023-01-12 19:37:3310123#endif // BUILDFLAG(IS_ANDROID)
10124
Charles William Dicka0a0f972023-01-27 02:12:3210125#if BUILDFLAG(IS_CHROMEOS_ASH)
10126 {"arc-idle-manager", flag_descriptions::kArcIdleManagerName,
10127 flag_descriptions::kArcIdleManagerDescription, kOsCrOS,
10128 FEATURE_VALUE_TYPE(arc::kEnableArcIdleManager)},
10129#endif // BUILDFLAG(IS_CHROMEOS_ASH)
10130
Kevin McNee96b3a1b2023-02-02 20:24:5010131#if BUILDFLAG(ENABLE_EXTENSIONS)
10132 {"enable-webview-tag-mparch-behavior",
10133 flag_descriptions::kWebViewTagMPArchBehaviorName,
10134 flag_descriptions::kWebViewTagMPArchBehaviorDescription, kOsDesktop,
10135 FEATURE_VALUE_TYPE(extensions_features::kWebviewTagMPArchBehavior)},
Ryan Sultanembff00a92023-03-06 11:45:1010136
10137 {"web-auth-flow-in-browser-tab",
10138 flag_descriptions::kWebAuthFlowInBrowserTabName,
10139 flag_descriptions::kWebAuthFlowInBrowserTabDescription, kOsDesktop,
10140 FEATURE_WITH_PARAMS_VALUE_TYPE(features::kWebAuthFlowInBrowserTab,
10141 kWebAuthFlowInBrowserTabVariations,
10142 "WebAuthFlowInBrowserTab")},
Kevin McNee96b3a1b2023-02-02 20:24:5010143#endif // BUILDFLAG(ENABLE_EXTENSIONS)
Calder Kitagawae13c23912023-02-08 22:50:2810144 //
10145#if BUILDFLAG(IS_ANDROID)
10146 {"thumbnail-cache-refactor", flag_descriptions::kThumbnailCacheRefactorName,
10147 flag_descriptions::kThumbnailCacheRefactorDescription, kOsAndroid,
Calder Kitagawa204d6402023-02-22 18:16:5710148 FEATURE_VALUE_TYPE(thumbnail::kThumbnailCacheRefactor)},
Bo Liude36ab62023-02-24 20:08:2910149
10150 {"slim-compositor", flag_descriptions::kSlimCompositorName,
10151 flag_descriptions::kSlimCompositorDescription, kOsAndroid,
10152 FEATURE_VALUE_TYPE(features::kSlimCompositor)},
Bo Liu2f247292023-05-15 18:28:3210153
10154 {"surface-control-magnifier",
10155 flag_descriptions::kSurfaceControlMagnifierName,
10156 flag_descriptions::kSurfaceControlMagnifierDescription, kOsAndroid,
10157 FEATURE_VALUE_TYPE(features::kAndroidSurfaceControlMagnifier)},
Calder Kitagawae13c23912023-02-08 22:50:2810158#endif // BUILDFLAG(IS_ANDROID)
Kevin McNee96b3a1b2023-02-02 20:24:5010159
Vinny Perskye6677d52023-02-22 22:22:1910160 {"autofill-enable-iban-client-side-url-filtering",
10161 flag_descriptions::kAutofillEnableIbanClientSideUrlFilteringName,
10162 flag_descriptions::kAutofillEnableIbanClientSideUrlFilteringDescription,
Vinny Persky6d96eae2023-02-08 00:46:0410163 kOsAll,
10164 FEATURE_VALUE_TYPE(
Vinny Perskye6677d52023-02-22 22:22:1910165 autofill::features::kAutofillEnableIbanClientSideUrlFiltering)},
Vinny Persky6d96eae2023-02-08 00:46:0410166
Michael Martisd3a46a872023-02-08 05:27:5010167#if BUILDFLAG(IS_CHROMEOS_ASH)
10168 {"system-live-caption", flag_descriptions::kSystemLiveCaptionName,
10169 flag_descriptions::kSystemLiveCaptionDescription, kOsCrOS,
10170 FEATURE_VALUE_TYPE(ash::features::kSystemLiveCaption)},
10171#endif // BUILDFLAG(IS_CHROMEOS_ASH)
10172
Alex Mitrac4bcea22023-02-09 11:10:1510173#if BUILDFLAG(IS_ANDROID)
10174 {"stylus-rich-gestures", flag_descriptions::kStylusRichGesturesName,
10175 flag_descriptions::kStylusRichGesturesDescription, kOsAndroid,
10176 FEATURE_VALUE_TYPE(blink::features::kStylusRichGestures)},
10177#endif // BUILDFLAG(IS_ANDROID)
10178
Saifuddin Hitawala74627fe2023-02-14 20:25:4510179 {"passthrough-yuv-rgb-conversion",
10180 flag_descriptions::kPassthroughYuvRgbConversionName,
10181 flag_descriptions::kPassthroughYuvRgbConversionDescription, kOsAll,
10182 FEATURE_VALUE_TYPE(features::kPassthroughYuvRgbConversion)},
10183
Saifuddin Hitawala0c647802023-03-22 21:20:4910184 {"use-multi-plane-format-for-hardware-video",
10185 flag_descriptions::kUseMultiPlaneFormatForHardwareVideoName,
10186 flag_descriptions::kUseMultiPlaneFormatForHardwareVideoDescription, kOsAll,
10187 FEATURE_VALUE_TYPE(media::kUseMultiPlaneFormatForHardwareVideo)},
10188
Saifuddin Hitawalae3b5ec82023-03-30 17:08:0310189 {"use-multi-plane-format-for-software-video",
10190 flag_descriptions::kUseMultiPlaneFormatForSoftwareVideoName,
10191 flag_descriptions::kUseMultiPlaneFormatForSoftwareVideoDescription, kOsAll,
10192 FEATURE_VALUE_TYPE(media::kUseMultiPlaneFormatForSoftwareVideo)},
10193
andrewxu6396d652023-02-20 17:58:5410194#if BUILDFLAG(IS_CHROMEOS_ASH)
10195 {"enable-notification-image-drag",
10196 flag_descriptions::kEnableNotificationImageDragName,
10197 flag_descriptions::kEnableNotificationImageDragDescription, kOsCrOS,
10198 FEATURE_VALUE_TYPE(ash::features::kNotificationImageDrag)},
10199#endif
10200
Vipul Vinod Koul633bbf652023-02-21 23:34:1110201#if !BUILDFLAG(IS_ANDROID)
10202 {"autofill-enable-new-save-card-bubble-ui",
10203 flag_descriptions::kAutofillEnableNewSaveCardBubbleUiName,
10204 flag_descriptions::kAutofillEnableNewSaveCardBubbleUiDescription,
10205 kOsDesktop,
10206 FEATURE_VALUE_TYPE(
10207 autofill::features::kAutofillEnableNewSaveCardBubbleUi)},
10208#endif // !BUILDFLAG(IS_ANDROID)
10209
Alexander Teklea82c4142023-02-22 01:33:4210210 {"autofill-enable-new-card-art-and-network-images",
10211 flag_descriptions::kAutofillEnableNewCardArtAndNetworkImagesName,
10212 flag_descriptions::kAutofillEnableNewCardArtAndNetworkImagesDescription,
10213 kOsAll,
10214 FEATURE_VALUE_TYPE(
10215 autofill::features::kAutofillEnableNewCardArtAndNetworkImages)},
Vishwas Uppoord6bfcb52023-06-27 02:15:3510216
10217 {"autofill-enable-card-art-server-side-stretching",
10218 flag_descriptions::kAutofillEnableCardArtServerSideStretchingName,
10219 flag_descriptions::kAutofillEnableCardArtServerSideStretchingDescription,
10220 kOsAll,
10221 FEATURE_VALUE_TYPE(
10222 autofill::features::kAutofillEnableCardArtServerSideStretching)},
10223
Jared Saul5ea8b257f2023-02-22 18:53:2710224 {"autofill-upstream-use-alternate-secure-data-type",
10225 flag_descriptions::kAutofillUpstreamUseAlternateSecureDataTypeName,
10226 flag_descriptions::kAutofillUpstreamUseAlternateSecureDataTypeDescription,
10227 kOsAll,
10228 FEATURE_VALUE_TYPE(
10229 autofill::features::kAutofillUpstreamUseAlternateSecureDataType)},
Alexander Teklea82c4142023-02-22 01:33:4210230
Brandon Wylie130e5792023-02-23 23:59:3810231 {"power-bookmark-backend", flag_descriptions::kPowerBookmarkBackendName,
10232 flag_descriptions::kPowerBookmarkBackendDescription, kOsAll,
10233 FEATURE_VALUE_TYPE(power_bookmarks::kPowerBookmarkBackend)},
10234
Caroline Rising19c84902023-02-27 23:46:0010235#if !BUILDFLAG(IS_ANDROID)
10236 {"user-notes-side-panel", flag_descriptions::kUserNotesSidePanelName,
10237 flag_descriptions::kUserNotesSidePanelDescription, kOsDesktop,
10238 FEATURE_VALUE_TYPE(user_notes::kUserNotes)},
10239#endif
10240
Vinny Persky5a0ac3a32023-03-02 18:35:5010241 {"autofill-enable-merchant-opt-out-client-side-url-filtering",
10242 flag_descriptions::kAutofillEnableMerchantOptOutClientSideUrlFilteringName,
10243 flag_descriptions::
10244 kAutofillEnableMerchantOptOutClientSideUrlFilteringDescription,
10245 kOsAll,
10246 FEATURE_VALUE_TYPE(
10247 autofill::features::
10248 kAutofillEnableMerchantOptOutClientSideUrlFiltering)},
10249
Matthew Mourgos6f663a42023-03-14 20:58:0810250#if BUILDFLAG(IS_CHROMEOS_ASH)
10251 {"enable-eol-notification-reset-dismissed-prefs",
10252 flag_descriptions::kEolResetDismissedPrefsName,
10253 flag_descriptions::kEolResetDismissedPrefsDescription, kOsCrOS,
10254 SINGLE_VALUE_TYPE(ash::switches::kEolResetDismissedPrefs)},
10255#endif
10256
Anna Tsvirchkova0891e9da2023-03-08 12:42:0910257#if BUILDFLAG(IS_ANDROID)
10258 {"password-generation-bottom-sheet",
10259 flag_descriptions::kPasswordGenerationBottomSheetName,
10260 flag_descriptions::kPasswordGenerationBottomSheetDescription, kOsAndroid,
10261 FEATURE_VALUE_TYPE(
10262 password_manager::features::kPasswordGenerationBottomSheet)},
10263#endif // BUILDFLAG(IS_ANDROID)
10264
Jared Saul5363f3962023-03-10 23:03:5110265 {"autofill-upstream-authenticate-preflight-call",
10266 flag_descriptions::kAutofillUpstreamAuthenticatePreflightCallName,
10267 flag_descriptions::kAutofillUpstreamAuthenticatePreflightCallDescription,
10268 kOsAll,
10269 FEATURE_VALUE_TYPE(
10270 autofill::features::kAutofillUpstreamAuthenticatePreflightCall)},
10271
Marc Treibe9f79ea72023-03-14 10:25:4210272 {"enable-preferences-account-storage",
10273 flag_descriptions::kEnablePreferencesAccountStorageName,
10274 flag_descriptions::kEnablePreferencesAccountStorageDescription, kOsAll,
10275 FEATURE_VALUE_TYPE(syncer::kEnablePreferencesAccountStorage)},
10276
James Leeed090a1b2023-03-16 22:51:5810277 {"enable-variations-google-group-filtering",
10278 flag_descriptions::kEnableVariationsGoogleGroupFilteringName,
10279 flag_descriptions::kEnableVariationsGoogleGroupFilteringDescription,
10280 kOsAll, FEATURE_VALUE_TYPE(kVariationsGoogleGroupFiltering)},
10281
Daniel Andersson9a81b33502023-03-20 19:15:3710282#if BUILDFLAG(IS_CHROMEOS_ASH)
10283 {"app-launch-automation", flag_descriptions::kAppLaunchAutomationName,
10284 flag_descriptions::kAppLaunchAutomationDescription, kOsCrOS,
10285 FEATURE_VALUE_TYPE(ash::features::kAppLaunchAutomation)},
10286#endif
10287
Jason Line4862b02023-03-21 04:38:1310288#if BUILDFLAG(IS_CHROMEOS_LACROS)
Jason Lin288a01a2023-04-03 01:50:4710289 {"experimental-web-app-profile-isolation",
10290 flag_descriptions::kExperimentalWebAppProfileIsolationName,
10291 flag_descriptions::kExperimentalWebAppProfileIsolationDescription,
10292 kOsLacros,
10293 FEATURE_VALUE_TYPE(
10294 chromeos::features::kExperimentalWebAppProfileIsolation)},
10295
Jason Line4862b02023-03-21 04:38:1310296 {"experimental-web-app-storage-partition-isolation",
10297 flag_descriptions::kExperimentalWebAppStoragePartitionIsolationName,
10298 flag_descriptions::kExperimentalWebAppStoragePartitionIsolationDescription,
10299 kOsLacros,
10300 FEATURE_VALUE_TYPE(
10301 chromeos::features::kExperimentalWebAppStoragePartitionIsolation)},
10302#endif // BUILDFLAG(IS_CHROMEOS_LACROS)
10303
Ben Beckerf60ef852023-03-22 23:08:2410304#if BUILDFLAG(IS_CHROMEOS_ASH)
10305 {"enable-desk-button", flag_descriptions::kDeskButtonName,
10306 flag_descriptions::kDeskButtonDescription, kOsCrOS,
10307 FEATURE_VALUE_TYPE(ash::features::kDeskButton)},
10308#endif
10309
Shuming Hao42af3d72023-03-30 20:06:1010310#if BUILDFLAG(IS_CHROMEOS_ASH)
10311 {"render-arc-notifications-by-chrome",
10312 flag_descriptions::kRenderArcNotificationsByChromeName,
10313 flag_descriptions::kRenderArcNotificationsByChromeDescription, kOsCrOS,
10314 FEATURE_VALUE_TYPE(ash::features::kRenderArcNotificationsByChrome)},
10315#endif
10316
Jochen Eisingerbd1033a2023-03-27 18:31:2310317#if !BUILDFLAG(IS_ANDROID) && BUILDFLAG(GOOGLE_CHROME_BRANDING)
10318 {"settings-enable-get-the-most-out-of-chrome",
10319 flag_descriptions::kSettingsEnableGetTheMostOutOfChromeName,
10320 flag_descriptions::kSettingsEnableGetTheMostOutOfChromeDescription,
10321 kOsDesktop, FEATURE_VALUE_TYPE(::features::kGetTheMostOutOfChrome)},
Jochen Eisinger6ef16de2023-03-23 20:44:1810322#endif
10323
Vinny Persky7442638c2023-03-24 01:02:5410324#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_ANDROID)
10325 {"autofill-enable-payments-mandatory-reauth",
10326 flag_descriptions::kAutofillEnablePaymentsMandatoryReauthName,
10327 flag_descriptions::kAutofillEnablePaymentsMandatoryReauthDescription,
10328 kOsMac | kOsWin | kOsAndroid,
10329 FEATURE_VALUE_TYPE(
10330 autofill::features::kAutofillEnablePaymentsMandatoryReauth)},
10331#endif // BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_ANDROID)
10332
Junhui He9896c7b2023-03-27 18:39:5310333 {"autofill-enable-email-otp-for-vcn-yellow-path",
10334 flag_descriptions::kAutofillEnableEmailOtpForVcnYellowPathName,
10335 flag_descriptions::kAutofillEnableEmailOtpForVcnYellowPathDescription,
10336 kOsAll,
10337 FEATURE_VALUE_TYPE(
10338 autofill::features::kAutofillEnableEmailOtpForVcnYellowPath)},
10339
Mark Schillacifcf19922023-03-30 20:20:0710340 {"enable-accessibility-unserialize-optimizations",
10341 flag_descriptions::kAccessibilityUnserializeOptimizationsName,
10342 flag_descriptions::kAccessibilityUnserializeOptimizationsDescription,
10343 kOsAll,
10344 FEATURE_VALUE_TYPE(features::kAccessibilityUnserializeOptimizations)},
10345
Tsuyoshi Horo2fbde5b2023-04-04 22:52:5510346 {"enable-compression-dictionary-transport",
10347 flag_descriptions::kCompressionDictionaryTransportName,
10348 flag_descriptions::kCompressionDictionaryTransportDescription, kOsAll,
Tsuyoshi Horob697e7b82023-07-06 08:33:0910349 FEATURE_VALUE_TYPE(network::features::kCompressionDictionaryTransport)},
Tsuyoshi Horo2fbde5b2023-04-04 22:52:5510350
10351 {"enable-compression-dictionary-transport-backend",
10352 flag_descriptions::kCompressionDictionaryTransportBackendName,
10353 flag_descriptions::kCompressionDictionaryTransportBackendDescription,
10354 kOsAll,
10355 FEATURE_VALUE_TYPE(
Tsuyoshi Horob697e7b82023-07-06 08:33:0910356 network::features::kCompressionDictionaryTransportBackend)},
Tsuyoshi Horo2fbde5b2023-04-04 22:52:5510357
Bryan Yuc6e84d522023-04-03 02:48:5910358#if BUILDFLAG(IS_CHROMEOS_ASH)
10359 {"arc-arc-on-demand", flag_descriptions::kArcArcOnDemandExperimentName,
10360 flag_descriptions::kArcArcOnDemandExperimentDescription, kOsCrOS,
10361 FEATURE_VALUE_TYPE(arc::kArcOnDemandFeature)},
10362#endif
10363
Ken Buchanan3e7f855d2023-04-12 01:03:2210364#if BUILDFLAG(IS_ANDROID)
10365 {"web-authentication-android-credential-management",
10366 flag_descriptions::kWebAuthnAndroidCredManName,
10367 flag_descriptions::kWebAuthnAndroidCredManDescription, kOsAndroid,
10368 FEATURE_VALUE_TYPE(device::kWebAuthnAndroidCredMan)},
Adem Derinelee646e212023-05-12 13:46:5610369
10370 {"passwords-in-android-credential-management",
10371 flag_descriptions::kPasswordsInCredManName,
10372 flag_descriptions::kPasswordsInCredManDescription, kOsAndroid,
10373 FEATURE_VALUE_TYPE(password_manager::features::kPasswordsInCredMan)},
Ken Buchanan3e7f855d2023-04-12 01:03:2210374#endif // BUILDFLAG(IS_ANDROID)
10375
Filipa Senracb661ca32023-04-19 16:03:1310376#if !BUILDFLAG(IS_ANDROID)
10377 {"permission-storage-access-api",
10378 flag_descriptions::kPermissionStorageAccessAPIName,
10379 flag_descriptions::kPermissionStorageAccessAPIDescription, kOsDesktop,
10380 FEATURE_VALUE_TYPE(permissions::features::kPermissionStorageAccessAPI)},
10381#endif // !BUILDFLAG(IS_ANDROID)
10382
Wayne Jackson Jrc70686e82023-04-24 14:12:1010383#if BUILDFLAG(IS_ANDROID)
10384 {"android-extended-keyboard-shortcuts",
10385 flag_descriptions::kAndroidExtendedKeyboardShortcutsName,
10386 flag_descriptions::kAndroidExtendedKeyboardShortcutsDescription,
10387 kOsAndroid,
10388 FEATURE_VALUE_TYPE(blink::features::kAndroidExtendedKeyboardShortcuts)},
Michael van Ouwerkerk99b42f42023-04-24 16:15:4110389 {"convert-trackpad-events-to-mouse",
10390 flag_descriptions::kConvertTrackpadEventsToMouseName,
10391 flag_descriptions::kConvertTrackpadEventsToMouseDescription, kOsAndroid,
10392 FEATURE_VALUE_TYPE(ui::kConvertTrackpadEventsToMouse)},
Finnur Thorarinsson118fc3f2023-06-05 10:54:0110393 {"deprecated-external-picker-function",
10394 flag_descriptions::kDeprecatedExternalPickerFunctionName,
10395 flag_descriptions::kDeprecatedExternalPickerFunctionDescription,
10396 kOsAndroid, FEATURE_VALUE_TYPE(ui::kDeprecatedExternalPickerFunction)},
Tarun Bansal41f3cf22023-04-25 16:16:2910397 {"enable-cct-text-fragment-lookup-api",
10398 flag_descriptions::kCCTTextFragmentLookupApiEnabledName,
10399 flag_descriptions::kCCTTextFragmentLookupApiEnabledDescription, kOsAndroid,
10400 FEATURE_VALUE_TYPE(chrome::android::kCCTTextFragmentLookupApiEnabled)},
10401
Wayne Jackson Jrc70686e82023-04-24 14:12:1010402#endif // BUILDFLAG(IS_ANDROID)
10403
Leonid Barazc904d472023-05-09 23:53:4410404#if BUILDFLAG(IS_CHROMEOS_ASH)
10405 {"enable-missive-storage-config", flag_descriptions::kMissiveStorageName,
10406 flag_descriptions::kMissiveStorageDescription, kOsCrOS,
10407 PLATFORM_FEATURE_WITH_PARAMS_VALUE_TYPE(
10408 "CrOSLateBootMissiveStorage",
10409 kCrOSLateBootMissiveStorageDefaultVariations,
10410 "CrOSLateBootMissiveStorage")},
10411#endif // BUILDFLAG(IS_CHROMEOS_ASH)
10412
George Benz05086302023-05-02 23:39:1010413#if !BUILDFLAG(IS_ANDROID)
10414 {"cast-mirroring-target-playout-delay",
10415 flag_descriptions::kCastMirroringTargetPlayoutDelayName,
10416 flag_descriptions::kCastMirroringTargetPlayoutDelayDescription, kOsDesktop,
10417 MULTI_VALUE_TYPE(kCastMirroringTargetPlayoutDelayChoices)},
10418#endif // !BUILDFLAG(IS_ANDROID)
10419
Elena Scobici74eb9cf2023-05-30 19:55:3210420 {"enable-policy-test-page", flag_descriptions::kEnablePolicyTestPageName,
10421 flag_descriptions::kEnablePolicyTestPageDescription, kOsAll,
10422 FEATURE_VALUE_TYPE(policy::features::kEnablePolicyTestPage)},
10423
Jun Ishiguro7af640042023-06-01 05:04:0910424#if BUILDFLAG(IS_CHROMEOS_ASH)
Jun Ishiguro508cc98d2023-06-09 00:12:3510425 {"allow-devtools-in-system-ui",
10426 flag_descriptions::kAllowDevtoolsInSystemUIName,
10427 flag_descriptions::kAllowDevtoolsInSystemUIDescription, kOsCrOS,
10428 FEATURE_VALUE_TYPE(ash::features::kAllowDevtoolsInSystemUI)},
Maggie Caic0666ef2023-06-01 08:46:3710429 {"cros-web-app-shortcut-ui-update",
10430 flag_descriptions::kCrosWebAppShortcutUiUpdateName,
10431 flag_descriptions::kCrosWebAppShortcutUiUpdateDescription, kOsCrOS,
10432 FEATURE_VALUE_TYPE(features::kCrosWebAppShortcutUiUpdate)},
Frank Liberato98173be02023-06-06 17:11:0910433 {"enable-audio-focus-enforcement",
10434 flag_descriptions::kEnableAudioFocusEnforcementName,
10435 flag_descriptions::kEnableAudioFocusEnforcementDescription, kOsCrOS,
10436 FEATURE_VALUE_TYPE(media_session::features::kAudioFocusEnforcement)},
10437#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Jun Ishiguro7af640042023-06-01 05:04:0910438
Vikas Sonif7d55a32023-06-05 18:52:4010439 {"use-gpu-scheduler-dfs", flag_descriptions::kUseGpuSchedulerDfsName,
10440 flag_descriptions::kUseGpuSchedulerDfsDescription, kOsAll,
10441 FEATURE_VALUE_TYPE(features::kUseGpuSchedulerDfs)},
10442
Charles William Dickc35c0692023-06-07 09:15:0210443#if BUILDFLAG(IS_CHROMEOS_ASH)
10444 {"cros-battery-saver", flag_descriptions::kCrosBatterySaverName,
10445 flag_descriptions::kCrosBatterySaverDescription, kOsCrOS,
10446 FEATURE_VALUE_TYPE(ash::features::kBatterySaver)},
10447#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Calder Kitagawa04cc6942023-06-14 18:38:4610448 //
10449#if BUILDFLAG(IS_ANDROID)
10450 {"thumbnail-placeholder", flag_descriptions::kThumbnailPlaceholderName,
10451 flag_descriptions::kThumbnailPlaceholderDescription, kOsAndroid,
10452 FEATURE_VALUE_TYPE(chrome::android::kThumbnailPlaceholder)},
10453#endif // BUILDFLAG(IS_ANDROID)
Charles William Dickc35c0692023-06-07 09:15:0210454
Kenichi Ishibashied0f1d22023-06-09 00:27:3110455 {"enable-process-per-site-up-to-main-frame-threshold",
10456 flag_descriptions::kEnableProcessPerSiteUpToMainFrameThresholdName,
10457 flag_descriptions::kEnableProcessPerSiteUpToMainFrameThresholdDescription,
10458 kOsDesktop | kOsAndroid,
10459 FEATURE_VALUE_TYPE(features::kProcessPerSiteUpToMainFrameThreshold)},
10460
Bryant Chandlerdcd994e2023-06-13 18:23:3110461#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || \
10462 BUILDFLAG(IS_FUCHSIA)
10463 {"camera-mic-preview", flag_descriptions::kCameraMicPreviewName,
10464 flag_descriptions::kCameraMicPreviewDescription,
10465 static_cast<unsigned short>(kOsMac | kOsWin | kOsLinux | kOsFuchsia),
10466 FEATURE_VALUE_TYPE(features::kCameraMicPreview)},
10467#endif
10468
Charles William Dick778e6c22023-06-13 07:57:4710469#if BUILDFLAG(IS_CHROMEOS_ASH)
10470 {"cros-battery-saver-always-on",
10471 flag_descriptions::kCrosBatterySaverAlwaysOnName,
10472 flag_descriptions::kCrosBatterySaverAlwaysOnDescription, kOsCrOS,
10473 FEATURE_VALUE_TYPE(ash::features::kBatterySaverAlwaysOn)},
10474#endif // BUILDFLAG(IS_CHROMEOS_ASH)
10475
Rakina Zata Amnibd37a572023-06-14 09:58:1610476 {"render-document", flag_descriptions::kRenderDocumentName,
10477 flag_descriptions::kRenderDocumentDescription, kOsAll,
10478 FEATURE_WITH_PARAMS_VALUE_TYPE(features::kRenderDocument,
10479 kRenderDocumentVariations,
10480 "RenderDocument")},
10481
Sharon Yangf68d8c32023-06-27 17:27:5410482 {"site-instance-groups-for-data-urls",
10483 flag_descriptions::kSiteInstanceGroupsForDataUrlsName,
10484 flag_descriptions::kSiteInstanceGroupsForDataUrlsDescription, kOsAll,
10485 FEATURE_VALUE_TYPE(features::kSiteInstanceGroupsForDataUrls)},
10486
Anunoy Ghosh24ebac02023-06-14 19:32:1910487#if BUILDFLAG(ENABLE_EXTENSIONS)
10488 {"cws-info-fast-check", flag_descriptions::kCWSInfoFastCheckName,
10489 flag_descriptions::kCWSInfoFastCheckDescription, kOsDesktop,
10490 FEATURE_VALUE_TYPE(extensions::kCWSInfoFastCheck)},
10491
10492 {"safety-check-extensions", flag_descriptions::kSafetyCheckExtensionsName,
10493 flag_descriptions::kSafetyCheckExtensionsDescription, kOsDesktop,
10494 FEATURE_VALUE_TYPE(features::kSafetyCheckExtensions)},
10495#endif // BUILDFLAG(ENABLE_EXTENSIONS)
10496
Ella Ge95775d72023-06-14 21:27:1710497#if BUILDFLAG(IS_ANDROID)
10498 {"webapk-install-failure-notification",
10499 flag_descriptions::kWebApkInstallFailureNotificationName,
10500 flag_descriptions::kWebApkInstallFailureNotificationDescription,
10501 kOsAndroid,
10502 FEATURE_VALUE_TYPE(webapps::features::kWebApkInstallFailureNotification)},
10503 {"webapk-install-failure-retry",
10504 flag_descriptions::kWebApkInstallFailureRetryName,
10505 flag_descriptions::kWebApkInstallFailureRetryDescription, kOsAndroid,
10506 FEATURE_VALUE_TYPE(webapps::features::kWebApkInstallFailureRetry)},
10507#endif // BUILDFLAG(IS_ANDROID)
10508
Vipul Vinod Kouldbbe2512023-06-15 06:20:1810509 {"autofill-enable-cvc-storage-and-filling",
10510 flag_descriptions::kAutofillEnableCvcStorageAndFillingName,
10511 flag_descriptions::kAutofillEnableCvcStorageAndFillingDescription, kOsAll,
10512 FEATURE_VALUE_TYPE(
10513 autofill::features::kAutofillEnableCvcStorageAndFilling)},
10514
Oleg Davydov5f3716c2023-06-15 15:43:4710515#if BUILDFLAG(IS_CHROMEOS_ASH)
10516 {"drive-fs-show-cse-files", flag_descriptions::kDriveFsShowCSEFilesName,
10517 flag_descriptions::kDriveFsShowCSEFilesDescription, kOsCrOS,
10518 FEATURE_VALUE_TYPE(ash::features::kDriveFsShowCSEFiles)},
10519#endif // BUILDFLAG(IS_CHROMEOS_ASH)
10520
Pu Shi12b1d042023-06-15 22:18:4010521#if BUILDFLAG(IS_CHROMEOS_ASH)
10522 {"system-nudge-v2", flag_descriptions::kSystemNudgeV2Name,
10523 flag_descriptions::kSystemNudgeV2Description, kOsCrOS,
10524 FEATURE_VALUE_TYPE(ash::features::kSystemNudgeV2)},
10525#endif // BUILDFLAG(IS_CHROMEOS_ASH)
10526
Kevin Radtkecb7f1d482023-06-20 21:10:4810527#if BUILDFLAG(IS_CHROMEOS_ASH)
10528 {"speak-on-mute-opt-in-nudge-prefs-reset",
10529 flag_descriptions::kSpeakOnMuteOptInNudgePrefsResetName,
10530 flag_descriptions::kSpeakOnMuteOptInNudgePrefsResetDescription, kOsCrOS,
10531 FEATURE_VALUE_TYPE(ash::features::kSpeakOnMuteOptInNudgePrefsReset)},
10532#endif // BUILDFLAG(IS_CHROMEOS_ASH)
10533
Liam Brady018446b82023-06-23 18:03:2910534 {"privacy-sandbox-enrollment-overrides",
10535 flag_descriptions::kPrivacySandboxEnrollmentOverridesName,
10536 flag_descriptions::kPrivacySandboxEnrollmentOverridesDescription, kOsAll,
10537 ORIGIN_LIST_VALUE_TYPE(privacy_sandbox::kPrivacySandboxEnrollmentOverrides,
10538 "")},
Viktoriia Kovalovad2329092023-07-04 12:55:2210539#if !BUILDFLAG(IS_ANDROID)
10540 {"enable-smart-card-web-api", flag_descriptions::kSmartCardWebApiName,
10541 flag_descriptions::kSmartCardWebApiDescription, kOsDesktop,
10542 FEATURE_VALUE_TYPE(blink::features::kSmartCard)},
10543#endif
Liam Brady018446b82023-06-23 18:03:2910544
Erin Parkbbb5decc2022-07-21 21:37:1310545 // NOTE: Adding a new flag requires adding a corresponding entry to enum
10546 // "LoginCustomFlags" in tools/metrics/histograms/enums.xml. See "Flag
10547 // Histograms" in tools/metrics/histograms/README.md (run the
10548 // AboutFlagsHistogramTest unit test to verify this process).
[email protected]a0e4b072011-08-17 01:47:0710549};
[email protected]ad2a3ded2010-08-27 13:19:0510550
Elly Fong-Jones3cd75282019-11-12 20:26:5010551class FlagsStateSingleton : public flags_ui::FlagsState::Delegate {
[email protected]e2ddbc92010-10-15 20:02:0710552 public:
sdefresne0e566342015-11-24 08:55:4610553 FlagsStateSingleton()
Elly Fong-Jones3cd75282019-11-12 20:26:5010554 : flags_state_(
10555 std::make_unique<flags_ui::FlagsState>(kFeatureEntries, this)) {}
David Bienvenu481ef0b2020-09-12 00:04:1510556 FlagsStateSingleton(const FlagsStateSingleton&) = delete;
10557 FlagsStateSingleton& operator=(const FlagsStateSingleton&) = delete;
Elly Fong-Jones3cd75282019-11-12 20:26:5010558 ~FlagsStateSingleton() override = default;
Elly Fong-Jonesc3e9aea2019-10-24 19:44:1910559
sdefresne0e566342015-11-24 08:55:4610560 static FlagsStateSingleton* GetInstance() {
10561 return base::Singleton<FlagsStateSingleton>::get();
10562 }
asvitkine91931d52015-10-16 17:55:4710563
sdefresne0e566342015-11-24 08:55:4610564 static flags_ui::FlagsState* GetFlagsState() {
Elly Fong-Jonesabd2f8012019-10-21 19:58:0010565 return GetInstance()->flags_state_.get();
10566 }
10567
10568 void RebuildState(const std::vector<flags_ui::FeatureEntry>& entries) {
Elly Fong-Jones3cd75282019-11-12 20:26:5010569 flags_state_ = std::make_unique<flags_ui::FlagsState>(entries, this);
[email protected]e2ddbc92010-10-15 20:02:0710570 }
10571
David Bienvenu128c1b1c2021-05-07 18:06:4710572 void RestoreDefaultState() {
10573 flags_state_ =
10574 std::make_unique<flags_ui::FlagsState>(kFeatureEntries, this);
10575 }
10576
[email protected]e2ddbc92010-10-15 20:02:0710577 private:
Elly Fong-Jones3cd75282019-11-12 20:26:5010578 // flags_ui::FlagsState::Delegate:
Elly Fong-Jonesf8a4aa42020-08-04 15:53:3010579 bool ShouldExcludeFlag(const flags_ui::FlagsStorage* storage,
10580 const FeatureEntry& entry) override {
10581 return flags::IsFlagExpired(storage, entry.internal_name);
Elly Fong-Jones3cd75282019-11-12 20:26:5010582 }
10583
Elly Fong-Jonesabd2f8012019-10-21 19:58:0010584 std::unique_ptr<flags_ui::FlagsState> flags_state_;
[email protected]e2ddbc92010-10-15 20:02:0710585};
10586
Yann Dago78028712019-09-04 15:23:5410587bool ShouldSkipNonDeprecatedFeatureEntry(const FeatureEntry& entry) {
10588 return ~entry.supported_platforms & kDeprecated;
Yann Dagobaa08aa2019-07-29 20:52:3710589}
10590
Elaine Chienc5a80ae2021-03-02 23:07:0610591} // namespace
10592
Erik Chen92f2f0d2023-03-13 00:09:4810593#if BUILDFLAG(IS_CHROMEOS_ASH)
10594// This method may be invoked both synchronously or asynchronously. Based on
10595// whether the current user is the owner of the device, generates the
10596// appropriate flag storage.
10597void GetStorageAsync(Profile* profile,
10598 GetStorageCallback callback,
10599 bool current_user_is_owner) {
10600 // On ChromeOS the owner can set system wide flags and other users can only
10601 // set flags for their own session.
10602 if (current_user_is_owner) {
10603 ash::OwnerSettingsServiceAsh* service =
10604 ash::OwnerSettingsServiceAshFactory::GetForBrowserContext(profile);
10605 std::move(callback).Run(
10606 std::make_unique<ash::about_flags::OwnerFlagsStorage>(
10607 profile->GetPrefs(), service),
10608 flags_ui::kOwnerAccessToFlags);
10609 } else {
10610 std::move(callback).Run(std::make_unique<flags_ui::PrefServiceFlagsStorage>(
10611 profile->GetPrefs()),
10612 flags_ui::kGeneralAccessFlagsOnly);
10613 }
10614}
10615#endif
10616
10617// ash-chrome uses different storage flag storage logic from other desktop
10618// platforms.
10619void GetStorage(Profile* profile, GetStorageCallback callback) {
10620#if BUILDFLAG(IS_CHROMEOS_ASH)
10621 // Bypass possible incognito profile.
10622 // On ChromeOS the owner can set system wide flags and other users can only
10623 // set flags for their own session.
10624 Profile* original_profile = profile->GetOriginalProfile();
10625 if (base::SysInfo::IsRunningOnChromeOS() &&
10626 ash::OwnerSettingsServiceAshFactory::GetForBrowserContext(
10627 original_profile)) {
10628 ash::OwnerSettingsServiceAsh* service =
10629 ash::OwnerSettingsServiceAshFactory::GetForBrowserContext(
10630 original_profile);
10631 service->IsOwnerAsync(base::BindOnce(&GetStorageAsync, original_profile,
10632 std::move(callback)));
10633 } else {
10634 GetStorageAsync(original_profile, std::move(callback),
10635 /*current_user_is_owner=*/false);
10636 }
10637#else
10638 std::move(callback).Run(std::make_unique<flags_ui::PrefServiceFlagsStorage>(
10639 g_browser_process->local_state()),
10640 flags_ui::kOwnerAccessToFlags);
10641#endif
10642}
10643
Elaine Chienc5a80ae2021-03-02 23:07:0610644bool ShouldSkipConditionalFeatureEntry(const flags_ui::FlagsStorage* storage,
10645 const FeatureEntry& entry) {
sdefresne9fb67692015-08-03 18:48:2210646 version_info::Channel channel = chrome::GetChannel();
Yuta Hijikata235fc62b2020-12-08 03:48:3210647#if BUILDFLAG(IS_CHROMEOS_ASH)
Yilkal2bc65312023-02-23 21:27:1210648 // enable-projector-server-side-speech-recognition is only available if
10649 // the InternalServerSideSpeechRecognitionControl flag is enabled as well.
10650 if (!strcmp(kProjectorServerSideSpeechRecognition, entry.internal_name)) {
10651 return !ash::features::
10652 IsInternalServerSideSpeechRecognitionControlEnabled();
10653 }
10654
bruthigeafb0c02017-06-09 13:11:5310655 // enable-ui-devtools is only available on for non Stable channels.
Mike Wasserman8f8b0852018-12-03 22:08:1010656 if (!strcmp(ui_devtools::switches::kEnableUiDevTools, entry.internal_name) &&
bruthigeafb0c02017-06-09 13:11:5310657 channel == version_info::Channel::STABLE) {
10658 return true;
10659 }
James Cookc813eb52020-05-08 18:03:5310660
Hidehiko Abeded6e5b2022-01-24 17:00:0410661 // Skip lacros-availability-policy always. This is a pseudo entry
10662 // and used to carry the policy value crossing the Chrome's lifetime.
10663 if (!strcmp(crosapi::browser_util::kLacrosAvailabilityPolicyInternalName,
10664 entry.internal_name)) {
10665 return true;
10666 }
10667
Victor-Gabriel Savu6b0d97c2022-12-09 12:22:4310668 // Skip lacros-backward-data-migration-policy always. This is a pseudo entry
10669 // and used to carry the policy value crossing the Chrome's lifetime.
10670 if (!strcmp(crosapi::browser_util::
10671 kLacrosDataBackwardMigrationModePolicyInternalName,
10672 entry.internal_name)) {
10673 return true;
10674 }
Artem Sumaneev1f3555a2023-01-30 12:48:2710675 // Skip lacros-selection if it is controlled by LacrosSelection policy.
10676 if (!strcmp(kLacrosSelectionInternalName, entry.internal_name)) {
10677 return crosapi::browser_util::GetCachedLacrosSelectionPolicy() !=
10678 crosapi::browser_util::LacrosSelectionPolicy::kUserChoice;
10679 }
Victor-Gabriel Savu6b0d97c2022-12-09 12:22:4310680
Peter Boström6324b792022-09-28 23:15:5610681 if (!strcmp(kPreferDcheckInternalName, entry.internal_name)) {
10682 return !crosapi::browser_util::IsLacrosAllowedToBeEnabled();
10683 }
10684
Artem Sumaneevc007b312021-04-08 12:50:0410685 if (!strcmp(kLacrosSupportInternalName, entry.internal_name)) {
Hidehiko Abe34d367f2022-02-22 19:11:5210686 return !crosapi::browser_util::IsLacrosSupportFlagAllowed();
Artem Sumaneevc007b312021-04-08 12:50:0410687 }
10688
10689 if (!strcmp(kLacrosStabilityInternalName, entry.internal_name)) {
Hidehiko Abe34d367f2022-02-22 19:11:5210690 return !crosapi::browser_util::IsLacrosAllowedToBeEnabled();
James Cookc813eb52020-05-08 18:03:5310691 }
David Black12709a382020-06-30 04:03:0010692
Hidehiko Abea7217c92022-02-01 05:54:5710693 if (!strcmp(kLacrosOnlyInternalName, entry.internal_name)) {
Hidehiko Abe34d367f2022-02-22 19:11:5210694 return !crosapi::browser_util::IsLacrosOnlyFlagAllowed();
Hidehiko Abea7217c92022-02-01 05:54:5710695 }
10696
Hidehiko Abe9f190d12021-03-18 12:55:2010697 if (!strcmp(kLacrosPrimaryInternalName, entry.internal_name)) {
Hidehiko Abe34d367f2022-02-22 19:11:5210698 return !crosapi::browser_util::IsLacrosPrimaryFlagAllowed();
Artem Sumaneevc007b312021-04-08 12:50:0410699 }
10700
Maggie Cai6dd6b552021-04-27 08:40:3210701 if (!strcmp(kWebAppsCrosapiInternalName, entry.internal_name)) {
Hidehiko Abe34d367f2022-02-22 19:11:5210702 return !crosapi::browser_util::IsLacrosAllowedToBeEnabled();
Hidehiko Abe9f190d12021-03-18 12:55:2010703 }
10704
Youkichi Hosoi47685462022-10-06 01:51:3910705 if (!strcmp(kArcEnableVirtioBlkForDataInternalName, entry.internal_name)) {
10706 return !arc::IsArcVmEnabled();
10707 }
10708
danielng1078c6372021-06-28 06:31:3610709 // Only show Borealis flags on enabled devices.
danielngdd3ef942021-10-28 06:42:4810710 if (!strcmp(kBorealisBigGlInternalName, entry.internal_name)) {
10711 return !base::FeatureList::IsEnabled(features::kBorealis);
10712 }
10713
Dominik Behr03b5c24f2023-04-18 21:20:5210714 if (!strcmp(kBorealisDGPUInternalName, entry.internal_name)) {
10715 return !base::FeatureList::IsEnabled(features::kBorealis);
10716 }
10717
danielng1078c6372021-06-28 06:31:3610718 if (!strcmp(kBorealisDiskManagementInternalName, entry.internal_name)) {
10719 return !base::FeatureList::IsEnabled(features::kBorealis);
10720 }
10721
Nicholas Hollingum449d8252021-11-29 00:18:2910722 if (!strcmp(kBorealisForceBetaClientInternalName, entry.internal_name)) {
10723 return !base::FeatureList::IsEnabled(features::kBorealis);
10724 }
10725
Nicholas Hollingume8672092022-08-25 04:23:1610726 if (!strcmp(kBorealisForceDoubleScaleInternalName, entry.internal_name)) {
10727 return !base::FeatureList::IsEnabled(features::kBorealis);
10728 }
10729
Nicholas Hollingum449d8252021-11-29 00:18:2910730 if (!strcmp(kBorealisLinuxModeInternalName, entry.internal_name)) {
10731 return !base::FeatureList::IsEnabled(features::kBorealis);
10732 }
10733
Nicholas Hollingum97500cc12022-03-03 22:44:4310734 if (!strcmp(kBorealisPermittedInternalName, entry.internal_name)) {
10735 return !base::FeatureList::IsEnabled(features::kBorealis);
10736 }
10737
danielng573ad3742022-07-06 05:26:2410738 if (!strcmp(kBorealisStorageBallooningInternalName, entry.internal_name)) {
10739 return !base::FeatureList::IsEnabled(features::kBorealis);
10740 }
10741
Jeffrey Young7d279c42022-06-24 19:29:0510742 // Only show wallpaper fast refresh flag if channel is one of
10743 // Dev/Canary/Unknown.
Colin Kincaid292cfc42022-05-03 19:17:0710744 if (!strcmp(kWallpaperFastRefreshInternalName, entry.internal_name)) {
10745 return (channel != version_info::Channel::DEV &&
10746 channel != version_info::Channel::CANARY &&
Jeffrey Young7d279c42022-06-24 19:29:0510747 channel != version_info::Channel::UNKNOWN);
David Black946176f2022-02-28 21:07:3910748 }
Colin Kincaid0dcc3b022022-05-26 15:51:5710749
Colin Kincaidfdf46612023-03-23 01:23:2310750 // Only show clipboard history longpress flag if channel is one of
10751 // Beta/Dev/Canary/Unknown.
10752 if (!strcmp(kClipboardHistoryLongpressInternalName, entry.internal_name)) {
10753 return channel != version_info::Channel::BETA &&
10754 channel != version_info::Channel::DEV &&
10755 channel != version_info::Channel::CANARY &&
10756 channel != version_info::Channel::UNKNOWN;
10757 }
10758
James Cook7374dd582022-09-19 22:50:2410759 // Skip glanceables flag on stable channel.
James Cook49358cc2022-08-30 20:30:2610760 if (!strcmp(kWelcomeScreenInternalName, entry.internal_name)) {
James Cook7374dd582022-09-19 22:50:2410761 return channel == version_info::Channel::STABLE;
James Cook49358cc2022-08-30 20:30:2610762 }
Tao Wu4b5d8162022-11-10 19:58:0710763
10764 // Only show LibAssistant V2 migration flag if channel is one of
10765 // Dev/Canary/Unknown.
10766 if (!strcmp(kLibAssistantV2MigrationInternalName, entry.internal_name)) {
10767 return (channel != version_info::Channel::DEV &&
10768 channel != version_info::Channel::CANARY &&
10769 channel != version_info::Channel::UNKNOWN);
10770 }
Sarvesh02d88ff2023-01-18 23:10:4110771
Sarvesh02d88ff2023-01-18 23:10:4110772 if (!strcmp(kBluetoothUseFlossInternalName, entry.internal_name)) {
Jesse Melhuish433dff22023-06-06 21:25:2610773 // TODO(b/283331754): until Floss is able to properly support Braille
10774 // devices we will disable it. To ensure we haven't missed any A11Y related
10775 // issues (and because IsBrailleDisplayConnected isn't necessarily accurate
10776 // at this point) we disable if any have been enabled.
10777 if (ash::AccessibilityManager::Get()->IsLargeCursorEnabled() ||
10778 ash::AccessibilityManager::Get()->IsLiveCaptionEnabled() ||
10779 ash::AccessibilityManager::Get()->IsStickyKeysEnabled() ||
10780 ash::AccessibilityManager::Get()->IsSpokenFeedbackEnabled() ||
10781 ash::AccessibilityManager::Get()->IsHighContrastEnabled() ||
10782 ash::AccessibilityManager::Get()->IsAutoclickEnabled() ||
10783 ash::AccessibilityManager::Get()->IsVirtualKeyboardEnabled() ||
10784 ash::AccessibilityManager::Get()->IsMonoAudioEnabled() ||
10785 ash::AccessibilityManager::Get()->IsCaretHighlightEnabled() ||
10786 ash::AccessibilityManager::Get()->IsCursorHighlightEnabled() ||
10787 ash::AccessibilityManager::Get()->IsDictationEnabled() ||
10788 ash::AccessibilityManager::Get()->IsFocusHighlightEnabled() ||
10789 ash::AccessibilityManager::Get()->IsSelectToSpeakEnabled() ||
10790 ash::AccessibilityManager::Get()->IsSwitchAccessEnabled() ||
10791 ash::AccessibilityManager::Get()->IsBrailleDisplayConnected()) {
10792 return true;
10793 }
10794
10795 // Disable and prevent users from enabling Floss on boards that were
10796 // explicitly built without it (b/228902194 for more info).
Sarvesh02d88ff2023-01-18 23:10:4110797 return base::FeatureList::GetInstance()->IsFeatureOverriddenFromCommandLine(
Sarvesh7bc6faa2023-02-23 21:01:5710798 floss::features::kFlossIsAvailable.name,
Sarvesh02d88ff2023-01-18 23:10:4110799 base::FeatureList::OVERRIDE_DISABLE_FEATURE);
10800 }
Jason Thaiaa62a032023-04-05 21:07:4210801
10802 // Only show Time of Day wallpaper flag if channel is one of
10803 // Dev/Canary/Unknown.
10804 if (!strcmp(kTimeOfDayWallpaperInternalName, entry.internal_name)) {
10805 return (channel != version_info::Channel::DEV &&
10806 channel != version_info::Channel::CANARY &&
10807 channel != version_info::Channel::UNKNOWN);
10808 }
10809
10810 // Only show Time of Day Screen Saver flag if channel is one of
10811 // Dev/Canary/Unknown.
10812 if (!strcmp(kTimeOfDayScreenSaverInternalName, entry.internal_name)) {
10813 return (channel != version_info::Channel::DEV &&
10814 channel != version_info::Channel::CANARY &&
10815 channel != version_info::Channel::UNKNOWN);
10816 }
Yuta Hijikata235fc62b2020-12-08 03:48:3210817#endif // BUILDFLAG(IS_CHROMEOS_ASH)
Ken Rockot74946c32017-04-25 22:04:5910818
Benjamin Zielinski04f8c802023-04-13 23:26:5510819#if !BUILDFLAG(IS_ANDROID)
10820 // Only show the Access Code Cast Freeze UI flag if the Access Code Cast
10821 // policy is enabled.
10822 if (!strcmp("access-code-cast-freeze-ui", entry.internal_name)) {
10823 return !media_router::IsAccessCodeCastEnabled();
10824 }
10825#endif // !BUILDFALG(IS_ANDROID)
10826
Kai Ninomiya6a68f6262020-04-13 20:57:3610827 // enable-unsafe-webgpu is only available on Dev/Canary channels.
10828 if (!strcmp("enable-unsafe-webgpu", entry.internal_name) &&
10829 channel != version_info::Channel::DEV &&
10830 channel != version_info::Channel::CANARY &&
10831 channel != version_info::Channel::UNKNOWN) {
10832 return true;
10833 }
10834
Rouslan Solomakhin8c770f582023-01-03 22:23:5110835 if (flags::IsFlagExpired(storage, entry.internal_name)) {
Elly Fong-Jones99d8cdad2019-08-27 15:48:4510836 return true;
Rouslan Solomakhin8c770f582023-01-03 22:23:5110837 }
Elly Fong-Jones99d8cdad2019-08-27 15:48:4510838
[email protected]12271632013-11-26 03:06:3910839 return false;
10840}
10841
droger888be0b2015-10-01 14:28:5210842void ConvertFlagsToSwitches(flags_ui::FlagsStorage* flags_storage,
avi3ef9ec9e2014-12-22 22:50:1710843 base::CommandLine* command_line,
sdefresne0e566342015-11-24 08:55:4610844 flags_ui::SentinelsMode sentinels) {
Rouslan Solomakhin8c770f582023-01-03 22:23:5110845 if (command_line->HasSwitch(switches::kNoExperiments)) {
sdefresne0e566342015-11-24 08:55:4610846 return;
Rouslan Solomakhin8c770f582023-01-03 22:23:5110847 }
sdefresne0e566342015-11-24 08:55:4610848
10849 FlagsStateSingleton::GetFlagsState()->ConvertFlagsToSwitches(
10850 flags_storage, command_line, sentinels, switches::kEnableFeatures,
10851 switches::kDisableFeatures);
[email protected]ad2a3ded2010-08-27 13:19:0510852}
10853
jkrcalbf073372016-07-29 07:21:3110854std::vector<std::string> RegisterAllFeatureVariationParameters(
jkrcald1d20082016-07-14 15:04:2410855 flags_ui::FlagsStorage* flags_storage,
10856 base::FeatureList* feature_list) {
jkrcalbf073372016-07-29 07:21:3110857 return FlagsStateSingleton::GetFlagsState()
10858 ->RegisterAllFeatureVariationParameters(flags_storage, feature_list);
jkrcal1383d1d2016-06-17 12:40:5610859}
10860
asvitkine91931d52015-10-16 17:55:4710861void GetFlagFeatureEntries(flags_ui::FlagsStorage* flags_storage,
sdefresne0e566342015-11-24 08:55:4610862 flags_ui::FlagAccess access,
Matt Menke4d777572022-06-15 15:55:5010863 base::Value::List& supported_entries,
10864 base::Value::List& unsupported_entries) {
sdefresne0e566342015-11-24 08:55:4610865 FlagsStateSingleton::GetFlagsState()->GetFlagFeatureEntries(
10866 flags_storage, access, supported_entries, unsupported_entries,
Elaine Chienc5a80ae2021-03-02 23:07:0610867 base::BindRepeating(&ShouldSkipConditionalFeatureEntry,
Elly Fong-Jonesf8a4aa42020-08-04 15:53:3010868 // Unretained: this callback doesn't outlive this
10869 // stack frame.
10870 base::Unretained(flags_storage)));
asvitkine91931d52015-10-16 17:55:4710871}
10872
Yann Dago78028712019-09-04 15:23:5410873void GetFlagFeatureEntriesForDeprecatedPage(
10874 flags_ui::FlagsStorage* flags_storage,
10875 flags_ui::FlagAccess access,
Matt Menke4d777572022-06-15 15:55:5010876 base::Value::List& supported_entries,
10877 base::Value::List& unsupported_entries) {
Yann Dagobaa08aa2019-07-29 20:52:3710878 FlagsStateSingleton::GetFlagsState()->GetFlagFeatureEntries(
10879 flags_storage, access, supported_entries, unsupported_entries,
Hiroki Nakagawa398466e2020-07-06 06:59:0310880 base::BindRepeating(&ShouldSkipNonDeprecatedFeatureEntry));
Yann Dagobaa08aa2019-07-29 20:52:3710881}
10882
Elaine Chien29fce992020-12-01 17:44:3410883flags_ui::FlagsState* GetCurrentFlagsState() {
10884 return FlagsStateSingleton::GetFlagsState();
10885}
10886
[email protected]ad2a3ded2010-08-27 13:19:0510887bool IsRestartNeededToCommitChanges() {
sdefresne0e566342015-11-24 08:55:4610888 return FlagsStateSingleton::GetFlagsState()->IsRestartNeededToCommitChanges();
[email protected]ad2a3ded2010-08-27 13:19:0510889}
10890
asvitkinee9ed35e2015-10-14 22:33:5910891void SetFeatureEntryEnabled(flags_ui::FlagsStorage* flags_storage,
asvitkine03007d02015-10-21 22:50:0610892 const std::string& internal_name,
10893 bool enable) {
sdefresne0e566342015-11-24 08:55:4610894 FlagsStateSingleton::GetFlagsState()->SetFeatureEntryEnabled(
10895 flags_storage, internal_name, enable);
[email protected]e2ddbc92010-10-15 20:02:0710896}
10897
Mustafa Emre Acerb3aa36a82018-05-22 21:44:0510898void SetOriginListFlag(const std::string& internal_name,
10899 const std::string& value,
10900 flags_ui::FlagsStorage* flags_storage) {
10901 FlagsStateSingleton::GetFlagsState()->SetOriginListFlag(internal_name, value,
10902 flags_storage);
10903}
10904
Jeremy Roman863386d2017-10-31 19:25:3810905void RemoveFlagsSwitches(base::CommandLine::SwitchMap* switch_list) {
sdefresne0e566342015-11-24 08:55:4610906 FlagsStateSingleton::GetFlagsState()->RemoveFlagsSwitches(switch_list);
[email protected]e2ddbc92010-10-15 20:02:0710907}
10908
droger888be0b2015-10-01 14:28:5210909void ResetAllFlags(flags_ui::FlagsStorage* flags_storage) {
sdefresne0e566342015-11-24 08:55:4610910 FlagsStateSingleton::GetFlagsState()->ResetAllFlags(flags_storage);
[email protected]a314ee5a2010-10-26 21:23:2810911}
10912
Xiaohan Wang064b68cd2022-01-19 19:12:2810913#if BUILDFLAG(IS_CHROMEOS)
Stefan Kuhne83523c22021-10-20 17:30:0310914void CrosUrlFlagsRedirect() {
10915#if BUILDFLAG(IS_CHROMEOS_LACROS)
10916 lacros_url_handling::NavigateInAsh(GURL(chrome::kChromeUIFlagsURL));
10917#else
10918 // Note: This will only be called by the UI when Lacros is available.
10919 DCHECK(crosapi::BrowserManager::Get());
Roger Tinkoff13c3aba12022-06-01 18:38:5110920 crosapi::BrowserManager::Get()->SwitchToTab(
10921 GURL(chrome::kChromeUIFlagsURL),
10922 /*path_behavior=*/NavigateParams::RESPECT);
Stefan Kuhne83523c22021-10-20 17:30:0310923#endif
10924}
10925#endif
10926
Mattias Nissler380cf4f2021-03-22 15:50:4610927void RecordUMAStatistics(flags_ui::FlagsStorage* flags_storage,
10928 const std::string& histogram_name) {
Alexei Svitkine103faf82018-11-14 16:43:1510929 std::set<std::string> switches;
10930 std::set<std::string> features;
Miriam Zimmermanef405f66e2022-06-03 17:22:1610931 std::set<std::string> variation_ids;
Alexei Svitkine103faf82018-11-14 16:43:1510932 FlagsStateSingleton::GetFlagsState()->GetSwitchesAndFeaturesFromFlags(
Miriam Zimmermanef405f66e2022-06-03 17:22:1610933 flags_storage, &switches, &features, &variation_ids);
10934 // Don't report variation IDs since we don't have an UMA histogram for them.
Mattias Nissler380cf4f2021-03-22 15:50:4610935 flags_ui::ReportAboutFlagsHistogram(histogram_name, switches, features);
[email protected]4b66a7d2014-08-15 17:13:3110936}
10937
[email protected]e2ddbc92010-10-15 20:02:0710938namespace testing {
[email protected]8a6ff28d2010-12-02 16:35:1910939
Elly Fong-Jonesabd2f8012019-10-21 19:58:0010940std::vector<FeatureEntry>* GetEntriesForTesting() {
10941 static base::NoDestructor<std::vector<FeatureEntry>> entries;
10942 return entries.get();
10943}
10944
David Bienvenub8f69592021-02-26 14:56:3710945void SetFeatureEntries(const std::vector<FeatureEntry>& entries) {
10946 CHECK(GetEntriesForTesting()->empty()); // IN-TEST
Rouslan Solomakhin8c770f582023-01-03 22:23:5110947 for (const auto& entry : entries) {
David Bienvenub8f69592021-02-26 14:56:3710948 GetEntriesForTesting()->push_back(entry); // IN-TEST
Rouslan Solomakhin8c770f582023-01-03 22:23:5110949 }
David Bienvenub8f69592021-02-26 14:56:3710950 FlagsStateSingleton::GetInstance()->RebuildState(
10951 *GetEntriesForTesting()); // IN-TEST
10952}
10953
10954ScopedFeatureEntries::ScopedFeatureEntries(
10955 const std::vector<flags_ui::FeatureEntry>& entries) {
10956 SetFeatureEntries(entries);
10957}
10958
10959ScopedFeatureEntries::~ScopedFeatureEntries() {
10960 GetEntriesForTesting()->clear(); // IN-TEST
10961 // Restore the flag state to the production flags.
David Bienvenu128c1b1c2021-05-07 18:06:4710962 FlagsStateSingleton::GetInstance()->RestoreDefaultState();
David Bienvenub8f69592021-02-26 14:56:3710963}
10964
Elly Fong-Jones323ab1092021-08-23 22:36:3110965base::span<const FeatureEntry> GetFeatureEntries() {
Rouslan Solomakhin8c770f582023-01-03 22:23:5110966 if (!GetEntriesForTesting()->empty()) {
Elly Fong-Jones323ab1092021-08-23 22:36:3110967 return base::span<FeatureEntry>(*GetEntriesForTesting());
Rouslan Solomakhin8c770f582023-01-03 22:23:5110968 }
Daniel Cheng7d9e3d52022-02-26 09:03:2410969 return base::make_span(kFeatureEntries, std::size(kFeatureEntries));
[email protected]8a6ff28d2010-12-02 16:35:1910970}
10971
[email protected]e2ddbc92010-10-15 20:02:0710972} // namespace testing
10973
[email protected]1a47d7e2010-10-15 00:37:2410974} // namespace about_flags