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 44 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
55 | 55 |
56 #if defined(ENABLE_APP_LIST) | 56 #if defined(ENABLE_APP_LIST) |
57 #include "ui/app_list/app_list_switches.h" | 57 #include "ui/app_list/app_list_switches.h" |
58 #endif | 58 #endif |
59 | 59 |
60 using base::UserMetricsAction; | 60 using base::UserMetricsAction; |
61 | 61 |
62 namespace about_flags { | 62 namespace about_flags { |
63 | 63 |
64 // Macros to simplify specifying the type. | 64 // Macros to simplify specifying the type. |
65 #define SINGLE_VALUE_TYPE_AND_VALUE(command_line_switch, switch_value) \ | 65 #define SINGLE_VALUE_TYPE_AND_VALUE( \ |
66 Experiment::SINGLE_VALUE, \ | 66 command_line_switch, switch_value, switch_uma_id) \ |
67 command_line_switch, switch_value, NULL, NULL, NULL, 0 | 67 Experiment::SINGLE_VALUE, command_line_switch, switch_value, switch_uma_id, \ |
68 #define SINGLE_VALUE_TYPE(command_line_switch) \ | 68 NULL, NULL, 0, NULL, 0 |
69 SINGLE_VALUE_TYPE_AND_VALUE(command_line_switch, "") | 69 #define SINGLE_VALUE_TYPE(command_line_switch, switch_uma_id) \ |
70 #define ENABLE_DISABLE_VALUE_TYPE_AND_VALUE(enable_switch, enable_value, \ | 70 SINGLE_VALUE_TYPE_AND_VALUE(command_line_switch, "", switch_uma_id) |
71 disable_switch, disable_value) \ | 71 #define ENABLE_DISABLE_VALUE_TYPE_AND_VALUE(enable_switch, \ |
72 Experiment::ENABLE_DISABLE_VALUE, enable_switch, enable_value, \ | 72 enable_value, \ |
73 disable_switch, disable_value, NULL, 3 | 73 enable_switch_uma_id, \ |
74 #define ENABLE_DISABLE_VALUE_TYPE(enable_switch, disable_switch) \ | 74 disable_switch, \ |
75 ENABLE_DISABLE_VALUE_TYPE_AND_VALUE(enable_switch, "", disable_switch, "") | 75 disable_value, \ |
76 #define MULTI_VALUE_TYPE(choices) \ | 76 disable_switch_uma_id) \ |
77 Experiment::MULTI_VALUE, NULL, NULL, NULL, NULL, choices, arraysize(choices) | 77 Experiment::ENABLE_DISABLE_VALUE, enable_switch, enable_value, \ |
| 78 enable_switch_uma_id, disable_switch, disable_value, \ |
| 79 disable_switch_uma_id, NULL, 3 |
| 80 #define ENABLE_DISABLE_VALUE_TYPE(enable_switch, \ |
| 81 enable_switch_uma_id, \ |
| 82 disable_switch, \ |
| 83 disable_switch_uma_id) \ |
| 84 ENABLE_DISABLE_VALUE_TYPE_AND_VALUE(enable_switch, \ |
| 85 "", \ |
| 86 enable_switch_uma_id, \ |
| 87 disable_switch, \ |
| 88 "", \ |
| 89 disable_switch_uma_id) |
| 90 #define MULTI_VALUE_TYPE(choices) \ |
| 91 Experiment::MULTI_VALUE, NULL, NULL, 0, NULL, NULL, 0, choices, \ |
| 92 arraysize(choices) |
78 | 93 |
79 namespace { | 94 namespace { |
80 | 95 |
81 const unsigned kOsAll = kOsMac | kOsWin | kOsLinux | kOsCrOS | kOsAndroid; | 96 const unsigned kOsAll = kOsMac | kOsWin | kOsLinux | kOsCrOS | kOsAndroid; |
82 const unsigned kOsDesktop = kOsMac | kOsWin | kOsLinux | kOsCrOS; | 97 const unsigned kOsDesktop = kOsMac | kOsWin | kOsLinux | kOsCrOS; |
83 | 98 |
84 // Adds a |StringValue| to |list| for each platform where |bitmask| indicates | 99 // Adds a |StringValue| to |list| for each platform where |bitmask| indicates |
85 // whether the experiment is available on that platform. | 100 // whether the experiment is available on that platform. |
86 void AddOsStrings(unsigned bitmask, base::ListValue* list) { | 101 void AddOsStrings(unsigned bitmask, base::ListValue* list) { |
87 struct { | 102 struct { |
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
127 GetSwitchString(chromeos::switches::kPolicySwitchesBegin)); | 142 GetSwitchString(chromeos::switches::kPolicySwitchesBegin)); |
128 last = std::find(cmdline.argv().begin(), cmdline.argv().end(), | 143 last = std::find(cmdline.argv().begin(), cmdline.argv().end(), |
129 GetSwitchString(chromeos::switches::kPolicySwitchesEnd)); | 144 GetSwitchString(chromeos::switches::kPolicySwitchesEnd)); |
130 if (first != cmdline.argv().end() && last != cmdline.argv().end()) | 145 if (first != cmdline.argv().end() && last != cmdline.argv().end()) |
131 flags.insert(first + 1, last); | 146 flags.insert(first + 1, last); |
132 #endif | 147 #endif |
133 return flags; | 148 return flags; |
134 } | 149 } |
135 | 150 |
136 const Experiment::Choice kEnableCompositingForFixedPositionChoices[] = { | 151 const Experiment::Choice kEnableCompositingForFixedPositionChoices[] = { |
137 { IDS_GENERIC_EXPERIMENT_CHOICE_DEFAULT, "", "" }, | 152 { IDS_GENERIC_EXPERIMENT_CHOICE_DEFAULT, "", "", 0 }, |
138 { IDS_GENERIC_EXPERIMENT_CHOICE_ENABLED, | 153 { IDS_GENERIC_EXPERIMENT_CHOICE_ENABLED, |
139 switches::kEnableCompositingForFixedPosition, ""}, | 154 switches::kEnableCompositingForFixedPosition, "", |
| 155 UMA_HISTOGRAM_ID_kEnableCompositingForFixedPosition }, |
140 { IDS_GENERIC_EXPERIMENT_CHOICE_DISABLED, | 156 { IDS_GENERIC_EXPERIMENT_CHOICE_DISABLED, |
141 switches::kDisableCompositingForFixedPosition, ""}, | 157 switches::kDisableCompositingForFixedPosition, "", |
| 158 UMA_HISTOGRAM_ID_kDisableCompositingForFixedPosition }, |
142 { IDS_FLAGS_COMPOSITING_FOR_FIXED_POSITION_HIGH_DPI, | 159 { IDS_FLAGS_COMPOSITING_FOR_FIXED_POSITION_HIGH_DPI, |
143 switches::kEnableHighDpiCompositingForFixedPosition, ""} | 160 switches::kEnableHighDpiCompositingForFixedPosition, "", |
| 161 UMA_HISTOGRAM_ID_kEnableHighDpiCompositingForFixedPosition } |
144 }; | 162 }; |
145 | 163 |
146 const Experiment::Choice kEnableCompositingForTransitionChoices[] = { | 164 const Experiment::Choice kEnableCompositingForTransitionChoices[] = { |
147 { IDS_GENERIC_EXPERIMENT_CHOICE_DEFAULT, "", "" }, | 165 { IDS_GENERIC_EXPERIMENT_CHOICE_DEFAULT, "", "", 0 }, |
148 { IDS_GENERIC_EXPERIMENT_CHOICE_ENABLED, | 166 { IDS_GENERIC_EXPERIMENT_CHOICE_ENABLED, |
149 switches::kEnableCompositingForTransition, ""}, | 167 switches::kEnableCompositingForTransition, "", |
| 168 UMA_HISTOGRAM_ID_kEnableCompositingForTransition }, |
150 { IDS_GENERIC_EXPERIMENT_CHOICE_DISABLED, | 169 { IDS_GENERIC_EXPERIMENT_CHOICE_DISABLED, |
151 switches::kDisableCompositingForTransition, ""}, | 170 switches::kDisableCompositingForTransition, "", |
| 171 UMA_HISTOGRAM_ID_kDisableCompositingForTransition }, |
152 }; | 172 }; |
153 | 173 |
154 const Experiment::Choice kEnableAcceleratedFixedRootBackgroundChoices[] = { | 174 const Experiment::Choice kEnableAcceleratedFixedRootBackgroundChoices[] = { |
155 { IDS_GENERIC_EXPERIMENT_CHOICE_DEFAULT, "", "" }, | 175 { IDS_GENERIC_EXPERIMENT_CHOICE_DEFAULT, "", "", 0 }, |
156 { IDS_GENERIC_EXPERIMENT_CHOICE_ENABLED, | 176 { IDS_GENERIC_EXPERIMENT_CHOICE_ENABLED, |
157 switches::kEnableAcceleratedFixedRootBackground, ""}, | 177 switches::kEnableAcceleratedFixedRootBackground, "", |
| 178 UMA_HISTOGRAM_ID_kEnableAcceleratedFixedRootBackground }, |
158 { IDS_GENERIC_EXPERIMENT_CHOICE_DISABLED, | 179 { IDS_GENERIC_EXPERIMENT_CHOICE_DISABLED, |
159 switches::kDisableAcceleratedFixedRootBackground, ""}, | 180 switches::kDisableAcceleratedFixedRootBackground, "", |
| 181 UMA_HISTOGRAM_ID_kDisableAcceleratedFixedRootBackground }, |
160 }; | 182 }; |
161 | 183 |
162 const Experiment::Choice kTouchEventsChoices[] = { | 184 const Experiment::Choice kTouchEventsChoices[] = { |
163 { IDS_GENERIC_EXPERIMENT_CHOICE_AUTOMATIC, "", "" }, | 185 { IDS_GENERIC_EXPERIMENT_CHOICE_AUTOMATIC, "", "", 0 }, |
164 { IDS_GENERIC_EXPERIMENT_CHOICE_ENABLED, | 186 { IDS_GENERIC_EXPERIMENT_CHOICE_ENABLED, |
165 switches::kTouchEvents, | 187 switches::kTouchEvents, |
166 switches::kTouchEventsEnabled }, | 188 switches::kTouchEventsEnabled, |
| 189 UMA_HISTOGRAM_ID_kTouchEvents }, |
167 { IDS_GENERIC_EXPERIMENT_CHOICE_DISABLED, | 190 { IDS_GENERIC_EXPERIMENT_CHOICE_DISABLED, |
168 switches::kTouchEvents, | 191 switches::kTouchEvents, |
169 switches::kTouchEventsDisabled } | 192 switches::kTouchEventsDisabled, |
| 193 UMA_HISTOGRAM_ID_kTouchEvents } |
170 }; | 194 }; |
171 | 195 |
172 #if defined(USE_AURA) | 196 #if defined(USE_AURA) |
173 const Experiment::Choice kOverscrollHistoryNavigationChoices[] = { | 197 const Experiment::Choice kOverscrollHistoryNavigationChoices[] = { |
174 { IDS_GENERIC_EXPERIMENT_CHOICE_ENABLED, "", "" }, | 198 { IDS_GENERIC_EXPERIMENT_CHOICE_ENABLED, "", "", 0 }, |
175 { IDS_GENERIC_EXPERIMENT_CHOICE_DISABLED, | 199 { IDS_GENERIC_EXPERIMENT_CHOICE_DISABLED, |
176 switches::kOverscrollHistoryNavigation, | 200 switches::kOverscrollHistoryNavigation, |
177 "0" }, | 201 "0", |
| 202 UMA_HISTOGRAM_ID_kOverscrollHistoryNavigation }, |
178 { IDS_OVERSCROLL_HISTORY_NAVIGATION_SIMPLE_UI, | 203 { IDS_OVERSCROLL_HISTORY_NAVIGATION_SIMPLE_UI, |
179 switches::kOverscrollHistoryNavigation, | 204 switches::kOverscrollHistoryNavigation, |
180 "2" } | 205 "2", |
| 206 UMA_HISTOGRAM_ID_kOverscrollHistoryNavigation } |
181 }; | 207 }; |
182 #endif | 208 #endif |
183 | 209 |
184 #if !defined(DISABLE_NACL) | 210 #if !defined(DISABLE_NACL) |
185 const Experiment::Choice kNaClDebugMaskChoices[] = { | 211 const Experiment::Choice kNaClDebugMaskChoices[] = { |
186 // Secure shell can be used on ChromeOS for forwarding the TCP port opened by | 212 // Secure shell can be used on ChromeOS for forwarding the TCP port opened by |
187 // debug stub to a remote machine. Since secure shell uses NaCl, we usually | 213 // debug stub to a remote machine. Since secure shell uses NaCl, we usually |
188 // want to avoid debugging that. The PNaCl translator is also a NaCl module, | 214 // want to avoid debugging that. The PNaCl translator is also a NaCl module, |
189 // so by default we want to avoid debugging that. | 215 // so by default we want to avoid debugging that. |
190 // NOTE: As the default value must be the empty string, the mask excluding | 216 // NOTE: As the default value must be the empty string, the mask excluding |
191 // the PNaCl translator and secure shell is substituted elsewhere. | 217 // the PNaCl translator and secure shell is substituted elsewhere. |
192 { IDS_NACL_DEBUG_MASK_CHOICE_EXCLUDE_UTILS_PNACL, "", "" }, | 218 { IDS_NACL_DEBUG_MASK_CHOICE_EXCLUDE_UTILS_PNACL, "", "", 0 }, |
193 { IDS_NACL_DEBUG_MASK_CHOICE_DEBUG_ALL, switches::kNaClDebugMask, "*://*" }, | 219 { IDS_NACL_DEBUG_MASK_CHOICE_DEBUG_ALL, switches::kNaClDebugMask, "*://*", |
194 { IDS_NACL_DEBUG_MASK_CHOICE_INCLUDE_DEBUG, | 220 UMA_HISTOGRAM_ID_kNaClDebugMask }, |
195 switches::kNaClDebugMask, "*://*/*debug.nmf" } | 221 { IDS_NACL_DEBUG_MASK_CHOICE_INCLUDE_DEBUG, switches::kNaClDebugMask, |
| 222 "*://*/*debug.nmf", UMA_HISTOGRAM_ID_kNaClDebugMask } |
196 }; | 223 }; |
197 #endif | 224 #endif |
198 | 225 |
199 const Experiment::Choice kImplSidePaintingChoices[] = { | 226 const Experiment::Choice kImplSidePaintingChoices[] = { |
200 { IDS_GENERIC_EXPERIMENT_CHOICE_DEFAULT, "", "" }, | 227 { IDS_GENERIC_EXPERIMENT_CHOICE_DEFAULT, "", "", 0 }, |
201 { IDS_GENERIC_EXPERIMENT_CHOICE_ENABLED, | 228 { IDS_GENERIC_EXPERIMENT_CHOICE_ENABLED, |
202 switches::kEnableImplSidePainting, ""}, | 229 switches::kEnableImplSidePainting, "", |
| 230 UMA_HISTOGRAM_ID_kEnableImplSidePainting }, |
203 { IDS_GENERIC_EXPERIMENT_CHOICE_DISABLED, | 231 { IDS_GENERIC_EXPERIMENT_CHOICE_DISABLED, |
204 switches::kDisableImplSidePainting, ""} | 232 switches::kDisableImplSidePainting, "", |
| 233 UMA_HISTOGRAM_ID_kDisableImplSidePainting } |
205 }; | 234 }; |
206 | 235 |
207 const Experiment::Choice kLCDTextChoices[] = { | 236 const Experiment::Choice kLCDTextChoices[] = { |
208 { IDS_GENERIC_EXPERIMENT_CHOICE_DEFAULT, "", "" }, | 237 { IDS_GENERIC_EXPERIMENT_CHOICE_DEFAULT, "", "", 0 }, |
209 { IDS_GENERIC_EXPERIMENT_CHOICE_ENABLED, switches::kEnableLCDText, ""}, | 238 { IDS_GENERIC_EXPERIMENT_CHOICE_ENABLED, switches::kEnableLCDText, "", |
210 { IDS_GENERIC_EXPERIMENT_CHOICE_DISABLED, switches::kDisableLCDText, ""} | 239 UMA_HISTOGRAM_ID_kEnableLCDText }, |
| 240 { IDS_GENERIC_EXPERIMENT_CHOICE_DISABLED, switches::kDisableLCDText, "", |
| 241 UMA_HISTOGRAM_ID_kDisableLCDText } |
211 }; | 242 }; |
212 | 243 |
213 const Experiment::Choice kDistanceFieldTextChoices[] = { | 244 const Experiment::Choice kDistanceFieldTextChoices[] = { |
214 { IDS_GENERIC_EXPERIMENT_CHOICE_DEFAULT, "", "" }, | 245 { IDS_GENERIC_EXPERIMENT_CHOICE_DEFAULT, "", "", 0 }, |
215 { IDS_GENERIC_EXPERIMENT_CHOICE_ENABLED, | 246 { IDS_GENERIC_EXPERIMENT_CHOICE_ENABLED, |
216 switches::kEnableDistanceFieldText, "" }, | 247 switches::kEnableDistanceFieldText, "", |
| 248 UMA_HISTOGRAM_ID_kEnableDistanceFieldText }, |
217 { IDS_GENERIC_EXPERIMENT_CHOICE_DISABLED, | 249 { IDS_GENERIC_EXPERIMENT_CHOICE_DISABLED, |
218 switches::kDisableDistanceFieldText, "" } | 250 switches::kDisableDistanceFieldText, "", |
| 251 UMA_HISTOGRAM_ID_kDisableDistanceFieldText } |
219 }; | 252 }; |
220 | 253 |
221 #ifndef USE_AURA | 254 #ifndef USE_AURA |
222 const Experiment::Choice kDelegatedRendererChoices[] = { | 255 const Experiment::Choice kDelegatedRendererChoices[] = { |
223 { IDS_GENERIC_EXPERIMENT_CHOICE_DEFAULT, "", "" }, | 256 { IDS_GENERIC_EXPERIMENT_CHOICE_DEFAULT, "", "", 0 }, |
224 { IDS_GENERIC_EXPERIMENT_CHOICE_ENABLED, | 257 { IDS_GENERIC_EXPERIMENT_CHOICE_ENABLED, |
225 switches::kEnableDelegatedRenderer, ""}, | 258 switches::kEnableDelegatedRenderer, "", |
| 259 UMA_HISTOGRAM_ID_kEnableDelegatedRenderer }, |
226 { IDS_GENERIC_EXPERIMENT_CHOICE_DISABLED, | 260 { IDS_GENERIC_EXPERIMENT_CHOICE_DISABLED, |
227 switches::kDisableDelegatedRenderer, ""} | 261 switches::kDisableDelegatedRenderer, "", |
| 262 UMA_HISTOGRAM_ID_kDisableDelegatedRenderer } |
228 }; | 263 }; |
229 #endif | 264 #endif |
230 | 265 |
231 const Experiment::Choice kMaxTilesForInterestAreaChoices[] = { | 266 const Experiment::Choice kMaxTilesForInterestAreaChoices[] = { |
232 { IDS_GENERIC_EXPERIMENT_CHOICE_DEFAULT, "", "" }, | 267 { IDS_GENERIC_EXPERIMENT_CHOICE_DEFAULT, "", "", 0 }, |
233 { IDS_FLAGS_MAX_TILES_FOR_INTEREST_AREA_SHORT, | 268 { IDS_FLAGS_MAX_TILES_FOR_INTEREST_AREA_SHORT, |
234 cc::switches::kMaxTilesForInterestArea, "64"}, | 269 cc::switches::kMaxTilesForInterestArea, "64", |
| 270 UMA_HISTOGRAM_ID_kMaxTilesForInterestArea }, |
235 { IDS_FLAGS_MAX_TILES_FOR_INTEREST_AREA_TALL, | 271 { IDS_FLAGS_MAX_TILES_FOR_INTEREST_AREA_TALL, |
236 cc::switches::kMaxTilesForInterestArea, "128"}, | 272 cc::switches::kMaxTilesForInterestArea, "128", |
| 273 UMA_HISTOGRAM_ID_kMaxTilesForInterestArea }, |
237 { IDS_FLAGS_MAX_TILES_FOR_INTEREST_AREA_GRANDE, | 274 { IDS_FLAGS_MAX_TILES_FOR_INTEREST_AREA_GRANDE, |
238 cc::switches::kMaxTilesForInterestArea, "256"}, | 275 cc::switches::kMaxTilesForInterestArea, "256", |
| 276 UMA_HISTOGRAM_ID_kMaxTilesForInterestArea }, |
239 { IDS_FLAGS_MAX_TILES_FOR_INTEREST_AREA_VENTI, | 277 { IDS_FLAGS_MAX_TILES_FOR_INTEREST_AREA_VENTI, |
240 cc::switches::kMaxTilesForInterestArea, "512"} | 278 cc::switches::kMaxTilesForInterestArea, "512", |
| 279 UMA_HISTOGRAM_ID_kMaxTilesForInterestArea } |
241 }; | 280 }; |
242 | 281 |
243 const Experiment::Choice kDefaultTileWidthChoices[] = { | 282 const Experiment::Choice kDefaultTileWidthChoices[] = { |
244 { IDS_GENERIC_EXPERIMENT_CHOICE_DEFAULT, "", "" }, | 283 { IDS_GENERIC_EXPERIMENT_CHOICE_DEFAULT, "", "", 0 }, |
245 { IDS_FLAGS_DEFAULT_TILE_WIDTH_SHORT, | 284 { IDS_FLAGS_DEFAULT_TILE_WIDTH_SHORT, |
246 switches::kDefaultTileWidth, "128"}, | 285 switches::kDefaultTileWidth, "128", UMA_HISTOGRAM_ID_kDefaultTileWidth }, |
247 { IDS_FLAGS_DEFAULT_TILE_WIDTH_TALL, | 286 { IDS_FLAGS_DEFAULT_TILE_WIDTH_TALL, |
248 switches::kDefaultTileWidth, "256"}, | 287 switches::kDefaultTileWidth, "256", UMA_HISTOGRAM_ID_kDefaultTileWidth }, |
249 { IDS_FLAGS_DEFAULT_TILE_WIDTH_GRANDE, | 288 { IDS_FLAGS_DEFAULT_TILE_WIDTH_GRANDE, |
250 switches::kDefaultTileWidth, "512"}, | 289 switches::kDefaultTileWidth, "512", UMA_HISTOGRAM_ID_kDefaultTileWidth }, |
251 { IDS_FLAGS_DEFAULT_TILE_WIDTH_VENTI, | 290 { IDS_FLAGS_DEFAULT_TILE_WIDTH_VENTI, |
252 switches::kDefaultTileWidth, "1024"} | 291 switches::kDefaultTileWidth, "1024", UMA_HISTOGRAM_ID_kDefaultTileWidth } |
253 }; | 292 }; |
254 | 293 |
255 const Experiment::Choice kDefaultTileHeightChoices[] = { | 294 const Experiment::Choice kDefaultTileHeightChoices[] = { |
256 { IDS_GENERIC_EXPERIMENT_CHOICE_DEFAULT, "", "" }, | 295 { IDS_GENERIC_EXPERIMENT_CHOICE_DEFAULT, "", "", 0 }, |
257 { IDS_FLAGS_DEFAULT_TILE_HEIGHT_SHORT, | 296 { IDS_FLAGS_DEFAULT_TILE_HEIGHT_SHORT, |
258 switches::kDefaultTileHeight, "128"}, | 297 switches::kDefaultTileHeight, "128", UMA_HISTOGRAM_ID_kDefaultTileHeight }, |
259 { IDS_FLAGS_DEFAULT_TILE_HEIGHT_TALL, | 298 { IDS_FLAGS_DEFAULT_TILE_HEIGHT_TALL, |
260 switches::kDefaultTileHeight, "256"}, | 299 switches::kDefaultTileHeight, "256", UMA_HISTOGRAM_ID_kDefaultTileHeight }, |
261 { IDS_FLAGS_DEFAULT_TILE_HEIGHT_GRANDE, | 300 { IDS_FLAGS_DEFAULT_TILE_HEIGHT_GRANDE, |
262 switches::kDefaultTileHeight, "512"}, | 301 switches::kDefaultTileHeight, "512", UMA_HISTOGRAM_ID_kDefaultTileHeight }, |
263 { IDS_FLAGS_DEFAULT_TILE_HEIGHT_VENTI, | 302 { IDS_FLAGS_DEFAULT_TILE_HEIGHT_VENTI, |
264 switches::kDefaultTileHeight, "1024"} | 303 switches::kDefaultTileHeight, "1024", UMA_HISTOGRAM_ID_kDefaultTileHeight } |
265 }; | 304 }; |
266 | 305 |
267 const Experiment::Choice kSimpleCacheBackendChoices[] = { | 306 const Experiment::Choice kSimpleCacheBackendChoices[] = { |
268 { IDS_GENERIC_EXPERIMENT_CHOICE_DEFAULT, "", "" }, | 307 { IDS_GENERIC_EXPERIMENT_CHOICE_DEFAULT, "", "", 0 }, |
269 { IDS_GENERIC_EXPERIMENT_CHOICE_DISABLED, | 308 { IDS_GENERIC_EXPERIMENT_CHOICE_DISABLED, |
270 switches::kUseSimpleCacheBackend, "off" }, | 309 switches::kUseSimpleCacheBackend, "off", |
| 310 UMA_HISTOGRAM_ID_kUseSimpleCacheBackend }, |
271 { IDS_GENERIC_EXPERIMENT_CHOICE_ENABLED, | 311 { IDS_GENERIC_EXPERIMENT_CHOICE_ENABLED, |
272 switches::kUseSimpleCacheBackend, "on"} | 312 switches::kUseSimpleCacheBackend, "on", |
| 313 UMA_HISTOGRAM_ID_kUseSimpleCacheBackend } |
273 }; | 314 }; |
274 | 315 |
275 #if defined(USE_AURA) | 316 #if defined(USE_AURA) |
276 const Experiment::Choice kTabCaptureUpscaleQualityChoices[] = { | 317 const Experiment::Choice kTabCaptureUpscaleQualityChoices[] = { |
277 { IDS_GENERIC_EXPERIMENT_CHOICE_DEFAULT, "", "" }, | 318 { IDS_GENERIC_EXPERIMENT_CHOICE_DEFAULT, "", "", 0 }, |
278 { IDS_FLAGS_TAB_CAPTURE_SCALE_QUALITY_FAST, | 319 { IDS_FLAGS_TAB_CAPTURE_SCALE_QUALITY_FAST, |
279 switches::kTabCaptureUpscaleQuality, "fast" }, | 320 switches::kTabCaptureUpscaleQuality, "fast", |
| 321 UMA_HISTOGRAM_ID_kTabCaptureUpscaleQuality }, |
280 { IDS_FLAGS_TAB_CAPTURE_SCALE_QUALITY_GOOD, | 322 { IDS_FLAGS_TAB_CAPTURE_SCALE_QUALITY_GOOD, |
281 switches::kTabCaptureUpscaleQuality, "good" }, | 323 switches::kTabCaptureUpscaleQuality, "good", |
| 324 UMA_HISTOGRAM_ID_kTabCaptureUpscaleQuality }, |
282 { IDS_FLAGS_TAB_CAPTURE_SCALE_QUALITY_BEST, | 325 { IDS_FLAGS_TAB_CAPTURE_SCALE_QUALITY_BEST, |
283 switches::kTabCaptureUpscaleQuality, "best" }, | 326 switches::kTabCaptureUpscaleQuality, "best", |
| 327 UMA_HISTOGRAM_ID_kTabCaptureUpscaleQuality }, |
284 }; | 328 }; |
285 | 329 |
286 const Experiment::Choice kTabCaptureDownscaleQualityChoices[] = { | 330 const Experiment::Choice kTabCaptureDownscaleQualityChoices[] = { |
287 { IDS_GENERIC_EXPERIMENT_CHOICE_DEFAULT, "", "" }, | 331 { IDS_GENERIC_EXPERIMENT_CHOICE_DEFAULT, "", "", 0 }, |
288 { IDS_FLAGS_TAB_CAPTURE_SCALE_QUALITY_FAST, | 332 { IDS_FLAGS_TAB_CAPTURE_SCALE_QUALITY_FAST, |
289 switches::kTabCaptureDownscaleQuality, "fast" }, | 333 switches::kTabCaptureDownscaleQuality, "fast", |
| 334 UMA_HISTOGRAM_ID_kTabCaptureDownscaleQuality }, |
290 { IDS_FLAGS_TAB_CAPTURE_SCALE_QUALITY_GOOD, | 335 { IDS_FLAGS_TAB_CAPTURE_SCALE_QUALITY_GOOD, |
291 switches::kTabCaptureDownscaleQuality, "good" }, | 336 switches::kTabCaptureDownscaleQuality, "good", |
| 337 UMA_HISTOGRAM_ID_kTabCaptureDownscaleQuality }, |
292 { IDS_FLAGS_TAB_CAPTURE_SCALE_QUALITY_BEST, | 338 { IDS_FLAGS_TAB_CAPTURE_SCALE_QUALITY_BEST, |
293 switches::kTabCaptureDownscaleQuality, "best" }, | 339 switches::kTabCaptureDownscaleQuality, "best", |
| 340 UMA_HISTOGRAM_ID_kTabCaptureDownscaleQuality }, |
294 }; | 341 }; |
295 #endif | 342 #endif |
296 | 343 |
297 #if defined(USE_AURA) || defined(OS_LINUX) | 344 #if defined(USE_AURA) || defined(OS_LINUX) |
298 const Experiment::Choice kOverlayScrollbarChoices[] = { | 345 const Experiment::Choice kOverlayScrollbarChoices[] = { |
299 { IDS_GENERIC_EXPERIMENT_CHOICE_DEFAULT, "", "" }, | 346 { IDS_GENERIC_EXPERIMENT_CHOICE_DEFAULT, "", "", 0 }, |
300 { IDS_GENERIC_EXPERIMENT_CHOICE_ENABLED, | 347 { IDS_GENERIC_EXPERIMENT_CHOICE_ENABLED, |
301 switches::kEnableOverlayScrollbar, ""}, | 348 switches::kEnableOverlayScrollbar, "", |
| 349 UMA_HISTOGRAM_ID_kEnableOverlayScrollbar }, |
302 { IDS_GENERIC_EXPERIMENT_CHOICE_DISABLED, | 350 { IDS_GENERIC_EXPERIMENT_CHOICE_DISABLED, |
303 switches::kDisableOverlayScrollbar, ""} | 351 switches::kDisableOverlayScrollbar, "", |
| 352 UMA_HISTOGRAM_ID_kDisableOverlayScrollbar } |
304 }; | 353 }; |
305 #endif | 354 #endif |
306 | 355 |
307 const Experiment::Choice kZeroCopyChoices[] = { | 356 const Experiment::Choice kZeroCopyChoices[] = { |
308 { IDS_GENERIC_EXPERIMENT_CHOICE_DEFAULT, "", "" }, | 357 { IDS_GENERIC_EXPERIMENT_CHOICE_DEFAULT, "", "", 0 }, |
309 { IDS_GENERIC_EXPERIMENT_CHOICE_ENABLED, | 358 { IDS_GENERIC_EXPERIMENT_CHOICE_ENABLED, |
310 switches::kEnableZeroCopy, ""}, | 359 switches::kEnableZeroCopy, "", UMA_HISTOGRAM_ID_kEnableZeroCopy }, |
311 { IDS_GENERIC_EXPERIMENT_CHOICE_DISABLED, | 360 { IDS_GENERIC_EXPERIMENT_CHOICE_DISABLED, |
312 switches::kDisableZeroCopy, ""} | 361 switches::kDisableZeroCopy, "", UMA_HISTOGRAM_ID_kDisableZeroCopy } |
313 }; | 362 }; |
314 | 363 |
315 #if defined(OS_ANDROID) | 364 #if defined(OS_ANDROID) |
316 const Experiment::Choice kZeroSuggestExperimentsChoices[] = { | 365 const Experiment::Choice kZeroSuggestExperimentsChoices[] = { |
317 { IDS_GENERIC_EXPERIMENT_CHOICE_DEFAULT, "", "" }, | 366 { IDS_GENERIC_EXPERIMENT_CHOICE_DEFAULT, "", "", 0 }, |
318 { IDS_FLAGS_ZERO_SUGGEST_MOST_VISITED, | 367 { IDS_FLAGS_ZERO_SUGGEST_MOST_VISITED, |
319 switches::kEnableZeroSuggestMostVisited, ""}, | 368 switches::kEnableZeroSuggestMostVisited, "", |
| 369 UMA_HISTOGRAM_ID_kEnableZeroSuggestMostVisited }, |
320 { IDS_FLAGS_ZERO_SUGGEST_ETHER_SERP, | 370 { IDS_FLAGS_ZERO_SUGGEST_ETHER_SERP, |
321 switches::kEnableZeroSuggestEtherSerp, ""}, | 371 switches::kEnableZeroSuggestEtherSerp, "", |
| 372 UMA_HISTOGRAM_ID_kEnableZeroSuggestEtherSerp }, |
322 { IDS_FLAGS_ZERO_SUGGEST_ETHER_NO_SERP, | 373 { IDS_FLAGS_ZERO_SUGGEST_ETHER_NO_SERP, |
323 switches::kEnableZeroSuggestEtherNoSerp, ""}, | 374 switches::kEnableZeroSuggestEtherNoSerp, "", |
| 375 UMA_HISTOGRAM_ID_kEnableZeroSuggestEtherNoSerp }, |
324 { IDS_FLAGS_ZERO_SUGGEST_PERSONALIZED, | 376 { IDS_FLAGS_ZERO_SUGGEST_PERSONALIZED, |
325 switches::kEnableZeroSuggestPersonalized, ""}, | 377 switches::kEnableZeroSuggestPersonalized, "", |
| 378 UMA_HISTOGRAM_ID_kEnableZeroSuggestPersonalized }, |
326 { IDS_GENERIC_EXPERIMENT_CHOICE_DISABLED, | 379 { IDS_GENERIC_EXPERIMENT_CHOICE_DISABLED, |
327 switches::kDisableZeroSuggest, ""} | 380 switches::kDisableZeroSuggest, "", UMA_HISTOGRAM_ID_kDisableZeroSuggest } |
328 }; | 381 }; |
329 #endif | 382 #endif |
330 | 383 |
331 const Experiment::Choice kNumRasterThreadsChoices[] = { | 384 const Experiment::Choice kNumRasterThreadsChoices[] = { |
332 { IDS_GENERIC_EXPERIMENT_CHOICE_DEFAULT, "", "" }, | 385 { IDS_GENERIC_EXPERIMENT_CHOICE_DEFAULT, "", "", 0 }, |
333 { IDS_FLAGS_NUM_RASTER_THREADS_ONE, switches::kNumRasterThreads, "1" }, | 386 { IDS_FLAGS_NUM_RASTER_THREADS_ONE, |
334 { IDS_FLAGS_NUM_RASTER_THREADS_TWO, switches::kNumRasterThreads, "2" }, | 387 switches::kNumRasterThreads, "1", UMA_HISTOGRAM_ID_kNumRasterThreads }, |
335 { IDS_FLAGS_NUM_RASTER_THREADS_THREE, switches::kNumRasterThreads, "3" }, | 388 { IDS_FLAGS_NUM_RASTER_THREADS_TWO, |
336 { IDS_FLAGS_NUM_RASTER_THREADS_FOUR, switches::kNumRasterThreads, "4" } | 389 switches::kNumRasterThreads, "2", UMA_HISTOGRAM_ID_kNumRasterThreads }, |
| 390 { IDS_FLAGS_NUM_RASTER_THREADS_THREE, |
| 391 switches::kNumRasterThreads, "3", UMA_HISTOGRAM_ID_kNumRasterThreads }, |
| 392 { IDS_FLAGS_NUM_RASTER_THREADS_FOUR, |
| 393 switches::kNumRasterThreads, "4", UMA_HISTOGRAM_ID_kNumRasterThreads } |
337 }; | 394 }; |
338 | 395 |
339 const Experiment::Choice kEnableGpuRasterizationChoices[] = { | 396 const Experiment::Choice kEnableGpuRasterizationChoices[] = { |
340 { IDS_GENERIC_EXPERIMENT_CHOICE_DEFAULT, "", "" }, | 397 { IDS_GENERIC_EXPERIMENT_CHOICE_DEFAULT, "", "", 0 }, |
341 { IDS_GENERIC_EXPERIMENT_CHOICE_ENABLED, | 398 { IDS_GENERIC_EXPERIMENT_CHOICE_ENABLED, |
342 switches::kEnableGpuRasterization, "" }, | 399 switches::kEnableGpuRasterization, "", |
| 400 UMA_HISTOGRAM_ID_kEnableGpuRasterization }, |
343 { IDS_GENERIC_EXPERIMENT_CHOICE_DISABLED, | 401 { IDS_GENERIC_EXPERIMENT_CHOICE_DISABLED, |
344 switches::kDisableGpuRasterization, "" }, | 402 switches::kDisableGpuRasterization, "", |
| 403 UMA_HISTOGRAM_ID_kDisableGpuRasterization }, |
345 { IDS_FLAGS_FORCE_GPU_RASTERIZATION, | 404 { IDS_FLAGS_FORCE_GPU_RASTERIZATION, |
346 switches::kForceGpuRasterization, "" }, | 405 switches::kForceGpuRasterization, "", |
| 406 UMA_HISTOGRAM_ID_kForceGpuRasterization }, |
347 }; | 407 }; |
348 | 408 |
349 // We're using independent flags here (as opposed to a common flag with | 409 // We're using independent flags here (as opposed to a common flag with |
350 // different values) to be able to enable/disable the entire experience | 410 // different values) to be able to enable/disable the entire experience |
351 // associated with this feature server-side from the FieldTrial (the complete | 411 // associated with this feature server-side from the FieldTrial (the complete |
352 // experience includes other flag changes as well). It is not currently possible | 412 // experience includes other flag changes as well). It is not currently possible |
353 // to do that with "flag=value" flags. | 413 // to do that with "flag=value" flags. |
354 const Experiment::Choice kSearchButtonInOmniboxChoices[] = { | 414 const Experiment::Choice kSearchButtonInOmniboxChoices[] = { |
355 { IDS_GENERIC_EXPERIMENT_CHOICE_DEFAULT, "", "" }, | 415 { IDS_GENERIC_EXPERIMENT_CHOICE_DEFAULT, "", "", 0 }, |
356 { IDS_GENERIC_EXPERIMENT_CHOICE_DISABLED, | 416 { IDS_GENERIC_EXPERIMENT_CHOICE_DISABLED, |
357 switches::kDisableSearchButtonInOmnibox, ""}, | 417 switches::kDisableSearchButtonInOmnibox, "", |
| 418 UMA_HISTOGRAM_ID_kDisableSearchButtonInOmnibox }, |
358 { IDS_FLAGS_SEARCH_BUTTON_IN_OMNIBOX_ENABLE_FOR_STR, | 419 { IDS_FLAGS_SEARCH_BUTTON_IN_OMNIBOX_ENABLE_FOR_STR, |
359 switches::kEnableSearchButtonInOmniboxForStr, ""}, | 420 switches::kEnableSearchButtonInOmniboxForStr, "", |
| 421 UMA_HISTOGRAM_ID_kEnableSearchButtonInOmniboxForStr }, |
360 { IDS_FLAGS_SEARCH_BUTTON_IN_OMNIBOX_ENABLE_FOR_STR_OR_IIP, | 422 { IDS_FLAGS_SEARCH_BUTTON_IN_OMNIBOX_ENABLE_FOR_STR_OR_IIP, |
361 switches::kEnableSearchButtonInOmniboxForStrOrIip, ""}, | 423 switches::kEnableSearchButtonInOmniboxForStrOrIip, "", |
| 424 UMA_HISTOGRAM_ID_kEnableSearchButtonInOmniboxForStrOrIip }, |
362 { IDS_FLAGS_SEARCH_BUTTON_IN_OMNIBOX_ENABLED, | 425 { IDS_FLAGS_SEARCH_BUTTON_IN_OMNIBOX_ENABLED, |
363 switches::kEnableSearchButtonInOmniboxAlways, ""} | 426 switches::kEnableSearchButtonInOmniboxAlways, "", |
| 427 UMA_HISTOGRAM_ID_kEnableSearchButtonInOmniboxAlways } |
364 }; | 428 }; |
365 | 429 |
366 // See comment above for kSearchButtonInOmniboxChoices. The same reasoning | 430 // See comment above for kSearchButtonInOmniboxChoices. The same reasoning |
367 // applies here. | 431 // applies here. |
368 const Experiment::Choice kOriginChipChoices[] = { | 432 const Experiment::Choice kOriginChipChoices[] = { |
369 { IDS_GENERIC_EXPERIMENT_CHOICE_DEFAULT, "", "" }, | 433 { IDS_GENERIC_EXPERIMENT_CHOICE_DEFAULT, "", "", 0 }, |
370 { IDS_GENERIC_EXPERIMENT_CHOICE_DISABLED, switches::kDisableOriginChip, ""}, | 434 { IDS_GENERIC_EXPERIMENT_CHOICE_DISABLED, |
371 { IDS_FLAGS_ORIGIN_CHIP_ALWAYS, switches::kEnableOriginChipAlways, ""}, | 435 switches::kDisableOriginChip, "", UMA_HISTOGRAM_ID_kDisableOriginChip }, |
372 { IDS_FLAGS_ORIGIN_CHIP_ON_SRP, switches::kEnableOriginChipOnSrp, ""} | 436 { IDS_FLAGS_ORIGIN_CHIP_ALWAYS, |
| 437 switches::kEnableOriginChipAlways, "", |
| 438 UMA_HISTOGRAM_ID_kEnableOriginChipAlways }, |
| 439 { IDS_FLAGS_ORIGIN_CHIP_ON_SRP, |
| 440 switches::kEnableOriginChipOnSrp, "", |
| 441 UMA_HISTOGRAM_ID_kEnableOriginChipOnSrp } |
373 }; | 442 }; |
374 | 443 |
375 const Experiment::Choice kTouchScrollingModeChoices[] = { | 444 const Experiment::Choice kTouchScrollingModeChoices[] = { |
376 { IDS_GENERIC_EXPERIMENT_CHOICE_DEFAULT, "", "" }, | 445 { IDS_GENERIC_EXPERIMENT_CHOICE_DEFAULT, "", "", 0 }, |
377 { IDS_FLAGS_TOUCH_SCROLLING_MODE_TOUCHCANCEL, | 446 { IDS_FLAGS_TOUCH_SCROLLING_MODE_TOUCHCANCEL, |
378 switches::kTouchScrollingMode, | 447 switches::kTouchScrollingMode, |
379 switches::kTouchScrollingModeTouchcancel }, | 448 switches::kTouchScrollingModeTouchcancel, |
| 449 UMA_HISTOGRAM_ID_kTouchScrollingMode }, |
380 { IDS_FLAGS_TOUCH_SCROLLING_MODE_ASYNC_TOUCHMOVE, | 450 { IDS_FLAGS_TOUCH_SCROLLING_MODE_ASYNC_TOUCHMOVE, |
381 switches::kTouchScrollingMode, | 451 switches::kTouchScrollingMode, |
382 switches::kTouchScrollingModeAsyncTouchmove }, | 452 switches::kTouchScrollingModeAsyncTouchmove, |
| 453 UMA_HISTOGRAM_ID_kTouchScrollingMode }, |
383 { IDS_FLAGS_TOUCH_SCROLLING_MODE_SYNC_TOUCHMOVE, | 454 { IDS_FLAGS_TOUCH_SCROLLING_MODE_SYNC_TOUCHMOVE, |
384 switches::kTouchScrollingMode, | 455 switches::kTouchScrollingMode, |
385 switches::kTouchScrollingModeSyncTouchmove }, | 456 switches::kTouchScrollingModeSyncTouchmove, |
| 457 UMA_HISTOGRAM_ID_kTouchScrollingMode }, |
386 }; | 458 }; |
387 | 459 |
388 #if defined(ENABLE_APP_LIST) | 460 #if defined(ENABLE_APP_LIST) |
389 const Experiment::Choice kEnableSyncAppListChoices[] = { | 461 const Experiment::Choice kEnableSyncAppListChoices[] = { |
390 { IDS_GENERIC_EXPERIMENT_CHOICE_DEFAULT, "", "" }, | 462 { IDS_GENERIC_EXPERIMENT_CHOICE_DEFAULT, "", "", 0 }, |
391 { IDS_GENERIC_EXPERIMENT_CHOICE_ENABLED, | 463 { IDS_GENERIC_EXPERIMENT_CHOICE_ENABLED, |
392 app_list::switches::kEnableSyncAppList, "" }, | 464 app_list::switches::kEnableSyncAppList, "", |
| 465 UMA_HISTOGRAM_ID_kEnableSyncAppList }, |
393 { IDS_GENERIC_EXPERIMENT_CHOICE_DISABLED, | 466 { IDS_GENERIC_EXPERIMENT_CHOICE_DISABLED, |
394 app_list::switches::kDisableSyncAppList, "" }, | 467 app_list::switches::kDisableSyncAppList, "", |
| 468 UMA_HISTOGRAM_ID_kDisableSyncAppList }, |
395 }; | 469 }; |
396 #endif | 470 #endif |
397 | 471 |
398 const Experiment::Choice kExtensionContentVerificationChoices[] = { | 472 const Experiment::Choice kExtensionContentVerificationChoices[] = { |
399 { IDS_GENERIC_EXPERIMENT_CHOICE_DEFAULT, "", "" }, | 473 { IDS_GENERIC_EXPERIMENT_CHOICE_DEFAULT, "", "", 0 }, |
400 { IDS_FLAGS_EXTENSION_CONTENT_VERIFICATION_BOOTSTRAP, | 474 { IDS_FLAGS_EXTENSION_CONTENT_VERIFICATION_BOOTSTRAP, |
401 extensions::switches::kExtensionContentVerification, | 475 extensions::switches::kExtensionContentVerification, |
402 extensions::switches::kExtensionContentVerificationBootstrap }, | 476 extensions::switches::kExtensionContentVerificationBootstrap, |
| 477 UMA_HISTOGRAM_ID_kExtensionContentVerification }, |
403 { IDS_FLAGS_EXTENSION_CONTENT_VERIFICATION_ENFORCE, | 478 { IDS_FLAGS_EXTENSION_CONTENT_VERIFICATION_ENFORCE, |
404 extensions::switches::kExtensionContentVerification, | 479 extensions::switches::kExtensionContentVerification, |
405 extensions::switches::kExtensionContentVerificationEnforce }, | 480 extensions::switches::kExtensionContentVerificationEnforce, |
| 481 UMA_HISTOGRAM_ID_kExtensionContentVerification }, |
406 { IDS_FLAGS_EXTENSION_CONTENT_VERIFICATION_ENFORCE_STRICT, | 482 { IDS_FLAGS_EXTENSION_CONTENT_VERIFICATION_ENFORCE_STRICT, |
407 extensions::switches::kExtensionContentVerification, | 483 extensions::switches::kExtensionContentVerification, |
408 extensions::switches::kExtensionContentVerificationEnforceStrict }, | 484 extensions::switches::kExtensionContentVerificationEnforceStrict, |
| 485 UMA_HISTOGRAM_ID_kExtensionContentVerification }, |
409 }; | 486 }; |
410 | 487 |
411 // Using independent flags (instead of flag=value flags) to be able to | 488 // Using independent flags (instead of flag=value flags) to be able to |
412 // associate the version with a FieldTrial. FieldTrials don't currently support | 489 // associate the version with a FieldTrial. FieldTrials don't currently support |
413 // flag=value flags. | 490 // flag=value flags. |
414 const Experiment::Choice kSSLInterstitialVersions[] = { | 491 const Experiment::Choice kSSLInterstitialVersions[] = { |
415 { IDS_GENERIC_EXPERIMENT_CHOICE_DEFAULT, "", "" }, | 492 { IDS_GENERIC_EXPERIMENT_CHOICE_DEFAULT, "", "", 0 }, |
416 { IDS_FLAGS_SSL_INTERSTITIAL_VERSION_V1, | 493 { IDS_FLAGS_SSL_INTERSTITIAL_VERSION_V1, |
417 switches::kSSLInterstitialVersionV1, "" }, | 494 switches::kSSLInterstitialVersionV1, "", |
| 495 UMA_HISTOGRAM_ID_kSSLInterstitialVersionV1 }, |
418 { IDS_FLAGS_SSL_INTERSTITIAL_VERSION_V2_GRAY, | 496 { IDS_FLAGS_SSL_INTERSTITIAL_VERSION_V2_GRAY, |
419 switches::kSSLInterstitialVersionV2Gray, "" }, | 497 switches::kSSLInterstitialVersionV2Gray, "", |
| 498 UMA_HISTOGRAM_ID_kSSLInterstitialVersionV2Gray }, |
420 { IDS_FLAGS_SSL_INTERSTITIAL_VERSION_V2_COLORFUL, | 499 { IDS_FLAGS_SSL_INTERSTITIAL_VERSION_V2_COLORFUL, |
421 switches::kSSLInterstitialVersionV2Colorful, "" }, | 500 switches::kSSLInterstitialVersionV2Colorful, "", |
| 501 UMA_HISTOGRAM_ID_kSSLInterstitialVersionV2Colorful }, |
422 }; | 502 }; |
423 | 503 |
424 // Using independent flags (instead of flag=value flags) to be able to | 504 // Using independent flags (instead of flag=value flags) to be able to |
425 // associate the version with a FieldTrial. FieldTrials don't currently support | 505 // associate the version with a FieldTrial. FieldTrials don't currently support |
426 // flag=value flags. | 506 // flag=value flags. |
427 const Experiment::Choice kMalwareInterstitialVersions[] = { | 507 const Experiment::Choice kMalwareInterstitialVersions[] = { |
428 { IDS_GENERIC_EXPERIMENT_CHOICE_DEFAULT, "", "" }, | 508 { IDS_GENERIC_EXPERIMENT_CHOICE_DEFAULT, "", "", 0 }, |
429 { IDS_FLAGS_MALWARE_INTERSTITIAL_VERSION_V2, | 509 { IDS_FLAGS_MALWARE_INTERSTITIAL_VERSION_V2, |
430 switches::kMalwareInterstitialVersionV2, "" }, | 510 switches::kMalwareInterstitialVersionV2, "", |
| 511 UMA_HISTOGRAM_ID_kMalwareInterstitialVersionV2 }, |
431 { IDS_FLAGS_MALWARE_INTERSTITIAL_VERSION_V3, | 512 { IDS_FLAGS_MALWARE_INTERSTITIAL_VERSION_V3, |
432 switches::kMalwareInterstitialVersionV3, "" }, | 513 switches::kMalwareInterstitialVersionV3, "", |
| 514 UMA_HISTOGRAM_ID_kMalwareInterstitialVersionV3 }, |
433 }; | 515 }; |
434 | 516 |
435 #if defined(OS_CHROMEOS) | 517 #if defined(OS_CHROMEOS) |
436 const Experiment::Choice kEnableFileManagerMTPChoices[] = { | 518 const Experiment::Choice kEnableFileManagerMTPChoices[] = { |
437 { IDS_GENERIC_EXPERIMENT_CHOICE_DEFAULT, "", "" }, | 519 { IDS_GENERIC_EXPERIMENT_CHOICE_DEFAULT, "", "", 0 }, |
438 { IDS_GENERIC_EXPERIMENT_CHOICE_ENABLED, | 520 { IDS_GENERIC_EXPERIMENT_CHOICE_ENABLED, |
439 chromeos::switches::kEnableFileManagerMTP, "true" }, | 521 chromeos::switches::kEnableFileManagerMTP, "true", |
| 522 UMA_HISTOGRAM_ID_kEnableFileManagerMTP }, |
440 { IDS_GENERIC_EXPERIMENT_CHOICE_DISABLED, | 523 { IDS_GENERIC_EXPERIMENT_CHOICE_DISABLED, |
441 chromeos::switches::kEnableFileManagerMTP, "false" } | 524 chromeos::switches::kEnableFileManagerMTP, "false", |
| 525 UMA_HISTOGRAM_ID_kEnableFileManagerMTP } |
442 }; | 526 }; |
443 | 527 |
444 const Experiment::Choice kEnableFileManagerNewGalleryChoices[] = { | 528 const Experiment::Choice kEnableFileManagerNewGalleryChoices[] = { |
445 { IDS_GENERIC_EXPERIMENT_CHOICE_DEFAULT, "", ""}, | 529 { IDS_GENERIC_EXPERIMENT_CHOICE_DEFAULT, "", "", 0 }, |
446 { IDS_GENERIC_EXPERIMENT_CHOICE_ENABLED, | 530 { IDS_GENERIC_EXPERIMENT_CHOICE_ENABLED, |
447 chromeos::switches::kFileManagerEnableNewGallery, "true"}, | 531 chromeos::switches::kFileManagerEnableNewGallery, "true", |
| 532 UMA_HISTOGRAM_ID_kFileManagerEnableNewGallery }, |
448 { IDS_GENERIC_EXPERIMENT_CHOICE_DISABLED, | 533 { IDS_GENERIC_EXPERIMENT_CHOICE_DISABLED, |
449 chromeos::switches::kFileManagerEnableNewGallery, "false"} | 534 chromeos::switches::kFileManagerEnableNewGallery, "false", |
| 535 UMA_HISTOGRAM_ID_kFileManagerEnableNewGallery } |
450 }; | 536 }; |
451 #endif | 537 #endif |
452 | 538 |
453 const Experiment::Choice kEnableSettingsWindowChoices[] = { | 539 const Experiment::Choice kEnableSettingsWindowChoices[] = { |
454 { IDS_GENERIC_EXPERIMENT_CHOICE_DEFAULT, "", "" }, | 540 { IDS_GENERIC_EXPERIMENT_CHOICE_DEFAULT, "", "", 0 }, |
455 { IDS_GENERIC_EXPERIMENT_CHOICE_ENABLED, | 541 { IDS_GENERIC_EXPERIMENT_CHOICE_ENABLED, |
456 ::switches::kEnableSettingsWindow, "" }, | 542 ::switches::kEnableSettingsWindow, "", |
| 543 UMA_HISTOGRAM_ID_kEnableSettingsWindow }, |
457 { IDS_GENERIC_EXPERIMENT_CHOICE_DISABLED, | 544 { IDS_GENERIC_EXPERIMENT_CHOICE_DISABLED, |
458 ::switches::kDisableSettingsWindow, "" }, | 545 ::switches::kDisableSettingsWindow, "", |
| 546 UMA_HISTOGRAM_ID_kDisableSettingsWindow }, |
459 }; | 547 }; |
460 | 548 |
461 // RECORDING USER METRICS FOR FLAGS: | 549 // RECORDING USER METRICS FOR FLAGS: |
462 // ----------------------------------------------------------------------------- | 550 // ----------------------------------------------------------------------------- |
463 // The first line of the experiment is the internal name. If you'd like to | 551 // The first line of the experiment is the internal name. If you'd like to |
464 // gather statistics about the usage of your flag, you should append a marker | 552 // gather statistics about the usage of your flag, you should append a marker |
465 // comment to the end of the feature name, like so: | 553 // comment to the end of the feature name, like so: |
466 // "my-special-feature", // FLAGS:RECORD_UMA | 554 // "my-special-feature", // FLAGS:RECORD_UMA |
467 // | 555 // |
468 // After doing that, run | 556 // After doing that, run |
(...skipping 24 matching lines...) Expand all Loading... |
493 // array of choices. | 581 // array of choices. |
494 // See the documentation of Experiment for details on the fields. | 582 // See the documentation of Experiment for details on the fields. |
495 // | 583 // |
496 // When adding a new choice, add it to the end of the list. | 584 // When adding a new choice, add it to the end of the list. |
497 const Experiment kExperiments[] = { | 585 const Experiment kExperiments[] = { |
498 { | 586 { |
499 "ignore-gpu-blacklist", | 587 "ignore-gpu-blacklist", |
500 IDS_FLAGS_IGNORE_GPU_BLACKLIST_NAME, | 588 IDS_FLAGS_IGNORE_GPU_BLACKLIST_NAME, |
501 IDS_FLAGS_IGNORE_GPU_BLACKLIST_DESCRIPTION, | 589 IDS_FLAGS_IGNORE_GPU_BLACKLIST_DESCRIPTION, |
502 kOsAll, | 590 kOsAll, |
503 SINGLE_VALUE_TYPE(switches::kIgnoreGpuBlacklist) | 591 SINGLE_VALUE_TYPE(switches::kIgnoreGpuBlacklist, |
| 592 UMA_HISTOGRAM_ID_kIgnoreGpuBlacklist) |
504 }, | 593 }, |
505 { | 594 { |
506 "threaded-compositing-mode", | 595 "threaded-compositing-mode", |
507 IDS_FLAGS_THREADED_COMPOSITING_MODE_NAME, | 596 IDS_FLAGS_THREADED_COMPOSITING_MODE_NAME, |
508 IDS_FLAGS_THREADED_COMPOSITING_MODE_DESCRIPTION, | 597 IDS_FLAGS_THREADED_COMPOSITING_MODE_DESCRIPTION, |
509 #if !defined(USE_AURA) | 598 #if !defined(USE_AURA) |
510 kOsLinux, | 599 kOsLinux, |
511 #else | 600 #else |
512 0, | 601 0, |
513 #endif | 602 #endif |
514 ENABLE_DISABLE_VALUE_TYPE(switches::kEnableThreadedCompositing, | 603 ENABLE_DISABLE_VALUE_TYPE(switches::kEnableThreadedCompositing, |
515 switches::kDisableThreadedCompositing) | 604 UMA_HISTOGRAM_ID_kEnableThreadedCompositing, |
| 605 switches::kDisableThreadedCompositing, |
| 606 UMA_HISTOGRAM_ID_kDisableThreadedCompositing) |
516 }, | 607 }, |
517 { | 608 { |
518 "force-accelerated-composited-scrolling", | 609 "force-accelerated-composited-scrolling", |
519 IDS_FLAGS_FORCE_ACCELERATED_OVERFLOW_SCROLL_MODE_NAME, | 610 IDS_FLAGS_FORCE_ACCELERATED_OVERFLOW_SCROLL_MODE_NAME, |
520 IDS_FLAGS_FORCE_ACCELERATED_OVERFLOW_SCROLL_MODE_DESCRIPTION, | 611 IDS_FLAGS_FORCE_ACCELERATED_OVERFLOW_SCROLL_MODE_DESCRIPTION, kOsAll, |
521 kOsAll, | 612 ENABLE_DISABLE_VALUE_TYPE( |
522 ENABLE_DISABLE_VALUE_TYPE(switches::kEnableAcceleratedOverflowScroll, | 613 switches::kEnableAcceleratedOverflowScroll, |
523 switches::kDisableAcceleratedOverflowScroll) | 614 UMA_HISTOGRAM_ID_kEnableAcceleratedOverflowScroll, |
| 615 switches::kDisableAcceleratedOverflowScroll, |
| 616 UMA_HISTOGRAM_ID_kDisableAcceleratedOverflowScroll) |
524 }, | 617 }, |
525 { | 618 { |
526 "disable_layer_squashing", | 619 "disable_layer_squashing", |
527 IDS_FLAGS_DISABLE_LAYER_SQUASHING_NAME, | 620 IDS_FLAGS_DISABLE_LAYER_SQUASHING_NAME, |
528 IDS_FLAGS_DISABLE_LAYER_SQUASHING_DESCRIPTION, | 621 IDS_FLAGS_DISABLE_LAYER_SQUASHING_DESCRIPTION, |
529 kOsAll, | 622 kOsAll, |
530 SINGLE_VALUE_TYPE(switches::kDisableLayerSquashing) | 623 SINGLE_VALUE_TYPE(switches::kDisableLayerSquashing, |
| 624 UMA_HISTOGRAM_ID_kDisableLayerSquashing) |
531 }, | 625 }, |
532 #if defined(OS_WIN) | 626 #if defined(OS_WIN) |
533 { | 627 { |
534 "disable-direct-write", | 628 "disable-direct-write", |
535 IDS_FLAGS_DISABLE_DIRECT_WRITE_NAME, | 629 IDS_FLAGS_DISABLE_DIRECT_WRITE_NAME, |
536 IDS_FLAGS_DISABLE_DIRECT_WRITE_DESCRIPTION, | 630 IDS_FLAGS_DISABLE_DIRECT_WRITE_DESCRIPTION, |
537 kOsWin, | 631 kOsWin, |
538 SINGLE_VALUE_TYPE(switches::kDisableDirectWrite) | 632 SINGLE_VALUE_TYPE(switches::kDisableDirectWrite, |
| 633 UMA_HISTOGRAM_ID_kDisableDirectWrite) |
539 }, | 634 }, |
540 #endif | 635 #endif |
541 { | 636 { |
542 "enable-experimental-canvas-features", | 637 "enable-experimental-canvas-features", |
543 IDS_FLAGS_ENABLE_EXPERIMENTAL_CANVAS_FEATURES_NAME, | 638 IDS_FLAGS_ENABLE_EXPERIMENTAL_CANVAS_FEATURES_NAME, |
544 IDS_FLAGS_ENABLE_EXPERIMENTAL_CANVAS_FEATURES_DESCRIPTION, | 639 IDS_FLAGS_ENABLE_EXPERIMENTAL_CANVAS_FEATURES_DESCRIPTION, |
545 kOsAll, | 640 kOsAll, |
546 SINGLE_VALUE_TYPE(switches::kEnableExperimentalCanvasFeatures) | 641 SINGLE_VALUE_TYPE(switches::kEnableExperimentalCanvasFeatures, |
| 642 UMA_HISTOGRAM_ID_kEnableExperimentalCanvasFeatures) |
547 }, | 643 }, |
548 { | 644 { |
549 "disable-accelerated-2d-canvas", | 645 "disable-accelerated-2d-canvas", |
550 IDS_FLAGS_DISABLE_ACCELERATED_2D_CANVAS_NAME, | 646 IDS_FLAGS_DISABLE_ACCELERATED_2D_CANVAS_NAME, |
551 IDS_FLAGS_DISABLE_ACCELERATED_2D_CANVAS_DESCRIPTION, | 647 IDS_FLAGS_DISABLE_ACCELERATED_2D_CANVAS_DESCRIPTION, |
552 kOsAll, | 648 kOsAll, |
553 SINGLE_VALUE_TYPE(switches::kDisableAccelerated2dCanvas) | 649 SINGLE_VALUE_TYPE(switches::kDisableAccelerated2dCanvas, |
| 650 UMA_HISTOGRAM_ID_kDisableAccelerated2dCanvas) |
554 }, | 651 }, |
555 { | 652 { |
556 "composited-layer-borders", | 653 "composited-layer-borders", |
557 IDS_FLAGS_COMPOSITED_LAYER_BORDERS, | 654 IDS_FLAGS_COMPOSITED_LAYER_BORDERS, |
558 IDS_FLAGS_COMPOSITED_LAYER_BORDERS_DESCRIPTION, | 655 IDS_FLAGS_COMPOSITED_LAYER_BORDERS_DESCRIPTION, |
559 kOsAll, | 656 kOsAll, |
560 SINGLE_VALUE_TYPE(cc::switches::kShowCompositedLayerBorders) | 657 SINGLE_VALUE_TYPE(cc::switches::kShowCompositedLayerBorders, |
| 658 UMA_HISTOGRAM_ID_kShowCompositedLayerBorders) |
561 }, | 659 }, |
562 { | 660 { |
563 "show-fps-counter", | 661 "show-fps-counter", |
564 IDS_FLAGS_SHOW_FPS_COUNTER, | 662 IDS_FLAGS_SHOW_FPS_COUNTER, |
565 IDS_FLAGS_SHOW_FPS_COUNTER_DESCRIPTION, | 663 IDS_FLAGS_SHOW_FPS_COUNTER_DESCRIPTION, |
566 kOsAll, | 664 kOsAll, |
567 SINGLE_VALUE_TYPE(cc::switches::kShowFPSCounter) | 665 SINGLE_VALUE_TYPE(cc::switches::kShowFPSCounter, |
| 666 UMA_HISTOGRAM_ID_kShowFPSCounter) |
568 }, | 667 }, |
569 { | 668 { |
570 "disable-webgl", | 669 "disable-webgl", |
571 IDS_FLAGS_DISABLE_WEBGL_NAME, | 670 IDS_FLAGS_DISABLE_WEBGL_NAME, |
572 IDS_FLAGS_DISABLE_WEBGL_DESCRIPTION, | 671 IDS_FLAGS_DISABLE_WEBGL_DESCRIPTION, |
573 kOsAll, | 672 kOsAll, |
574 SINGLE_VALUE_TYPE(switches::kDisableExperimentalWebGL) | 673 SINGLE_VALUE_TYPE(switches::kDisableExperimentalWebGL, |
| 674 UMA_HISTOGRAM_ID_kDisableExperimentalWebGL) |
575 }, | 675 }, |
576 { | 676 { |
577 "disable-webrtc", | 677 "disable-webrtc", |
578 IDS_FLAGS_DISABLE_WEBRTC_NAME, | 678 IDS_FLAGS_DISABLE_WEBRTC_NAME, |
579 IDS_FLAGS_DISABLE_WEBRTC_DESCRIPTION, | 679 IDS_FLAGS_DISABLE_WEBRTC_DESCRIPTION, |
580 kOsAndroid, | 680 kOsAndroid, |
581 #if defined(OS_ANDROID) | 681 #if defined(OS_ANDROID) |
582 SINGLE_VALUE_TYPE(switches::kDisableWebRTC) | 682 SINGLE_VALUE_TYPE(switches::kDisableWebRTC, |
| 683 UMA_HISTOGRAM_ID_kDisableWebRTC) |
583 #else | 684 #else |
584 SINGLE_VALUE_TYPE("") | 685 SINGLE_VALUE_TYPE("", 0) |
585 #endif | 686 #endif |
586 }, | 687 }, |
587 #if defined(ENABLE_WEBRTC) | 688 #if defined(ENABLE_WEBRTC) |
588 { | 689 { |
589 "disable-device-enumeration", | 690 "disable-device-enumeration", |
590 IDS_FLAGS_DISABLE_DEVICE_ENUMERATION_NAME, | 691 IDS_FLAGS_DISABLE_DEVICE_ENUMERATION_NAME, |
591 IDS_FLAGS_DISABLE_DEVICE_ENUMERATION_DESCRIPTION, | 692 IDS_FLAGS_DISABLE_DEVICE_ENUMERATION_DESCRIPTION, |
592 kOsAll, | 693 kOsAll, |
593 SINGLE_VALUE_TYPE(switches::kDisableDeviceEnumeration) | 694 SINGLE_VALUE_TYPE(switches::kDisableDeviceEnumeration, |
| 695 UMA_HISTOGRAM_ID_kDisableDeviceEnumeration) |
594 }, | 696 }, |
595 { | 697 { |
596 "disable-webrtc-hw-decoding", | 698 "disable-webrtc-hw-decoding", |
597 IDS_FLAGS_DISABLE_WEBRTC_HW_DECODING_NAME, | 699 IDS_FLAGS_DISABLE_WEBRTC_HW_DECODING_NAME, |
598 IDS_FLAGS_DISABLE_WEBRTC_HW_DECODING_DESCRIPTION, | 700 IDS_FLAGS_DISABLE_WEBRTC_HW_DECODING_DESCRIPTION, |
599 kOsAndroid | kOsCrOS, | 701 kOsAndroid | kOsCrOS, |
600 SINGLE_VALUE_TYPE(switches::kDisableWebRtcHWDecoding) | 702 SINGLE_VALUE_TYPE(switches::kDisableWebRtcHWDecoding, |
| 703 UMA_HISTOGRAM_ID_kDisableWebRtcHWDecoding) |
601 }, | 704 }, |
602 { | 705 { |
603 "disable-webrtc-hw-encoding", | 706 "disable-webrtc-hw-encoding", |
604 IDS_FLAGS_DISABLE_WEBRTC_HW_ENCODING_NAME, | 707 IDS_FLAGS_DISABLE_WEBRTC_HW_ENCODING_NAME, |
605 IDS_FLAGS_DISABLE_WEBRTC_HW_ENCODING_DESCRIPTION, | 708 IDS_FLAGS_DISABLE_WEBRTC_HW_ENCODING_DESCRIPTION, |
606 kOsAndroid | kOsCrOS, | 709 kOsAndroid | kOsCrOS, |
607 SINGLE_VALUE_TYPE(switches::kDisableWebRtcHWEncoding) | 710 SINGLE_VALUE_TYPE(switches::kDisableWebRtcHWEncoding, |
| 711 UMA_HISTOGRAM_ID_kDisableWebRtcHWEncoding) |
608 }, | 712 }, |
609 #endif | 713 #endif |
610 #if defined(OS_ANDROID) | 714 #if defined(OS_ANDROID) |
611 { | 715 { |
612 "disable-webaudio", | 716 "disable-webaudio", |
613 IDS_FLAGS_DISABLE_WEBAUDIO_NAME, | 717 IDS_FLAGS_DISABLE_WEBAUDIO_NAME, |
614 IDS_FLAGS_DISABLE_WEBAUDIO_DESCRIPTION, | 718 IDS_FLAGS_DISABLE_WEBAUDIO_DESCRIPTION, |
615 kOsAndroid, | 719 kOsAndroid, |
616 SINGLE_VALUE_TYPE(switches::kDisableWebAudio) | 720 SINGLE_VALUE_TYPE(switches::kDisableWebAudio, |
| 721 UMA_HISTOGRAM_ID_kDisableWebAudio) |
617 }, | 722 }, |
618 #endif | 723 #endif |
619 { | 724 { |
620 "enable-compositing-for-fixed-position", | 725 "enable-compositing-for-fixed-position", |
621 IDS_FLAGS_COMPOSITING_FOR_FIXED_POSITION_NAME, | 726 IDS_FLAGS_COMPOSITING_FOR_FIXED_POSITION_NAME, |
622 IDS_FLAGS_COMPOSITING_FOR_FIXED_POSITION_DESCRIPTION, | 727 IDS_FLAGS_COMPOSITING_FOR_FIXED_POSITION_DESCRIPTION, |
623 kOsAll, | 728 kOsAll, |
624 MULTI_VALUE_TYPE(kEnableCompositingForFixedPositionChoices) | 729 MULTI_VALUE_TYPE(kEnableCompositingForFixedPositionChoices) |
625 }, | 730 }, |
626 { | 731 { |
(...skipping 10 matching lines...) Expand all Loading... |
637 kOsAll, | 742 kOsAll, |
638 MULTI_VALUE_TYPE(kEnableAcceleratedFixedRootBackgroundChoices) | 743 MULTI_VALUE_TYPE(kEnableAcceleratedFixedRootBackgroundChoices) |
639 }, | 744 }, |
640 // Native client is compiled out when DISABLE_NACL is defined. | 745 // Native client is compiled out when DISABLE_NACL is defined. |
641 #if !defined(DISABLE_NACL) | 746 #if !defined(DISABLE_NACL) |
642 { | 747 { |
643 "enable-nacl", // FLAGS:RECORD_UMA | 748 "enable-nacl", // FLAGS:RECORD_UMA |
644 IDS_FLAGS_ENABLE_NACL_NAME, | 749 IDS_FLAGS_ENABLE_NACL_NAME, |
645 IDS_FLAGS_ENABLE_NACL_DESCRIPTION, | 750 IDS_FLAGS_ENABLE_NACL_DESCRIPTION, |
646 kOsAll, | 751 kOsAll, |
647 SINGLE_VALUE_TYPE(switches::kEnableNaCl) | 752 SINGLE_VALUE_TYPE(switches::kEnableNaCl, UMA_HISTOGRAM_ID_kEnableNaCl) |
648 }, | 753 }, |
649 { | 754 { |
650 "enable-nacl-debug", // FLAGS:RECORD_UMA | 755 "enable-nacl-debug", // FLAGS:RECORD_UMA |
651 IDS_FLAGS_ENABLE_NACL_DEBUG_NAME, | 756 IDS_FLAGS_ENABLE_NACL_DEBUG_NAME, |
652 IDS_FLAGS_ENABLE_NACL_DEBUG_DESCRIPTION, | 757 IDS_FLAGS_ENABLE_NACL_DEBUG_DESCRIPTION, |
653 kOsDesktop, | 758 kOsDesktop, |
654 SINGLE_VALUE_TYPE(switches::kEnableNaClDebug) | 759 SINGLE_VALUE_TYPE(switches::kEnableNaClDebug, |
| 760 UMA_HISTOGRAM_ID_kEnableNaClDebug) |
655 }, | 761 }, |
656 { | 762 { |
657 "disable-pnacl", // FLAGS:RECORD_UMA | 763 "disable-pnacl", // FLAGS:RECORD_UMA |
658 IDS_FLAGS_DISABLE_PNACL_NAME, | 764 IDS_FLAGS_DISABLE_PNACL_NAME, |
659 IDS_FLAGS_DISABLE_PNACL_DESCRIPTION, | 765 IDS_FLAGS_DISABLE_PNACL_DESCRIPTION, |
660 kOsDesktop, | 766 kOsDesktop, |
661 SINGLE_VALUE_TYPE(switches::kDisablePnacl) | 767 SINGLE_VALUE_TYPE(switches::kDisablePnacl, |
| 768 UMA_HISTOGRAM_ID_kDisablePnacl) |
662 }, | 769 }, |
663 { | 770 { |
664 "nacl-debug-mask", // FLAGS:RECORD_UMA | 771 "nacl-debug-mask", // FLAGS:RECORD_UMA |
665 IDS_FLAGS_NACL_DEBUG_MASK_NAME, | 772 IDS_FLAGS_NACL_DEBUG_MASK_NAME, |
666 IDS_FLAGS_NACL_DEBUG_MASK_DESCRIPTION, | 773 IDS_FLAGS_NACL_DEBUG_MASK_DESCRIPTION, |
667 kOsDesktop, | 774 kOsDesktop, |
668 MULTI_VALUE_TYPE(kNaClDebugMaskChoices) | 775 MULTI_VALUE_TYPE(kNaClDebugMaskChoices) |
669 }, | 776 }, |
670 #endif | 777 #endif |
671 { | 778 { |
672 "extension-apis", // FLAGS:RECORD_UMA | 779 "extension-apis", // FLAGS:RECORD_UMA |
673 IDS_FLAGS_EXPERIMENTAL_EXTENSION_APIS_NAME, | 780 IDS_FLAGS_EXPERIMENTAL_EXTENSION_APIS_NAME, |
674 IDS_FLAGS_EXPERIMENTAL_EXTENSION_APIS_DESCRIPTION, | 781 IDS_FLAGS_EXPERIMENTAL_EXTENSION_APIS_DESCRIPTION, |
675 kOsDesktop, | 782 kOsDesktop, |
676 SINGLE_VALUE_TYPE(extensions::switches::kEnableExperimentalExtensionApis) | 783 SINGLE_VALUE_TYPE(extensions::switches::kEnableExperimentalExtensionApis, |
| 784 UMA_HISTOGRAM_ID_kEnableExperimentalExtensionApis) |
677 }, | 785 }, |
678 { | 786 { |
679 "extensions-on-chrome-urls", | 787 "extensions-on-chrome-urls", |
680 IDS_FLAGS_EXTENSIONS_ON_CHROME_URLS_NAME, | 788 IDS_FLAGS_EXTENSIONS_ON_CHROME_URLS_NAME, |
681 IDS_FLAGS_EXTENSIONS_ON_CHROME_URLS_DESCRIPTION, | 789 IDS_FLAGS_EXTENSIONS_ON_CHROME_URLS_DESCRIPTION, |
682 kOsAll, | 790 kOsAll, |
683 SINGLE_VALUE_TYPE(extensions::switches::kExtensionsOnChromeURLs) | 791 SINGLE_VALUE_TYPE(extensions::switches::kExtensionsOnChromeURLs, |
| 792 UMA_HISTOGRAM_ID_kExtensionsOnChromeURLs) |
684 }, | 793 }, |
685 { | 794 { |
686 "enable-fast-unload", | 795 "enable-fast-unload", |
687 IDS_FLAGS_ENABLE_FAST_UNLOAD_NAME, | 796 IDS_FLAGS_ENABLE_FAST_UNLOAD_NAME, |
688 IDS_FLAGS_ENABLE_FAST_UNLOAD_DESCRIPTION, | 797 IDS_FLAGS_ENABLE_FAST_UNLOAD_DESCRIPTION, |
689 kOsAll, | 798 kOsAll, |
690 SINGLE_VALUE_TYPE(switches::kEnableFastUnload) | 799 SINGLE_VALUE_TYPE(switches::kEnableFastUnload, |
| 800 UMA_HISTOGRAM_ID_kEnableFastUnload) |
691 }, | 801 }, |
692 { | 802 { |
693 "enable-app-window-controls", | 803 "enable-app-window-controls", |
694 IDS_FLAGS_ENABLE_APP_WINDOW_CONTROLS_NAME, | 804 IDS_FLAGS_ENABLE_APP_WINDOW_CONTROLS_NAME, |
695 IDS_FLAGS_ENABLE_APP_WINDOW_CONTROLS_DESCRIPTION, | 805 IDS_FLAGS_ENABLE_APP_WINDOW_CONTROLS_DESCRIPTION, |
696 kOsDesktop, | 806 kOsDesktop, |
697 SINGLE_VALUE_TYPE(switches::kEnableAppWindowControls) | 807 SINGLE_VALUE_TYPE(switches::kEnableAppWindowControls, |
| 808 UMA_HISTOGRAM_ID_kEnableAppWindowControls) |
698 }, | 809 }, |
699 { | 810 { |
700 "disable-hyperlink-auditing", | 811 "disable-hyperlink-auditing", |
701 IDS_FLAGS_DISABLE_HYPERLINK_AUDITING_NAME, | 812 IDS_FLAGS_DISABLE_HYPERLINK_AUDITING_NAME, |
702 IDS_FLAGS_DISABLE_HYPERLINK_AUDITING_DESCRIPTION, | 813 IDS_FLAGS_DISABLE_HYPERLINK_AUDITING_DESCRIPTION, |
703 kOsAll, | 814 kOsAll, |
704 SINGLE_VALUE_TYPE(switches::kNoPings) | 815 SINGLE_VALUE_TYPE(switches::kNoPings, UMA_HISTOGRAM_ID_kNoPings) |
705 }, | 816 }, |
706 #if defined(OS_ANDROID) | 817 #if defined(OS_ANDROID) |
707 { | 818 { |
708 "enable-new-ntp", | 819 "enable-new-ntp", |
709 IDS_FLAGS_ENABLE_NEW_NTP, | 820 IDS_FLAGS_ENABLE_NEW_NTP, |
710 IDS_FLAGS_ENABLE_NEW_NTP_DESCRIPTION, | 821 IDS_FLAGS_ENABLE_NEW_NTP_DESCRIPTION, |
711 kOsAndroid, | 822 kOsAndroid, |
712 ENABLE_DISABLE_VALUE_TYPE(switches::kEnableNewNTP, | 823 ENABLE_DISABLE_VALUE_TYPE(switches::kEnableNewNTP, |
713 switches::kDisableNewNTP) | 824 UMA_HISTOGRAM_ID_kEnableNewNTP, |
| 825 switches::kDisableNewNTP, |
| 826 UMA_HISTOGRAM_ID_kDisableNewNTP) |
714 }, | 827 }, |
715 { | 828 { |
716 "contextual-search", | 829 "contextual-search", |
717 IDS_FLAGS_ENABLE_CONTEXTUAL_SEARCH, | 830 IDS_FLAGS_ENABLE_CONTEXTUAL_SEARCH, |
718 IDS_FLAGS_ENABLE_CONTEXTUAL_SEARCH_DESCRIPTION, | 831 IDS_FLAGS_ENABLE_CONTEXTUAL_SEARCH_DESCRIPTION, |
719 kOsAndroid, | 832 kOsAndroid, |
720 ENABLE_DISABLE_VALUE_TYPE(switches::kEnableContextualSearch, | 833 ENABLE_DISABLE_VALUE_TYPE(switches::kEnableContextualSearch, |
721 switches::kDisableContextualSearch) | 834 UMA_HISTOGRAM_ID_kEnableContextualSearch, |
| 835 switches::kDisableContextualSearch, |
| 836 UMA_HISTOGRAM_ID_kDisableContextualSearch) |
722 }, | 837 }, |
723 #endif | 838 #endif |
724 { | 839 { |
725 "show-autofill-type-predictions", | 840 "show-autofill-type-predictions", |
726 IDS_FLAGS_SHOW_AUTOFILL_TYPE_PREDICTIONS_NAME, | 841 IDS_FLAGS_SHOW_AUTOFILL_TYPE_PREDICTIONS_NAME, |
727 IDS_FLAGS_SHOW_AUTOFILL_TYPE_PREDICTIONS_DESCRIPTION, | 842 IDS_FLAGS_SHOW_AUTOFILL_TYPE_PREDICTIONS_DESCRIPTION, |
728 kOsAll, | 843 kOsAll, |
729 SINGLE_VALUE_TYPE(autofill::switches::kShowAutofillTypePredictions) | 844 SINGLE_VALUE_TYPE(autofill::switches::kShowAutofillTypePredictions, |
| 845 UMA_HISTOGRAM_ID_kShowAutofillTypePredictions) |
730 }, | 846 }, |
731 { | 847 { |
732 "enable-gesture-tap-highlight", | 848 "enable-gesture-tap-highlight", |
733 IDS_FLAGS_ENABLE_GESTURE_TAP_HIGHLIGHTING_NAME, | 849 IDS_FLAGS_ENABLE_GESTURE_TAP_HIGHLIGHTING_NAME, |
734 IDS_FLAGS_ENABLE_GESTURE_TAP_HIGHLIGHTING_DESCRIPTION, | 850 IDS_FLAGS_ENABLE_GESTURE_TAP_HIGHLIGHTING_DESCRIPTION, |
735 kOsLinux | kOsCrOS | kOsWin | kOsAndroid, | 851 kOsLinux | kOsCrOS | kOsWin | kOsAndroid, |
736 ENABLE_DISABLE_VALUE_TYPE(switches::kEnableGestureTapHighlight, | 852 ENABLE_DISABLE_VALUE_TYPE(switches::kEnableGestureTapHighlight, |
737 switches::kDisableGestureTapHighlight) | 853 UMA_HISTOGRAM_ID_kEnableGestureTapHighlight, |
| 854 switches::kDisableGestureTapHighlight, |
| 855 UMA_HISTOGRAM_ID_kDisableGestureTapHighlight) |
738 }, | 856 }, |
739 { | 857 { |
740 "enable-smooth-scrolling", // FLAGS:RECORD_UMA | 858 "enable-smooth-scrolling", // FLAGS:RECORD_UMA |
741 IDS_FLAGS_ENABLE_SMOOTH_SCROLLING_NAME, | 859 IDS_FLAGS_ENABLE_SMOOTH_SCROLLING_NAME, |
742 IDS_FLAGS_ENABLE_SMOOTH_SCROLLING_DESCRIPTION, | 860 IDS_FLAGS_ENABLE_SMOOTH_SCROLLING_DESCRIPTION, |
743 // Can't expose the switch unless the code is compiled in. | 861 // Can't expose the switch unless the code is compiled in. |
744 // On by default for the Mac (different implementation in WebKit). | 862 // On by default for the Mac (different implementation in WebKit). |
745 kOsLinux, | 863 kOsLinux, |
746 SINGLE_VALUE_TYPE(switches::kEnableSmoothScrolling) | 864 SINGLE_VALUE_TYPE(switches::kEnableSmoothScrolling, |
| 865 UMA_HISTOGRAM_ID_kEnableSmoothScrolling) |
747 }, | 866 }, |
748 #if defined(USE_AURA) || defined(OS_LINUX) | 867 #if defined(USE_AURA) || defined(OS_LINUX) |
749 { | 868 { |
750 "overlay-scrollbars", | 869 "overlay-scrollbars", |
751 IDS_FLAGS_ENABLE_OVERLAY_SCROLLBARS_NAME, | 870 IDS_FLAGS_ENABLE_OVERLAY_SCROLLBARS_NAME, |
752 IDS_FLAGS_ENABLE_OVERLAY_SCROLLBARS_DESCRIPTION, | 871 IDS_FLAGS_ENABLE_OVERLAY_SCROLLBARS_DESCRIPTION, |
753 // Uses the system preference on Mac (a different implementation). | 872 // Uses the system preference on Mac (a different implementation). |
754 // On Android, this is always enabled. | 873 // On Android, this is always enabled. |
755 kOsLinux | kOsCrOS | kOsWin, | 874 kOsLinux | kOsCrOS | kOsWin, |
756 MULTI_VALUE_TYPE(kOverlayScrollbarChoices) | 875 MULTI_VALUE_TYPE(kOverlayScrollbarChoices) |
757 }, | 876 }, |
758 #endif | 877 #endif |
759 { | 878 { |
760 "enable-panels", | 879 "enable-panels", |
761 IDS_FLAGS_ENABLE_PANELS_NAME, | 880 IDS_FLAGS_ENABLE_PANELS_NAME, |
762 IDS_FLAGS_ENABLE_PANELS_DESCRIPTION, | 881 IDS_FLAGS_ENABLE_PANELS_DESCRIPTION, |
763 kOsDesktop, | 882 kOsDesktop, |
764 SINGLE_VALUE_TYPE(switches::kEnablePanels) | 883 SINGLE_VALUE_TYPE(switches::kEnablePanels, |
| 884 UMA_HISTOGRAM_ID_kEnablePanels) |
765 }, | 885 }, |
766 { | 886 { |
767 // See http://crbug.com/120416 for how to remove this flag. | 887 // See http://crbug.com/120416 for how to remove this flag. |
768 "save-page-as-mhtml", // FLAGS:RECORD_UMA | 888 "save-page-as-mhtml", // FLAGS:RECORD_UMA |
769 IDS_FLAGS_SAVE_PAGE_AS_MHTML_NAME, | 889 IDS_FLAGS_SAVE_PAGE_AS_MHTML_NAME, |
770 IDS_FLAGS_SAVE_PAGE_AS_MHTML_DESCRIPTION, | 890 IDS_FLAGS_SAVE_PAGE_AS_MHTML_DESCRIPTION, |
771 kOsMac | kOsWin | kOsLinux, | 891 kOsMac | kOsWin | kOsLinux, |
772 SINGLE_VALUE_TYPE(switches::kSavePageAsMHTML) | 892 SINGLE_VALUE_TYPE(switches::kSavePageAsMHTML, |
| 893 UMA_HISTOGRAM_ID_kSavePageAsMHTML) |
773 }, | 894 }, |
774 { | 895 { |
775 "enable-quic", | 896 "enable-quic", |
776 IDS_FLAGS_ENABLE_QUIC_NAME, | 897 IDS_FLAGS_ENABLE_QUIC_NAME, |
777 IDS_FLAGS_ENABLE_QUIC_DESCRIPTION, | 898 IDS_FLAGS_ENABLE_QUIC_DESCRIPTION, |
778 kOsAll, | 899 kOsAll, |
779 ENABLE_DISABLE_VALUE_TYPE(switches::kEnableQuic, | 900 ENABLE_DISABLE_VALUE_TYPE(switches::kEnableQuic, |
780 switches::kDisableQuic) | 901 UMA_HISTOGRAM_ID_kEnableQuic, |
| 902 switches::kDisableQuic, |
| 903 UMA_HISTOGRAM_ID_kDisableQuic) |
781 }, | 904 }, |
782 { | 905 { |
783 "enable-quic-https", | 906 "enable-quic-https", |
784 IDS_FLAGS_ENABLE_QUIC_HTTPS_NAME, | 907 IDS_FLAGS_ENABLE_QUIC_HTTPS_NAME, |
785 IDS_FLAGS_ENABLE_QUIC_HTTPS_DESCRIPTION, | 908 IDS_FLAGS_ENABLE_QUIC_HTTPS_DESCRIPTION, |
786 kOsAll, | 909 kOsAll, |
787 ENABLE_DISABLE_VALUE_TYPE(switches::kEnableQuicHttps, | 910 ENABLE_DISABLE_VALUE_TYPE(switches::kEnableQuicHttps, |
788 switches::kDisableQuicHttps) | 911 UMA_HISTOGRAM_ID_kEnableQuicHttps, |
| 912 switches::kDisableQuicHttps, |
| 913 UMA_HISTOGRAM_ID_kDisableQuicHttps) |
789 }, | 914 }, |
790 { | 915 { |
791 "enable-spdy4", | 916 "enable-spdy4", |
792 IDS_FLAGS_ENABLE_SPDY4_NAME, | 917 IDS_FLAGS_ENABLE_SPDY4_NAME, |
793 IDS_FLAGS_ENABLE_SPDY4_DESCRIPTION, | 918 IDS_FLAGS_ENABLE_SPDY4_DESCRIPTION, |
794 kOsAll, | 919 kOsAll, |
795 SINGLE_VALUE_TYPE(switches::kEnableSpdy4) | 920 SINGLE_VALUE_TYPE(switches::kEnableSpdy4, UMA_HISTOGRAM_ID_kEnableSpdy4) |
796 }, | 921 }, |
797 { | 922 { |
798 "enable-async-dns", | 923 "enable-async-dns", |
799 IDS_FLAGS_ENABLE_ASYNC_DNS_NAME, | 924 IDS_FLAGS_ENABLE_ASYNC_DNS_NAME, |
800 IDS_FLAGS_ENABLE_ASYNC_DNS_DESCRIPTION, | 925 IDS_FLAGS_ENABLE_ASYNC_DNS_DESCRIPTION, |
801 kOsWin | kOsMac | kOsLinux | kOsCrOS, | 926 kOsWin | kOsMac | kOsLinux | kOsCrOS, |
802 ENABLE_DISABLE_VALUE_TYPE(switches::kEnableAsyncDns, | 927 ENABLE_DISABLE_VALUE_TYPE(switches::kEnableAsyncDns, |
803 switches::kDisableAsyncDns) | 928 UMA_HISTOGRAM_ID_kEnableAsyncDns, |
| 929 switches::kDisableAsyncDns, |
| 930 UMA_HISTOGRAM_ID_kDisableAsyncDns) |
804 }, | 931 }, |
805 { | 932 { |
806 "disable-media-source", | 933 "disable-media-source", |
807 IDS_FLAGS_DISABLE_MEDIA_SOURCE_NAME, | 934 IDS_FLAGS_DISABLE_MEDIA_SOURCE_NAME, |
808 IDS_FLAGS_DISABLE_MEDIA_SOURCE_DESCRIPTION, | 935 IDS_FLAGS_DISABLE_MEDIA_SOURCE_DESCRIPTION, |
809 kOsAll, | 936 kOsAll, |
810 SINGLE_VALUE_TYPE(switches::kDisableMediaSource) | 937 SINGLE_VALUE_TYPE(switches::kDisableMediaSource, |
| 938 UMA_HISTOGRAM_ID_kDisableMediaSource) |
811 }, | 939 }, |
812 { | 940 { |
813 "enable-encrypted-media", | 941 "enable-encrypted-media", |
814 IDS_FLAGS_ENABLE_ENCRYPTED_MEDIA_NAME, | 942 IDS_FLAGS_ENABLE_ENCRYPTED_MEDIA_NAME, |
815 IDS_FLAGS_ENABLE_ENCRYPTED_MEDIA_DESCRIPTION, | 943 IDS_FLAGS_ENABLE_ENCRYPTED_MEDIA_DESCRIPTION, |
816 kOsAll, | 944 kOsAll, |
817 SINGLE_VALUE_TYPE(switches::kEnableEncryptedMedia) | 945 SINGLE_VALUE_TYPE(switches::kEnableEncryptedMedia, |
| 946 UMA_HISTOGRAM_ID_kEnableEncryptedMedia) |
818 }, | 947 }, |
819 { | 948 { |
820 "disable-prefixed-encrypted-media", | 949 "disable-prefixed-encrypted-media", |
821 IDS_FLAGS_DISABLE_PREFIXED_ENCRYPTED_MEDIA_NAME, | 950 IDS_FLAGS_DISABLE_PREFIXED_ENCRYPTED_MEDIA_NAME, |
822 IDS_FLAGS_DISABLE_PREFIXED_ENCRYPTED_MEDIA_DESCRIPTION, | 951 IDS_FLAGS_DISABLE_PREFIXED_ENCRYPTED_MEDIA_DESCRIPTION, |
823 kOsAll, | 952 kOsAll, |
824 SINGLE_VALUE_TYPE(switches::kDisablePrefixedEncryptedMedia) | 953 SINGLE_VALUE_TYPE(switches::kDisablePrefixedEncryptedMedia, |
| 954 UMA_HISTOGRAM_ID_kDisablePrefixedEncryptedMedia) |
825 }, | 955 }, |
826 #if defined(OS_ANDROID) | 956 #if defined(OS_ANDROID) |
827 { | 957 { |
828 "disable-infobar-for-protected-media-identifier", | 958 "disable-infobar-for-protected-media-identifier", |
829 IDS_FLAGS_DISABLE_INFOBAR_FOR_PROTECTED_MEDIA_IDENTIFIER_NAME, | 959 IDS_FLAGS_DISABLE_INFOBAR_FOR_PROTECTED_MEDIA_IDENTIFIER_NAME, |
830 IDS_FLAGS_DISABLE_INFOBAR_FOR_PROTECTED_MEDIA_IDENTIFIER_DESCRIPTION, | 960 IDS_FLAGS_DISABLE_INFOBAR_FOR_PROTECTED_MEDIA_IDENTIFIER_DESCRIPTION, |
831 kOsAndroid, | 961 kOsAndroid, |
832 SINGLE_VALUE_TYPE(switches::kDisableInfobarForProtectedMediaIdentifier) | 962 SINGLE_VALUE_TYPE( |
| 963 switches::kDisableInfobarForProtectedMediaIdentifier, |
| 964 UMA_HISTOGRAM_ID_kDisableInfobarForProtectedMediaIdentifier) |
833 }, | 965 }, |
834 { | 966 { |
835 "mediadrm-enable-non-compositing", | 967 "mediadrm-enable-non-compositing", |
836 IDS_FLAGS_MEDIADRM_ENABLE_NON_COMPOSITING_NAME, | 968 IDS_FLAGS_MEDIADRM_ENABLE_NON_COMPOSITING_NAME, |
837 IDS_FLAGS_MEDIADRM_ENABLE_NON_COMPOSITING_DESCRIPTION, | 969 IDS_FLAGS_MEDIADRM_ENABLE_NON_COMPOSITING_DESCRIPTION, |
838 kOsAndroid, | 970 kOsAndroid, |
839 SINGLE_VALUE_TYPE(switches::kMediaDrmEnableNonCompositing) | 971 SINGLE_VALUE_TYPE(switches::kMediaDrmEnableNonCompositing, |
| 972 UMA_HISTOGRAM_ID_kMediaDrmEnableNonCompositing) |
840 }, | 973 }, |
841 #endif // defined(OS_ANDROID) | 974 #endif // defined(OS_ANDROID) |
842 { | 975 { |
843 "enable-javascript-harmony", | 976 "enable-javascript-harmony", |
844 IDS_FLAGS_ENABLE_JAVASCRIPT_HARMONY_NAME, | 977 IDS_FLAGS_ENABLE_JAVASCRIPT_HARMONY_NAME, |
845 IDS_FLAGS_ENABLE_JAVASCRIPT_HARMONY_DESCRIPTION, | 978 IDS_FLAGS_ENABLE_JAVASCRIPT_HARMONY_DESCRIPTION, |
846 kOsAll, | 979 kOsAll, |
847 SINGLE_VALUE_TYPE_AND_VALUE(switches::kJavaScriptFlags, "--harmony") | 980 SINGLE_VALUE_TYPE_AND_VALUE(switches::kJavaScriptFlags, |
| 981 "--harmony", |
| 982 UMA_HISTOGRAM_ID_kJavaScriptFlags) |
848 }, | 983 }, |
849 { | 984 { |
850 "disable-software-rasterizer", | 985 "disable-software-rasterizer", |
851 IDS_FLAGS_DISABLE_SOFTWARE_RASTERIZER_NAME, | 986 IDS_FLAGS_DISABLE_SOFTWARE_RASTERIZER_NAME, |
852 IDS_FLAGS_DISABLE_SOFTWARE_RASTERIZER_DESCRIPTION, | 987 IDS_FLAGS_DISABLE_SOFTWARE_RASTERIZER_DESCRIPTION, |
853 #if defined(ENABLE_SWIFTSHADER) | 988 #if defined(ENABLE_SWIFTSHADER) |
854 kOsAll, | 989 kOsAll, |
855 #else | 990 #else |
856 0, | 991 0, |
857 #endif | 992 #endif |
858 SINGLE_VALUE_TYPE(switches::kDisableSoftwareRasterizer) | 993 SINGLE_VALUE_TYPE(switches::kDisableSoftwareRasterizer, |
| 994 UMA_HISTOGRAM_ID_kDisableSoftwareRasterizer) |
859 }, | 995 }, |
860 { | 996 { |
861 "enable-gpu-rasterization", | 997 "enable-gpu-rasterization", |
862 IDS_FLAGS_ENABLE_GPU_RASTERIZATION_NAME, | 998 IDS_FLAGS_ENABLE_GPU_RASTERIZATION_NAME, |
863 IDS_FLAGS_ENABLE_GPU_RASTERIZATION_DESCRIPTION, | 999 IDS_FLAGS_ENABLE_GPU_RASTERIZATION_DESCRIPTION, |
864 kOsAndroid, | 1000 kOsAndroid, |
865 MULTI_VALUE_TYPE(kEnableGpuRasterizationChoices) | 1001 MULTI_VALUE_TYPE(kEnableGpuRasterizationChoices) |
866 }, | 1002 }, |
867 { | 1003 { |
868 "enable-experimental-web-platform-features", | 1004 "enable-experimental-web-platform-features", |
869 IDS_FLAGS_EXPERIMENTAL_WEB_PLATFORM_FEATURES_NAME, | 1005 IDS_FLAGS_EXPERIMENTAL_WEB_PLATFORM_FEATURES_NAME, |
870 IDS_FLAGS_EXPERIMENTAL_WEB_PLATFORM_FEATURES_DESCRIPTION, | 1006 IDS_FLAGS_EXPERIMENTAL_WEB_PLATFORM_FEATURES_DESCRIPTION, |
871 kOsAll, | 1007 kOsAll, |
872 SINGLE_VALUE_TYPE(switches::kEnableExperimentalWebPlatformFeatures) | 1008 SINGLE_VALUE_TYPE( |
| 1009 switches::kEnableExperimentalWebPlatformFeatures, |
| 1010 UMA_HISTOGRAM_ID_kEnableExperimentalWebPlatformFeatures) |
873 }, | 1011 }, |
874 { | 1012 { |
875 "disable-ntp-other-sessions-menu", | 1013 "disable-ntp-other-sessions-menu", |
876 IDS_FLAGS_NTP_OTHER_SESSIONS_MENU_NAME, | 1014 IDS_FLAGS_NTP_OTHER_SESSIONS_MENU_NAME, |
877 IDS_FLAGS_NTP_OTHER_SESSIONS_MENU_DESCRIPTION, | 1015 IDS_FLAGS_NTP_OTHER_SESSIONS_MENU_DESCRIPTION, |
878 kOsDesktop, | 1016 kOsDesktop, |
879 SINGLE_VALUE_TYPE(switches::kDisableNTPOtherSessionsMenu) | 1017 SINGLE_VALUE_TYPE(switches::kDisableNTPOtherSessionsMenu, |
| 1018 UMA_HISTOGRAM_ID_kDisableNTPOtherSessionsMenu) |
880 }, | 1019 }, |
881 { | 1020 { |
882 "enable-devtools-experiments", | 1021 "enable-devtools-experiments", |
883 IDS_FLAGS_ENABLE_DEVTOOLS_EXPERIMENTS_NAME, | 1022 IDS_FLAGS_ENABLE_DEVTOOLS_EXPERIMENTS_NAME, |
884 IDS_FLAGS_ENABLE_DEVTOOLS_EXPERIMENTS_DESCRIPTION, | 1023 IDS_FLAGS_ENABLE_DEVTOOLS_EXPERIMENTS_DESCRIPTION, |
885 kOsDesktop, | 1024 kOsDesktop, |
886 SINGLE_VALUE_TYPE(switches::kEnableDevToolsExperiments) | 1025 SINGLE_VALUE_TYPE(switches::kEnableDevToolsExperiments, |
| 1026 UMA_HISTOGRAM_ID_kEnableDevToolsExperiments) |
887 }, | 1027 }, |
888 { | 1028 { |
889 "silent-debugger-extension-api", | 1029 "silent-debugger-extension-api", |
890 IDS_FLAGS_SILENT_DEBUGGER_EXTENSION_API_NAME, | 1030 IDS_FLAGS_SILENT_DEBUGGER_EXTENSION_API_NAME, |
891 IDS_FLAGS_SILENT_DEBUGGER_EXTENSION_API_DESCRIPTION, | 1031 IDS_FLAGS_SILENT_DEBUGGER_EXTENSION_API_DESCRIPTION, |
892 kOsDesktop, | 1032 kOsDesktop, |
893 SINGLE_VALUE_TYPE(switches::kSilentDebuggerExtensionAPI) | 1033 SINGLE_VALUE_TYPE(switches::kSilentDebuggerExtensionAPI, |
| 1034 UMA_HISTOGRAM_ID_kSilentDebuggerExtensionAPI) |
894 }, | 1035 }, |
895 { | 1036 { |
896 "spellcheck-autocorrect", | 1037 "spellcheck-autocorrect", |
897 IDS_FLAGS_SPELLCHECK_AUTOCORRECT, | 1038 IDS_FLAGS_SPELLCHECK_AUTOCORRECT, |
898 IDS_FLAGS_SPELLCHECK_AUTOCORRECT_DESCRIPTION, | 1039 IDS_FLAGS_SPELLCHECK_AUTOCORRECT_DESCRIPTION, |
899 kOsWin | kOsLinux | kOsCrOS, | 1040 kOsWin | kOsLinux | kOsCrOS, |
900 SINGLE_VALUE_TYPE(switches::kEnableSpellingAutoCorrect) | 1041 SINGLE_VALUE_TYPE(switches::kEnableSpellingAutoCorrect, |
| 1042 UMA_HISTOGRAM_ID_kEnableSpellingAutoCorrect) |
901 }, | 1043 }, |
902 { | 1044 { |
903 "enable-scroll-prediction", | 1045 "enable-scroll-prediction", |
904 IDS_FLAGS_ENABLE_SCROLL_PREDICTION_NAME, | 1046 IDS_FLAGS_ENABLE_SCROLL_PREDICTION_NAME, |
905 IDS_FLAGS_ENABLE_SCROLL_PREDICTION_DESCRIPTION, | 1047 IDS_FLAGS_ENABLE_SCROLL_PREDICTION_DESCRIPTION, |
906 kOsDesktop, | 1048 kOsDesktop, |
907 SINGLE_VALUE_TYPE(switches::kEnableScrollPrediction) | 1049 SINGLE_VALUE_TYPE(switches::kEnableScrollPrediction, |
| 1050 UMA_HISTOGRAM_ID_kEnableScrollPrediction) |
908 }, | 1051 }, |
909 { | 1052 { |
910 "touch-events", | 1053 "touch-events", |
911 IDS_TOUCH_EVENTS_NAME, | 1054 IDS_TOUCH_EVENTS_NAME, |
912 IDS_TOUCH_EVENTS_DESCRIPTION, | 1055 IDS_TOUCH_EVENTS_DESCRIPTION, |
913 kOsDesktop, | 1056 kOsDesktop, MULTI_VALUE_TYPE(kTouchEventsChoices) |
914 MULTI_VALUE_TYPE(kTouchEventsChoices) | |
915 }, | 1057 }, |
916 { | 1058 { |
917 "disable-touch-adjustment", | 1059 "disable-touch-adjustment", |
918 IDS_DISABLE_TOUCH_ADJUSTMENT_NAME, | 1060 IDS_DISABLE_TOUCH_ADJUSTMENT_NAME, |
919 IDS_DISABLE_TOUCH_ADJUSTMENT_DESCRIPTION, | 1061 IDS_DISABLE_TOUCH_ADJUSTMENT_DESCRIPTION, |
920 kOsWin | kOsLinux | kOsCrOS, | 1062 kOsWin | kOsLinux | kOsCrOS, |
921 SINGLE_VALUE_TYPE(switches::kDisableTouchAdjustment) | 1063 SINGLE_VALUE_TYPE(switches::kDisableTouchAdjustment, |
| 1064 UMA_HISTOGRAM_ID_kDisableTouchAdjustment) |
922 }, | 1065 }, |
923 #if defined(OS_CHROMEOS) | 1066 #if defined(OS_CHROMEOS) |
924 { | 1067 { |
925 "network-portal-notification", | 1068 "network-portal-notification", |
926 IDS_FLAGS_NETWORK_PORTAL_NOTIFICATION_NAME, | 1069 IDS_FLAGS_NETWORK_PORTAL_NOTIFICATION_NAME, |
927 IDS_FLAGS_NETWORK_PORTAL_NOTIFICATION_DESCRIPTION, | 1070 IDS_FLAGS_NETWORK_PORTAL_NOTIFICATION_DESCRIPTION, |
928 kOsCrOS, | 1071 kOsCrOS, |
929 ENABLE_DISABLE_VALUE_TYPE( | 1072 ENABLE_DISABLE_VALUE_TYPE( |
930 chromeos::switches::kEnableNetworkPortalNotification, | 1073 chromeos::switches::kEnableNetworkPortalNotification, |
931 chromeos::switches::kDisableNetworkPortalNotification) | 1074 UMA_HISTOGRAM_ID_kEnableNetworkPortalNotification, |
| 1075 chromeos::switches::kDisableNetworkPortalNotification, |
| 1076 UMA_HISTOGRAM_ID_kDisableNetworkPortalNotification) |
932 }, | 1077 }, |
933 #endif | 1078 #endif |
934 { | 1079 { |
935 "enable-download-resumption", | 1080 "enable-download-resumption", |
936 IDS_FLAGS_ENABLE_DOWNLOAD_RESUMPTION_NAME, | 1081 IDS_FLAGS_ENABLE_DOWNLOAD_RESUMPTION_NAME, |
937 IDS_FLAGS_ENABLE_DOWNLOAD_RESUMPTION_DESCRIPTION, | 1082 IDS_FLAGS_ENABLE_DOWNLOAD_RESUMPTION_DESCRIPTION, |
938 kOsDesktop, | 1083 kOsDesktop, |
939 SINGLE_VALUE_TYPE(switches::kEnableDownloadResumption) | 1084 SINGLE_VALUE_TYPE(switches::kEnableDownloadResumption, |
| 1085 UMA_HISTOGRAM_ID_kEnableDownloadResumption) |
940 }, | 1086 }, |
941 // Native client is compiled out when DISABLE_NACL is defined. | 1087 // Native client is compiled out when DISABLE_NACL is defined. |
942 #if !defined(DISABLE_NACL) | 1088 #if !defined(DISABLE_NACL) |
943 { | 1089 { |
944 "allow-nacl-socket-api", | 1090 "allow-nacl-socket-api", |
945 IDS_FLAGS_ALLOW_NACL_SOCKET_API_NAME, | 1091 IDS_FLAGS_ALLOW_NACL_SOCKET_API_NAME, |
946 IDS_FLAGS_ALLOW_NACL_SOCKET_API_DESCRIPTION, | 1092 IDS_FLAGS_ALLOW_NACL_SOCKET_API_DESCRIPTION, |
947 kOsDesktop, | 1093 kOsDesktop, |
948 SINGLE_VALUE_TYPE_AND_VALUE(switches::kAllowNaClSocketAPI, "*") | 1094 SINGLE_VALUE_TYPE_AND_VALUE(switches::kAllowNaClSocketAPI, |
| 1095 "*", |
| 1096 UMA_HISTOGRAM_ID_kAllowNaClSocketAPI) |
949 }, | 1097 }, |
950 #endif | 1098 #endif |
951 { | 1099 { |
952 "force-device-scale-factor", | 1100 "force-device-scale-factor", |
953 IDS_FLAGS_FORCE_HIGH_DPI_NAME, | 1101 IDS_FLAGS_FORCE_HIGH_DPI_NAME, |
954 IDS_FLAGS_FORCE_HIGH_DPI_DESCRIPTION, | 1102 IDS_FLAGS_FORCE_HIGH_DPI_DESCRIPTION, |
955 kOsCrOS, | 1103 kOsCrOS, |
956 SINGLE_VALUE_TYPE_AND_VALUE(switches::kForceDeviceScaleFactor, "2") | 1104 SINGLE_VALUE_TYPE_AND_VALUE(switches::kForceDeviceScaleFactor, |
| 1105 "2", |
| 1106 UMA_HISTOGRAM_ID_kForceDeviceScaleFactor) |
957 }, | 1107 }, |
958 #if defined(OS_CHROMEOS) | 1108 #if defined(OS_CHROMEOS) |
959 { | 1109 { |
960 "allow-touchpad-three-finger-click", | 1110 "allow-touchpad-three-finger-click", |
961 IDS_FLAGS_ALLOW_TOUCHPAD_THREE_FINGER_CLICK_NAME, | 1111 IDS_FLAGS_ALLOW_TOUCHPAD_THREE_FINGER_CLICK_NAME, |
962 IDS_FLAGS_ALLOW_TOUCHPAD_THREE_FINGER_CLICK_DESCRIPTION, | 1112 IDS_FLAGS_ALLOW_TOUCHPAD_THREE_FINGER_CLICK_DESCRIPTION, |
963 kOsCrOS, | 1113 kOsCrOS, |
964 SINGLE_VALUE_TYPE(chromeos::switches::kEnableTouchpadThreeFingerClick) | 1114 SINGLE_VALUE_TYPE(chromeos::switches::kEnableTouchpadThreeFingerClick, |
| 1115 UMA_HISTOGRAM_ID_kEnableTouchpadThreeFingerClick) |
965 }, | 1116 }, |
966 #endif | 1117 #endif |
967 #if defined(USE_ASH) | 1118 #if defined(USE_ASH) |
968 { | 1119 { |
969 "disable-minimize-on-second-launcher-item-click", | 1120 "disable-minimize-on-second-launcher-item-click", |
970 IDS_FLAGS_DISABLE_MINIMIZE_ON_SECOND_LAUNCHER_ITEM_CLICK_NAME, | 1121 IDS_FLAGS_DISABLE_MINIMIZE_ON_SECOND_LAUNCHER_ITEM_CLICK_NAME, |
971 IDS_FLAGS_DISABLE_MINIMIZE_ON_SECOND_LAUNCHER_ITEM_CLICK_DESCRIPTION, | 1122 IDS_FLAGS_DISABLE_MINIMIZE_ON_SECOND_LAUNCHER_ITEM_CLICK_DESCRIPTION, |
972 kOsAll, | 1123 kOsAll, |
973 SINGLE_VALUE_TYPE(switches::kDisableMinimizeOnSecondLauncherItemClick) | 1124 SINGLE_VALUE_TYPE(switches::kDisableMinimizeOnSecondLauncherItemClick, |
| 1125 UMA_HISTOGRAM_ID_kDisableMinimizeOnSecondLauncherItemClick) |
974 }, | 1126 }, |
975 { | 1127 { |
976 "show-touch-hud", | 1128 "show-touch-hud", |
977 IDS_FLAGS_SHOW_TOUCH_HUD_NAME, | 1129 IDS_FLAGS_SHOW_TOUCH_HUD_NAME, |
978 IDS_FLAGS_SHOW_TOUCH_HUD_DESCRIPTION, | 1130 IDS_FLAGS_SHOW_TOUCH_HUD_DESCRIPTION, |
979 kOsAll, | 1131 kOsAll, |
980 SINGLE_VALUE_TYPE(ash::switches::kAshTouchHud) | 1132 SINGLE_VALUE_TYPE(ash::switches::kAshTouchHud, |
| 1133 UMA_HISTOGRAM_ID_kAshTouchHud) |
981 }, | 1134 }, |
982 { | 1135 { |
983 "enable-pinch", | 1136 "enable-pinch", |
984 IDS_FLAGS_ENABLE_PINCH_SCALE_NAME, | 1137 IDS_FLAGS_ENABLE_PINCH_SCALE_NAME, |
985 IDS_FLAGS_ENABLE_PINCH_SCALE_DESCRIPTION, | 1138 IDS_FLAGS_ENABLE_PINCH_SCALE_DESCRIPTION, |
986 kOsLinux | kOsWin | kOsCrOS, | 1139 kOsLinux | kOsWin | kOsCrOS, |
987 ENABLE_DISABLE_VALUE_TYPE(switches::kEnablePinch, switches::kDisablePinch), | 1140 ENABLE_DISABLE_VALUE_TYPE(switches::kEnablePinch, |
| 1141 UMA_HISTOGRAM_ID_kEnablePinch, |
| 1142 switches::kDisablePinch, |
| 1143 UMA_HISTOGRAM_ID_kDisablePinch) |
988 }, | 1144 }, |
989 #endif // defined(USE_ASH) | 1145 #endif // defined(USE_ASH) |
990 { | 1146 { |
991 "enable-pinch-virtual-viewport", | 1147 "enable-pinch-virtual-viewport", |
992 IDS_FLAGS_ENABLE_PINCH_VIRTUAL_VIEWPORT_NAME, | 1148 IDS_FLAGS_ENABLE_PINCH_VIRTUAL_VIEWPORT_NAME, |
993 IDS_FLAGS_ENABLE_PINCH_VIRTUAL_VIEWPORT_DESCRIPTION, | 1149 IDS_FLAGS_ENABLE_PINCH_VIRTUAL_VIEWPORT_DESCRIPTION, |
994 kOsLinux | kOsWin | kOsCrOS | kOsAndroid, | 1150 kOsLinux | kOsWin | kOsCrOS | kOsAndroid, |
995 ENABLE_DISABLE_VALUE_TYPE( | 1151 ENABLE_DISABLE_VALUE_TYPE(cc::switches::kEnablePinchVirtualViewport, |
996 cc::switches::kEnablePinchVirtualViewport, | 1152 UMA_HISTOGRAM_ID_kEnablePinchVirtualViewport, |
997 cc::switches::kDisablePinchVirtualViewport), | 1153 cc::switches::kDisablePinchVirtualViewport, |
| 1154 UMA_HISTOGRAM_ID_kDisablePinchVirtualViewport) |
998 }, | 1155 }, |
999 { | 1156 { |
1000 "enable-viewport-meta", | 1157 "enable-viewport-meta", |
1001 IDS_FLAGS_ENABLE_VIEWPORT_META_NAME, | 1158 IDS_FLAGS_ENABLE_VIEWPORT_META_NAME, |
1002 IDS_FLAGS_ENABLE_VIEWPORT_META_DESCRIPTION, | 1159 IDS_FLAGS_ENABLE_VIEWPORT_META_DESCRIPTION, |
1003 kOsLinux | kOsWin | kOsCrOS | kOsMac, | 1160 kOsLinux | kOsWin | kOsCrOS | kOsMac, |
1004 SINGLE_VALUE_TYPE(switches::kEnableViewportMeta), | 1161 SINGLE_VALUE_TYPE(switches::kEnableViewportMeta, |
| 1162 UMA_HISTOGRAM_ID_kEnableViewportMeta) |
1005 }, | 1163 }, |
1006 #if defined(OS_CHROMEOS) | 1164 #if defined(OS_CHROMEOS) |
1007 { | 1165 { |
1008 "disable-boot-animation", | 1166 "disable-boot-animation", |
1009 IDS_FLAGS_DISABLE_BOOT_ANIMATION, | 1167 IDS_FLAGS_DISABLE_BOOT_ANIMATION, |
1010 IDS_FLAGS_DISABLE_BOOT_ANIMATION_DESCRIPTION, | 1168 IDS_FLAGS_DISABLE_BOOT_ANIMATION_DESCRIPTION, |
1011 kOsCrOSOwnerOnly, | 1169 kOsCrOSOwnerOnly, |
1012 SINGLE_VALUE_TYPE(chromeos::switches::kDisableBootAnimation), | 1170 SINGLE_VALUE_TYPE(chromeos::switches::kDisableBootAnimation, |
| 1171 UMA_HISTOGRAM_ID_kDisableBootAnimation) |
1013 }, | 1172 }, |
1014 { | 1173 { |
1015 "enable-new-audio-player", | 1174 "enable-new-audio-player", |
1016 IDS_FLAGS_FILE_MANAGER_ENABLE_NEW_AUDIO_PLAYER_NAME, | 1175 IDS_FLAGS_FILE_MANAGER_ENABLE_NEW_AUDIO_PLAYER_NAME, |
1017 IDS_FLAGS_FILE_MANAGER_ENABLE_NEW_AUDIO_PLAYER_DESCRIPTION, | 1176 IDS_FLAGS_FILE_MANAGER_ENABLE_NEW_AUDIO_PLAYER_DESCRIPTION, |
1018 kOsCrOS, | 1177 kOsCrOS, |
1019 SINGLE_VALUE_TYPE(chromeos::switches::kFileManagerEnableNewAudioPlayer) | 1178 SINGLE_VALUE_TYPE(chromeos::switches::kFileManagerEnableNewAudioPlayer, |
| 1179 UMA_HISTOGRAM_ID_kFileManagerEnableNewAudioPlayer) |
1020 }, | 1180 }, |
1021 { | 1181 { |
1022 "enable-new-gallery", | 1182 "enable-new-gallery", |
1023 IDS_FLAGS_FILE_MANAGER_ENABLE_NEW_GALLERY_NAME, | 1183 IDS_FLAGS_FILE_MANAGER_ENABLE_NEW_GALLERY_NAME, |
1024 IDS_FLAGS_FILE_MANAGER_ENABLE_NEW_GALLERY_DESCRIPTION, | 1184 IDS_FLAGS_FILE_MANAGER_ENABLE_NEW_GALLERY_DESCRIPTION, |
1025 kOsCrOS, | 1185 kOsCrOS, |
1026 MULTI_VALUE_TYPE(kEnableFileManagerNewGalleryChoices) | 1186 MULTI_VALUE_TYPE(kEnableFileManagerNewGalleryChoices) |
1027 }, | 1187 }, |
1028 { | 1188 { |
1029 "disable-quickoffice-component-app", | 1189 "disable-quickoffice-component-app", |
1030 IDS_FLAGS_DISABLE_QUICKOFFICE_COMPONENT_APP_NAME, | 1190 IDS_FLAGS_DISABLE_QUICKOFFICE_COMPONENT_APP_NAME, |
1031 IDS_FLAGS_DISABLE_QUICKOFFICE_COMPONENT_APP_DESCRIPTION, | 1191 IDS_FLAGS_DISABLE_QUICKOFFICE_COMPONENT_APP_DESCRIPTION, |
1032 kOsCrOS, | 1192 kOsCrOS, |
1033 SINGLE_VALUE_TYPE(chromeos::switches::kDisableQuickofficeComponentApp), | 1193 SINGLE_VALUE_TYPE(chromeos::switches::kDisableQuickofficeComponentApp, |
| 1194 UMA_HISTOGRAM_ID_kDisableQuickofficeComponentApp) |
1034 }, | 1195 }, |
1035 { | 1196 { |
1036 "disable-saml-signin", | 1197 "disable-saml-signin", |
1037 IDS_FLAGS_DISABLE_SAML_SIGNIN_NAME, | 1198 IDS_FLAGS_DISABLE_SAML_SIGNIN_NAME, |
1038 IDS_FLAGS_DISABLE_SAML_SIGNIN_DESCRIPTION, | 1199 IDS_FLAGS_DISABLE_SAML_SIGNIN_DESCRIPTION, |
1039 kOsCrOS, | 1200 kOsCrOS, |
1040 SINGLE_VALUE_TYPE(chromeos::switches::kDisableSamlSignin), | 1201 SINGLE_VALUE_TYPE(chromeos::switches::kDisableSamlSignin, |
| 1202 UMA_HISTOGRAM_ID_kDisableSamlSignin) |
1041 }, | 1203 }, |
1042 { | 1204 { |
1043 "disable-display-color-calibration", | 1205 "disable-display-color-calibration", |
1044 IDS_FLAGS_DISABLE_DISPLAY_COLOR_CALIBRATION_NAME, | 1206 IDS_FLAGS_DISABLE_DISPLAY_COLOR_CALIBRATION_NAME, |
1045 IDS_FLAGS_DISABLE_DISPLAY_COLOR_CALIBRATION_DESCRIPTION, | 1207 IDS_FLAGS_DISABLE_DISPLAY_COLOR_CALIBRATION_DESCRIPTION, |
1046 kOsCrOS, | 1208 kOsCrOS, |
1047 SINGLE_VALUE_TYPE(ui::switches::kDisableDisplayColorCalibration), | 1209 SINGLE_VALUE_TYPE(ui::switches::kDisableDisplayColorCalibration, |
| 1210 UMA_HISTOGRAM_ID_kDisableDisplayColorCalibration) |
1048 }, | 1211 }, |
1049 #endif // defined(OS_CHROMEOS) | 1212 #endif // defined(OS_CHROMEOS) |
1050 { "disable-accelerated-video-decode", | 1213 { |
| 1214 "disable-accelerated-video-decode", |
1051 IDS_FLAGS_DISABLE_ACCELERATED_VIDEO_DECODE_NAME, | 1215 IDS_FLAGS_DISABLE_ACCELERATED_VIDEO_DECODE_NAME, |
1052 IDS_FLAGS_DISABLE_ACCELERATED_VIDEO_DECODE_DESCRIPTION, | 1216 IDS_FLAGS_DISABLE_ACCELERATED_VIDEO_DECODE_DESCRIPTION, |
1053 kOsWin | kOsCrOS, | 1217 kOsWin | kOsCrOS, |
1054 SINGLE_VALUE_TYPE(switches::kDisableAcceleratedVideoDecode), | 1218 SINGLE_VALUE_TYPE(switches::kDisableAcceleratedVideoDecode, |
| 1219 UMA_HISTOGRAM_ID_kDisableAcceleratedVideoDecode) |
1055 }, | 1220 }, |
1056 #if defined(USE_ASH) | 1221 #if defined(USE_ASH) |
1057 { | 1222 { |
1058 "ash-debug-shortcuts", | 1223 "ash-debug-shortcuts", |
1059 IDS_FLAGS_DEBUG_SHORTCUTS_NAME, | 1224 IDS_FLAGS_DEBUG_SHORTCUTS_NAME, |
1060 IDS_FLAGS_DEBUG_SHORTCUTS_DESCRIPTION, | 1225 IDS_FLAGS_DEBUG_SHORTCUTS_DESCRIPTION, |
1061 kOsAll, | 1226 kOsAll, |
1062 SINGLE_VALUE_TYPE(ash::switches::kAshDebugShortcuts), | 1227 SINGLE_VALUE_TYPE(ash::switches::kAshDebugShortcuts, |
| 1228 UMA_HISTOGRAM_ID_kAshDebugShortcuts) |
1063 }, | 1229 }, |
1064 { "ash-enable-touch-view-testing", | 1230 { |
| 1231 "ash-enable-touch-view-testing", |
1065 IDS_FLAGS_ASH_ENABLE_TOUCH_VIEW_TESTING_NAME, | 1232 IDS_FLAGS_ASH_ENABLE_TOUCH_VIEW_TESTING_NAME, |
1066 IDS_FLAGS_ASH_ENABLE_TOUCH_VIEW_TESTING_DESCRIPTION, | 1233 IDS_FLAGS_ASH_ENABLE_TOUCH_VIEW_TESTING_DESCRIPTION, |
1067 kOsCrOS, | 1234 kOsCrOS, |
1068 SINGLE_VALUE_TYPE(ash::switches::kAshEnableTouchViewTesting), | 1235 SINGLE_VALUE_TYPE(ash::switches::kAshEnableTouchViewTesting, |
| 1236 UMA_HISTOGRAM_ID_kAshEnableTouchViewTesting) |
1069 }, | 1237 }, |
1070 #endif | 1238 #endif |
1071 #if defined(OS_CHROMEOS) | 1239 #if defined(OS_CHROMEOS) |
1072 { | 1240 { |
1073 "enable-carrier-switching", | 1241 "enable-carrier-switching", |
1074 IDS_FLAGS_ENABLE_CARRIER_SWITCHING, | 1242 IDS_FLAGS_ENABLE_CARRIER_SWITCHING, |
1075 IDS_FLAGS_ENABLE_CARRIER_SWITCHING_DESCRIPTION, | 1243 IDS_FLAGS_ENABLE_CARRIER_SWITCHING_DESCRIPTION, |
1076 kOsCrOS, | 1244 kOsCrOS, |
1077 SINGLE_VALUE_TYPE(chromeos::switches::kEnableCarrierSwitching) | 1245 SINGLE_VALUE_TYPE(chromeos::switches::kEnableCarrierSwitching, |
| 1246 UMA_HISTOGRAM_ID_kEnableCarrierSwitching) |
1078 }, | 1247 }, |
1079 { | 1248 { |
1080 "enable-request-tablet-site", | 1249 "enable-request-tablet-site", |
1081 IDS_FLAGS_ENABLE_REQUEST_TABLET_SITE_NAME, | 1250 IDS_FLAGS_ENABLE_REQUEST_TABLET_SITE_NAME, |
1082 IDS_FLAGS_ENABLE_REQUEST_TABLET_SITE_DESCRIPTION, | 1251 IDS_FLAGS_ENABLE_REQUEST_TABLET_SITE_DESCRIPTION, |
1083 kOsCrOS, | 1252 kOsCrOS, |
1084 SINGLE_VALUE_TYPE(chromeos::switches::kEnableRequestTabletSite) | 1253 SINGLE_VALUE_TYPE(chromeos::switches::kEnableRequestTabletSite, |
| 1254 UMA_HISTOGRAM_ID_kEnableRequestTabletSite) |
1085 }, | 1255 }, |
1086 #endif | 1256 #endif |
1087 { | 1257 { |
1088 "debug-packed-apps", | 1258 "debug-packed-apps", |
1089 IDS_FLAGS_DEBUG_PACKED_APP_NAME, | 1259 IDS_FLAGS_DEBUG_PACKED_APP_NAME, |
1090 IDS_FLAGS_DEBUG_PACKED_APP_DESCRIPTION, | 1260 IDS_FLAGS_DEBUG_PACKED_APP_DESCRIPTION, |
1091 kOsDesktop, | 1261 kOsDesktop, |
1092 SINGLE_VALUE_TYPE(switches::kDebugPackedApps) | 1262 SINGLE_VALUE_TYPE(switches::kDebugPackedApps, |
| 1263 UMA_HISTOGRAM_ID_kDebugPackedApps) |
1093 }, | 1264 }, |
1094 { | 1265 { |
1095 "enable-password-generation", | 1266 "enable-password-generation", |
1096 IDS_FLAGS_ENABLE_PASSWORD_GENERATION_NAME, | 1267 IDS_FLAGS_ENABLE_PASSWORD_GENERATION_NAME, |
1097 IDS_FLAGS_ENABLE_PASSWORD_GENERATION_DESCRIPTION, | 1268 IDS_FLAGS_ENABLE_PASSWORD_GENERATION_DESCRIPTION, |
1098 kOsDesktop, | 1269 kOsDesktop, |
1099 ENABLE_DISABLE_VALUE_TYPE(autofill::switches::kEnablePasswordGeneration, | 1270 ENABLE_DISABLE_VALUE_TYPE(autofill::switches::kEnablePasswordGeneration, |
1100 autofill::switches::kDisablePasswordGeneration) | 1271 UMA_HISTOGRAM_ID_kEnablePasswordGeneration, |
| 1272 autofill::switches::kDisablePasswordGeneration, |
| 1273 UMA_HISTOGRAM_ID_kDisablePasswordGeneration) |
1101 }, | 1274 }, |
1102 { | 1275 { |
1103 "enable-automatic-password-saving", | 1276 "enable-automatic-password-saving", |
1104 IDS_FLAGS_ENABLE_AUTOMATIC_PASSWORD_SAVING_NAME, | 1277 IDS_FLAGS_ENABLE_AUTOMATIC_PASSWORD_SAVING_NAME, |
1105 IDS_FLAGS_ENABLE_AUTOMATIC_PASSWORD_SAVING_DESCRIPTION, | 1278 IDS_FLAGS_ENABLE_AUTOMATIC_PASSWORD_SAVING_DESCRIPTION, |
1106 kOsDesktop, | 1279 kOsDesktop, |
1107 SINGLE_VALUE_TYPE( | 1280 SINGLE_VALUE_TYPE( |
1108 password_manager::switches::kEnableAutomaticPasswordSaving) | 1281 password_manager::switches::kEnableAutomaticPasswordSaving, |
| 1282 UMA_HISTOGRAM_ID_kEnableAutomaticPasswordSaving) |
1109 }, | 1283 }, |
1110 { | 1284 { |
1111 "password-manager-reauthentication", | 1285 "password-manager-reauthentication", |
1112 IDS_FLAGS_PASSWORD_MANAGER_REAUTHENTICATION_NAME, | 1286 IDS_FLAGS_PASSWORD_MANAGER_REAUTHENTICATION_NAME, |
1113 IDS_FLAGS_PASSWORD_MANAGER_REAUTHENTICATION_DESCRIPTION, | 1287 IDS_FLAGS_PASSWORD_MANAGER_REAUTHENTICATION_DESCRIPTION, |
1114 kOsMac | kOsWin, | 1288 kOsMac | kOsWin, |
1115 SINGLE_VALUE_TYPE(switches::kDisablePasswordManagerReauthentication) | 1289 SINGLE_VALUE_TYPE( |
| 1290 switches::kDisablePasswordManagerReauthentication, |
| 1291 UMA_HISTOGRAM_ID_kDisablePasswordManagerReauthentication) |
1116 }, | 1292 }, |
1117 { | 1293 { |
1118 "enable-deferred-image-decoding", | 1294 "enable-deferred-image-decoding", |
1119 IDS_FLAGS_ENABLE_DEFERRED_IMAGE_DECODING_NAME, | 1295 IDS_FLAGS_ENABLE_DEFERRED_IMAGE_DECODING_NAME, |
1120 IDS_FLAGS_ENABLE_DEFERRED_IMAGE_DECODING_DESCRIPTION, | 1296 IDS_FLAGS_ENABLE_DEFERRED_IMAGE_DECODING_DESCRIPTION, |
1121 kOsMac | kOsLinux | kOsCrOS, | 1297 kOsMac | kOsLinux | kOsCrOS, |
1122 SINGLE_VALUE_TYPE(switches::kEnableDeferredImageDecoding) | 1298 SINGLE_VALUE_TYPE(switches::kEnableDeferredImageDecoding, |
| 1299 UMA_HISTOGRAM_ID_kEnableDeferredImageDecoding) |
1123 }, | 1300 }, |
1124 { | 1301 { |
1125 "performance-monitor-gathering", | 1302 "performance-monitor-gathering", |
1126 IDS_FLAGS_PERFORMANCE_MONITOR_GATHERING_NAME, | 1303 IDS_FLAGS_PERFORMANCE_MONITOR_GATHERING_NAME, |
1127 IDS_FLAGS_PERFORMANCE_MONITOR_GATHERING_DESCRIPTION, | 1304 IDS_FLAGS_PERFORMANCE_MONITOR_GATHERING_DESCRIPTION, |
1128 kOsAll, | 1305 kOsAll, |
1129 SINGLE_VALUE_TYPE(switches::kPerformanceMonitorGathering) | 1306 SINGLE_VALUE_TYPE(switches::kPerformanceMonitorGathering, |
| 1307 UMA_HISTOGRAM_ID_kPerformanceMonitorGathering) |
1130 }, | 1308 }, |
1131 { | 1309 { |
1132 "wallet-service-use-sandbox", | 1310 "wallet-service-use-sandbox", |
1133 IDS_FLAGS_WALLET_SERVICE_USE_SANDBOX_NAME, | 1311 IDS_FLAGS_WALLET_SERVICE_USE_SANDBOX_NAME, |
1134 IDS_FLAGS_WALLET_SERVICE_USE_SANDBOX_DESCRIPTION, | 1312 IDS_FLAGS_WALLET_SERVICE_USE_SANDBOX_DESCRIPTION, |
1135 kOsAndroid | kOsDesktop, | 1313 kOsAndroid | kOsDesktop, |
1136 ENABLE_DISABLE_VALUE_TYPE_AND_VALUE( | 1314 ENABLE_DISABLE_VALUE_TYPE_AND_VALUE( |
1137 autofill::switches::kWalletServiceUseSandbox, "1", | 1315 autofill::switches::kWalletServiceUseSandbox, "1", |
1138 autofill::switches::kWalletServiceUseSandbox, "0") | 1316 UMA_HISTOGRAM_ID_kWalletServiceUseSandbox, |
| 1317 autofill::switches::kWalletServiceUseSandbox, "0", |
| 1318 UMA_HISTOGRAM_ID_kWalletServiceUseSandbox) |
1139 }, | 1319 }, |
1140 #if defined(USE_AURA) | 1320 #if defined(USE_AURA) |
1141 { | 1321 { |
1142 "overscroll-history-navigation", | 1322 "overscroll-history-navigation", |
1143 IDS_FLAGS_OVERSCROLL_HISTORY_NAVIGATION_NAME, | 1323 IDS_FLAGS_OVERSCROLL_HISTORY_NAVIGATION_NAME, |
1144 IDS_FLAGS_OVERSCROLL_HISTORY_NAVIGATION_DESCRIPTION, | 1324 IDS_FLAGS_OVERSCROLL_HISTORY_NAVIGATION_DESCRIPTION, |
1145 kOsAll, | 1325 kOsAll, |
1146 MULTI_VALUE_TYPE(kOverscrollHistoryNavigationChoices) | 1326 MULTI_VALUE_TYPE(kOverscrollHistoryNavigationChoices) |
1147 }, | 1327 }, |
1148 #endif | 1328 #endif |
1149 { | 1329 { |
1150 "scroll-end-effect", | 1330 "scroll-end-effect", |
1151 IDS_FLAGS_SCROLL_END_EFFECT_NAME, | 1331 IDS_FLAGS_SCROLL_END_EFFECT_NAME, |
1152 IDS_FLAGS_SCROLL_END_EFFECT_DESCRIPTION, | 1332 IDS_FLAGS_SCROLL_END_EFFECT_DESCRIPTION, |
1153 kOsCrOS, | 1333 kOsCrOS, |
1154 ENABLE_DISABLE_VALUE_TYPE_AND_VALUE( | 1334 ENABLE_DISABLE_VALUE_TYPE_AND_VALUE( |
1155 switches::kScrollEndEffect, "1", | 1335 switches::kScrollEndEffect, "1", |
1156 switches::kScrollEndEffect, "0") | 1336 UMA_HISTOGRAM_ID_kScrollEndEffect, |
| 1337 switches::kScrollEndEffect, "0", |
| 1338 UMA_HISTOGRAM_ID_kScrollEndEffect) |
1157 }, | 1339 }, |
1158 { | 1340 { |
1159 "enable-touch-drag-drop", | 1341 "enable-touch-drag-drop", |
1160 IDS_FLAGS_ENABLE_TOUCH_DRAG_DROP_NAME, | 1342 IDS_FLAGS_ENABLE_TOUCH_DRAG_DROP_NAME, |
1161 IDS_FLAGS_ENABLE_TOUCH_DRAG_DROP_DESCRIPTION, | 1343 IDS_FLAGS_ENABLE_TOUCH_DRAG_DROP_DESCRIPTION, |
1162 kOsWin | kOsCrOS, | 1344 kOsWin | kOsCrOS, |
1163 ENABLE_DISABLE_VALUE_TYPE(switches::kEnableTouchDragDrop, | 1345 ENABLE_DISABLE_VALUE_TYPE(switches::kEnableTouchDragDrop, |
1164 switches::kDisableTouchDragDrop) | 1346 UMA_HISTOGRAM_ID_kEnableTouchDragDrop, |
| 1347 switches::kDisableTouchDragDrop, |
| 1348 UMA_HISTOGRAM_ID_kDisableTouchDragDrop) |
1165 }, | 1349 }, |
1166 { | 1350 { |
1167 "enable-touch-editing", | 1351 "enable-touch-editing", |
1168 IDS_FLAGS_ENABLE_TOUCH_EDITING_NAME, | 1352 IDS_FLAGS_ENABLE_TOUCH_EDITING_NAME, |
1169 IDS_FLAGS_ENABLE_TOUCH_EDITING_DESCRIPTION, | 1353 IDS_FLAGS_ENABLE_TOUCH_EDITING_DESCRIPTION, |
1170 kOsCrOS | kOsWin | kOsLinux, | 1354 kOsCrOS | kOsWin | kOsLinux, |
1171 ENABLE_DISABLE_VALUE_TYPE(switches::kEnableTouchEditing, | 1355 ENABLE_DISABLE_VALUE_TYPE(switches::kEnableTouchEditing, |
1172 switches::kDisableTouchEditing) | 1356 UMA_HISTOGRAM_ID_kEnableTouchEditing, |
| 1357 switches::kDisableTouchEditing, |
| 1358 UMA_HISTOGRAM_ID_kDisableTouchEditing) |
1173 }, | 1359 }, |
1174 { | 1360 { |
1175 "enable-suggestions-service", | 1361 "enable-suggestions-service", |
1176 IDS_FLAGS_ENABLE_SUGGESTIONS_SERVICE_NAME, | 1362 IDS_FLAGS_ENABLE_SUGGESTIONS_SERVICE_NAME, |
1177 IDS_FLAGS_ENABLE_SUGGESTIONS_SERVICE_DESCRIPTION, | 1363 IDS_FLAGS_ENABLE_SUGGESTIONS_SERVICE_DESCRIPTION, |
1178 kOsAndroid | kOsCrOS, | 1364 kOsAndroid | kOsCrOS, |
1179 ENABLE_DISABLE_VALUE_TYPE(switches::kEnableSuggestionsService, | 1365 ENABLE_DISABLE_VALUE_TYPE(switches::kEnableSuggestionsService, |
1180 switches::kDisableSuggestionsService) | 1366 UMA_HISTOGRAM_ID_kEnableSuggestionsService, |
| 1367 switches::kDisableSuggestionsService, |
| 1368 UMA_HISTOGRAM_ID_kDisableSuggestionsService) |
1181 }, | 1369 }, |
1182 { | 1370 { |
1183 "enable-sync-synced-notifications", | 1371 "enable-sync-synced-notifications", |
1184 IDS_FLAGS_ENABLE_SYNCED_NOTIFICATIONS_NAME, | 1372 IDS_FLAGS_ENABLE_SYNCED_NOTIFICATIONS_NAME, |
1185 IDS_FLAGS_ENABLE_SYNCED_NOTIFICATIONS_DESCRIPTION, | 1373 IDS_FLAGS_ENABLE_SYNCED_NOTIFICATIONS_DESCRIPTION, |
1186 kOsDesktop, | 1374 kOsDesktop, |
1187 ENABLE_DISABLE_VALUE_TYPE(switches::kEnableSyncSyncedNotifications, | 1375 ENABLE_DISABLE_VALUE_TYPE( |
1188 switches::kDisableSyncSyncedNotifications) | 1376 switches::kEnableSyncSyncedNotifications, |
| 1377 UMA_HISTOGRAM_ID_kEnableSyncSyncedNotifications, |
| 1378 switches::kDisableSyncSyncedNotifications, |
| 1379 UMA_HISTOGRAM_ID_kDisableSyncSyncedNotifications) |
1189 }, | 1380 }, |
1190 #if defined(ENABLE_APP_LIST) | 1381 #if defined(ENABLE_APP_LIST) |
1191 { | 1382 { |
1192 "enable-sync-app-list", | 1383 "enable-sync-app-list", |
1193 IDS_FLAGS_ENABLE_SYNC_APP_LIST_NAME, | 1384 IDS_FLAGS_ENABLE_SYNC_APP_LIST_NAME, |
1194 IDS_FLAGS_ENABLE_SYNC_APP_LIST_DESCRIPTION, | 1385 IDS_FLAGS_ENABLE_SYNC_APP_LIST_DESCRIPTION, |
1195 kOsDesktop, | 1386 kOsDesktop, |
1196 MULTI_VALUE_TYPE(kEnableSyncAppListChoices) | 1387 MULTI_VALUE_TYPE(kEnableSyncAppListChoices) |
1197 }, | 1388 }, |
1198 #endif | 1389 #endif |
1199 #if defined(OS_MACOSX) | 1390 #if defined(OS_MACOSX) |
1200 { | 1391 { |
1201 "enable-avfoundation", | 1392 "enable-avfoundation", |
1202 IDS_FLAGS_ENABLE_AVFOUNDATION_NAME, | 1393 IDS_FLAGS_ENABLE_AVFOUNDATION_NAME, |
1203 IDS_FLAGS_ENABLE_AVFOUNDATION_DESCRIPTION, | 1394 IDS_FLAGS_ENABLE_AVFOUNDATION_DESCRIPTION, |
1204 kOsMac, | 1395 kOsMac, |
1205 SINGLE_VALUE_TYPE(switches::kEnableAVFoundation) | 1396 SINGLE_VALUE_TYPE(switches::kEnableAVFoundation, |
| 1397 UMA_HISTOGRAM_ID_kEnableAVFoundation) |
1206 }, | 1398 }, |
1207 #endif | 1399 #endif |
1208 { | 1400 { |
1209 "impl-side-painting", | 1401 "impl-side-painting", |
1210 IDS_FLAGS_IMPL_SIDE_PAINTING_NAME, | 1402 IDS_FLAGS_IMPL_SIDE_PAINTING_NAME, |
1211 IDS_FLAGS_IMPL_SIDE_PAINTING_DESCRIPTION, | 1403 IDS_FLAGS_IMPL_SIDE_PAINTING_DESCRIPTION, |
1212 kOsAll, | 1404 kOsAll, |
1213 MULTI_VALUE_TYPE(kImplSidePaintingChoices) | 1405 MULTI_VALUE_TYPE(kImplSidePaintingChoices) |
1214 }, | 1406 }, |
1215 { | 1407 { |
(...skipping 18 matching lines...) Expand all Loading... |
1234 IDS_FLAGS_MAX_TILES_FOR_INTEREST_AREA_DESCRIPTION, | 1426 IDS_FLAGS_MAX_TILES_FOR_INTEREST_AREA_DESCRIPTION, |
1235 kOsAll, | 1427 kOsAll, |
1236 MULTI_VALUE_TYPE(kMaxTilesForInterestAreaChoices) | 1428 MULTI_VALUE_TYPE(kMaxTilesForInterestAreaChoices) |
1237 }, | 1429 }, |
1238 { | 1430 { |
1239 "enable-offline-auto-reload", | 1431 "enable-offline-auto-reload", |
1240 IDS_FLAGS_ENABLE_OFFLINE_AUTO_RELOAD_NAME, | 1432 IDS_FLAGS_ENABLE_OFFLINE_AUTO_RELOAD_NAME, |
1241 IDS_FLAGS_ENABLE_OFFLINE_AUTO_RELOAD_DESCRIPTION, | 1433 IDS_FLAGS_ENABLE_OFFLINE_AUTO_RELOAD_DESCRIPTION, |
1242 kOsAll, | 1434 kOsAll, |
1243 ENABLE_DISABLE_VALUE_TYPE(switches::kEnableOfflineAutoReload, | 1435 ENABLE_DISABLE_VALUE_TYPE(switches::kEnableOfflineAutoReload, |
1244 switches::kDisableOfflineAutoReload) | 1436 UMA_HISTOGRAM_ID_kEnableOfflineAutoReload, |
| 1437 switches::kDisableOfflineAutoReload, |
| 1438 UMA_HISTOGRAM_ID_kDisableOfflineAutoReload) |
1245 }, | 1439 }, |
1246 { | 1440 { |
1247 "enable-offline-auto-reload-visible-only", | 1441 "enable-offline-auto-reload-visible-only", |
1248 IDS_FLAGS_ENABLE_OFFLINE_AUTO_RELOAD_VISIBLE_ONLY_NAME, | 1442 IDS_FLAGS_ENABLE_OFFLINE_AUTO_RELOAD_VISIBLE_ONLY_NAME, |
1249 IDS_FLAGS_ENABLE_OFFLINE_AUTO_RELOAD_VISIBLE_ONLY_DESCRIPTION, | 1443 IDS_FLAGS_ENABLE_OFFLINE_AUTO_RELOAD_VISIBLE_ONLY_DESCRIPTION, |
1250 kOsAll, | 1444 kOsAll, |
1251 ENABLE_DISABLE_VALUE_TYPE(switches::kEnableOfflineAutoReloadVisibleOnly, | 1445 ENABLE_DISABLE_VALUE_TYPE( |
1252 switches::kDisableOfflineAutoReloadVisibleOnly) | 1446 switches::kEnableOfflineAutoReloadVisibleOnly, |
| 1447 UMA_HISTOGRAM_ID_kEnableOfflineAutoReloadVisibleOnly, |
| 1448 switches::kDisableOfflineAutoReloadVisibleOnly, |
| 1449 UMA_HISTOGRAM_ID_kDisableOfflineAutoReloadVisibleOnly) |
1253 }, | 1450 }, |
1254 { | 1451 { |
1255 "enable-offline-load-stale-cache", | 1452 "enable-offline-load-stale-cache", |
1256 IDS_FLAGS_ENABLE_OFFLINE_LOAD_STALE_NAME, | 1453 IDS_FLAGS_ENABLE_OFFLINE_LOAD_STALE_NAME, |
1257 IDS_FLAGS_ENABLE_OFFLINE_LOAD_STALE_DESCRIPTION, | 1454 IDS_FLAGS_ENABLE_OFFLINE_LOAD_STALE_DESCRIPTION, |
1258 kOsLinux | kOsMac | kOsWin | kOsAndroid, | 1455 kOsLinux | kOsMac | kOsWin | kOsAndroid, |
1259 ENABLE_DISABLE_VALUE_TYPE(switches::kEnableOfflineLoadStaleCache, | 1456 ENABLE_DISABLE_VALUE_TYPE(switches::kEnableOfflineLoadStaleCache, |
1260 switches::kDisableOfflineLoadStaleCache) | 1457 UMA_HISTOGRAM_ID_kEnableOfflineLoadStaleCache, |
| 1458 switches::kDisableOfflineLoadStaleCache, |
| 1459 UMA_HISTOGRAM_ID_kDisableOfflineLoadStaleCache) |
1261 }, | 1460 }, |
1262 { | 1461 { |
1263 "default-tile-width", | 1462 "default-tile-width", |
1264 IDS_FLAGS_DEFAULT_TILE_WIDTH_NAME, | 1463 IDS_FLAGS_DEFAULT_TILE_WIDTH_NAME, |
1265 IDS_FLAGS_DEFAULT_TILE_WIDTH_DESCRIPTION, | 1464 IDS_FLAGS_DEFAULT_TILE_WIDTH_DESCRIPTION, |
1266 kOsAll, | 1465 kOsAll, |
1267 MULTI_VALUE_TYPE(kDefaultTileWidthChoices) | 1466 MULTI_VALUE_TYPE(kDefaultTileWidthChoices) |
1268 }, | 1467 }, |
1269 { | 1468 { |
1270 "default-tile-height", | 1469 "default-tile-height", |
1271 IDS_FLAGS_DEFAULT_TILE_HEIGHT_NAME, | 1470 IDS_FLAGS_DEFAULT_TILE_HEIGHT_NAME, |
1272 IDS_FLAGS_DEFAULT_TILE_HEIGHT_DESCRIPTION, | 1471 IDS_FLAGS_DEFAULT_TILE_HEIGHT_DESCRIPTION, |
1273 kOsAll, | 1472 kOsAll, |
1274 MULTI_VALUE_TYPE(kDefaultTileHeightChoices) | 1473 MULTI_VALUE_TYPE(kDefaultTileHeightChoices) |
1275 }, | 1474 }, |
1276 #if defined(OS_ANDROID) | 1475 #if defined(OS_ANDROID) |
1277 { | 1476 { |
1278 "disable-gesture-requirement-for-media-playback", | 1477 "disable-gesture-requirement-for-media-playback", |
1279 IDS_FLAGS_DISABLE_GESTURE_REQUIREMENT_FOR_MEDIA_PLAYBACK_NAME, | 1478 IDS_FLAGS_DISABLE_GESTURE_REQUIREMENT_FOR_MEDIA_PLAYBACK_NAME, |
1280 IDS_FLAGS_DISABLE_GESTURE_REQUIREMENT_FOR_MEDIA_PLAYBACK_DESCRIPTION, | 1479 IDS_FLAGS_DISABLE_GESTURE_REQUIREMENT_FOR_MEDIA_PLAYBACK_DESCRIPTION, |
1281 kOsAndroid, | 1480 kOsAndroid, |
1282 SINGLE_VALUE_TYPE(switches::kDisableGestureRequirementForMediaPlayback) | 1481 SINGLE_VALUE_TYPE( |
| 1482 switches::kDisableGestureRequirementForMediaPlayback, |
| 1483 UMA_HISTOGRAM_ID_kDisableGestureRequirementForMediaPlayback) |
1283 }, | 1484 }, |
1284 #endif | 1485 #endif |
1285 #if defined(OS_CHROMEOS) | 1486 #if defined(OS_CHROMEOS) |
1286 { | 1487 { |
1287 "enable-virtual-keyboard", | 1488 "enable-virtual-keyboard", |
1288 IDS_FLAGS_ENABLE_VIRTUAL_KEYBOARD_NAME, | 1489 IDS_FLAGS_ENABLE_VIRTUAL_KEYBOARD_NAME, |
1289 IDS_FLAGS_ENABLE_VIRTUAL_KEYBOARD_DESCRIPTION, | 1490 IDS_FLAGS_ENABLE_VIRTUAL_KEYBOARD_DESCRIPTION, |
1290 kOsCrOS, | 1491 kOsCrOS, |
1291 SINGLE_VALUE_TYPE(keyboard::switches::kEnableVirtualKeyboard) | 1492 SINGLE_VALUE_TYPE(keyboard::switches::kEnableVirtualKeyboard, |
| 1493 UMA_HISTOGRAM_ID_kEnableVirtualKeyboard) |
1292 }, | 1494 }, |
1293 { | 1495 { |
1294 "enable-virtual-keyboard-overscroll", | 1496 "enable-virtual-keyboard-overscroll", |
1295 IDS_FLAGS_ENABLE_VIRTUAL_KEYBOARD_OVERSCROLL_NAME, | 1497 IDS_FLAGS_ENABLE_VIRTUAL_KEYBOARD_OVERSCROLL_NAME, |
1296 IDS_FLAGS_ENABLE_VIRTUAL_KEYBOARD_OVERSCROLL_DESCRIPTION, | 1498 IDS_FLAGS_ENABLE_VIRTUAL_KEYBOARD_OVERSCROLL_DESCRIPTION, |
1297 kOsCrOS, | 1499 kOsCrOS, |
1298 ENABLE_DISABLE_VALUE_TYPE( | 1500 ENABLE_DISABLE_VALUE_TYPE( |
1299 keyboard::switches::kEnableVirtualKeyboardOverscroll, | 1501 keyboard::switches::kEnableVirtualKeyboardOverscroll, |
1300 keyboard::switches::kDisableVirtualKeyboardOverscroll) | 1502 UMA_HISTOGRAM_ID_kEnableVirtualKeyboardOverscroll, |
| 1503 keyboard::switches::kDisableVirtualKeyboardOverscroll, |
| 1504 UMA_HISTOGRAM_ID_kDisableVirtualKeyboardOverscroll) |
1301 }, | 1505 }, |
1302 { | 1506 { |
1303 "enable-swipe-selection", | 1507 "enable-swipe-selection", |
1304 IDS_FLAGS_ENABLE_SWIPE_SELECTION_NAME, | 1508 IDS_FLAGS_ENABLE_SWIPE_SELECTION_NAME, |
1305 IDS_FLAGS_ENABLE_SWIPE_SELECTION_DESCRIPTION, | 1509 IDS_FLAGS_ENABLE_SWIPE_SELECTION_DESCRIPTION, |
1306 kOsCrOS, | 1510 kOsCrOS, |
1307 SINGLE_VALUE_TYPE(keyboard::switches::kEnableSwipeSelection) | 1511 SINGLE_VALUE_TYPE(keyboard::switches::kEnableSwipeSelection, |
| 1512 UMA_HISTOGRAM_ID_kEnableSwipeSelection) |
1308 }, | 1513 }, |
1309 { | 1514 { |
1310 "enable-input-view", | 1515 "enable-input-view", |
1311 IDS_FLAGS_ENABLE_INPUT_VIEW_NAME, | 1516 IDS_FLAGS_ENABLE_INPUT_VIEW_NAME, |
1312 IDS_FLAGS_ENABLE_INPUT_VIEW_DESCRIPTION, | 1517 IDS_FLAGS_ENABLE_INPUT_VIEW_DESCRIPTION, |
1313 kOsCrOS, | 1518 kOsCrOS, |
1314 ENABLE_DISABLE_VALUE_TYPE(keyboard::switches::kEnableInputView, | 1519 ENABLE_DISABLE_VALUE_TYPE(keyboard::switches::kEnableInputView, |
1315 keyboard::switches::kDisableInputView) | 1520 UMA_HISTOGRAM_ID_kEnableInputView, |
| 1521 keyboard::switches::kDisableInputView, |
| 1522 UMA_HISTOGRAM_ID_kDisableInputView) |
1316 }, | 1523 }, |
1317 { | 1524 { |
1318 "enable-experimental-input-view-features", | 1525 "enable-experimental-input-view-features", |
1319 IDS_FLAGS_ENABLE_EXPERIMENTAL_INPUT_VIEW_FEATURES_NAME, | 1526 IDS_FLAGS_ENABLE_EXPERIMENTAL_INPUT_VIEW_FEATURES_NAME, |
1320 IDS_FLAGS_ENABLE_EXPERIMENTAL_INPUT_VIEW_FEATURES_DESCRIPTION, | 1527 IDS_FLAGS_ENABLE_EXPERIMENTAL_INPUT_VIEW_FEATURES_DESCRIPTION, |
1321 kOsCrOS, | 1528 kOsCrOS, |
1322 SINGLE_VALUE_TYPE(keyboard::switches::kEnableExperimentalInputViewFeatures) | 1529 SINGLE_VALUE_TYPE(keyboard::switches::kEnableExperimentalInputViewFeatures, |
| 1530 UMA_HISTOGRAM_ID_kEnableExperimentalInputViewFeatures) |
1323 }, | 1531 }, |
1324 #endif | 1532 #endif |
1325 { | 1533 { |
1326 "enable-simple-cache-backend", | 1534 "enable-simple-cache-backend", |
1327 IDS_FLAGS_ENABLE_SIMPLE_CACHE_BACKEND_NAME, | 1535 IDS_FLAGS_ENABLE_SIMPLE_CACHE_BACKEND_NAME, |
1328 IDS_FLAGS_ENABLE_SIMPLE_CACHE_BACKEND_DESCRIPTION, | 1536 IDS_FLAGS_ENABLE_SIMPLE_CACHE_BACKEND_DESCRIPTION, |
1329 kOsWin | kOsMac | kOsLinux | kOsCrOS, | 1537 kOsWin | kOsMac | kOsLinux | kOsCrOS, |
1330 MULTI_VALUE_TYPE(kSimpleCacheBackendChoices) | 1538 MULTI_VALUE_TYPE(kSimpleCacheBackendChoices) |
1331 }, | 1539 }, |
1332 { | 1540 { |
1333 "enable-tcp-fast-open", | 1541 "enable-tcp-fast-open", |
1334 IDS_FLAGS_ENABLE_TCP_FAST_OPEN_NAME, | 1542 IDS_FLAGS_ENABLE_TCP_FAST_OPEN_NAME, |
1335 IDS_FLAGS_ENABLE_TCP_FAST_OPEN_DESCRIPTION, | 1543 IDS_FLAGS_ENABLE_TCP_FAST_OPEN_DESCRIPTION, |
1336 kOsLinux | kOsCrOS | kOsAndroid, | 1544 kOsLinux | kOsCrOS | kOsAndroid, |
1337 SINGLE_VALUE_TYPE(switches::kEnableTcpFastOpen) | 1545 SINGLE_VALUE_TYPE(switches::kEnableTcpFastOpen, |
| 1546 UMA_HISTOGRAM_ID_kEnableTcpFastOpen) |
1338 }, | 1547 }, |
1339 { | 1548 { |
1340 "enable-syncfs-directory-operation", | 1549 "enable-syncfs-directory-operation", |
1341 IDS_FLAGS_ENABLE_SYNC_DIRECTORY_OPERATION_NAME, | 1550 IDS_FLAGS_ENABLE_SYNC_DIRECTORY_OPERATION_NAME, |
1342 IDS_FLAGS_ENABLE_SYNC_DIRECTORY_OPERATION_DESCRIPTION, | 1551 IDS_FLAGS_ENABLE_SYNC_DIRECTORY_OPERATION_DESCRIPTION, |
1343 kOsAll, | 1552 kOsAll, |
1344 SINGLE_VALUE_TYPE(switches::kSyncfsEnableDirectoryOperation), | 1553 SINGLE_VALUE_TYPE(switches::kSyncfsEnableDirectoryOperation, |
| 1554 UMA_HISTOGRAM_ID_kSyncfsEnableDirectoryOperation) |
1345 }, | 1555 }, |
1346 #if defined(ENABLE_SERVICE_DISCOVERY) | 1556 #if defined(ENABLE_SERVICE_DISCOVERY) |
1347 { | 1557 { |
1348 "disable-device-discovery", | 1558 "disable-device-discovery", |
1349 IDS_FLAGS_DISABLE_DEVICE_DISCOVERY_NAME, | 1559 IDS_FLAGS_DISABLE_DEVICE_DISCOVERY_NAME, |
1350 IDS_FLAGS_DISABLE_DEVICE_DISCOVERY_DESCRIPTION, | 1560 IDS_FLAGS_DISABLE_DEVICE_DISCOVERY_DESCRIPTION, |
1351 kOsDesktop, | 1561 kOsDesktop, |
1352 SINGLE_VALUE_TYPE(switches::kDisableDeviceDiscovery) | 1562 SINGLE_VALUE_TYPE(switches::kDisableDeviceDiscovery, |
| 1563 UMA_HISTOGRAM_ID_kDisableDeviceDiscovery) |
1353 }, | 1564 }, |
1354 { | 1565 { |
1355 "device-discovery-notifications", | 1566 "device-discovery-notifications", |
1356 IDS_FLAGS_DEVICE_DISCOVERY_NOTIFICATIONS_NAME, | 1567 IDS_FLAGS_DEVICE_DISCOVERY_NOTIFICATIONS_NAME, |
1357 IDS_FLAGS_DEVICE_DISCOVERY_NOTIFICATIONS_DESCRIPTION, | 1568 IDS_FLAGS_DEVICE_DISCOVERY_NOTIFICATIONS_DESCRIPTION, |
1358 kOsDesktop, | 1569 kOsDesktop, |
1359 ENABLE_DISABLE_VALUE_TYPE(switches::kEnableDeviceDiscoveryNotifications, | 1570 ENABLE_DISABLE_VALUE_TYPE( |
1360 switches::kDisableDeviceDiscoveryNotifications) | 1571 switches::kEnableDeviceDiscoveryNotifications, |
| 1572 UMA_HISTOGRAM_ID_kEnableDeviceDiscoveryNotifications, |
| 1573 switches::kDisableDeviceDiscoveryNotifications, |
| 1574 UMA_HISTOGRAM_ID_kDisableDeviceDiscoveryNotifications) |
1361 }, | 1575 }, |
1362 { | 1576 { |
1363 "enable-cloud-devices", | 1577 "enable-cloud-devices", |
1364 IDS_FLAGS_ENABLE_CLOUD_DEVICES_NAME, | 1578 IDS_FLAGS_ENABLE_CLOUD_DEVICES_NAME, |
1365 IDS_FLAGS_ENABLE_CLOUD_DEVICES_DESCRIPTION, | 1579 IDS_FLAGS_ENABLE_CLOUD_DEVICES_DESCRIPTION, |
1366 kOsDesktop, | 1580 kOsDesktop, |
1367 SINGLE_VALUE_TYPE(switches::kEnableCloudDevices) | 1581 SINGLE_VALUE_TYPE(switches::kEnableCloudDevices, |
| 1582 UMA_HISTOGRAM_ID_kEnableCloudDevices) |
1368 }, | 1583 }, |
1369 { | 1584 { |
1370 "enable-print-preview-register-promos", | 1585 "enable-print-preview-register-promos", |
1371 IDS_FLAGS_ENABLE_PRINT_PREVIEW_REGISTER_PROMOS_NAME, | 1586 IDS_FLAGS_ENABLE_PRINT_PREVIEW_REGISTER_PROMOS_NAME, |
1372 IDS_FLAGS_ENABLE_PRINT_PREVIEW_REGISTER_PROMOS_DESCRIPTION, | 1587 IDS_FLAGS_ENABLE_PRINT_PREVIEW_REGISTER_PROMOS_DESCRIPTION, |
1373 kOsDesktop, | 1588 kOsDesktop, |
1374 SINGLE_VALUE_TYPE(switches::kEnablePrintPreviewRegisterPromos) | 1589 SINGLE_VALUE_TYPE(switches::kEnablePrintPreviewRegisterPromos, |
| 1590 UMA_HISTOGRAM_ID_kEnablePrintPreviewRegisterPromos) |
1375 }, | 1591 }, |
1376 #endif // ENABLE_SERVICE_DISCOVERY | 1592 #endif // ENABLE_SERVICE_DISCOVERY |
1377 #if defined(OS_WIN) | 1593 #if defined(OS_WIN) |
1378 { | 1594 { |
1379 "enable-cloud-print-xps", | 1595 "enable-cloud-print-xps", |
1380 IDS_FLAGS_ENABLE_CLOUD_PRINT_XPS_NAME, | 1596 IDS_FLAGS_ENABLE_CLOUD_PRINT_XPS_NAME, |
1381 IDS_FLAGS_ENABLE_CLOUD_PRINT_XPS_DESCRIPTION, | 1597 IDS_FLAGS_ENABLE_CLOUD_PRINT_XPS_DESCRIPTION, |
1382 kOsWin, | 1598 kOsWin, |
1383 SINGLE_VALUE_TYPE(switches::kEnableCloudPrintXps) | 1599 SINGLE_VALUE_TYPE(switches::kEnableCloudPrintXps, |
| 1600 UMA_HISTOGRAM_ID_kEnableCloudPrintXps) |
1384 }, | 1601 }, |
1385 #endif | 1602 #endif |
1386 #if defined(OS_MACOSX) | 1603 #if defined(OS_MACOSX) |
1387 { | 1604 { |
1388 "enable-simplified-fullscreen", | 1605 "enable-simplified-fullscreen", |
1389 IDS_FLAGS_ENABLE_SIMPLIFIED_FULLSCREEN_NAME, | 1606 IDS_FLAGS_ENABLE_SIMPLIFIED_FULLSCREEN_NAME, |
1390 IDS_FLAGS_ENABLE_SIMPLIFIED_FULLSCREEN_DESCRIPTION, | 1607 IDS_FLAGS_ENABLE_SIMPLIFIED_FULLSCREEN_DESCRIPTION, |
1391 kOsMac, | 1608 kOsMac, |
1392 SINGLE_VALUE_TYPE(switches::kEnableSimplifiedFullscreen) | 1609 SINGLE_VALUE_TYPE(switches::kEnableSimplifiedFullscreen, |
| 1610 UMA_HISTOGRAM_ID_kEnableSimplifiedFullscreen) |
1393 }, | 1611 }, |
1394 #endif | 1612 #endif |
1395 #if defined(USE_AURA) | 1613 #if defined(USE_AURA) |
1396 { | 1614 { |
1397 "tab-capture-upscale-quality", | 1615 "tab-capture-upscale-quality", |
1398 IDS_FLAGS_TAB_CAPTURE_UPSCALE_QUALITY_NAME, | 1616 IDS_FLAGS_TAB_CAPTURE_UPSCALE_QUALITY_NAME, |
1399 IDS_FLAGS_TAB_CAPTURE_UPSCALE_QUALITY_DESCRIPTION, | 1617 IDS_FLAGS_TAB_CAPTURE_UPSCALE_QUALITY_DESCRIPTION, |
1400 kOsAll, | 1618 kOsAll, |
1401 MULTI_VALUE_TYPE(kTabCaptureUpscaleQualityChoices) | 1619 MULTI_VALUE_TYPE(kTabCaptureUpscaleQualityChoices) |
1402 }, | 1620 }, |
1403 { | 1621 { |
1404 "tab-capture-downscale-quality", | 1622 "tab-capture-downscale-quality", |
1405 IDS_FLAGS_TAB_CAPTURE_DOWNSCALE_QUALITY_NAME, | 1623 IDS_FLAGS_TAB_CAPTURE_DOWNSCALE_QUALITY_NAME, |
1406 IDS_FLAGS_TAB_CAPTURE_DOWNSCALE_QUALITY_DESCRIPTION, | 1624 IDS_FLAGS_TAB_CAPTURE_DOWNSCALE_QUALITY_DESCRIPTION, |
1407 kOsAll, | 1625 kOsAll, |
1408 MULTI_VALUE_TYPE(kTabCaptureDownscaleQualityChoices) | 1626 MULTI_VALUE_TYPE(kTabCaptureDownscaleQualityChoices) |
1409 }, | 1627 }, |
1410 #endif | 1628 #endif |
1411 { | 1629 { |
1412 "enable-spelling-feedback-field-trial", | 1630 "enable-spelling-feedback-field-trial", |
1413 IDS_FLAGS_ENABLE_SPELLING_FEEDBACK_FIELD_TRIAL_NAME, | 1631 IDS_FLAGS_ENABLE_SPELLING_FEEDBACK_FIELD_TRIAL_NAME, |
1414 IDS_FLAGS_ENABLE_SPELLING_FEEDBACK_FIELD_TRIAL_DESCRIPTION, | 1632 IDS_FLAGS_ENABLE_SPELLING_FEEDBACK_FIELD_TRIAL_DESCRIPTION, |
1415 kOsAll, | 1633 kOsAll, |
1416 SINGLE_VALUE_TYPE(switches::kEnableSpellingFeedbackFieldTrial) | 1634 SINGLE_VALUE_TYPE(switches::kEnableSpellingFeedbackFieldTrial, |
| 1635 UMA_HISTOGRAM_ID_kEnableSpellingFeedbackFieldTrial) |
1417 }, | 1636 }, |
1418 { | 1637 { |
1419 "enable-webgl-draft-extensions", | 1638 "enable-webgl-draft-extensions", |
1420 IDS_FLAGS_ENABLE_WEBGL_DRAFT_EXTENSIONS_NAME, | 1639 IDS_FLAGS_ENABLE_WEBGL_DRAFT_EXTENSIONS_NAME, |
1421 IDS_FLAGS_ENABLE_WEBGL_DRAFT_EXTENSIONS_DESCRIPTION, | 1640 IDS_FLAGS_ENABLE_WEBGL_DRAFT_EXTENSIONS_DESCRIPTION, |
1422 kOsAll, | 1641 kOsAll, |
1423 SINGLE_VALUE_TYPE(switches::kEnableWebGLDraftExtensions) | 1642 SINGLE_VALUE_TYPE(switches::kEnableWebGLDraftExtensions, |
| 1643 UMA_HISTOGRAM_ID_kEnableWebGLDraftExtensions) |
1424 }, | 1644 }, |
1425 { | 1645 { |
1426 "enable-web-midi", | 1646 "enable-web-midi", |
1427 IDS_FLAGS_ENABLE_WEB_MIDI_NAME, | 1647 IDS_FLAGS_ENABLE_WEB_MIDI_NAME, |
1428 IDS_FLAGS_ENABLE_WEB_MIDI_DESCRIPTION, | 1648 IDS_FLAGS_ENABLE_WEB_MIDI_DESCRIPTION, |
1429 kOsMac | kOsWin | kOsLinux | kOsCrOS | kOsAndroid, | 1649 kOsMac | kOsWin | kOsLinux | kOsCrOS | kOsAndroid, |
1430 SINGLE_VALUE_TYPE(switches::kEnableWebMIDI) | 1650 SINGLE_VALUE_TYPE(switches::kEnableWebMIDI, |
| 1651 UMA_HISTOGRAM_ID_kEnableWebMIDI) |
1431 }, | 1652 }, |
1432 { | 1653 { |
1433 "enable-new-profile-management", | 1654 "enable-new-profile-management", |
1434 IDS_FLAGS_ENABLE_NEW_PROFILE_MANAGEMENT_NAME, | 1655 IDS_FLAGS_ENABLE_NEW_PROFILE_MANAGEMENT_NAME, |
1435 IDS_FLAGS_ENABLE_NEW_PROFILE_MANAGEMENT_DESCRIPTION, | 1656 IDS_FLAGS_ENABLE_NEW_PROFILE_MANAGEMENT_DESCRIPTION, |
1436 kOsAndroid | kOsMac | kOsWin | kOsLinux | kOsCrOS, | 1657 kOsAndroid | kOsMac | kOsWin | kOsLinux | kOsCrOS, |
1437 ENABLE_DISABLE_VALUE_TYPE(switches::kEnableNewProfileManagement, | 1658 ENABLE_DISABLE_VALUE_TYPE(switches::kEnableNewProfileManagement, |
1438 switches::kDisableNewProfileManagement) | 1659 UMA_HISTOGRAM_ID_kEnableNewProfileManagement, |
| 1660 switches::kDisableNewProfileManagement, |
| 1661 UMA_HISTOGRAM_ID_kDisableNewProfileManagement) |
1439 }, | 1662 }, |
1440 { | 1663 { |
1441 "enable-account-consistency", | 1664 "enable-account-consistency", |
1442 IDS_FLAGS_ENABLE_ACCOUNT_CONSISTENCY_NAME, | 1665 IDS_FLAGS_ENABLE_ACCOUNT_CONSISTENCY_NAME, |
1443 IDS_FLAGS_ENABLE_ACCOUNT_CONSISTENCY_DESCRIPTION, | 1666 IDS_FLAGS_ENABLE_ACCOUNT_CONSISTENCY_DESCRIPTION, |
1444 kOsAndroid | kOsMac | kOsWin | kOsLinux | kOsCrOS, | 1667 kOsAndroid | kOsMac | kOsWin | kOsLinux | kOsCrOS, |
1445 ENABLE_DISABLE_VALUE_TYPE(switches::kEnableAccountConsistency, | 1668 ENABLE_DISABLE_VALUE_TYPE(switches::kEnableAccountConsistency, |
1446 switches::kDisableAccountConsistency) | 1669 UMA_HISTOGRAM_ID_kEnableAccountConsistency, |
| 1670 switches::kDisableAccountConsistency, |
| 1671 UMA_HISTOGRAM_ID_kDisableAccountConsistency) |
1447 }, | 1672 }, |
1448 { | 1673 { |
1449 "enable-fast-user-switching", | 1674 "enable-fast-user-switching", |
1450 IDS_FLAGS_ENABLE_FAST_USER_SWITCHING_NAME, | 1675 IDS_FLAGS_ENABLE_FAST_USER_SWITCHING_NAME, |
1451 IDS_FLAGS_ENABLE_FAST_USER_SWITCHING_DESCRIPTION, | 1676 IDS_FLAGS_ENABLE_FAST_USER_SWITCHING_DESCRIPTION, |
1452 kOsMac | kOsWin | kOsLinux, | 1677 kOsMac | kOsWin | kOsLinux, |
1453 SINGLE_VALUE_TYPE(switches::kFastUserSwitching) | 1678 SINGLE_VALUE_TYPE(switches::kFastUserSwitching, |
| 1679 UMA_HISTOGRAM_ID_kFastUserSwitching) |
1454 }, | 1680 }, |
1455 { | 1681 { |
1456 "enable-new-avatar-menu", | 1682 "enable-new-avatar-menu", |
1457 IDS_FLAGS_ENABLE_NEW_AVATAR_MENU_NAME, | 1683 IDS_FLAGS_ENABLE_NEW_AVATAR_MENU_NAME, |
1458 IDS_FLAGS_ENABLE_NEW_AVATAR_MENU_DESCRIPTION, | 1684 IDS_FLAGS_ENABLE_NEW_AVATAR_MENU_DESCRIPTION, |
1459 kOsMac | kOsWin | kOsLinux, | 1685 kOsMac | kOsWin | kOsLinux, |
1460 SINGLE_VALUE_TYPE(switches::kNewAvatarMenu) | 1686 SINGLE_VALUE_TYPE(switches::kNewAvatarMenu, |
| 1687 UMA_HISTOGRAM_ID_kNewAvatarMenu) |
1461 }, | 1688 }, |
1462 { | 1689 { |
1463 "enable-web-based-signin", | 1690 "enable-web-based-signin", |
1464 IDS_FLAGS_ENABLE_WEB_BASED_SIGNIN_NAME, | 1691 IDS_FLAGS_ENABLE_WEB_BASED_SIGNIN_NAME, |
1465 IDS_FLAGS_ENABLE_WEB_BASED_SIGNIN_DESCRIPTION, | 1692 IDS_FLAGS_ENABLE_WEB_BASED_SIGNIN_DESCRIPTION, |
1466 kOsMac | kOsWin | kOsLinux, | 1693 kOsMac | kOsWin | kOsLinux, |
1467 SINGLE_VALUE_TYPE(switches::kEnableWebBasedSignin) | 1694 SINGLE_VALUE_TYPE(switches::kEnableWebBasedSignin, |
| 1695 UMA_HISTOGRAM_ID_kEnableWebBasedSignin) |
1468 }, | 1696 }, |
1469 { | 1697 { |
1470 "enable-google-profile-info", | 1698 "enable-google-profile-info", |
1471 IDS_FLAGS_ENABLE_GOOGLE_PROFILE_INFO_NAME, | 1699 IDS_FLAGS_ENABLE_GOOGLE_PROFILE_INFO_NAME, |
1472 IDS_FLAGS_ENABLE_GOOGLE_PROFILE_INFO_DESCRIPTION, | 1700 IDS_FLAGS_ENABLE_GOOGLE_PROFILE_INFO_DESCRIPTION, |
1473 kOsMac | kOsWin | kOsLinux, | 1701 kOsMac | kOsWin | kOsLinux, |
1474 SINGLE_VALUE_TYPE(switches::kGoogleProfileInfo) | 1702 SINGLE_VALUE_TYPE(switches::kGoogleProfileInfo, |
| 1703 UMA_HISTOGRAM_ID_kGoogleProfileInfo) |
1475 }, | 1704 }, |
1476 { | 1705 { |
1477 "reset-app-list-install-state", | 1706 "reset-app-list-install-state", |
1478 IDS_FLAGS_RESET_APP_LIST_INSTALL_STATE_NAME, | 1707 IDS_FLAGS_RESET_APP_LIST_INSTALL_STATE_NAME, |
1479 IDS_FLAGS_RESET_APP_LIST_INSTALL_STATE_DESCRIPTION, | 1708 IDS_FLAGS_RESET_APP_LIST_INSTALL_STATE_DESCRIPTION, |
1480 kOsMac | kOsWin | kOsLinux, | 1709 kOsMac | kOsWin | kOsLinux, |
1481 SINGLE_VALUE_TYPE(switches::kResetAppListInstallState) | 1710 SINGLE_VALUE_TYPE(switches::kResetAppListInstallState, |
| 1711 UMA_HISTOGRAM_ID_kResetAppListInstallState) |
1482 }, | 1712 }, |
1483 #if defined(ENABLE_APP_LIST) | 1713 #if defined(ENABLE_APP_LIST) |
1484 #if defined(OS_LINUX) | 1714 #if defined(OS_LINUX) |
1485 { | 1715 { // This is compiled out on non-Linux platforms because otherwise it would |
1486 // This is compiled out on non-Linux platforms because otherwise it would be | 1716 // be |
1487 // visible on Win/Mac/CrOS but not on Linux GTK, which would be confusing. | 1717 // visible on Win/Mac/CrOS but not on Linux GTK, which would be confusing. |
1488 // TODO(mgiuca): Remove the #if when Aura is the default on Linux. | 1718 // TODO(mgiuca): Remove the #if when Aura is the default on Linux. |
1489 "enable-app-list", | 1719 "enable-app-list", |
1490 IDS_FLAGS_ENABLE_APP_LIST_NAME, | 1720 IDS_FLAGS_ENABLE_APP_LIST_NAME, |
1491 IDS_FLAGS_ENABLE_APP_LIST_DESCRIPTION, | 1721 IDS_FLAGS_ENABLE_APP_LIST_DESCRIPTION, |
1492 kOsLinux, | 1722 kOsLinux, |
1493 SINGLE_VALUE_TYPE(switches::kEnableAppList) | 1723 SINGLE_VALUE_TYPE(switches::kEnableAppList, |
| 1724 UMA_HISTOGRAM_ID_kEnableAppList) |
1494 }, | 1725 }, |
1495 #endif | 1726 #endif |
1496 { | 1727 { |
1497 "disable-app-list-app-info", | 1728 "disable-app-list-app-info", |
1498 IDS_FLAGS_DISABLE_APP_INFO_IN_APP_LIST, | 1729 IDS_FLAGS_DISABLE_APP_INFO_IN_APP_LIST, |
1499 IDS_FLAGS_DISABLE_APP_INFO_IN_APP_LIST_DESCRIPTION, | 1730 IDS_FLAGS_DISABLE_APP_INFO_IN_APP_LIST_DESCRIPTION, |
1500 kOsLinux | kOsWin | kOsCrOS, | 1731 kOsLinux | kOsWin | kOsCrOS, |
1501 SINGLE_VALUE_TYPE(app_list::switches::kDisableAppInfo) | 1732 SINGLE_VALUE_TYPE(app_list::switches::kDisableAppInfo, |
| 1733 UMA_HISTOGRAM_ID_kDisableAppInfo) |
1502 }, | 1734 }, |
1503 { | 1735 { |
1504 "disable-app-list-voice-search", | 1736 "disable-app-list-voice-search", |
1505 IDS_FLAGS_DISABLE_APP_LIST_VOICE_SEARCH, | 1737 IDS_FLAGS_DISABLE_APP_LIST_VOICE_SEARCH, |
1506 IDS_FLAGS_DISABLE_APP_LIST_VOICE_SEARCH_DESCRIPTION, | 1738 IDS_FLAGS_DISABLE_APP_LIST_VOICE_SEARCH_DESCRIPTION, |
1507 kOsCrOS, | 1739 kOsCrOS, |
1508 SINGLE_VALUE_TYPE(app_list::switches::kDisableVoiceSearch) | 1740 SINGLE_VALUE_TYPE(app_list::switches::kDisableVoiceSearch, |
| 1741 UMA_HISTOGRAM_ID_kDisableVoiceSearch) |
1509 }, | 1742 }, |
1510 #endif | 1743 #endif |
1511 #if defined(OS_ANDROID) | 1744 #if defined(OS_ANDROID) |
1512 { | 1745 { |
1513 "enable-accessibility-tab-switcher", | 1746 "enable-accessibility-tab-switcher", |
1514 IDS_FLAGS_ENABLE_ACCESSIBILITY_TAB_SWITCHER_NAME, | 1747 IDS_FLAGS_ENABLE_ACCESSIBILITY_TAB_SWITCHER_NAME, |
1515 IDS_FLAGS_ENABLE_ACCESSIBILITY_TAB_SWITCHER_DESCRIPTION, | 1748 IDS_FLAGS_ENABLE_ACCESSIBILITY_TAB_SWITCHER_DESCRIPTION, |
1516 kOsAndroid, | 1749 kOsAndroid, |
1517 SINGLE_VALUE_TYPE(switches::kEnableAccessibilityTabSwitcher) | 1750 SINGLE_VALUE_TYPE(switches::kEnableAccessibilityTabSwitcher, |
1518 }, | 1751 UMA_HISTOGRAM_ID_kEnableAccessibilityTabSwitcher) |
1519 { | |
1520 // TODO(dmazzoni): remove this flag when native android accessibility | |
1521 // ships in the stable channel. http://crbug.com/356775 | |
1522 "enable-accessibility-script-injection", | |
1523 IDS_FLAGS_ENABLE_ACCESSIBILITY_SCRIPT_INJECTION_NAME, | |
1524 IDS_FLAGS_ENABLE_ACCESSIBILITY_SCRIPT_INJECTION_DESCRIPTION, | |
1525 kOsAndroid, | |
1526 // Java-only switch: ContentSwitches.ENABLE_ACCESSIBILITY_SCRIPT_INJECTION. | |
1527 SINGLE_VALUE_TYPE("enable-accessibility-script-injection") | |
1528 }, | 1752 }, |
1529 #endif | 1753 #endif |
1530 { | 1754 { |
1531 "enable-one-copy", | 1755 "enable-one-copy", |
1532 IDS_FLAGS_ONE_COPY_NAME, | 1756 IDS_FLAGS_ONE_COPY_NAME, |
1533 IDS_FLAGS_ONE_COPY_DESCRIPTION, | 1757 IDS_FLAGS_ONE_COPY_DESCRIPTION, |
1534 kOsAll, | 1758 kOsAll, |
1535 SINGLE_VALUE_TYPE(switches::kEnableOneCopy) | 1759 SINGLE_VALUE_TYPE(switches::kEnableOneCopy, |
| 1760 UMA_HISTOGRAM_ID_kEnableOneCopy) |
1536 }, | 1761 }, |
1537 { | 1762 { |
1538 "enable-zero-copy", | 1763 "enable-zero-copy", |
1539 IDS_FLAGS_ZERO_COPY_NAME, | 1764 IDS_FLAGS_ZERO_COPY_NAME, |
1540 IDS_FLAGS_ZERO_COPY_DESCRIPTION, | 1765 IDS_FLAGS_ZERO_COPY_DESCRIPTION, |
1541 kOsAll, | 1766 kOsAll, |
1542 MULTI_VALUE_TYPE(kZeroCopyChoices) | 1767 MULTI_VALUE_TYPE(kZeroCopyChoices) |
1543 }, | 1768 }, |
1544 #if defined(OS_CHROMEOS) | 1769 #if defined(OS_CHROMEOS) |
1545 { | 1770 { |
1546 "enable-first-run-ui-transitions", | 1771 "enable-first-run-ui-transitions", |
1547 IDS_FLAGS_ENABLE_FIRST_RUN_UI_TRANSITIONS_NAME, | 1772 IDS_FLAGS_ENABLE_FIRST_RUN_UI_TRANSITIONS_NAME, |
1548 IDS_FLAGS_ENABLE_FIRST_RUN_UI_TRANSITIONS_DESCRIPTION, | 1773 IDS_FLAGS_ENABLE_FIRST_RUN_UI_TRANSITIONS_DESCRIPTION, |
1549 kOsCrOS, | 1774 kOsCrOS, |
1550 SINGLE_VALUE_TYPE(chromeos::switches::kEnableFirstRunUITransitions) | 1775 SINGLE_VALUE_TYPE(chromeos::switches::kEnableFirstRunUITransitions, |
| 1776 UMA_HISTOGRAM_ID_kEnableFirstRunUITransitions) |
1551 }, | 1777 }, |
1552 #endif | 1778 #endif |
1553 { | 1779 { |
1554 "disable-compositor-touch-hit-testing", | 1780 "disable-compositor-touch-hit-testing", |
1555 IDS_FLAGS_DISABLE_COMPOSITOR_TOUCH_HIT_TESTING_NAME, | 1781 IDS_FLAGS_DISABLE_COMPOSITOR_TOUCH_HIT_TESTING_NAME, |
1556 IDS_FLAGS_DISABLE_COMPOSITOR_TOUCH_HIT_TESTING_DESCRIPTION, | 1782 IDS_FLAGS_DISABLE_COMPOSITOR_TOUCH_HIT_TESTING_DESCRIPTION, |
1557 kOsAll, | 1783 kOsAll, |
1558 SINGLE_VALUE_TYPE(cc::switches::kDisableCompositorTouchHitTesting), | 1784 SINGLE_VALUE_TYPE(cc::switches::kDisableCompositorTouchHitTesting, |
| 1785 UMA_HISTOGRAM_ID_kDisableCompositorTouchHitTesting) |
1559 }, | 1786 }, |
1560 { | 1787 { |
1561 "enable-streamlined-hosted-apps", | 1788 "enable-streamlined-hosted-apps", |
1562 IDS_FLAGS_ENABLE_STREAMLINED_HOSTED_APPS_NAME, | 1789 IDS_FLAGS_ENABLE_STREAMLINED_HOSTED_APPS_NAME, |
1563 IDS_FLAGS_ENABLE_STREAMLINED_HOSTED_APPS_DESCRIPTION, | 1790 IDS_FLAGS_ENABLE_STREAMLINED_HOSTED_APPS_DESCRIPTION, |
1564 kOsWin | kOsCrOS | kOsLinux, | 1791 kOsWin | kOsCrOS | kOsLinux, |
1565 SINGLE_VALUE_TYPE(switches::kEnableStreamlinedHostedApps) | 1792 SINGLE_VALUE_TYPE(switches::kEnableStreamlinedHostedApps, |
| 1793 UMA_HISTOGRAM_ID_kEnableStreamlinedHostedApps) |
1566 }, | 1794 }, |
1567 { | 1795 { |
1568 "enable-prominent-url-app-flow", | 1796 "enable-prominent-url-app-flow", |
1569 IDS_FLAGS_ENABLE_PROMINENT_URL_APP_FLOW_NAME, | 1797 IDS_FLAGS_ENABLE_PROMINENT_URL_APP_FLOW_NAME, |
1570 IDS_FLAGS_ENABLE_PROMINENT_URL_APP_FLOW_DESCRIPTION, | 1798 IDS_FLAGS_ENABLE_PROMINENT_URL_APP_FLOW_DESCRIPTION, |
1571 kOsWin | kOsCrOS | kOsLinux, | 1799 kOsWin | kOsCrOS | kOsLinux, |
1572 SINGLE_VALUE_TYPE(switches::kEnableProminentURLAppFlow) | 1800 SINGLE_VALUE_TYPE(switches::kEnableProminentURLAppFlow, |
| 1801 UMA_HISTOGRAM_ID_kEnableProminentURLAppFlow) |
1573 }, | 1802 }, |
1574 { | 1803 { |
1575 "enable-ephemeral-apps", | 1804 "enable-ephemeral-apps", |
1576 IDS_FLAGS_ENABLE_EPHEMERAL_APPS_NAME, | 1805 IDS_FLAGS_ENABLE_EPHEMERAL_APPS_NAME, |
1577 IDS_FLAGS_ENABLE_EPHEMERAL_APPS_DESCRIPTION, | 1806 IDS_FLAGS_ENABLE_EPHEMERAL_APPS_DESCRIPTION, |
1578 kOsAll, | 1807 kOsAll, |
1579 SINGLE_VALUE_TYPE(switches::kEnableEphemeralApps) | 1808 SINGLE_VALUE_TYPE(switches::kEnableEphemeralApps, |
| 1809 UMA_HISTOGRAM_ID_kEnableEphemeralApps) |
1580 }, | 1810 }, |
1581 { | 1811 { |
1582 "enable-linkable-ephemeral-apps", | 1812 "enable-linkable-ephemeral-apps", |
1583 IDS_FLAGS_ENABLE_LINKABLE_EPHEMERAL_APPS_NAME, | 1813 IDS_FLAGS_ENABLE_LINKABLE_EPHEMERAL_APPS_NAME, |
1584 IDS_FLAGS_ENABLE_LINKABLE_EPHEMERAL_APPS_DESCRIPTION, | 1814 IDS_FLAGS_ENABLE_LINKABLE_EPHEMERAL_APPS_DESCRIPTION, |
1585 kOsAll, | 1815 kOsAll, |
1586 SINGLE_VALUE_TYPE(switches::kEnableLinkableEphemeralApps) | 1816 SINGLE_VALUE_TYPE(switches::kEnableLinkableEphemeralApps, |
| 1817 UMA_HISTOGRAM_ID_kEnableLinkableEphemeralApps) |
1587 }, | 1818 }, |
1588 { | 1819 { |
1589 "enable-service-worker", | 1820 "enable-service-worker", |
1590 IDS_FLAGS_ENABLE_SERVICE_WORKER_NAME, | 1821 IDS_FLAGS_ENABLE_SERVICE_WORKER_NAME, |
1591 IDS_FLAGS_ENABLE_SERVICE_WORKER_DESCRIPTION, | 1822 IDS_FLAGS_ENABLE_SERVICE_WORKER_DESCRIPTION, |
1592 kOsAll, | 1823 kOsAll, |
1593 SINGLE_VALUE_TYPE(switches::kEnableServiceWorker) | 1824 SINGLE_VALUE_TYPE(switches::kEnableServiceWorker, |
| 1825 UMA_HISTOGRAM_ID_kEnableServiceWorker) |
1594 }, | 1826 }, |
1595 { | 1827 { |
1596 "enable-service-worker-sync", | 1828 "enable-service-worker-sync", |
1597 IDS_FLAGS_ENABLE_SERVICE_WORKER_SYNC_NAME, | 1829 IDS_FLAGS_ENABLE_SERVICE_WORKER_SYNC_NAME, |
1598 IDS_FLAGS_ENABLE_SERVICE_WORKER_SYNC_DESCRIPTION, | 1830 IDS_FLAGS_ENABLE_SERVICE_WORKER_SYNC_DESCRIPTION, |
1599 kOsAll, | 1831 kOsAll, |
1600 SINGLE_VALUE_TYPE(switches::kEnableServiceWorkerSync) | 1832 SINGLE_VALUE_TYPE(switches::kEnableServiceWorkerSync, |
| 1833 UMA_HISTOGRAM_ID_kEnableServiceWorkerSync) |
1601 }, | 1834 }, |
1602 #if defined(OS_ANDROID) | 1835 #if defined(OS_ANDROID) |
1603 { | 1836 { |
1604 "disable-click-delay", | 1837 "disable-click-delay", |
1605 IDS_FLAGS_DISABLE_CLICK_DELAY_NAME, | 1838 IDS_FLAGS_DISABLE_CLICK_DELAY_NAME, |
1606 IDS_FLAGS_DISABLE_CLICK_DELAY_DESCRIPTION, | 1839 IDS_FLAGS_DISABLE_CLICK_DELAY_DESCRIPTION, |
1607 kOsAndroid, | 1840 kOsAndroid, |
1608 // Java-only switch: CommandLine.DISABLE_CLICK_DELAY | 1841 // Java-only switch: CommandLine.DISABLE_CLICK_DELAY |
1609 SINGLE_VALUE_TYPE("disable-click-delay") | 1842 SINGLE_VALUE_TYPE(switches::kDisableClickDelay, |
| 1843 UMA_HISTOGRAM_ID_kDisableClickDelay) |
1610 }, | 1844 }, |
1611 #endif | 1845 #endif |
1612 #if defined(OS_MACOSX) | 1846 #if defined(OS_MACOSX) |
1613 { | 1847 { |
1614 "enable-translate-new-ux", | 1848 "enable-translate-new-ux", |
1615 IDS_FLAGS_ENABLE_TRANSLATE_NEW_UX_NAME, | 1849 IDS_FLAGS_ENABLE_TRANSLATE_NEW_UX_NAME, |
1616 IDS_FLAGS_ENABLE_TRANSLATE_NEW_UX_DESCRIPTION, | 1850 IDS_FLAGS_ENABLE_TRANSLATE_NEW_UX_DESCRIPTION, |
1617 kOsMac, | 1851 kOsMac, |
1618 SINGLE_VALUE_TYPE(switches::kEnableTranslateNewUX) | 1852 SINGLE_VALUE_TYPE(switches::kEnableTranslateNewUX, |
| 1853 UMA_HISTOGRAM_ID_kEnableTranslateNewUX) |
1619 }, | 1854 }, |
1620 #endif | 1855 #endif |
1621 #if defined(TOOLKIT_VIEWS) | 1856 #if defined(TOOLKIT_VIEWS) |
1622 { | 1857 { |
1623 "disable-views-rect-based-targeting", // FLAGS:RECORD_UMA | 1858 "disable-views-rect-based-targeting", // FLAGS:RECORD_UMA |
1624 IDS_FLAGS_DISABLE_VIEWS_RECT_BASED_TARGETING_NAME, | 1859 IDS_FLAGS_DISABLE_VIEWS_RECT_BASED_TARGETING_NAME, |
1625 IDS_FLAGS_DISABLE_VIEWS_RECT_BASED_TARGETING_DESCRIPTION, | 1860 IDS_FLAGS_DISABLE_VIEWS_RECT_BASED_TARGETING_DESCRIPTION, |
1626 kOsCrOS | kOsWin, | 1861 kOsCrOS | kOsWin, |
1627 SINGLE_VALUE_TYPE(views::switches::kDisableViewsRectBasedTargeting) | 1862 SINGLE_VALUE_TYPE(views::switches::kDisableViewsRectBasedTargeting, |
| 1863 UMA_HISTOGRAM_ID_kDisableViewsRectBasedTargeting) |
1628 }, | 1864 }, |
1629 #endif | 1865 #endif |
1630 { | 1866 { |
1631 "enable-apps-show-on-first-paint", | 1867 "enable-apps-show-on-first-paint", |
1632 IDS_FLAGS_ENABLE_APPS_SHOW_ON_FIRST_PAINT_NAME, | 1868 IDS_FLAGS_ENABLE_APPS_SHOW_ON_FIRST_PAINT_NAME, |
1633 IDS_FLAGS_ENABLE_APPS_SHOW_ON_FIRST_PAINT_DESCRIPTION, | 1869 IDS_FLAGS_ENABLE_APPS_SHOW_ON_FIRST_PAINT_DESCRIPTION, |
1634 kOsDesktop, | 1870 kOsDesktop, |
1635 SINGLE_VALUE_TYPE(switches::kEnableAppsShowOnFirstPaint) | 1871 SINGLE_VALUE_TYPE(switches::kEnableAppsShowOnFirstPaint, |
| 1872 UMA_HISTOGRAM_ID_kEnableAppsShowOnFirstPaint) |
1636 }, | 1873 }, |
1637 { | 1874 { |
1638 "enhanced-bookmarks-experiment", | 1875 "enhanced-bookmarks-experiment", |
1639 IDS_FLAGS_ENABLE_ENHANCED_BOOKMARKS_NAME, | 1876 IDS_FLAGS_ENABLE_ENHANCED_BOOKMARKS_NAME, |
1640 IDS_FLAGS_ENABLE_ENHANCED_BOOKMARKS_DESCRIPTION, | 1877 IDS_FLAGS_ENABLE_ENHANCED_BOOKMARKS_DESCRIPTION, |
1641 kOsDesktop, | 1878 kOsDesktop, |
1642 ENABLE_DISABLE_VALUE_TYPE_AND_VALUE( | 1879 ENABLE_DISABLE_VALUE_TYPE_AND_VALUE( |
1643 switches::kEnhancedBookmarksExperiment, "1", | 1880 switches::kEnhancedBookmarksExperiment, "1", |
1644 switches::kEnhancedBookmarksExperiment, "0") | 1881 UMA_HISTOGRAM_ID_kEnhancedBookmarksExperiment, |
| 1882 switches::kEnhancedBookmarksExperiment, "0", |
| 1883 UMA_HISTOGRAM_ID_kEnhancedBookmarksExperiment) |
1645 }, | 1884 }, |
1646 { | 1885 { |
1647 "manual-enhanced-bookmarks", | 1886 "manual-enhanced-bookmarks", |
1648 IDS_FLAGS_ENABLE_ENHANCED_BOOKMARKS_NAME, | 1887 IDS_FLAGS_ENABLE_ENHANCED_BOOKMARKS_NAME, |
1649 IDS_FLAGS_ENABLE_ENHANCED_BOOKMARKS_DESCRIPTION, | 1888 IDS_FLAGS_ENABLE_ENHANCED_BOOKMARKS_DESCRIPTION, |
1650 kOsDesktop, | 1889 kOsDesktop, |
1651 SINGLE_VALUE_TYPE(switches::kManualEnhancedBookmarks) | 1890 SINGLE_VALUE_TYPE(switches::kManualEnhancedBookmarks, |
| 1891 UMA_HISTOGRAM_ID_kManualEnhancedBookmarks) |
1652 }, | 1892 }, |
1653 { | 1893 { |
1654 "manual-enhanced-bookmarks-optout", | 1894 "manual-enhanced-bookmarks-optout", |
1655 IDS_FLAGS_ENABLE_ENHANCED_BOOKMARKS_NAME, | 1895 IDS_FLAGS_ENABLE_ENHANCED_BOOKMARKS_NAME, |
1656 IDS_FLAGS_ENABLE_ENHANCED_BOOKMARKS_DESCRIPTION, | 1896 IDS_FLAGS_ENABLE_ENHANCED_BOOKMARKS_DESCRIPTION, |
1657 kOsDesktop, | 1897 kOsDesktop, |
1658 SINGLE_VALUE_TYPE(switches::kManualEnhancedBookmarksOptout) | 1898 SINGLE_VALUE_TYPE(switches::kManualEnhancedBookmarksOptout, |
| 1899 UMA_HISTOGRAM_ID_kManualEnhancedBookmarksOptout) |
1659 }, | 1900 }, |
1660 #if defined(OS_ANDROID) | 1901 #if defined(OS_ANDROID) |
1661 { | 1902 { |
1662 "enable-zero-suggest-experiment", | 1903 "enable-zero-suggest-experiment", |
1663 IDS_FLAGS_ZERO_SUGGEST_EXPERIMENT_NAME, | 1904 IDS_FLAGS_ZERO_SUGGEST_EXPERIMENT_NAME, |
1664 IDS_FLAGS_ZERO_SUGGEST_EXPERIMENT_DESCRIPTION, | 1905 IDS_FLAGS_ZERO_SUGGEST_EXPERIMENT_DESCRIPTION, |
1665 kOsAndroid, | 1906 kOsAndroid, |
1666 MULTI_VALUE_TYPE(kZeroSuggestExperimentsChoices) | 1907 MULTI_VALUE_TYPE(kZeroSuggestExperimentsChoices) |
1667 }, | 1908 }, |
1668 #endif | 1909 #endif |
(...skipping 16 matching lines...) Expand all Loading... |
1685 IDS_FLAGS_SEARCH_BUTTON_IN_OMNIBOX_NAME, | 1926 IDS_FLAGS_SEARCH_BUTTON_IN_OMNIBOX_NAME, |
1686 IDS_FLAGS_SEARCH_BUTTON_IN_OMNIBOX_DESCRIPTION, | 1927 IDS_FLAGS_SEARCH_BUTTON_IN_OMNIBOX_DESCRIPTION, |
1687 kOsCrOS | kOsMac | kOsWin | kOsLinux, | 1928 kOsCrOS | kOsMac | kOsWin | kOsLinux, |
1688 MULTI_VALUE_TYPE(kSearchButtonInOmniboxChoices) | 1929 MULTI_VALUE_TYPE(kSearchButtonInOmniboxChoices) |
1689 }, | 1930 }, |
1690 { | 1931 { |
1691 "disable-ignore-autocomplete-off", | 1932 "disable-ignore-autocomplete-off", |
1692 IDS_FLAGS_DISABLE_IGNORE_AUTOCOMPLETE_OFF_NAME, | 1933 IDS_FLAGS_DISABLE_IGNORE_AUTOCOMPLETE_OFF_NAME, |
1693 IDS_FLAGS_DISABLE_IGNORE_AUTOCOMPLETE_OFF_DESCRIPTION, | 1934 IDS_FLAGS_DISABLE_IGNORE_AUTOCOMPLETE_OFF_DESCRIPTION, |
1694 kOsAll, | 1935 kOsAll, |
1695 SINGLE_VALUE_TYPE(autofill::switches::kDisableIgnoreAutocompleteOff) | 1936 SINGLE_VALUE_TYPE(autofill::switches::kDisableIgnoreAutocompleteOff, |
| 1937 UMA_HISTOGRAM_ID_kDisableIgnoreAutocompleteOff) |
1696 }, | 1938 }, |
1697 { | 1939 { |
1698 "enable-permissions-bubbles", | 1940 "enable-permissions-bubbles", |
1699 IDS_FLAGS_ENABLE_PERMISSIONS_BUBBLES_NAME, | 1941 IDS_FLAGS_ENABLE_PERMISSIONS_BUBBLES_NAME, |
1700 IDS_FLAGS_ENABLE_PERMISSIONS_BUBBLES_DESCRIPTION, | 1942 IDS_FLAGS_ENABLE_PERMISSIONS_BUBBLES_DESCRIPTION, |
1701 kOsAll, | 1943 kOsAll, |
1702 ENABLE_DISABLE_VALUE_TYPE(switches::kEnablePermissionsBubbles, | 1944 ENABLE_DISABLE_VALUE_TYPE(switches::kEnablePermissionsBubbles, |
1703 switches::kDisablePermissionsBubbles) | 1945 UMA_HISTOGRAM_ID_kEnablePermissionsBubbles, |
| 1946 switches::kDisablePermissionsBubbles, |
| 1947 UMA_HISTOGRAM_ID_kDisablePermissionsBubbles) |
1704 }, | 1948 }, |
1705 { | 1949 { |
1706 "enable-session-crashed-bubble", | 1950 "enable-session-crashed-bubble", |
1707 IDS_FLAGS_ENABLE_SESSION_CRASHED_BUBBLE_NAME, | 1951 IDS_FLAGS_ENABLE_SESSION_CRASHED_BUBBLE_NAME, |
1708 IDS_FLAGS_ENABLE_SESSION_CRASHED_BUBBLE_DESCRIPTION, | 1952 IDS_FLAGS_ENABLE_SESSION_CRASHED_BUBBLE_DESCRIPTION, |
1709 kOsWin | kOsLinux, | 1953 kOsWin | kOsLinux, |
1710 ENABLE_DISABLE_VALUE_TYPE(switches::kEnableSessionCrashedBubble, | 1954 ENABLE_DISABLE_VALUE_TYPE(switches::kEnableSessionCrashedBubble, |
1711 switches::kDisableSessionCrashedBubble) | 1955 UMA_HISTOGRAM_ID_kEnableSessionCrashedBubble, |
| 1956 switches::kDisableSessionCrashedBubble, |
| 1957 UMA_HISTOGRAM_ID_kDisableSessionCrashedBubble) |
1712 }, | 1958 }, |
1713 { | 1959 { |
1714 "out-of-process-pdf", | 1960 "out-of-process-pdf", |
1715 IDS_FLAGS_OUT_OF_PROCESS_PDF_NAME, | 1961 IDS_FLAGS_OUT_OF_PROCESS_PDF_NAME, |
1716 IDS_FLAGS_OUT_OF_PROCESS_PDF_DESCRIPTION, | 1962 IDS_FLAGS_OUT_OF_PROCESS_PDF_DESCRIPTION, |
1717 kOsDesktop, | 1963 kOsDesktop, |
1718 SINGLE_VALUE_TYPE(switches::kOutOfProcessPdf) | 1964 SINGLE_VALUE_TYPE(switches::kOutOfProcessPdf, |
| 1965 UMA_HISTOGRAM_ID_kOutOfProcessPdf) |
1719 }, | 1966 }, |
1720 #if defined(OS_ANDROID) | 1967 #if defined(OS_ANDROID) |
1721 { | 1968 { |
1722 "enable-fast-text-autosizing", | 1969 "enable-fast-text-autosizing", |
1723 IDS_FLAGS_ENABLE_FAST_TEXT_AUTOSIZING_NAME, | 1970 IDS_FLAGS_ENABLE_FAST_TEXT_AUTOSIZING_NAME, |
1724 IDS_FLAGS_ENABLE_FAST_TEXT_AUTOSIZING_DESCRIPTION, | 1971 IDS_FLAGS_ENABLE_FAST_TEXT_AUTOSIZING_DESCRIPTION, |
1725 kOsAndroid, | 1972 kOsAndroid, |
1726 ENABLE_DISABLE_VALUE_TYPE(switches::kEnableFastTextAutosizing, | 1973 ENABLE_DISABLE_VALUE_TYPE(switches::kEnableFastTextAutosizing, |
1727 switches::kDisableFastTextAutosizing) | 1974 UMA_HISTOGRAM_ID_kEnableFastTextAutosizing, |
| 1975 switches::kDisableFastTextAutosizing, |
| 1976 UMA_HISTOGRAM_ID_kDisableFastTextAutosizing) |
1728 }, | 1977 }, |
1729 { | 1978 { |
1730 "disable-cast", | 1979 "disable-cast", |
1731 IDS_FLAGS_DISABLE_CAST_NAME, | 1980 IDS_FLAGS_DISABLE_CAST_NAME, |
1732 IDS_FLAGS_DISABLE_CAST_DESCRIPTION, | 1981 IDS_FLAGS_DISABLE_CAST_DESCRIPTION, |
1733 kOsAndroid, | 1982 kOsAndroid, |
1734 SINGLE_VALUE_TYPE(switches::kDisableCast) | 1983 SINGLE_VALUE_TYPE(switches::kDisableCast, UMA_HISTOGRAM_ID_kDisableCast) |
1735 }, | 1984 }, |
1736 { | 1985 { |
1737 "prefetch-search-results", | 1986 "prefetch-search-results", |
1738 IDS_FLAGS_PREFETCH_SEARCH_RESULTS_NAME, | 1987 IDS_FLAGS_PREFETCH_SEARCH_RESULTS_NAME, |
1739 IDS_FLAGS_PREFETCH_SEARCH_RESULTS_DESCRIPTION, | 1988 IDS_FLAGS_PREFETCH_SEARCH_RESULTS_DESCRIPTION, |
1740 kOsAndroid, | 1989 kOsAndroid, |
1741 SINGLE_VALUE_TYPE(switches::kPrefetchSearchResults) | 1990 SINGLE_VALUE_TYPE(switches::kPrefetchSearchResults, |
| 1991 UMA_HISTOGRAM_ID_kPrefetchSearchResults) |
1742 }, | 1992 }, |
1743 #endif | 1993 #endif |
1744 #if defined(ENABLE_APP_LIST) | 1994 #if defined(ENABLE_APP_LIST) |
1745 { | 1995 { |
1746 "enable-experimental-app-list", | 1996 "enable-experimental-app-list", |
1747 IDS_FLAGS_ENABLE_EXPERIMENTAL_APP_LIST_NAME, | 1997 IDS_FLAGS_ENABLE_EXPERIMENTAL_APP_LIST_NAME, |
1748 IDS_FLAGS_ENABLE_EXPERIMENTAL_APP_LIST_DESCRIPTION, | 1998 IDS_FLAGS_ENABLE_EXPERIMENTAL_APP_LIST_DESCRIPTION, |
1749 kOsWin | kOsLinux | kOsCrOS, | 1999 kOsWin | kOsLinux | kOsCrOS, |
1750 SINGLE_VALUE_TYPE(app_list::switches::kEnableExperimentalAppList) | 2000 SINGLE_VALUE_TYPE(app_list::switches::kEnableExperimentalAppList, |
| 2001 UMA_HISTOGRAM_ID_kEnableExperimentalAppList) |
1751 }, | 2002 }, |
1752 { | 2003 { |
1753 "enable-centered-app-list", | 2004 "enable-centered-app-list", |
1754 IDS_FLAGS_ENABLE_CENTERED_APP_LIST_NAME, | 2005 IDS_FLAGS_ENABLE_CENTERED_APP_LIST_NAME, |
1755 IDS_FLAGS_ENABLE_CENTERED_APP_LIST_DESCRIPTION, | 2006 IDS_FLAGS_ENABLE_CENTERED_APP_LIST_DESCRIPTION, |
1756 kOsWin | kOsLinux | kOsCrOS, | 2007 kOsWin | kOsLinux | kOsCrOS, |
1757 SINGLE_VALUE_TYPE(app_list::switches::kEnableCenteredAppList) | 2008 SINGLE_VALUE_TYPE(app_list::switches::kEnableCenteredAppList, |
| 2009 UMA_HISTOGRAM_ID_kEnableCenteredAppList) |
1758 }, | 2010 }, |
1759 #endif | 2011 #endif |
1760 { | 2012 { |
1761 "touch-scrolling-mode", | 2013 "touch-scrolling-mode", |
1762 IDS_FLAGS_TOUCH_SCROLLING_MODE_NAME, | 2014 IDS_FLAGS_TOUCH_SCROLLING_MODE_NAME, |
1763 IDS_FLAGS_TOUCH_SCROLLING_MODE_DESCRIPTION, | 2015 IDS_FLAGS_TOUCH_SCROLLING_MODE_DESCRIPTION, |
1764 kOsWin | kOsLinux | kOsCrOS | kOsAndroid, | 2016 kOsWin | kOsLinux | kOsCrOS | kOsAndroid, |
1765 MULTI_VALUE_TYPE(kTouchScrollingModeChoices) | 2017 MULTI_VALUE_TYPE(kTouchScrollingModeChoices) |
1766 }, | 2018 }, |
1767 { | 2019 { |
1768 "bleeding-edge-renderer-mode", | 2020 "bleeding-edge-renderer-mode", |
1769 IDS_FLAGS_BLEEDING_RENDERER_NAME, | 2021 IDS_FLAGS_BLEEDING_RENDERER_NAME, |
1770 IDS_FLAGS_BLEEDING_RENDERER_DESCRIPTION, | 2022 IDS_FLAGS_BLEEDING_RENDERER_DESCRIPTION, |
1771 kOsAndroid, | 2023 kOsAndroid, |
1772 SINGLE_VALUE_TYPE(switches::kEnableBleedingEdgeRenderingFastPaths) | 2024 SINGLE_VALUE_TYPE(switches::kEnableBleedingEdgeRenderingFastPaths, |
| 2025 UMA_HISTOGRAM_ID_kEnableBleedingEdgeRenderingFastPaths) |
1773 }, | 2026 }, |
1774 { | 2027 { |
1775 "enable-settings-window", | 2028 "enable-settings-window", |
1776 IDS_FLAGS_ENABLE_SETTINGS_WINDOW_NAME, | 2029 IDS_FLAGS_ENABLE_SETTINGS_WINDOW_NAME, |
1777 IDS_FLAGS_ENABLE_SETTINGS_WINDOW_DESCRIPTION, | 2030 IDS_FLAGS_ENABLE_SETTINGS_WINDOW_DESCRIPTION, |
1778 kOsDesktop, | 2031 kOsDesktop, |
1779 MULTI_VALUE_TYPE(kEnableSettingsWindowChoices) | 2032 MULTI_VALUE_TYPE(kEnableSettingsWindowChoices) |
1780 }, | 2033 }, |
1781 #if defined(OS_ANDROID) | 2034 #if defined(OS_ANDROID) |
1782 { | 2035 { |
1783 "enable-instant-search-clicks", | 2036 "enable-instant-search-clicks", |
1784 IDS_FLAGS_ENABLE_INSTANT_SEARCH_CLICKS_NAME, | 2037 IDS_FLAGS_ENABLE_INSTANT_SEARCH_CLICKS_NAME, |
1785 IDS_FLAGS_ENABLE_INSTANT_SEARCH_CLICKS_DESCRIPTION, | 2038 IDS_FLAGS_ENABLE_INSTANT_SEARCH_CLICKS_DESCRIPTION, |
1786 kOsAndroid, | 2039 kOsAndroid, |
1787 SINGLE_VALUE_TYPE(switches::kEnableInstantSearchClicks) | 2040 SINGLE_VALUE_TYPE(switches::kEnableInstantSearchClicks, |
| 2041 UMA_HISTOGRAM_ID_kEnableInstantSearchClicks) |
1788 }, | 2042 }, |
1789 #endif | 2043 #endif |
1790 { | 2044 { |
1791 "enable-save-password-bubble", | 2045 "enable-save-password-bubble", |
1792 IDS_FLAGS_ENABLE_SAVE_PASSWORD_BUBBLE_NAME, | 2046 IDS_FLAGS_ENABLE_SAVE_PASSWORD_BUBBLE_NAME, |
1793 IDS_FLAGS_ENABLE_SAVE_PASSWORD_BUBBLE_DESCRIPTION, | 2047 IDS_FLAGS_ENABLE_SAVE_PASSWORD_BUBBLE_DESCRIPTION, |
1794 kOsWin | kOsLinux | kOsCrOS, | 2048 kOsWin | kOsLinux | kOsCrOS, |
1795 ENABLE_DISABLE_VALUE_TYPE(switches::kEnableSavePasswordBubble, | 2049 ENABLE_DISABLE_VALUE_TYPE(switches::kEnableSavePasswordBubble, |
1796 switches::kDisableSavePasswordBubble) | 2050 UMA_HISTOGRAM_ID_kEnableSavePasswordBubble, |
| 2051 switches::kDisableSavePasswordBubble, |
| 2052 UMA_HISTOGRAM_ID_kDisableSavePasswordBubble) |
1797 }, | 2053 }, |
1798 #if defined(GOOGLE_CHROME_BUILD) | 2054 #if defined(GOOGLE_CHROME_BUILD) |
1799 { | 2055 { |
1800 "enable-easy-unlock", | 2056 "enable-easy-unlock", |
1801 IDS_FLAGS_ENABLE_EASY_UNLOCK_NAME, | 2057 IDS_FLAGS_ENABLE_EASY_UNLOCK_NAME, |
1802 IDS_FLAGS_ENABLE_EASY_UNLOCK_DESCRIPTION, | 2058 IDS_FLAGS_ENABLE_EASY_UNLOCK_DESCRIPTION, |
1803 kOsCrOS, | 2059 kOsCrOS, |
1804 SINGLE_VALUE_TYPE(switches::kEnableEasyUnlock) | 2060 SINGLE_VALUE_TYPE(switches::kEnableEasyUnlock, |
| 2061 UMA_HISTOGRAM_ID_kEnableEasyUnlock) |
1805 }, | 2062 }, |
1806 #endif | 2063 #endif |
1807 { | 2064 { |
1808 "disable-embedded-shared-worker", | 2065 "disable-embedded-shared-worker", |
1809 IDS_FLAGS_DISABLE_EMBEDDED_SHARED_WORKER_NAME, | 2066 IDS_FLAGS_DISABLE_EMBEDDED_SHARED_WORKER_NAME, |
1810 IDS_FLAGS_DISABLE_EMBEDDED_SHARED_WORKER_DESCRIPTION, | 2067 IDS_FLAGS_DISABLE_EMBEDDED_SHARED_WORKER_DESCRIPTION, |
1811 kOsDesktop, | 2068 kOsDesktop, |
1812 SINGLE_VALUE_TYPE(switches::kDisableEmbeddedSharedWorker) | 2069 SINGLE_VALUE_TYPE(switches::kDisableEmbeddedSharedWorker, |
| 2070 UMA_HISTOGRAM_ID_kDisableEmbeddedSharedWorker) |
1813 }, | 2071 }, |
1814 #if defined(OS_CHROMEOS) | 2072 #if defined(OS_CHROMEOS) |
1815 { | 2073 { |
1816 "enable-filemanager-mtp", | 2074 "enable-filemanager-mtp", |
1817 IDS_FLAGS_ENABLE_FILE_MANAGER_MTP_NAME, | 2075 IDS_FLAGS_ENABLE_FILE_MANAGER_MTP_NAME, |
1818 IDS_FLAGS_ENABLE_FILE_MANAGER_MTP_DESCRIPTION, | 2076 IDS_FLAGS_ENABLE_FILE_MANAGER_MTP_DESCRIPTION, |
1819 kOsCrOS, | 2077 kOsCrOS, |
1820 MULTI_VALUE_TYPE(kEnableFileManagerMTPChoices) | 2078 MULTI_VALUE_TYPE(kEnableFileManagerMTPChoices) |
1821 }, | 2079 }, |
1822 #endif | 2080 #endif |
1823 // TODO(tyoshino): Remove this temporary flag and command line switch. See | 2081 // TODO(tyoshino): Remove this temporary flag and command line switch. See |
1824 // crbug.com/366483 for the target milestone. | 2082 // crbug.com/366483 for the target milestone. |
1825 { | 2083 { |
1826 "allow-insecure-websocket-from-https-origin", | 2084 "allow-insecure-websocket-from-https-origin", |
1827 IDS_FLAGS_ALLOW_INSECURE_WEBSOCKET_FROM_HTTPS_ORIGIN_NAME, | 2085 IDS_FLAGS_ALLOW_INSECURE_WEBSOCKET_FROM_HTTPS_ORIGIN_NAME, |
1828 IDS_FLAGS_ALLOW_INSECURE_WEBSOCKET_FROM_HTTPS_ORIGIN_DESCRIPTION, | 2086 IDS_FLAGS_ALLOW_INSECURE_WEBSOCKET_FROM_HTTPS_ORIGIN_DESCRIPTION, |
1829 kOsAll, | 2087 kOsAll, |
1830 SINGLE_VALUE_TYPE(switches::kAllowInsecureWebSocketFromHttpsOrigin) | 2088 SINGLE_VALUE_TYPE( |
| 2089 switches::kAllowInsecureWebSocketFromHttpsOrigin, |
| 2090 UMA_HISTOGRAM_ID_kAllowInsecureWebSocketFromHttpsOrigin) |
1831 }, | 2091 }, |
1832 #if defined(OS_MACOSX) | 2092 #if defined(OS_MACOSX) |
1833 { | 2093 { |
1834 "apps-keep-chrome-alive", | 2094 "apps-keep-chrome-alive", |
1835 IDS_FLAGS_APPS_KEEP_CHROME_ALIVE_NAME, | 2095 IDS_FLAGS_APPS_KEEP_CHROME_ALIVE_NAME, |
1836 IDS_FLAGS_APPS_KEEP_CHROME_ALIVE_DESCRIPTION, | 2096 IDS_FLAGS_APPS_KEEP_CHROME_ALIVE_DESCRIPTION, |
1837 kOsMac, | 2097 kOsMac, |
1838 SINGLE_VALUE_TYPE(switches::kAppsKeepChromeAlive) | 2098 SINGLE_VALUE_TYPE(switches::kAppsKeepChromeAlive, |
| 2099 UMA_HISTOGRAM_ID_kAppsKeepChromeAlive) |
1839 }, | 2100 }, |
1840 #endif | 2101 #endif |
1841 { | 2102 { |
1842 "enable-apps-file-associations", | 2103 "enable-apps-file-associations", |
1843 IDS_FLAGS_ENABLE_APPS_FILE_ASSOCIATIONS_NAME, | 2104 IDS_FLAGS_ENABLE_APPS_FILE_ASSOCIATIONS_NAME, |
1844 IDS_FLAGS_ENABLE_APPS_FILE_ASSOCIATIONS_DESCRIPTION, | 2105 IDS_FLAGS_ENABLE_APPS_FILE_ASSOCIATIONS_DESCRIPTION, |
1845 kOsMac, | 2106 kOsMac, |
1846 SINGLE_VALUE_TYPE(switches::kEnableAppsFileAssociations) | 2107 SINGLE_VALUE_TYPE(switches::kEnableAppsFileAssociations, |
| 2108 UMA_HISTOGRAM_ID_kEnableAppsFileAssociations) |
1847 }, | 2109 }, |
1848 #if defined(OS_ANDROID) | 2110 #if defined(OS_ANDROID) |
1849 { | 2111 { |
1850 "enable-embeddedsearch-api", | 2112 "enable-embeddedsearch-api", |
1851 IDS_FLAGS_ENABLE_EMBEDDEDSEARCH_API_NAME, | 2113 IDS_FLAGS_ENABLE_EMBEDDEDSEARCH_API_NAME, |
1852 IDS_FLAGS_ENABLE_EMBEDDEDSEARCH_API_DESCRIPTION, | 2114 IDS_FLAGS_ENABLE_EMBEDDEDSEARCH_API_DESCRIPTION, |
1853 kOsAndroid, | 2115 kOsAndroid, |
1854 SINGLE_VALUE_TYPE(switches::kEnableEmbeddedSearchAPI) | 2116 SINGLE_VALUE_TYPE(switches::kEnableEmbeddedSearchAPI, |
| 2117 UMA_HISTOGRAM_ID_kEnableEmbeddedSearchAPI) |
1855 }, | 2118 }, |
1856 { | 2119 { |
1857 "enable-app-install-alerts", | 2120 "enable-app-install-alerts", |
1858 IDS_FLAGS_ENABLE_APP_INSTALL_ALERTS_NAME, | 2121 IDS_FLAGS_ENABLE_APP_INSTALL_ALERTS_NAME, |
1859 IDS_FLAGS_ENABLE_APP_INSTALL_ALERTS_DESCRIPTION, | 2122 IDS_FLAGS_ENABLE_APP_INSTALL_ALERTS_DESCRIPTION, |
1860 kOsAndroid, | 2123 kOsAndroid, |
1861 SINGLE_VALUE_TYPE(switches::kEnableAppInstallAlerts) | 2124 SINGLE_VALUE_TYPE(switches::kEnableAppInstallAlerts, |
| 2125 UMA_HISTOGRAM_ID_kEnableAppInstallAlerts) |
1862 }, | 2126 }, |
1863 #endif | 2127 #endif |
1864 { | 2128 { |
1865 "distance-field-text", | 2129 "distance-field-text", |
1866 IDS_FLAGS_DISTANCE_FIELD_TEXT_NAME, | 2130 IDS_FLAGS_DISTANCE_FIELD_TEXT_NAME, |
1867 IDS_FLAGS_DISTANCE_FIELD_TEXT_DESCRIPTION, | 2131 IDS_FLAGS_DISTANCE_FIELD_TEXT_DESCRIPTION, |
1868 kOsAll, | 2132 kOsAll, |
1869 MULTI_VALUE_TYPE(kDistanceFieldTextChoices) | 2133 MULTI_VALUE_TYPE(kDistanceFieldTextChoices) |
1870 }, | 2134 }, |
1871 { | 2135 { |
1872 "extension-content-verification", | 2136 "extension-content-verification", |
1873 IDS_FLAGS_EXTENSION_CONTENT_VERIFICATION_NAME, | 2137 IDS_FLAGS_EXTENSION_CONTENT_VERIFICATION_NAME, |
1874 IDS_FLAGS_EXTENSION_CONTENT_VERIFICATION_DESCRIPTION, | 2138 IDS_FLAGS_EXTENSION_CONTENT_VERIFICATION_DESCRIPTION, |
1875 kOsDesktop, | 2139 kOsDesktop, |
1876 MULTI_VALUE_TYPE(kExtensionContentVerificationChoices) | 2140 MULTI_VALUE_TYPE(kExtensionContentVerificationChoices) |
1877 }, | 2141 }, |
1878 #if defined(USE_AURA) | 2142 #if defined(USE_AURA) |
1879 { | 2143 { |
1880 "text-input-focus-manager", | 2144 "text-input-focus-manager", |
1881 IDS_FLAGS_TEXT_INPUT_FOCUS_MANAGER_NAME, | 2145 IDS_FLAGS_TEXT_INPUT_FOCUS_MANAGER_NAME, |
1882 IDS_FLAGS_TEXT_INPUT_FOCUS_MANAGER_DESCRIPTION, | 2146 IDS_FLAGS_TEXT_INPUT_FOCUS_MANAGER_DESCRIPTION, |
1883 kOsCrOS | kOsLinux | kOsWin, | 2147 kOsCrOS | kOsLinux | kOsWin, |
1884 ENABLE_DISABLE_VALUE_TYPE(switches::kEnableTextInputFocusManager, | 2148 ENABLE_DISABLE_VALUE_TYPE(switches::kEnableTextInputFocusManager, |
1885 switches::kDisableTextInputFocusManager) | 2149 UMA_HISTOGRAM_ID_kEnableTextInputFocusManager, |
| 2150 switches::kDisableTextInputFocusManager, |
| 2151 UMA_HISTOGRAM_ID_kDisableTextInputFocusManager) |
1886 }, | 2152 }, |
1887 #endif | 2153 #endif |
1888 { | 2154 { |
1889 "extension-active-script-permission", | 2155 "extension-active-script-permission", |
1890 IDS_FLAGS_USER_CONSENT_FOR_EXTENSION_SCRIPTS_NAME, | 2156 IDS_FLAGS_USER_CONSENT_FOR_EXTENSION_SCRIPTS_NAME, |
1891 IDS_FLAGS_USER_CONSENT_FOR_EXTENSION_SCRIPTS_DESCRIPTION, | 2157 IDS_FLAGS_USER_CONSENT_FOR_EXTENSION_SCRIPTS_DESCRIPTION, |
1892 kOsAll, | 2158 kOsAll, |
1893 SINGLE_VALUE_TYPE(extensions::switches::kEnableScriptsRequireAction) | 2159 SINGLE_VALUE_TYPE(extensions::switches::kEnableScriptsRequireAction, |
| 2160 UMA_HISTOGRAM_ID_kEnableScriptsRequireAction) |
1894 }, | 2161 }, |
1895 { | 2162 { |
1896 "enable-harfbuzz-rendertext", | 2163 "enable-harfbuzz-rendertext", |
1897 IDS_FLAGS_ENABLE_HARFBUZZ_RENDERTEXT_NAME, | 2164 IDS_FLAGS_ENABLE_HARFBUZZ_RENDERTEXT_NAME, |
1898 IDS_FLAGS_ENABLE_HARFBUZZ_RENDERTEXT_DESCRIPTION, | 2165 IDS_FLAGS_ENABLE_HARFBUZZ_RENDERTEXT_DESCRIPTION, |
1899 kOsDesktop, | 2166 kOsDesktop, |
1900 SINGLE_VALUE_TYPE(switches::kEnableHarfBuzzRenderText) | 2167 SINGLE_VALUE_TYPE(switches::kEnableHarfBuzzRenderText, |
| 2168 UMA_HISTOGRAM_ID_kEnableHarfBuzzRenderText) |
1901 }, | 2169 }, |
1902 #if defined(OS_ANDROID) | 2170 #if defined(OS_ANDROID) |
1903 { | 2171 { |
1904 "enable-answers-in-suggest", | 2172 "enable-answers-in-suggest", |
1905 IDS_FLAGS_ENABLE_ANSWERS_IN_SUGGEST_NAME, | 2173 IDS_FLAGS_ENABLE_ANSWERS_IN_SUGGEST_NAME, |
1906 IDS_FLAGS_ENABLE_ANSWERS_IN_SUGGEST_DESCRIPTION, | 2174 IDS_FLAGS_ENABLE_ANSWERS_IN_SUGGEST_DESCRIPTION, |
1907 kOsAndroid, | 2175 kOsAndroid, |
1908 SINGLE_VALUE_TYPE(switches::kEnableAnswersInSuggest) | 2176 SINGLE_VALUE_TYPE(switches::kEnableAnswersInSuggest, |
| 2177 UMA_HISTOGRAM_ID_kEnableAnswersInSuggest) |
1909 }, | 2178 }, |
1910 #endif | 2179 #endif |
1911 { | 2180 { |
1912 "ssl-interstitial-version", | 2181 "ssl-interstitial-version", |
1913 IDS_FLAGS_SSL_INTERSTITIAL_TRIAL_NAME, | 2182 IDS_FLAGS_SSL_INTERSTITIAL_TRIAL_NAME, |
1914 IDS_FLAGS_SSL_INTERSTITIAL_TRIAL_DESCRIPTION, | 2183 IDS_FLAGS_SSL_INTERSTITIAL_TRIAL_DESCRIPTION, |
1915 kOsAll, | 2184 kOsAll, |
1916 MULTI_VALUE_TYPE(kSSLInterstitialVersions) | 2185 MULTI_VALUE_TYPE(kSSLInterstitialVersions) |
1917 }, | 2186 }, |
1918 { | 2187 { |
1919 "malware-interstitial-version", | 2188 "malware-interstitial-version", |
1920 IDS_FLAGS_MALWARE_INTERSTITIAL_TRIAL_NAME, | 2189 IDS_FLAGS_MALWARE_INTERSTITIAL_TRIAL_NAME, |
1921 IDS_FLAGS_MALWARE_INTERSTITIAL_TRIAL_DESCRIPTION, | 2190 IDS_FLAGS_MALWARE_INTERSTITIAL_TRIAL_DESCRIPTION, |
1922 kOsAll, | 2191 kOsAll, |
1923 MULTI_VALUE_TYPE(kMalwareInterstitialVersions) | 2192 MULTI_VALUE_TYPE(kMalwareInterstitialVersions) |
1924 }, | 2193 }, |
1925 #if defined(OS_ANDROID) | 2194 #if defined(OS_ANDROID) |
1926 { | 2195 { |
1927 "enable-data-reduction-proxy-dev", | 2196 "enable-data-reduction-proxy-dev", |
1928 IDS_FLAGS_ENABLE_DATA_REDUCTION_PROXY_DEV_NAME, | 2197 IDS_FLAGS_ENABLE_DATA_REDUCTION_PROXY_DEV_NAME, |
1929 IDS_FLAGS_ENABLE_DATA_REDUCTION_PROXY_DEV_DESCRIPTION, | 2198 IDS_FLAGS_ENABLE_DATA_REDUCTION_PROXY_DEV_DESCRIPTION, |
1930 kOsAndroid, | 2199 kOsAndroid, |
1931 ENABLE_DISABLE_VALUE_TYPE( | 2200 ENABLE_DISABLE_VALUE_TYPE( |
1932 data_reduction_proxy::switches::kEnableDataReductionProxyDev, | 2201 data_reduction_proxy::switches::kEnableDataReductionProxyDev, |
1933 data_reduction_proxy::switches::kDisableDataReductionProxyDev) | 2202 UMA_HISTOGRAM_ID_kEnableDataReductionProxyDev, |
| 2203 data_reduction_proxy::switches::kDisableDataReductionProxyDev, |
| 2204 UMA_HISTOGRAM_ID_kDisableDataReductionProxyDev) |
1934 }, | 2205 }, |
1935 #endif | 2206 #endif |
1936 }; | 2207 }; |
1937 | 2208 |
1938 const Experiment* experiments = kExperiments; | 2209 const Experiment* experiments = kExperiments; |
1939 size_t num_experiments = arraysize(kExperiments); | 2210 size_t num_experiments = arraysize(kExperiments); |
1940 | 2211 |
1941 // Stores and encapsulates the little state that about:flags has. | 2212 // Stores and encapsulates the little state that about:flags has. |
1942 class FlagsState { | 2213 class FlagsState { |
1943 public: | 2214 public: |
1944 FlagsState() : needs_restart_(false) {} | 2215 FlagsState() : needs_restart_(false) {} |
1945 void ConvertFlagsToSwitches(FlagsStorage* flags_storage, | 2216 void ConvertFlagsToSwitches(FlagsStorage* flags_storage, |
1946 CommandLine* command_line, | 2217 CommandLine* command_line, |
1947 SentinelsMode sentinels); | 2218 SentinelsMode sentinels); |
| 2219 const SwitchesHistogramIDs& GetSwitchesHistogramIds(); |
1948 bool IsRestartNeededToCommitChanges(); | 2220 bool IsRestartNeededToCommitChanges(); |
1949 void SetExperimentEnabled( | 2221 void SetExperimentEnabled( |
1950 FlagsStorage* flags_storage, | 2222 FlagsStorage* flags_storage, |
1951 const std::string& internal_name, | 2223 const std::string& internal_name, |
1952 bool enable); | 2224 bool enable); |
1953 void RemoveFlagsSwitches( | 2225 void RemoveFlagsSwitches( |
1954 std::map<std::string, CommandLine::StringType>* switch_list); | 2226 std::map<std::string, CommandLine::StringType>* switch_list); |
1955 void ResetAllFlags(FlagsStorage* flags_storage); | 2227 void ResetAllFlags(FlagsStorage* flags_storage); |
1956 void reset(); | 2228 void reset(); |
1957 | 2229 |
1958 // Returns the singleton instance of this class | 2230 // Returns the singleton instance of this class |
1959 static FlagsState* GetInstance() { | 2231 static FlagsState* GetInstance() { |
1960 return Singleton<FlagsState>::get(); | 2232 return Singleton<FlagsState>::get(); |
1961 } | 2233 } |
1962 | 2234 |
1963 private: | 2235 private: |
1964 bool needs_restart_; | 2236 bool needs_restart_; |
1965 std::map<std::string, std::string> flags_switches_; | 2237 std::map<std::string, std::string> flags_switches_; |
| 2238 // Lazy initialized by GetSwitchesHistogramIds(). |
| 2239 SwitchesHistogramIDs switches_histogram_id_; |
1966 | 2240 |
1967 DISALLOW_COPY_AND_ASSIGN(FlagsState); | 2241 DISALLOW_COPY_AND_ASSIGN(FlagsState); |
1968 }; | 2242 }; |
1969 | 2243 |
1970 // Adds the internal names for the specified experiment to |names|. | 2244 // Adds the internal names for the specified experiment to |names|. |
1971 void AddInternalName(const Experiment& e, std::set<std::string>* names) { | 2245 void AddInternalName(const Experiment& e, std::set<std::string>* names) { |
1972 if (e.type == Experiment::SINGLE_VALUE) { | 2246 if (e.type == Experiment::SINGLE_VALUE) { |
1973 names->insert(e.internal_name); | 2247 names->insert(e.internal_name); |
1974 } else { | 2248 } else { |
1975 DCHECK(e.type == Experiment::MULTI_VALUE || | 2249 DCHECK(e.type == Experiment::MULTI_VALUE || |
(...skipping 160 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2136 } | 2410 } |
2137 | 2411 |
2138 void ConvertFlagsToSwitches(FlagsStorage* flags_storage, | 2412 void ConvertFlagsToSwitches(FlagsStorage* flags_storage, |
2139 CommandLine* command_line, | 2413 CommandLine* command_line, |
2140 SentinelsMode sentinels) { | 2414 SentinelsMode sentinels) { |
2141 FlagsState::GetInstance()->ConvertFlagsToSwitches(flags_storage, | 2415 FlagsState::GetInstance()->ConvertFlagsToSwitches(flags_storage, |
2142 command_line, | 2416 command_line, |
2143 sentinels); | 2417 sentinels); |
2144 } | 2418 } |
2145 | 2419 |
| 2420 const SwitchesHistogramIDs& GetSwitchesHistogramIds() { |
| 2421 return FlagsState::GetInstance()->GetSwitchesHistogramIds(); |
| 2422 } |
| 2423 |
2146 bool AreSwitchesIdenticalToCurrentCommandLine( | 2424 bool AreSwitchesIdenticalToCurrentCommandLine( |
2147 const CommandLine& new_cmdline, const CommandLine& active_cmdline) { | 2425 const CommandLine& new_cmdline, |
| 2426 const CommandLine& active_cmdline, |
| 2427 std::set<CommandLine::StringType>* out_difference) { |
2148 std::set<CommandLine::StringType> new_flags = | 2428 std::set<CommandLine::StringType> new_flags = |
2149 ExtractFlagsFromCommandLine(new_cmdline); | 2429 ExtractFlagsFromCommandLine(new_cmdline); |
2150 std::set<CommandLine::StringType> active_flags = | 2430 std::set<CommandLine::StringType> active_flags = |
2151 ExtractFlagsFromCommandLine(active_cmdline); | 2431 ExtractFlagsFromCommandLine(active_cmdline); |
2152 | 2432 |
| 2433 bool result = false; |
2153 // Needed because std::equal doesn't check if the 2nd set is empty. | 2434 // Needed because std::equal doesn't check if the 2nd set is empty. |
2154 if (new_flags.size() != active_flags.size()) | 2435 if (new_flags.size() == active_flags.size()) { |
2155 return false; | 2436 result = |
| 2437 std::equal(new_flags.begin(), new_flags.end(), active_flags.begin()); |
| 2438 } |
2156 | 2439 |
2157 return std::equal(new_flags.begin(), new_flags.end(), active_flags.begin()); | 2440 if (out_difference && !result) { |
| 2441 std::set_symmetric_difference( |
| 2442 new_flags.begin(), |
| 2443 new_flags.end(), |
| 2444 active_flags.begin(), |
| 2445 active_flags.end(), |
| 2446 std::inserter(*out_difference, out_difference->begin())); |
| 2447 } |
| 2448 |
| 2449 return result; |
2158 } | 2450 } |
2159 | 2451 |
2160 void GetFlagsExperimentsData(FlagsStorage* flags_storage, | 2452 void GetFlagsExperimentsData(FlagsStorage* flags_storage, |
2161 FlagAccess access, | 2453 FlagAccess access, |
2162 base::ListValue* supported_experiments, | 2454 base::ListValue* supported_experiments, |
2163 base::ListValue* unsupported_experiments) { | 2455 base::ListValue* unsupported_experiments) { |
2164 std::set<std::string> enabled_experiments; | 2456 std::set<std::string> enabled_experiments; |
2165 GetSanitizedEnabledFlags(flags_storage, &enabled_experiments); | 2457 GetSanitizedEnabledFlags(flags_storage, &enabled_experiments); |
2166 | 2458 |
2167 int current_platform = GetCurrentPlatform(); | 2459 int current_platform = GetCurrentPlatform(); |
(...skipping 171 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2339 flags_switches_[switch_and_value_pair.first] = switch_and_value_pair.second; | 2631 flags_switches_[switch_and_value_pair.first] = switch_and_value_pair.second; |
2340 } | 2632 } |
2341 if (sentinels == kAddSentinels) { | 2633 if (sentinels == kAddSentinels) { |
2342 command_line->AppendSwitch(switches::kFlagSwitchesEnd); | 2634 command_line->AppendSwitch(switches::kFlagSwitchesEnd); |
2343 flags_switches_.insert( | 2635 flags_switches_.insert( |
2344 std::pair<std::string, std::string>(switches::kFlagSwitchesEnd, | 2636 std::pair<std::string, std::string>(switches::kFlagSwitchesEnd, |
2345 std::string())); | 2637 std::string())); |
2346 } | 2638 } |
2347 } | 2639 } |
2348 | 2640 |
| 2641 void SetSwitchToHistogramIdMapping(const std::string& switch_name, |
| 2642 const int switch_histogram_id, |
| 2643 std::map<std::string, int>* out_map) { |
| 2644 const std::pair<std::map<std::string, int>::iterator, bool> status = |
| 2645 out_map->insert(std::make_pair(switch_name, switch_histogram_id)); |
| 2646 DCHECK(status.second || status.first->second == switch_histogram_id); |
| 2647 } |
| 2648 |
| 2649 const SwitchesHistogramIDs& FlagsState::GetSwitchesHistogramIds() { |
| 2650 if (!switches_histogram_id_.empty()) |
| 2651 return switches_histogram_id_; |
| 2652 |
| 2653 for (size_t i = 0; i < num_experiments; ++i) { |
| 2654 const Experiment& e = experiments[i]; |
| 2655 if (e.type == Experiment::SINGLE_VALUE) { |
| 2656 SetSwitchToHistogramIdMapping(e.command_line_switch, |
| 2657 e.command_line_switch_histogram_id, |
| 2658 &switches_histogram_id_); |
| 2659 } else if (e.type == Experiment::MULTI_VALUE) { |
| 2660 for (int j = 0; j < e.num_choices; ++j) { |
| 2661 SetSwitchToHistogramIdMapping( |
| 2662 e.choices[j].command_line_switch, |
| 2663 e.choices[j].command_line_switch_histogram_id, |
| 2664 &switches_histogram_id_); |
| 2665 } |
| 2666 } else { |
| 2667 DCHECK_EQ(e.type, Experiment::ENABLE_DISABLE_VALUE); |
| 2668 SetSwitchToHistogramIdMapping(e.command_line_switch, |
| 2669 e.command_line_switch_histogram_id, |
| 2670 &switches_histogram_id_); |
| 2671 SetSwitchToHistogramIdMapping(e.disable_command_line_switch, |
| 2672 e.disable_command_line_switch_histogram_id, |
| 2673 &switches_histogram_id_); |
| 2674 } |
| 2675 } |
| 2676 return switches_histogram_id_; |
| 2677 } |
| 2678 |
2349 bool FlagsState::IsRestartNeededToCommitChanges() { | 2679 bool FlagsState::IsRestartNeededToCommitChanges() { |
2350 return needs_restart_; | 2680 return needs_restart_; |
2351 } | 2681 } |
2352 | 2682 |
2353 void FlagsState::SetExperimentEnabled(FlagsStorage* flags_storage, | 2683 void FlagsState::SetExperimentEnabled(FlagsStorage* flags_storage, |
2354 const std::string& internal_name, | 2684 const std::string& internal_name, |
2355 bool enable) { | 2685 bool enable) { |
2356 size_t at_index = internal_name.find(testing::kMultiSeparator); | 2686 size_t at_index = internal_name.find(testing::kMultiSeparator); |
2357 if (at_index != std::string::npos) { | 2687 if (at_index != std::string::npos) { |
2358 DCHECK(enable); | 2688 DCHECK(enable); |
(...skipping 95 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2454 } | 2784 } |
2455 | 2785 |
2456 const Experiment* GetExperiments(size_t* count) { | 2786 const Experiment* GetExperiments(size_t* count) { |
2457 *count = num_experiments; | 2787 *count = num_experiments; |
2458 return experiments; | 2788 return experiments; |
2459 } | 2789 } |
2460 | 2790 |
2461 } // namespace testing | 2791 } // namespace testing |
2462 | 2792 |
2463 } // namespace about_flags | 2793 } // namespace about_flags |
OLD | NEW |