| OLD | NEW |
| 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 403 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 414 "online-check-only" } | 414 "online-check-only" } |
| 415 }; | 415 }; |
| 416 | 416 |
| 417 const FeatureEntry::Choice kV8CacheOptionsChoices[] = { | 417 const FeatureEntry::Choice kV8CacheOptionsChoices[] = { |
| 418 { IDS_GENERIC_EXPERIMENT_CHOICE_DEFAULT, "", "" }, | 418 { IDS_GENERIC_EXPERIMENT_CHOICE_DEFAULT, "", "" }, |
| 419 { IDS_GENERIC_EXPERIMENT_CHOICE_DISABLED, switches::kV8CacheOptions, "none" }, | 419 { IDS_GENERIC_EXPERIMENT_CHOICE_DISABLED, switches::kV8CacheOptions, "none" }, |
| 420 { IDS_FLAGS_V8_CACHE_OPTIONS_PARSE, switches::kV8CacheOptions, "parse" }, | 420 { IDS_FLAGS_V8_CACHE_OPTIONS_PARSE, switches::kV8CacheOptions, "parse" }, |
| 421 { IDS_FLAGS_V8_CACHE_OPTIONS_CODE, switches::kV8CacheOptions, "code" }, | 421 { IDS_FLAGS_V8_CACHE_OPTIONS_CODE, switches::kV8CacheOptions, "code" }, |
| 422 }; | 422 }; |
| 423 | 423 |
| 424 const FeatureEntry::Choice kV8CacheStrategiesForCacheStorageChoices[] = { |
| 425 {IDS_GENERIC_EXPERIMENT_CHOICE_DEFAULT, "", ""}, |
| 426 {IDS_GENERIC_EXPERIMENT_CHOICE_DISABLED, |
| 427 switches::kV8CacheStrategiesForCacheStorage, "none"}, |
| 428 {IDS_FLAGS_V8_CACHE_STRATEGIES_FOR_CACHE_STORAGE_NORMAL, |
| 429 switches::kV8CacheStrategiesForCacheStorage, "normal"}, |
| 430 {IDS_FLAGS_V8_CACHE_STRATEGIES_FOR_CACHE_STORAGE_AGGRESSIVE, |
| 431 switches::kV8CacheStrategiesForCacheStorage, "aggressive"}, |
| 432 }; |
| 433 |
| 424 #if defined(OS_ANDROID) | 434 #if defined(OS_ANDROID) |
| 425 const FeatureEntry::Choice kProgressBarAnimationChoices[] = { | 435 const FeatureEntry::Choice kProgressBarAnimationChoices[] = { |
| 426 { IDS_GENERIC_EXPERIMENT_CHOICE_DEFAULT, "", "" }, | 436 { IDS_GENERIC_EXPERIMENT_CHOICE_DEFAULT, "", "" }, |
| 427 { IDS_GENERIC_EXPERIMENT_CHOICE_DISABLED, | 437 { IDS_GENERIC_EXPERIMENT_CHOICE_DISABLED, |
| 428 switches::kProgressBarAnimation, "disabled" }, | 438 switches::kProgressBarAnimation, "disabled" }, |
| 429 { IDS_FLAGS_PROGRESS_BAR_ANIMATION_LINEAR, | 439 { IDS_FLAGS_PROGRESS_BAR_ANIMATION_LINEAR, |
| 430 switches::kProgressBarAnimation, "linear" }, | 440 switches::kProgressBarAnimation, "linear" }, |
| 431 { IDS_FLAGS_PROGRESS_BAR_ANIMATION_SMOOTH, | 441 { IDS_FLAGS_PROGRESS_BAR_ANIMATION_SMOOTH, |
| 432 switches::kProgressBarAnimation, "smooth" }, | 442 switches::kProgressBarAnimation, "smooth" }, |
| 433 { IDS_FLAGS_PROGRESS_BAR_ANIMATION_SMOOTH_INDETERMINATE, | 443 { IDS_FLAGS_PROGRESS_BAR_ANIMATION_SMOOTH_INDETERMINATE, |
| (...skipping 441 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 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 Loading... |
| 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 14 matching lines...) Expand all Loading... |
| 1557 #endif | 1565 #endif |
| 1558 #if defined(OS_CHROMEOS) | 1566 #if defined(OS_CHROMEOS) |
| 1559 {"disable-accelerated-mjpeg-decode", | 1567 {"disable-accelerated-mjpeg-decode", |
| 1560 IDS_FLAGS_ACCELERATED_MJPEG_DECODE_NAME, | 1568 IDS_FLAGS_ACCELERATED_MJPEG_DECODE_NAME, |
| 1561 IDS_FLAGS_ACCELERATED_MJPEG_DECODE_DESCRIPTION, kOsCrOS, | 1569 IDS_FLAGS_ACCELERATED_MJPEG_DECODE_DESCRIPTION, kOsCrOS, |
| 1562 SINGLE_DISABLE_VALUE_TYPE(switches::kDisableAcceleratedMjpegDecode)}, | 1570 SINGLE_DISABLE_VALUE_TYPE(switches::kDisableAcceleratedMjpegDecode)}, |
| 1563 #endif // OS_CHROMEOS | 1571 #endif // OS_CHROMEOS |
| 1564 {"v8-cache-options", IDS_FLAGS_V8_CACHE_OPTIONS_NAME, | 1572 {"v8-cache-options", IDS_FLAGS_V8_CACHE_OPTIONS_NAME, |
| 1565 IDS_FLAGS_V8_CACHE_OPTIONS_DESCRIPTION, kOsAll, | 1573 IDS_FLAGS_V8_CACHE_OPTIONS_DESCRIPTION, kOsAll, |
| 1566 MULTI_VALUE_TYPE(kV8CacheOptionsChoices)}, | 1574 MULTI_VALUE_TYPE(kV8CacheOptionsChoices)}, |
| 1575 {"v8-cache-strategies-for-cache-storage", |
| 1576 IDS_FLAGS_V8_CACHE_STRATEGIES_FOR_CACHE_STORAGE_NAME, |
| 1577 IDS_FLAGS_V8_CACHE_STRATEGIES_FOR_CACHE_STORAGE_DESCRIPTION, kOsAll, |
| 1578 MULTI_VALUE_TYPE(kV8CacheStrategiesForCacheStorageChoices)}, |
| 1567 {"enable-clear-browsing-data-counters", | 1579 {"enable-clear-browsing-data-counters", |
| 1568 IDS_FLAGS_ENABLE_CLEAR_BROWSING_DATA_COUNTERS_NAME, | 1580 IDS_FLAGS_ENABLE_CLEAR_BROWSING_DATA_COUNTERS_NAME, |
| 1569 IDS_FLAGS_ENABLE_CLEAR_BROWSING_DATA_COUNTERS_DESCRIPTION, kOsAll, | 1581 IDS_FLAGS_ENABLE_CLEAR_BROWSING_DATA_COUNTERS_DESCRIPTION, kOsAll, |
| 1570 ENABLE_DISABLE_VALUE_TYPE(switches::kEnableClearBrowsingDataCounters, | 1582 ENABLE_DISABLE_VALUE_TYPE(switches::kEnableClearBrowsingDataCounters, |
| 1571 switches::kDisableClearBrowsingDataCounters)}, | 1583 switches::kDisableClearBrowsingDataCounters)}, |
| 1572 #if defined(ENABLE_TASK_MANAGER) | 1584 #if defined(ENABLE_TASK_MANAGER) |
| 1573 {"disable-new-task-manager", IDS_FLAGS_NEW_TASK_MANAGER_NAME, | 1585 {"disable-new-task-manager", IDS_FLAGS_NEW_TASK_MANAGER_NAME, |
| 1574 IDS_FLAGS_NEW_TASK_MANAGER_DESCRIPTION, kOsDesktop, | 1586 IDS_FLAGS_NEW_TASK_MANAGER_DESCRIPTION, kOsDesktop, |
| 1575 SINGLE_DISABLE_VALUE_TYPE(switches::kDisableNewTaskManager)}, | 1587 SINGLE_DISABLE_VALUE_TYPE(switches::kDisableNewTaskManager)}, |
| 1576 #endif // defined(ENABLE_TASK_MANAGER) | 1588 #endif // defined(ENABLE_TASK_MANAGER) |
| (...skipping 251 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1828 IDS_FLAGS_GOOGLE_BRANDED_CONTEXT_MENU_DESCRIPTION, kOsDesktop, | 1840 IDS_FLAGS_GOOGLE_BRANDED_CONTEXT_MENU_DESCRIPTION, kOsDesktop, |
| 1829 SINGLE_VALUE_TYPE(switches::kEnableGoogleBrandedContextMenu)}, | 1841 SINGLE_VALUE_TYPE(switches::kEnableGoogleBrandedContextMenu)}, |
| 1830 #endif | 1842 #endif |
| 1831 #if defined(OS_MACOSX) | 1843 #if defined(OS_MACOSX) |
| 1832 {"enable-fullscreen-in-tab-detaching", | 1844 {"enable-fullscreen-in-tab-detaching", |
| 1833 IDS_FLAGS_TAB_DETACHING_IN_FULLSCREEN_NAME, | 1845 IDS_FLAGS_TAB_DETACHING_IN_FULLSCREEN_NAME, |
| 1834 IDS_FLAGS_TAB_DETACHING_IN_FULLSCREEN_DESCRIPTION, kOsMac, | 1846 IDS_FLAGS_TAB_DETACHING_IN_FULLSCREEN_DESCRIPTION, kOsMac, |
| 1835 SINGLE_VALUE_TYPE(switches::kEnableFullscreenTabDetaching)}, | 1847 SINGLE_VALUE_TYPE(switches::kEnableFullscreenTabDetaching)}, |
| 1836 #endif | 1848 #endif |
| 1837 #if defined(OS_ANDROID) | 1849 #if defined(OS_ANDROID) |
| 1838 {"media-style-notification", | 1850 {"media-style-notification", IDS_FLAGS_MEDIA_STYLE_NOTIFICATION_NAME, |
| 1839 IDS_FLAGS_MEDIA_STYLE_NOTIFICATION_NAME, | |
| 1840 IDS_FLAGS_MEDIA_STYLE_NOTIFICATION_DESCRIPTION, kOsAndroid, | 1851 IDS_FLAGS_MEDIA_STYLE_NOTIFICATION_DESCRIPTION, kOsAndroid, |
| 1841 FEATURE_VALUE_TYPE(chrome::android::kMediaStyleNotification)}, | 1852 FEATURE_VALUE_TYPE(chrome::android::kMediaStyleNotification)}, |
| 1842 {"important-sites-in-cbd", | 1853 {"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, | 1854 IDS_FLAGS_IMPORTANT_SITES_IN_CBD_DESCRIPTION, kOsAndroid, |
| 1845 FEATURE_VALUE_TYPE(chrome::android::kImportantSitesInCBD)}, | 1855 FEATURE_VALUE_TYPE(chrome::android::kImportantSitesInCBD)}, |
| 1846 #endif | 1856 #endif |
| 1847 {"enable-pointer-events", // FLAGS:RECORD_UMA | 1857 {"enable-pointer-events", // FLAGS:RECORD_UMA |
| 1848 IDS_FLAGS_EXPERIMENTAL_POINTER_EVENT_NAME, | 1858 IDS_FLAGS_EXPERIMENTAL_POINTER_EVENT_NAME, |
| 1849 IDS_FLAGS_EXPERIMENTAL_POINTER_EVENT_DESCRIPTION, | 1859 IDS_FLAGS_EXPERIMENTAL_POINTER_EVENT_DESCRIPTION, kOsAll, |
| 1850 kOsAll, | 1860 FEATURE_VALUE_TYPE(features::kPointerEvents)}, |
| 1851 FEATURE_VALUE_TYPE(features::kPointerEvents)}, | |
| 1852 // NOTE: Adding new command-line switches requires adding corresponding | 1861 // NOTE: Adding new command-line switches requires adding corresponding |
| 1853 // entries to enum "LoginCustomFlags" in histograms.xml. See note in | 1862 // entries to enum "LoginCustomFlags" in histograms.xml. See note in |
| 1854 // histograms.xml and don't forget to run AboutFlagsHistogramTest unit test. | 1863 // histograms.xml and don't forget to run AboutFlagsHistogramTest unit test. |
| 1855 }; | 1864 }; |
| 1856 | 1865 |
| 1857 class FlagsStateSingleton { | 1866 class FlagsStateSingleton { |
| 1858 public: | 1867 public: |
| 1859 FlagsStateSingleton() | 1868 FlagsStateSingleton() |
| 1860 : flags_state_(kFeatureEntries, arraysize(kFeatureEntries)) {} | 1869 : flags_state_(kFeatureEntries, arraysize(kFeatureEntries)) {} |
| 1861 ~FlagsStateSingleton() {} | 1870 ~FlagsStateSingleton() {} |
| (...skipping 179 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2041 const base::HistogramBase::Sample kBadSwitchFormatHistogramId = 0; | 2050 const base::HistogramBase::Sample kBadSwitchFormatHistogramId = 0; |
| 2042 | 2051 |
| 2043 const FeatureEntry* GetFeatureEntries(size_t* count) { | 2052 const FeatureEntry* GetFeatureEntries(size_t* count) { |
| 2044 *count = arraysize(kFeatureEntries); | 2053 *count = arraysize(kFeatureEntries); |
| 2045 return kFeatureEntries; | 2054 return kFeatureEntries; |
| 2046 } | 2055 } |
| 2047 | 2056 |
| 2048 } // namespace testing | 2057 } // namespace testing |
| 2049 | 2058 |
| 2050 } // namespace about_flags | 2059 } // namespace about_flags |
| OLD | NEW |