1 // Copyright 2017 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4 
5 #ifndef IOS_CHROME_BROWSER_FLAGS_IOS_CHROME_FLAG_DESCRIPTIONS_H_
6 #define IOS_CHROME_BROWSER_FLAGS_IOS_CHROME_FLAG_DESCRIPTIONS_H_
7 
8 #include "Availability.h"
9 
10 // Please add names and descriptions in alphabetical order.
11 
12 namespace flag_descriptions {
13 
14 // Title and description for the flag to add a custom drop interaction to web
15 // content.
16 extern const char kAddWebContentDropInteractionName[];
17 extern const char kAddWebContentDropInteractionDescription[];
18 
19 // Title and description for the flag to control the autofill query cache.
20 extern const char kAutofillCacheQueryResponsesName[];
21 extern const char kAutofillCacheQueryResponsesDescription[];
22 
23 // Title and description for the flag to control upstreaming credit cards.
24 extern const char kAutofillCreditCardUploadName[];
25 extern const char kAutofillCreditCardUploadDescription[];
26 
27 // Title and description for the flag to control card nickname management.
28 extern const char kAutofillEnableCardNicknameManagementName[];
29 extern const char kAutofillEnableCardNicknameManagementDescription[];
30 
31 // Title and description for the flag to control card nickname upstream.
32 extern const char kAutofillEnableCardNicknameUpstreamName[];
33 extern const char kAutofillEnableCardNicknameUpstreamDescription[];
34 
35 // Title and description for the flag to control enabling Google-issued cards in
36 // autofill suggestions.
37 extern const char kAutofillEnableGoogleIssuedCardName[];
38 extern const char kAutofillEnableGoogleIssuedCardDescription[];
39 
40 // Title and description for the flag to control offers in downstream.
41 extern const char kAutofillEnableOffersInDownstreamName[];
42 extern const char kAutofillEnableOffersInDownstreamDescription[];
43 
44 // Title and description for the flag to control the autofill delay.
45 extern const char kAutofillIOSDelayBetweenFieldsName[];
46 extern const char kAutofillIOSDelayBetweenFieldsDescription[];
47 
48 // Title and description for the flag that controls whether the maximum number
49 // of Autofill suggestions shown is pruned.
50 extern const char kAutofillPruneSuggestionsName[];
51 extern const char kAutofillPruneSuggestionsDescription[];
52 
53 // Title and description for the flag to control dismissing the Save Card
54 // Infobar on Navigation.
55 extern const char kAutofillSaveCardDismissOnNavigationName[];
56 extern const char kAutofillSaveCardDismissOnNavigationDescription[];
57 
58 // Title and description for the flag that enables editing on the Messages UI
59 // for SaveCard Infobars.
60 extern const char kAutofillSaveCardInfobarEditSupportName[];
61 extern const char kAutofillSaveCardInfobarEditSupportDescription[];
62 
63 // Title and description for the flag to restrict extraction of formless forms
64 // to checkout flows.
65 extern const char kAutofillRestrictUnownedFieldsToFormlessCheckoutName[];
66 extern const char kAutofillRestrictUnownedFieldsToFormlessCheckoutDescription[];
67 
68 // Title and description for the flag to enable rich autofill queries on
69 // Canary/Dev.
70 extern const char kAutofillRichMetadataQueriesName[];
71 extern const char kAutofillRichMetadataQueriesDescription[];
72 
73 // Title and description for the flag that controls whether Autofill's
74 // suggestions' labels are formatting with a mobile-friendly approach.
75 extern const char kAutofillUseMobileLabelDisambiguationName[];
76 extern const char kAutofillUseMobileLabelDisambiguationDescription[];
77 
78 // Title and description for the flag that controls whether Autofill's
79 // logic is using numeric unique renderer IDs instead of string IDs for
80 // form and field elements.
81 extern const char kAutofillUseRendererIDsName[];
82 extern const char kAutofillUseRendererIDsDescription[];
83 
84 // Title and description for the flag that controls whether event breadcrumbs
85 // are captured.
86 extern const char kLogBreadcrumbsName[];
87 extern const char kLogBreadcrumbsDescription[];
88 
89 // Title and description for the flag that controls the sign-in notification
90 // infobar title.
91 extern const char kSigninNotificationInfobarUsernameInTitleName[];
92 extern const char kSigninNotificationInfobarUsernameInTitleDescription[];
93 
94 // Title and description for the flag that controls synthetic crash reports
95 // generation for Unexplained Termination Events.
96 extern const char kSyntheticCrashReportsForUteName[];
97 extern const char kSyntheticCrashReportsForUteDescription[];
98 
99 // Title and description for the flag to control if initial uploading of crash
100 // reports is delayed.
101 extern const char kBreakpadNoDelayInitialUploadName[];
102 extern const char kBreakpadNoDelayInitialUploadDescription[];
103 
104 // Title and description for the flag that controls whether Collections are
105 // presented using the new iOS13 Card style or the custom legacy one.
106 extern const char kCollectionsCardPresentationStyleName[];
107 extern const char kCollectionsCardPresentationStyleDescription[];
108 
109 // Title and description for the flag to scan a new credit card using the
110 // camera.
111 extern const char kCreditCardScannerName[];
112 extern const char kCreditCardScannerDescription[];
113 
114 #if defined(DCHECK_IS_CONFIGURABLE)
115 // Title and description for the flag to enable configurable DCHECKs.
116 extern const char kDcheckIsFatalName[];
117 extern const char kDcheckIsFatalDescription[];
118 #endif  // defined(DCHECK_IS_CONFIGURABLE)
119 
120 // Title and description for the flag to add the button in the settings to send
121 // the users in the Settings.app to update the default browser.
122 extern const char kDefaultBrowserSettingsName[];
123 extern const char kDefaultBrowserSettingsDescription[];
124 
125 // Title and description for the flag to request the desktop version of web site
126 // by default on iPad
127 extern const char kDefaultToDesktopOnIPadName[];
128 extern const char kDefaultToDesktopOnIPadDescription[];
129 
130 // Title and description for the flag to show a fullscreen modal promo with a
131 // button that would send the users in the Settings.app to update the default
132 // browser.
133 extern const char kDefaultBrowserFullscreenPromoName[];
134 extern const char kDefaultBrowserFullscreenPromoDescription[];
135 
136 // Title and description for the flag to control the delay (in minutes) for
137 // polling for the existence of Gaia cookies for google.com.
138 extern const char kDelayThresholdMinutesToUpdateGaiaCookieName[];
139 extern const char kDelayThresholdMinutesToUpdateGaiaCookieDescription[];
140 
141 // Title and description for the flag to control if a crash report is generated
142 // on main thread freeze.
143 extern const char kDetectMainThreadFreezeName[];
144 extern const char kDetectMainThreadFreezeDescription[];
145 
146 // Title and description for the flag to disable progress bar animation.
147 extern const char kDisableProgressBarAnimationName[];
148 extern const char kDisableProgressBarAnimationDescription[];
149 
150 // Title and description for the flag to replace the Zine feed with the
151 // Discover feed in the Bling NTP.
152 extern const char kDiscoverFeedInNtpName[];
153 extern const char kDiscoverFeedInNtpDescription[];
154 
155 // Title and description for the flag to enable drag and drop.
156 extern const char kDragAndDropName[];
157 extern const char kDragAndDropDescription[];
158 
159 // Title and description for the flag to enable EditBookmarks enterprise
160 // policy on iOS.
161 extern const char kEditBookmarksIOSName[];
162 extern const char kEditBookmarksIOSDescription[];
163 
164 // Title and description for the flag to enable kEditPasswordsInSettings flag on
165 // iOS.
166 extern const char kEditPasswordsInSettingsName[];
167 extern const char kEditPasswordsInSettingsDescription[];
168 
169 // Title and description for the flag to block restore urls.
170 extern const char kEmbedderBlockRestoreUrlName[];
171 extern const char kEmbedderBlockRestoreUrlDescription[];
172 
173 // Title and description for the flag to enable caching of unmasked server
174 // cards until page navigation to simplify consecutive fills on the same page.
175 extern const char kEnableAutofillCacheServerCardInfoName[];
176 extern const char kEnableAutofillCacheServerCardInfoDescription[];
177 
178 // Title and description for the flag to enable the confirmational action sheet
179 // for the tab grid "Close All" action.
180 extern const char kEnableCloseAllTabsConfirmationName[];
181 extern const char kEnableCloseAllTabsConfirmationDescription[];
182 
183 // Title and description for the flag to enable fullpage screenshots.
184 extern const char kEnableFullPageScreenshotName[];
185 extern const char kEnableFullPageScreenshotDescription[];
186 
187 // Title and description for the flag to enable to show a different UI when the
188 // setting is managed by an enterprise policy.
189 extern const char kEnableIOSManagedSettingsUIName[];
190 extern const char kEnableIOSManagedSettingsUIDescription[];
191 
192 // Title and description for the flag to enable MyGoogle account management
193 // UI in iOS Settings.
194 extern const char kEnableMyGoogleName[];
195 extern const char kEnableMyGoogleDescription[];
196 
197 // Title and description for the flag to enable new context menus for native UI.
198 extern const char kEnableNativeContextMenusName[];
199 extern const char kEnableNativeContextMenusDescription[];
200 
201 // Title and description for the flag to enable an expanded tab strip.
202 extern const char kExpandedTabStripName[];
203 extern const char kExpandedTabStripDescription[];
204 
205 // Title and description for the flag to extend Open in toolbar files support.
206 extern const char kExtendOpenInFilesSupportName[];
207 extern const char kExtendOpenInFilesSupportDescription[];
208 
209 // Title and description for the flag to trigger the startup sign-in promo.
210 extern const char kForceStartupSigninPromoName[];
211 extern const char kForceStartupSigninPromoDescription[];
212 
213 // Title and description for the flag to force an unstacked tabstrip.
214 extern const char kForceUnstackedTabstripName[];
215 extern const char kForceUnstackedTabstripDescription[];
216 
217 // Title and description for the command line switch used to determine the
218 // active fullscreen viewport adjustment mode.
219 extern const char kFullscreenSmoothScrollingName[];
220 extern const char kFullscreenSmoothScrollingDescription[];
221 
222 // Title and description for the flag to scope FullscreenController to a
223 // Browser.
224 extern const char kFullscreenControllerBrowserScopedName[];
225 extern const char kFullscreenControllerBrowserScopedDescription[];
226 
227 // Title and dscription for the flag to allow biometric authentication for
228 // accessing incognito.
229 extern const char kIncognitoAuthenticationName[];
230 extern const char kIncognitoAuthenticationDescription[];
231 
232 // Title and description for the flag to enable new illustrations and
233 // UI on empty states.
234 extern const char kIllustratedEmptyStatesName[];
235 extern const char kIllustratedEmptyStatesDescription[];
236 
237 // Title and description for the flag to present the new UI Reboot on Infobars
238 // using OverlayPresenter.
239 extern const char kInfobarOverlayUIName[];
240 extern const char kInfobarOverlayUIDescription[];
241 
242 // Title and description for the flag to enable the new UI Reboot on Infobars.
243 extern const char kInfobarUIRebootName[];
244 extern const char kInfobarUIRebootDescription[];
245 
246 // Title and description for the flag to enable the new UI Reboot on Infobars
247 // only on iOS13.
248 extern const char kInfobarUIRebootOnlyiOS13Name[];
249 extern const char kInfobarUIRebootOnlyiOS13Description[];
250 
251 // Title and description for the flag to enable feature_engagement::Tracker
252 // demo mode.
253 extern const char kInProductHelpDemoModeName[];
254 extern const char kInProductHelpDemoModeDescription[];
255 
256 // Title and description for the flag to enable interstitials on legacy TLS
257 // connections.
258 extern const char kIOSLegacyTLSInterstitialsName[];
259 extern const char kIOSLegacyTLSInterstitialsDescription[];
260 
261 // Title and description for the flag to enable interstitials on lookalike
262 // URL navigations.
263 extern const char kIOSLookalikeUrlNavigationSuggestionsUIName[];
264 extern const char kIOSLookalikeUrlNavigationSuggestionsUIDescription[];
265 
266 // Title and description for the flag to persist the Crash Restore Infobar
267 // across navigations.
268 extern const char kIOSPersistCrashRestoreName[];
269 extern const char kIOSPersistCrashRestoreDescription[];
270 
271 // Title and description for the flag to experiment with different location
272 // permission user experiences.
273 extern const char kLocationPermissionsPromptName[];
274 extern const char kLocationPermissionsPromptDescription[];
275 
276 // Title and description for the flag to lock the bottom toolbar into place.
277 extern const char kLockBottomToolbarName[];
278 extern const char kLockBottomToolbarDescription[];
279 
280 // Title and description for the flag to enable ManagedBookmarks enterprise
281 // policy on iOS.
282 extern const char kManagedBookmarksIOSName[];
283 extern const char kManagedBookmarksIOSDescription[];
284 
285 // Title, description, and options for the MarkHttpAs setting that controls
286 // display of omnibox warnings about non-secure pages.
287 extern const char kMarkHttpAsName[];
288 extern const char kMarkHttpAsDescription[];
289 
290 // Title and description for the flag where the Google SRP is requested in
291 // mobile mode by default.
292 extern const char kMobileGoogleSRPName[];
293 extern const char kMobileGoogleSRPDescription[];
294 
295 // Title and description for the flag to enable mobile identity consistency.
296 extern const char kMobileIdentityConsistencyName[];
297 extern const char kMobileIdentityConsistencyDescription[];
298 
299 // TODO(crbug.com/1128242): Remove this flag after the refactoring work is
300 // finished.
301 // Title and description for the flag used to test the newly
302 // implemented tabstrip.
303 extern const char kModernTabStripName[];
304 extern const char kModernTabStripDescription[];
305 
306 // Title and description for the flag to change the max number of autocomplete
307 // matches in the omnibox popup.
308 extern const char kOmniboxUIMaxAutocompleteMatchesName[];
309 extern const char kOmniboxUIMaxAutocompleteMatchesDescription[];
310 
311 // Title and description for the flag to enable Omnibox On Device Head
312 // suggestions (incognito).
313 extern const char kOmniboxOnDeviceHeadSuggestionsIncognitoName[];
314 extern const char kOmniboxOnDeviceHeadSuggestionsIncognitoDescription[];
315 
316 // Title and description for the flag to enable Omnibox On Device Head
317 // suggestions (non incognito).
318 extern const char kOmniboxOnDeviceHeadSuggestionsNonIncognitoName[];
319 extern const char kOmniboxOnDeviceHeadSuggestionsNonIncognitoDescription[];
320 
321 // Title and description for the flag to control Omnibox on-focus suggestions.
322 extern const char kOmniboxOnFocusSuggestionsName[];
323 extern const char kOmniboxOnFocusSuggestionsDescription[];
324 
325 // Title and description for the flag to enable the new design of the page info.
326 extern const char kPageInfoRefactoringName[];
327 extern const char kPageInfoRefactoringDescription[];
328 
329 // Title and description for the flag to control Omnibox Local zero-prefix
330 // suggestions.
331 extern const char kOmniboxLocalHistoryZeroSuggestName[];
332 extern const char kOmniboxLocalHistoryZeroSuggestDescription[];
333 
334 #if defined(__IPHONE_13_4)
335 // Title and description for the flag to enable pointer support on tablets.
336 extern const char kPointerSupportName[];
337 extern const char kPointerSupportDescription[];
338 #endif  // defined(__IPHONE_13_4)
339 
340 // Title and description for the flag that makes Safe Browsing available.
341 extern const char kSafeBrowsingAvailableName[];
342 extern const char kSafeBrowsingAvailableDescription[];
343 
344 // Title and description for the flag to enable real-time Safe Browsing lookups.
345 extern const char kSafeBrowsingRealTimeLookupName[];
346 extern const char kSafeBrowsingRealTimeLookupDescription[];
347 
348 // Title and description for the flag to enable safety check on iOS.
349 extern const char kSafetyCheckIOSName[];
350 extern const char kSafetyCheckIOSDescription[];
351 
352 // Title and description for the flag that enables Messages UI on
353 // SaveCard Infobars.
354 extern const char kSaveCardInfobarMessagesUIName[];
355 extern const char kSaveCardInfobarMessagesUIDescription[];
356 
357 // Title and description for the flag to enable integration with the ScreenTime
358 // system.
359 extern const char kScreenTimeIntegrationName[];
360 extern const char kScreenTimeIntegrationDescription[];
361 
362 // Title and description for the flag to enable the Scroll to Text feature.
363 extern const char kScrollToTextIOSName[];
364 extern const char kScrollToTextIOSDescription[];
365 
366 // Title and description for the flag to enable the send tab to self receiving
367 // feature.
368 extern const char kSendTabToSelfName[];
369 extern const char kSendTabToSelfDescription[];
370 
371 // Title and description for the flag to send UMA data over any network.
372 extern const char kSendUmaOverAnyNetwork[];
373 extern const char kSendUmaOverAnyNetworkDescription[];
374 
375 // Title and description for the flag to toggle the flag for the settings UI
376 // Refresh.
377 extern const char kSettingsRefreshName[];
378 extern const char kSettingsRefreshDescription[];
379 
380 // Title and description for the flag to enable Shared Highlighting (Link to
381 // Text Edit Menu option).
382 extern const char kSharedHighlightingIOSName[];
383 extern const char kSharedHighlightingIOSDescription[];
384 
385 // Title and description for the flag to enable annotating web forms with
386 // Autofill field type predictions as placeholder.
387 extern const char kShowAutofillTypePredictionsName[];
388 extern const char kShowAutofillTypePredictionsDescription[];
389 
390 // Title and description for the flag to use |-drawViewHierarchy:| for taking
391 // snapshots.
392 extern const char kSnapshotDrawViewName[];
393 extern const char kSnapshotDrawViewDescription[];
394 
395 // Title and description for the flag to control if Chrome Sync should use the
396 // sandbox servers.
397 extern const char kSyncSandboxName[];
398 extern const char kSyncSandboxDescription[];
399 
400 // Title and description for the flag to enable the toolbar container
401 // implementation.
402 extern const char kToolbarContainerName[];
403 extern const char kToolbarContainerDescription[];
404 
405 // Title and description for the flag to enable the Messages UI for Translate
406 // Infobars.
407 extern const char kTranslateInfobarMessagesUIName[];
408 extern const char kTranslateInfobarMessagesUIDescription[];
409 
410 // Title and description for the flag to enable URLBlocklist/URLAllowlist
411 // enterprise policy.
412 extern const char kURLBlocklistIOSName[];
413 extern const char kURLBlocklistIOSDescription[];
414 
415 // Title and description for the flag to enable the new error page workflow.
416 extern const char kUseJSForErrorPageName[];
417 extern const char kUseJSForErrorPageDescription[];
418 
419 // Title and description for the flag to control if Google Payments API calls
420 // should use the sandbox servers.
421 extern const char kWalletServiceUseSandboxName[];
422 extern const char kWalletServiceUseSandboxDescription[];
423 
424 // Title and description for the flag to tie the default text zoom level to
425 // the dynamic type setting.
426 extern const char kWebPageDefaultZoomFromDynamicTypeName[];
427 extern const char kWebPageDefaultZoomFromDynamicTypeDescription[];
428 
429 // Title and description for the flag to enable text accessibility in webpages.
430 extern const char kWebPageTextAccessibilityName[];
431 extern const char kWebPageTextAccessibilityDescription[];
432 
433 // Title and description for the flag to enable a different method of zooming
434 // web pages.
435 extern const char kWebPageAlternativeTextZoomName[];
436 extern const char kWebPageAlternativeTextZoomDescription[];
437 
438 // Title and description for the flag to enable the native context menus in the
439 // WebView.
440 extern const char kWebViewNativeContextMenuName[];
441 extern const char kWebViewNativeContextMenuDescription[];
442 
443 extern const char kWellKnownChangePasswordName[];
444 extern const char kWellKnownChangePasswordDescription[];
445 
446 extern const char kRestoreGaiaCookiesIfDeletedName[];
447 extern const char kRestoreGaiaCookiesIfDeletedDescription[];
448 
449 // Please add names and descriptions above in alphabetical order.
450 
451 }  // namespace flag_descriptions
452 
453 #endif  // IOS_CHROME_BROWSER_FLAGS_IOS_CHROME_FLAG_DESCRIPTIONS_H_
454