Allow clients to override their own hardware media requirements where no fallback...
[WebKit-https.git] / Source / WebCore / page / Settings.in
1 # FIXME: Add support for global settings.
2 # FIXME: Add support for custom getters/setters.
3
4 defaultTextEncodingName type=String
5 ftpDirectoryTemplatePath type=String
6 localStorageDatabasePath type=String
7 editableLinkBehavior type=EditableLinkBehavior, initial=EditableLinkDefaultBehavior
8 textDirectionSubmenuInclusionBehavior type=TextDirectionSubmenuInclusionBehavior, initial=TextDirectionSubmenuAutomaticallyIncluded
9 pdfImageCachingPolicy type=PDFImageCachingPolicy, initial = PDFImageCachingDefault
10 passwordEchoDurationInSeconds type=double, initial=1
11
12 # Sets the magnification value for validation message timer.  If the
13 # magnification value is N, a validation message disappears automatically after
14 # <message length> * N / 1000 seconds.  If N is equal to or less than 0, a
15 # validation message doesn't disappears automaticaly.
16 validationMessageTimerMagnification type=int, initial=50
17
18 # Number of pixels below which 2D canvas is rendered in software
19 # even if hardware acceleration is enabled.
20 # Hardware acceleration is useful for large canvases where it can avoid the
21 # pixel bandwidth between the CPU and GPU. But GPU acceleration comes at
22 # a price - extra back-buffer and texture copy. Small canvases are also
23 # widely used for stylized fonts. Anti-aliasing text in hardware at that
24 # scale is generally slower. So below a certain size it is better to
25 # draw canvas in software.
26 minimumAccelerated2dCanvasSize type=int, initial=257*256
27
28 maximumAccelerated2dCanvasSize type=unsigned, initial=5120*2880
29
30 layoutFallbackWidth type=int, initial=980
31 deviceWidth type=int, initial=0
32 deviceHeight type=int, initial=0
33
34 # Allow clients concerned with memory consumption to set a quota on session storage
35 # since the memory used won't be released until the Page is destroyed.
36 sessionStorageQuota type=unsigned, initial=StorageMap::noQuota
37
38 minimumFontSize type=int, initial=0, setNeedsStyleRecalcInAllFrames=1
39 minimumLogicalFontSize type=int, initial=0, setNeedsStyleRecalcInAllFrames=1
40 defaultFontSize type=int, initial=16, setNeedsStyleRecalcInAllFrames=1
41 defaultFixedFontSize type=int, initial=0, setNeedsStyleRecalcInAllFrames=1
42
43 editingBehaviorType type=EditingBehaviorType, initial=editingBehaviorTypeForPlatform()
44 maximumHTMLParserDOMTreeDepth type=unsigned, initial=defaultMaximumHTMLParserDOMTreeDepth
45
46 # This setting only affects site icon image loading if loadsImagesAutomatically setting is false and this setting is true.
47 # All other permutations still heed loadsImagesAutomatically setting.
48 loadsSiteIconsIgnoringImageLoadingSetting initial=false
49
50 caretBrowsingEnabled initial=false
51 preventKeyboardDOMEventDispatch initial=false
52 localStorageEnabled initial=false
53 allowUniversalAccessFromFileURLs initial=true
54 allowFileAccessFromFileURLs initial=true
55 needsStorageAccessFromFileURLsQuirk initial=true
56 javaScriptCanOpenWindowsAutomatically initial=false
57 javaScriptCanAccessClipboard initial=false
58 shouldPrintBackgrounds initial=false
59 usesDashboardBackwardCompatibilityMode initial=false, conditional=DASHBOARD_SUPPORT
60 clipboardAccessPolicy type=ClipboardAccessPolicy, initial=ClipboardAccessPolicy::RequiresUserGesture
61
62 textAreasAreResizable initial=false, setNeedsStyleRecalcInAllFrames=1
63 authorAndUserStylesEnabled initial=true, setNeedsStyleRecalcInAllFrames=1
64 acceleratedCompositingEnabled initial=true, setNeedsStyleRecalcInAllFrames=1
65 acceleratedCompositedAnimationsEnabled initial=true, setNeedsStyleRecalcInAllFrames=1
66 showDebugBorders initial=false, setNeedsStyleRecalcInAllFrames=1
67 showRepaintCounter initial=false, setNeedsStyleRecalcInAllFrames=1
68 visibleDebugOverlayRegions type=DebugOverlayRegions, initial=0
69
70 # This is a quirk we are pro-actively applying to old applications. It changes keyboard event dispatching,
71 # making keyIdentifier available on keypress events, making charCode available on keydown/keyup events,
72 # and getting keypress dispatched in more cases.
73 needsKeyboardEventDisambiguationQuirks initial=false
74
75 treatsAnyTextCSSLinkAsStylesheet initial=false
76 shrinksStandaloneImagesToFit initial=true
77 pageCacheSupportsPlugins initial=false
78 showsURLsInToolTips initial=false
79 showsToolTipOverTruncatedText initial=false
80 forceFTPDirectoryListings initial=false
81 developerExtrasEnabled initial=false
82 scriptMarkupEnabled initial=true
83 needsSiteSpecificQuirks initial=false
84 domTimersThrottlingEnabled initial=true
85 webArchiveDebugModeEnabled initial=false, conditional=WEB_ARCHIVE
86 localFileContentSniffingEnabled initial=false
87 offlineWebApplicationCacheEnabled initial=false
88 enforceCSSMIMETypeInNoQuirksMode initial=true
89 usesEncodingDetector initial=false
90 allowScriptsToCloseWindows initial=false
91 canvasUsesAcceleratedDrawing initial=false
92 acceleratedDrawingEnabled initial=false
93 displayListDrawingEnabled initial=false
94 acceleratedFiltersEnabled initial=false
95 useLegacyTextAlignPositionedElementBehavior initial=false
96 javaScriptRuntimeFlags type=JSC::RuntimeFlags
97
98 # FIXME: This should really be disabled by default as it makes platforms that don't support the feature download files
99 # they can't use by. Leaving enabled for now to not change existing behavior.
100 downloadableBinaryFontsEnabled initial=true
101
102 xssAuditorEnabled initial=false
103 acceleratedCompositingForFixedPositionEnabled initial=defaultAcceleratedCompositingForFixedPositionEnabled
104 acceleratedCompositingForOverflowScrollEnabled initial=false
105 rubberBandingForSubScrollableRegionsEnabled initial=true, conditional=RUBBER_BANDING
106
107 experimentalNotificationsEnabled initial=false
108 webGLEnabled initial=false
109 webGLErrorsToConsoleEnabled initial=true
110 forceSoftwareWebGLRendering initial=false
111 forceWebGLUsesLowPower initial=false
112 accelerated2dCanvasEnabled initial=false
113 loadDeferringEnabled initial=true
114 webAudioEnabled initial=false
115 paginateDuringLayoutEnabled initial=false
116 fullScreenEnabled initial=false, conditional=FULLSCREEN_API
117 asynchronousSpellCheckingEnabled initial=false
118
119 # This feature requires an implementation of ValidationMessageClient.
120 interactiveFormValidationEnabled initial=false
121
122 usePreHTML5ParserQuirks initial=false
123 hyperlinkAuditingEnabled initial=false
124 crossOriginCheckInGetMatchedCSSRulesDisabled initial=false
125 forceCompositingMode initial=false
126 shouldInjectUserScriptsInInitialEmptyDocument initial=false
127 fixedElementsLayoutRelativeToFrame initial=false
128 allowDisplayOfInsecureContent initial=false
129 allowRunningOfInsecureContent initial=false
130 requiresUserGestureToLoadVideo initial=defaultRequiresUserGestureToLoadVideo
131 videoPlaybackRequiresUserGesture initial=defaultVideoPlaybackRequiresUserGesture
132 audioPlaybackRequiresUserGesture initial=defaultAudioPlaybackRequiresUserGesture
133 mainContentUserGestureOverrideEnabled initial=false
134 mediaUserGestureInheritsFromDocument initial=false
135 allowsInlineMediaPlayback initial=defaultAllowsInlineMediaPlayback
136 allowsInlineMediaPlaybackAfterFullscreen initial=true
137 inlineMediaPlaybackRequiresPlaysInlineAttribute initial=defaultInlineMediaPlaybackRequiresPlaysInlineAttribute
138 allowsPictureInPictureMediaPlayback initial=defaultAllowsPictureInPictureMediaPlayback
139 mediaControlsScaleWithPageZoom initial=defaultMediaControlsScaleWithPageZoom
140 invisibleAutoplayNotPermitted initial=false
141 passwordEchoEnabled initial=false
142 suppressesIncrementalRendering initial=false
143 incrementalRenderingSuppressionTimeoutInSeconds type=double, initial=defaultIncrementalRenderingSuppressionTimeoutInSeconds
144 backspaceKeyNavigationEnabled initial=true
145 shouldDisplaySubtitles initial=false, conditional=VIDEO_TRACK
146 shouldDisplayCaptions initial=false, conditional=VIDEO_TRACK
147 shouldDisplayTextDescriptions initial=false, conditional=VIDEO_TRACK
148 scrollingCoordinatorEnabled initial=false
149 scrollingTreeIncludesFrames initial=defaultScrollingTreeIncludesFrames
150 scrollAnimatorEnabled initial=true, conditional=SMOOTH_SCROLLING
151 forceUpdateScrollbarsOnMainThreadForPerformanceTesting initial=false
152 notificationsEnabled initial=true
153
154 # Some apps needs isLoadingInAPISense to account for active subresource loaders.
155 needsIsLoadingInAPISenseQuirk initial=false
156
157 shouldRespectImageOrientation initial=defaultShouldRespectImageOrientation
158 imageSubsamplingEnabled initial=defaultImageSubsamplingEnabled
159 wantsBalancedSetDefersLoadingBehavior initial=false
160 requestAnimationFrameEnabled initial=true
161
162 cookieEnabled initial=true
163 mediaEnabled initial=true
164 DOMPasteAllowed initial=false
165
166 # When enabled, window.blur() does not change focus, and
167 # window.focus() only changes focus when invoked from the context that
168 # created the window.
169 windowFocusRestricted initial=true
170
171 diagnosticLoggingEnabled initial=false
172 delegatesPageScaling initial=false
173 plugInSnapshottingEnabled initial=false
174 snapshotAllPlugIns initial=false
175 autostartOriginPlugInSnapshottingEnabled initial=true
176 primaryPlugInSnapshotDetectionEnabled initial=true
177 maximumPlugInSnapshotAttempts type=unsigned, initial=20
178 frameFlattening type=FrameFlattening, initial=FrameFlatteningDisabled
179 asyncFrameScrollingEnabled initial=false
180
181 webSecurityEnabled initial=true
182 spatialNavigationEnabled initial=false
183
184 autoscrollForDragAndDropEnabled initial=false
185
186 unifiedTextCheckerEnabled initial=defaultUnifiedTextCheckerEnabled
187
188 logsPageMessagesToSystemConsoleEnabled initial=false
189
190 backForwardCacheExpirationInterval type=double, initial=1800
191
192 # Some apps could have a default video poster if it is not set.
193 defaultVideoPosterURL type=String
194
195 smartInsertDeleteEnabled initial=defaultSmartInsertDeleteEnabled
196 selectTrailingWhitespaceEnabled initial=defaultSelectTrailingWhitespaceEnabled
197
198 useLegacyBackgroundSizeShorthandBehavior initial=false
199 fixedBackgroundsPaintRelativeToDocument initial=defaultFixedBackgroundsPaintRelativeToDocument
200
201 textAutosizingEnabled initial=defaultTextAutosizingEnabled(), setNeedsStyleRecalcInAllFrames=1, conditional=TEXT_AUTOSIZING
202 textAutosizingWindowSizeOverride type=IntSize, setNeedsStyleRecalcInAllFrames=1, conditional=TEXT_AUTOSIZING
203 minimumZoomFontSize type=float, initial=defaultMinimumZoomFontSize(), conditional=TEXT_AUTOSIZING
204
205 subpixelAntialiasedLayerTextEnabled initial=false, setNeedsStyleRecalcInAllFrames=1
206 simpleLineLayoutEnabled initial=true, setNeedsStyleRecalcInAllFrames=1
207 simpleLineLayoutDebugBordersEnabled initial=false, setNeedsStyleRecalcInAllFrames=1
208
209 subpixelCSSOMElementMetricsEnabled initial=false
210
211 useGiantTiles initial=false
212
213 mediaSourceEnabled initial=true, conditional=MEDIA_SOURCE
214
215 # FIXME: Rename to allowMultiElementImplicitFormSubmission once we upstream the iOS changes to WebView.mm.
216 allowMultiElementImplicitSubmission initial=false
217
218 allowsAirPlayForMediaPlayback initial=true, conditional=WIRELESS_PLAYBACK_TARGET
219 mediaDocumentEntersFullscreenAutomatically initial=false
220
221 shouldConvertPositionStyleOnCopy initial=false
222
223 maxParseDuration type=double, initial=-1
224 standalone initial=false
225 telephoneNumberParsingEnabled initial=false
226 mediaDataLoadsAutomatically initial=defaultMediaDataLoadsAutomatically
227 alwaysUseAcceleratedOverflowScroll initial=false
228 imageControlsEnabled initial=false, conditional=SERVICE_CONTROLS
229
230 enableInheritURIQueryComponent initial=false
231
232 aggressiveTileRetentionEnabled initial=false
233 temporaryTileCohortRetentionEnabled initial=true
234
235 useImageDocumentForSubframePDF initial=false
236 dataDetectorTypes type=DataDetectorTypes, initial=DataDetectorTypeNone, conditional=DATA_DETECTION
237
238 # Allow SourceBuffers to store up to 304MB each, enough for approximately five minutes
239 # of 1080p video and stereo audio.
240 maximumSourceBufferSize type=int, initial=318767104, conditional=MEDIA_SOURCE
241
242 serviceControlsEnabled initial=false, conditional=SERVICE_CONTROLS
243
244 appleMailPaginationQuirkEnabled initial=false
245
246 attachmentElementEnabled initial=true, conditional=ATTACHMENT_ELEMENT
247
248 newBlockInsideInlineModelEnabled initial=false, setNeedsStyleRecalcInAllFrames=1
249
250 deferredCSSParserEnabled initial=false
251
252 httpEquivEnabled initial=true
253
254 # Some ports (e.g. iOS) might choose to display attachments inline, regardless of whether the response includes the
255 # HTTP header "Content-Disposition: attachment". This setting enables a sandbox around these attachments. The sandbox
256 # enforces all frame sandbox flags (see enum SandboxFlag in SecurityContext.h), and also disables <meta http-equiv>
257 # processing and subframe loading.
258 contentDispositionAttachmentSandboxEnabled initial=false
259
260 userInterfaceDirectionPolicy type=UserInterfaceDirectionPolicy, initial=UserInterfaceDirectionPolicy::Content
261 systemLayoutDirection type=TextDirection, initial=LTR
262
263 allowContentSecurityPolicySourceStarToMatchAnyProtocol initial=false
264
265 selectionPaintingWithoutSelectionGapsEnabled initial=false
266
267 shouldConvertInvalidURLsToBlank initial=true
268
269 springTimingFunctionEnabled initial=false
270
271 treatIPAddressAsDomain initial=false
272
273 mediaPreloadingEnabled initial=false
274
275 # Runtime-enabled features
276 visualViewportEnabled initial=false, setNeedsStyleRecalcInAllFrames=1
277
278 inputEventsEnabled initial=true
279
280 quickTimePluginReplacementEnabled initial=defaultQuickTimePluginReplacementEnabled
281 youTubeFlashPluginReplacementEnabled initial=defaultYouTubeFlashPluginReplacementEnabled
282
283 forcedColorsAreInvertedAccessibilityValue type=ForcedAccessibilityValue, initial=defaultForcedColorsAreInvertedAccessibilityValue
284 forcedDisplayIsMonochromeAccessibilityValue type=ForcedAccessibilityValue, initial=defaultForcedDisplayIsMonochromeAccessibilityValue
285 forcedPrefersReducedMotionAccessibilityValue type=ForcedAccessibilityValue, initial=defaultForcedPrefersReducedMotionAccessibilityValue
286
287 largeImageAsyncDecodingEnabled initial=true
288 animatedImageAsyncDecodingEnabled initial=true
289 webkitImageReadyEventEnabled initial=false
290
291 shouldSuppressKeyboardInputDuringProvisionalNavigation initial=false
292
293 langAttributeAwareFormControlUIEnabled initial=false
294
295 subresourceIntegrityEnabled initial=true
296
297 constantPropertiesEnabled initial=false
298
299 viewportFitEnabled initial=false
300
301 allowMediaContentTypesRequiringHardwareSupportAsFallback initial=false