Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1456)

Side by Side Diff: chrome/browser/about_flags.cc

Issue 1965493002: Add runtime setting to force passive event listeners. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/browser/about_flags.h" 5 #include "chrome/browser/about_flags.h"
6 6
7 #include <iterator> 7 #include <iterator>
8 #include <map> 8 #include <map>
9 #include <set> 9 #include <set>
10 #include <utility> 10 #include <utility>
(...skipping 167 matching lines...) Expand 10 before | Expand all | Expand 10 after
178 // so by default we want to avoid debugging that. 178 // so by default we want to avoid debugging that.
179 // NOTE: As the default value must be the empty string, the mask excluding 179 // NOTE: As the default value must be the empty string, the mask excluding
180 // the PNaCl translator and secure shell is substituted elsewhere. 180 // the PNaCl translator and secure shell is substituted elsewhere.
181 { IDS_NACL_DEBUG_MASK_CHOICE_EXCLUDE_UTILS_PNACL, "", "" }, 181 { IDS_NACL_DEBUG_MASK_CHOICE_EXCLUDE_UTILS_PNACL, "", "" },
182 { IDS_NACL_DEBUG_MASK_CHOICE_DEBUG_ALL, switches::kNaClDebugMask, "*://*" }, 182 { IDS_NACL_DEBUG_MASK_CHOICE_DEBUG_ALL, switches::kNaClDebugMask, "*://*" },
183 { IDS_NACL_DEBUG_MASK_CHOICE_INCLUDE_DEBUG, 183 { IDS_NACL_DEBUG_MASK_CHOICE_INCLUDE_DEBUG,
184 switches::kNaClDebugMask, "*://*/*debug.nmf" } 184 switches::kNaClDebugMask, "*://*/*debug.nmf" }
185 }; 185 };
186 #endif 186 #endif
187 187
188 const FeatureEntry::Choice kPassiveListenersChoices[] = {
189 {IDS_GENERIC_EXPERIMENT_CHOICE_DEFAULT, "", ""},
190 {IDS_FLAGS_PASSIVE_EVENT_LISTENER_DOCUMENT_TRUE,
191 switches::kPassiveListenersDefault, "documentonlytrue"},
192 {IDS_FLAGS_PASSIVE_EVENT_LISTENER_TRUE, switches::kPassiveListenersDefault,
193 "true"},
194 {IDS_FLAGS_PASSIVE_EVENT_LISTENER_FORCE_ALL_TRUE,
195 switches::kPassiveListenersDefault, "forcealltrue"},
196 };
197
188 const FeatureEntry::Choice kMarkNonSecureAsChoices[] = { 198 const FeatureEntry::Choice kMarkNonSecureAsChoices[] = {
189 {IDS_GENERIC_EXPERIMENT_CHOICE_DEFAULT, "", ""}, 199 {IDS_GENERIC_EXPERIMENT_CHOICE_DEFAULT, "", ""},
190 {IDS_MARK_NON_SECURE_AS_NEUTRAL, security_state::switches::kMarkNonSecureAs, 200 {IDS_MARK_NON_SECURE_AS_NEUTRAL, security_state::switches::kMarkNonSecureAs,
191 security_state::switches::kMarkNonSecureAsNeutral}, 201 security_state::switches::kMarkNonSecureAsNeutral},
192 {IDS_MARK_NON_SECURE_AS_NON_SECURE, 202 {IDS_MARK_NON_SECURE_AS_NON_SECURE,
193 security_state::switches::kMarkNonSecureAs, 203 security_state::switches::kMarkNonSecureAs,
194 security_state::switches::kMarkNonSecureAsNonSecure}}; 204 security_state::switches::kMarkNonSecureAsNonSecure}};
195 205
196 const FeatureEntry::Choice kDataReductionProxyLoFiChoices[] = { 206 const FeatureEntry::Choice kDataReductionProxyLoFiChoices[] = {
197 { IDS_GENERIC_EXPERIMENT_CHOICE_DEFAULT, "", "" }, 207 { IDS_GENERIC_EXPERIMENT_CHOICE_DEFAULT, "", "" },
(...skipping 677 matching lines...) Expand 10 before | Expand all | Expand 10 after
875 { 885 {
876 "disable-touch-feedback", IDS_FLAGS_TOUCH_FEEDBACK_NAME, 886 "disable-touch-feedback", IDS_FLAGS_TOUCH_FEEDBACK_NAME,
877 IDS_FLAGS_TOUCH_FEEDBACK_DESCRIPTION, kOsCrOS, 887 IDS_FLAGS_TOUCH_FEEDBACK_DESCRIPTION, kOsCrOS,
878 SINGLE_DISABLE_VALUE_TYPE(switches::kDisableTouchFeedback), 888 SINGLE_DISABLE_VALUE_TYPE(switches::kDisableTouchFeedback),
879 }, 889 },
880 { 890 {
881 "ash-enable-mirrored-screen", IDS_FLAGS_ASH_ENABLE_MIRRORED_SCREEN_NAME, 891 "ash-enable-mirrored-screen", IDS_FLAGS_ASH_ENABLE_MIRRORED_SCREEN_NAME,
882 IDS_FLAGS_ASH_ENABLE_MIRRORED_SCREEN_DESCRIPTION, kOsCrOS, 892 IDS_FLAGS_ASH_ENABLE_MIRRORED_SCREEN_DESCRIPTION, kOsCrOS,
883 SINGLE_VALUE_TYPE(ash::switches::kAshEnableMirroredScreen), 893 SINGLE_VALUE_TYPE(ash::switches::kAshEnableMirroredScreen),
884 }, 894 },
885 { 895 {"ash-md", IDS_FLAGS_ASH_MD, IDS_FLAGS_ASH_MD_DESCRIPTION, kOsCrOS,
886 "ash-md", IDS_FLAGS_ASH_MD, IDS_FLAGS_ASH_MD_DESCRIPTION, kOsCrOS, 896 MULTI_VALUE_TYPE(kAshMaterialDesignChoices)},
887 MULTI_VALUE_TYPE(kAshMaterialDesignChoices)},
888 { 897 {
889 "ash-stable-overview-order", IDS_FLAGS_ASH_STABLE_OVERVIEW_ORDER_NAME, 898 "ash-stable-overview-order", IDS_FLAGS_ASH_STABLE_OVERVIEW_ORDER_NAME,
890 IDS_FLAGS_ASH_STABLE_OVERVIEW_ORDER_DESCRIPTION, kOsCrOS, 899 IDS_FLAGS_ASH_STABLE_OVERVIEW_ORDER_DESCRIPTION, kOsCrOS,
891 ENABLE_DISABLE_VALUE_TYPE( 900 ENABLE_DISABLE_VALUE_TYPE(
892 ash::switches::kAshEnableStableOverviewOrder, 901 ash::switches::kAshEnableStableOverviewOrder,
893 ash::switches::kAshDisableStableOverviewOrder), 902 ash::switches::kAshDisableStableOverviewOrder),
894 }, 903 },
895 #endif // defined(USE_ASH) 904 #endif // defined(USE_ASH)
896 #if defined(OS_CHROMEOS) 905 #if defined(OS_CHROMEOS)
897 {"material-design-ink-drop-animation-speed", 906 {"material-design-ink-drop-animation-speed",
(...skipping 623 matching lines...) Expand 10 before | Expand all | Expand 10 after
1521 IDS_FLAGS_TRY_SUPPORTED_CHANNEL_LAYOUTS_NAME, 1530 IDS_FLAGS_TRY_SUPPORTED_CHANNEL_LAYOUTS_NAME,
1522 IDS_FLAGS_TRY_SUPPORTED_CHANNEL_LAYOUTS_DESCRIPTION, kOsWin, 1531 IDS_FLAGS_TRY_SUPPORTED_CHANNEL_LAYOUTS_DESCRIPTION, kOsWin,
1523 SINGLE_VALUE_TYPE(switches::kTrySupportedChannelLayouts)}, 1532 SINGLE_VALUE_TYPE(switches::kTrySupportedChannelLayouts)},
1524 #endif 1533 #endif
1525 #if defined(ENABLE_WEBRTC) 1534 #if defined(ENABLE_WEBRTC)
1526 {"enable-webrtc-dtls12", IDS_FLAGS_WEBRTC_DTLS12_NAME, 1535 {"enable-webrtc-dtls12", IDS_FLAGS_WEBRTC_DTLS12_NAME,
1527 IDS_FLAGS_WEBRTC_DTLS12_DESCRIPTION, kOsAll, 1536 IDS_FLAGS_WEBRTC_DTLS12_DESCRIPTION, kOsAll,
1528 SINGLE_VALUE_TYPE(switches::kEnableWebRtcDtls12)}, 1537 SINGLE_VALUE_TYPE(switches::kEnableWebRtcDtls12)},
1529 #endif 1538 #endif
1530 #if defined(ENABLE_WEBRTC) 1539 #if defined(ENABLE_WEBRTC)
1531 {"enable-webrtc-ecdsa", 1540 {"enable-webrtc-ecdsa", IDS_FLAGS_WEBRTC_ECDSA_NAME,
1532 IDS_FLAGS_WEBRTC_ECDSA_NAME,
1533 IDS_FLAGS_WEBRTC_ECDSA_DESCRIPTION, kOsAll, 1541 IDS_FLAGS_WEBRTC_ECDSA_DESCRIPTION, kOsAll,
1534 FEATURE_VALUE_TYPE(features::kWebRtcEcdsaDefault)}, 1542 FEATURE_VALUE_TYPE(features::kWebRtcEcdsaDefault)},
1535 #endif 1543 #endif
1536 #if defined(OS_MACOSX) 1544 #if defined(OS_MACOSX)
1537 {"app-info-dialog", IDS_FLAGS_APP_INFO_DIALOG_NAME, 1545 {"app-info-dialog", IDS_FLAGS_APP_INFO_DIALOG_NAME,
1538 IDS_FLAGS_APP_INFO_DIALOG_DESCRIPTION, kOsMac, 1546 IDS_FLAGS_APP_INFO_DIALOG_DESCRIPTION, kOsMac,
1539 ENABLE_DISABLE_VALUE_TYPE(switches::kEnableAppInfoDialogMac, 1547 ENABLE_DISABLE_VALUE_TYPE(switches::kEnableAppInfoDialogMac,
1540 switches::kDisableAppInfoDialogMac)}, 1548 switches::kDisableAppInfoDialogMac)},
1541 {"mac-views-native-app-windows", 1549 {"mac-views-native-app-windows",
1542 IDS_FLAGS_MAC_VIEWS_NATIVE_APP_WINDOWS_NAME, 1550 IDS_FLAGS_MAC_VIEWS_NATIVE_APP_WINDOWS_NAME,
(...skipping 285 matching lines...) Expand 10 before | Expand all | Expand 10 after
1828 IDS_FLAGS_GOOGLE_BRANDED_CONTEXT_MENU_DESCRIPTION, kOsDesktop, 1836 IDS_FLAGS_GOOGLE_BRANDED_CONTEXT_MENU_DESCRIPTION, kOsDesktop,
1829 SINGLE_VALUE_TYPE(switches::kEnableGoogleBrandedContextMenu)}, 1837 SINGLE_VALUE_TYPE(switches::kEnableGoogleBrandedContextMenu)},
1830 #endif 1838 #endif
1831 #if defined(OS_MACOSX) 1839 #if defined(OS_MACOSX)
1832 {"enable-fullscreen-in-tab-detaching", 1840 {"enable-fullscreen-in-tab-detaching",
1833 IDS_FLAGS_TAB_DETACHING_IN_FULLSCREEN_NAME, 1841 IDS_FLAGS_TAB_DETACHING_IN_FULLSCREEN_NAME,
1834 IDS_FLAGS_TAB_DETACHING_IN_FULLSCREEN_DESCRIPTION, kOsMac, 1842 IDS_FLAGS_TAB_DETACHING_IN_FULLSCREEN_DESCRIPTION, kOsMac,
1835 SINGLE_VALUE_TYPE(switches::kEnableFullscreenTabDetaching)}, 1843 SINGLE_VALUE_TYPE(switches::kEnableFullscreenTabDetaching)},
1836 #endif 1844 #endif
1837 #if defined(OS_ANDROID) 1845 #if defined(OS_ANDROID)
1838 {"media-style-notification", 1846 {"media-style-notification", IDS_FLAGS_MEDIA_STYLE_NOTIFICATION_NAME,
1839 IDS_FLAGS_MEDIA_STYLE_NOTIFICATION_NAME,
1840 IDS_FLAGS_MEDIA_STYLE_NOTIFICATION_DESCRIPTION, kOsAndroid, 1847 IDS_FLAGS_MEDIA_STYLE_NOTIFICATION_DESCRIPTION, kOsAndroid,
1841 FEATURE_VALUE_TYPE(chrome::android::kMediaStyleNotification)}, 1848 FEATURE_VALUE_TYPE(chrome::android::kMediaStyleNotification)},
1842 {"important-sites-in-cbd", 1849 {"important-sites-in-cbd", IDS_FLAGS_IMPORTANT_SITES_IN_CBD_NAME,
1843 IDS_FLAGS_IMPORTANT_SITES_IN_CBD_NAME,
1844 IDS_FLAGS_IMPORTANT_SITES_IN_CBD_DESCRIPTION, kOsAndroid, 1850 IDS_FLAGS_IMPORTANT_SITES_IN_CBD_DESCRIPTION, kOsAndroid,
1845 FEATURE_VALUE_TYPE(chrome::android::kImportantSitesInCBD)}, 1851 FEATURE_VALUE_TYPE(chrome::android::kImportantSitesInCBD)},
1846 #endif 1852 #endif
1847 {"enable-pointer-events", // FLAGS:RECORD_UMA 1853 {"enable-pointer-events", // FLAGS:RECORD_UMA
1848 IDS_FLAGS_EXPERIMENTAL_POINTER_EVENT_NAME, 1854 IDS_FLAGS_EXPERIMENTAL_POINTER_EVENT_NAME,
1849 IDS_FLAGS_EXPERIMENTAL_POINTER_EVENT_DESCRIPTION, 1855 IDS_FLAGS_EXPERIMENTAL_POINTER_EVENT_DESCRIPTION, kOsAll,
1850 kOsAll, 1856 FEATURE_VALUE_TYPE(features::kPointerEvents)},
1851 FEATURE_VALUE_TYPE(features::kPointerEvents)}, 1857 {"passive-listener-default", // FLAGS:RECORD_UMA
1858 IDS_FLAGS_PASSIVE_EVENT_LISTENER_DEFAULT_NAME,
1859 IDS_FLAGS_PASSIVE_EVENT_LISTENER_DEFAULT_DESCRIPTION, kOsAll,
1860 MULTI_VALUE_TYPE(kPassiveListenersChoices)},
1861
1852 // NOTE: Adding new command-line switches requires adding corresponding 1862 // NOTE: Adding new command-line switches requires adding corresponding
1853 // entries to enum "LoginCustomFlags" in histograms.xml. See note in 1863 // entries to enum "LoginCustomFlags" in histograms.xml. See note in
1854 // histograms.xml and don't forget to run AboutFlagsHistogramTest unit test. 1864 // histograms.xml and don't forget to run AboutFlagsHistogramTest unit test.
1855 }; 1865 };
1856 1866
1857 class FlagsStateSingleton { 1867 class FlagsStateSingleton {
1858 public: 1868 public:
1859 FlagsStateSingleton() 1869 FlagsStateSingleton()
1860 : flags_state_(kFeatureEntries, arraysize(kFeatureEntries)) {} 1870 : flags_state_(kFeatureEntries, arraysize(kFeatureEntries)) {}
1861 ~FlagsStateSingleton() {} 1871 ~FlagsStateSingleton() {}
(...skipping 179 matching lines...) Expand 10 before | Expand all | Expand 10 after
2041 const base::HistogramBase::Sample kBadSwitchFormatHistogramId = 0; 2051 const base::HistogramBase::Sample kBadSwitchFormatHistogramId = 0;
2042 2052
2043 const FeatureEntry* GetFeatureEntries(size_t* count) { 2053 const FeatureEntry* GetFeatureEntries(size_t* count) {
2044 *count = arraysize(kFeatureEntries); 2054 *count = arraysize(kFeatureEntries);
2045 return kFeatureEntries; 2055 return kFeatureEntries;
2046 } 2056 }
2047 2057
2048 } // namespace testing 2058 } // namespace testing
2049 2059
2050 } // namespace about_flags 2060 } // namespace about_flags
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698