Local HTML should be blocked from localStorage access unless "Disable Local File...
[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 layoutFallbackWidth type=int, initial=980
29 deviceWidth type=int, initial=0
30 deviceHeight type=int, initial=0
31
32 # Allow clients concerned with memory consumption to set a quota on session storage
33 # since the memory used won't be released until the Page is destroyed.
34 sessionStorageQuota type=unsigned, initial=StorageMap::noQuota
35
36 minimumFontSize type=int, initial=0, setNeedsStyleRecalcInAllFrames=1
37 minimumLogicalFontSize type=int, initial=0, setNeedsStyleRecalcInAllFrames=1
38 defaultFontSize type=int, initial=16, setNeedsStyleRecalcInAllFrames=1
39 defaultFixedFontSize type=int, initial=0, setNeedsStyleRecalcInAllFrames=1
40
41 editingBehaviorType type=EditingBehaviorType, initial=editingBehaviorTypeForPlatform()
42 maximumHTMLParserDOMTreeDepth type=unsigned, initial=defaultMaximumHTMLParserDOMTreeDepth
43
44 # This setting only affects site icon image loading if loadsImagesAutomatically setting is false and this setting is true.
45 # All other permutations still heed loadsImagesAutomatically setting.
46 loadsSiteIconsIgnoringImageLoadingSetting initial=false
47
48 caretBrowsingEnabled initial=false
49 preventKeyboardDOMEventDispatch initial=false
50 localStorageEnabled initial=false
51 allowUniversalAccessFromFileURLs initial=true
52 allowFileAccessFromFileURLs initial=true
53 needsStorageAccessFromFileURLsQuirk initial=true
54 javaScriptCanOpenWindowsAutomatically initial=false
55 javaScriptCanAccessClipboard initial=false
56 shouldPrintBackgrounds initial=false
57 usesDashboardBackwardCompatibilityMode initial=false, conditional=DASHBOARD_SUPPORT
58 clipboardAccessPolicy type=ClipboardAccessPolicy, initial=ClipboardAccessPolicy::RequiresUserGesture
59
60 textAreasAreResizable initial=false, setNeedsStyleRecalcInAllFrames=1
61 authorAndUserStylesEnabled initial=true, setNeedsStyleRecalcInAllFrames=1
62 acceleratedCompositingEnabled initial=true, setNeedsStyleRecalcInAllFrames=1
63 acceleratedCompositedAnimationsEnabled initial=true, setNeedsStyleRecalcInAllFrames=1
64 showDebugBorders initial=false, setNeedsStyleRecalcInAllFrames=1
65 showRepaintCounter initial=false, setNeedsStyleRecalcInAllFrames=1
66 visibleDebugOverlayRegions type=DebugOverlayRegions, initial=0
67
68 # This is a quirk we are pro-actively applying to old applications. It changes keyboard event dispatching,
69 # making keyIdentifier available on keypress events, making charCode available on keydown/keyup events,
70 # and getting keypress dispatched in more cases.
71 needsKeyboardEventDisambiguationQuirks initial=false
72
73 treatsAnyTextCSSLinkAsStylesheet initial=false
74 shrinksStandaloneImagesToFit initial=true
75 pageCacheSupportsPlugins initial=false
76 showsURLsInToolTips initial=false
77 showsToolTipOverTruncatedText initial=false
78 forceFTPDirectoryListings initial=false
79 developerExtrasEnabled initial=false
80 scriptMarkupEnabled initial=true
81 needsSiteSpecificQuirks initial=false
82 domTimersThrottlingEnabled initial=true
83 webArchiveDebugModeEnabled initial=false, conditional=WEB_ARCHIVE
84 localFileContentSniffingEnabled initial=false
85 offlineWebApplicationCacheEnabled initial=false
86 enforceCSSMIMETypeInNoQuirksMode initial=true
87 usesEncodingDetector initial=false
88 allowScriptsToCloseWindows initial=false
89 canvasUsesAcceleratedDrawing initial=false
90 acceleratedDrawingEnabled initial=false
91 displayListDrawingEnabled initial=false
92 acceleratedFiltersEnabled initial=false
93 useLegacyTextAlignPositionedElementBehavior initial=false
94 javaScriptRuntimeFlags type=JSC::RuntimeFlags
95
96 # FIXME: This should really be disabled by default as it makes platforms that don't support the feature download files
97 # they can't use by. Leaving enabled for now to not change existing behavior.
98 downloadableBinaryFontsEnabled initial=true
99
100 xssAuditorEnabled initial=false
101 unsafePluginPastingEnabled initial=true
102 acceleratedCompositingForFixedPositionEnabled initial=defaultAcceleratedCompositingForFixedPositionEnabled
103 acceleratedCompositingForOverflowScrollEnabled initial=false
104 rubberBandingForSubScrollableRegionsEnabled initial=true, conditional=RUBBER_BANDING
105
106 experimentalNotificationsEnabled initial=false
107 webGLEnabled initial=false
108 webGLErrorsToConsoleEnabled initial=true
109 openGLMultisamplingEnabled initial=true
110 forceSoftwareWebGLRendering initial=false
111 accelerated2dCanvasEnabled initial=false
112 antialiased2dCanvasEnabled initial=true
113 loadDeferringEnabled initial=true
114 webAudioEnabled initial=false
115 paginateDuringLayoutEnabled initial=false
116 fullScreenEnabled initial=false, conditional=FULLSCREEN_API
117 asynchronousSpellCheckingEnabled initial=false
118 mediaStreamEnabled initial=false
119
120 # This feature requires an implementation of ValidationMessageClient.
121 interactiveFormValidationEnabled initial=false
122
123 usePreHTML5ParserQuirks initial=false
124 hyperlinkAuditingEnabled initial=false
125 crossOriginCheckInGetMatchedCSSRulesDisabled initial=false
126 forceCompositingMode initial=false
127 shouldInjectUserScriptsInInitialEmptyDocument initial=false
128 fixedElementsLayoutRelativeToFrame initial=false
129 allowDisplayOfInsecureContent initial=false
130 allowRunningOfInsecureContent initial=false
131 requiresUserGestureToLoadVideo initial=defaultRequiresUserGestureToLoadVideo
132 videoPlaybackRequiresUserGesture initial=defaultVideoPlaybackRequiresUserGesture
133 audioPlaybackRequiresUserGesture initial=defaultAudioPlaybackRequiresUserGesture
134 mainContentUserGestureOverrideEnabled 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 fixedPositionCreatesStackingContext initial=defaultFixedPositionCreatesStackingContext
163 syncXHRInDocumentsEnabled initial=true
164 cookieEnabled initial=true
165 mediaEnabled initial=true
166 DOMPasteAllowed initial=false
167
168 # When enabled, window.blur() does not change focus, and
169 # window.focus() only changes focus when invoked from the context that
170 # created the window.
171 windowFocusRestricted initial=true
172
173 diagnosticLoggingEnabled initial=false
174 delegatesPageScaling initial=false
175 plugInSnapshottingEnabled initial=false
176 snapshotAllPlugIns initial=false
177 autostartOriginPlugInSnapshottingEnabled initial=true
178 primaryPlugInSnapshotDetectionEnabled initial=true
179 maximumPlugInSnapshotAttempts type=unsigned, initial=20
180 frameFlatteningEnabled initial=false
181
182 allowCustomScrollbarInMainFrame initial=true
183 webSecurityEnabled initial=true
184 spatialNavigationEnabled initial=false
185
186 autoscrollForDragAndDropEnabled initial=false
187
188 unifiedTextCheckerEnabled initial=defaultUnifiedTextCheckerEnabled
189
190 logsPageMessagesToSystemConsoleEnabled initial=false
191
192 backForwardCacheExpirationInterval type=double, initial=1800
193
194 # Some apps could have a default video poster if it is not set.
195 defaultVideoPosterURL type=String
196
197 smartInsertDeleteEnabled initial=defaultSmartInsertDeleteEnabled
198 selectTrailingWhitespaceEnabled initial=defaultSelectTrailingWhitespaceEnabled
199
200 selectionIncludesAltImageText initial=true
201 useLegacyBackgroundSizeShorthandBehavior initial=false
202 fixedBackgroundsPaintRelativeToDocument initial=defaultFixedBackgroundsPaintRelativeToDocument
203
204 textAutosizingEnabled initial=defaultTextAutosizingEnabled(), setNeedsStyleRecalcInAllFrames=1, conditional=TEXT_AUTOSIZING
205 textAutosizingWindowSizeOverride type=IntSize, setNeedsStyleRecalcInAllFrames=1, conditional=TEXT_AUTOSIZING
206 minimumZoomFontSize type=float, initial=defaultMinimumZoomFontSize(), conditional=TEXT_AUTOSIZING
207
208 simpleLineLayoutEnabled initial=true, setNeedsStyleRecalcInAllFrames=1
209 simpleLineLayoutDebugBordersEnabled initial=false, setNeedsStyleRecalcInAllFrames=1
210
211 subpixelCSSOMElementMetricsEnabled initial=false
212
213 useGiantTiles initial=false
214
215 mediaSourceEnabled initial=true, conditional=MEDIA_SOURCE
216
217 # FIXME: Rename to allowMultiElementImplicitFormSubmission once we upstream the iOS changes to WebView.mm.
218 allowMultiElementImplicitSubmission initial=false
219
220 allowsAirPlayForMediaPlayback initial=true, conditional=WIRELESS_PLAYBACK_TARGET
221
222 shouldConvertPositionStyleOnCopy initial=false
223
224 maxParseDuration type=double, initial=-1
225 standalone initial=false
226 telephoneNumberParsingEnabled initial=false
227 mediaDataLoadsAutomatically initial=defaultMediaDataLoadsAutomatically
228 shouldTransformsAffectOverflow initial=true
229 shouldDispatchJavaScriptWindowOnErrorEvents initial=false
230 alwaysUseAcceleratedOverflowScroll initial=false
231 imageControlsEnabled initial=false, conditional=SERVICE_CONTROLS
232
233 enableInheritURIQueryComponent initial=false
234
235 aggressiveTileRetentionEnabled initial=false
236 temporaryTileCohortRetentionEnabled initial=true
237
238 useImageDocumentForSubframePDF initial=false
239 dataDetectorTypes type=DataDetectorTypes, initial=DataDetectorTypeNone, conditional=DATA_DETECTION
240
241 # Allow SourceBuffers to store up to 304MB each, enough for approximately five minutes
242 # of 1080p video and stereo audio.
243 maximumSourceBufferSize type=int, initial=318767104, conditional=MEDIA_SOURCE
244
245 serviceControlsEnabled initial=false, conditional=SERVICE_CONTROLS
246
247 appleMailPaginationQuirkEnabled initial=false
248
249 attachmentElementEnabled initial=true, conditional=ATTACHMENT_ELEMENT
250
251 newBlockInsideInlineModelEnabled initial=false, setNeedsStyleRecalcInAllFrames=1
252
253 newCSSParserEnabled initial=false
254
255 httpEquivEnabled initial=true
256
257 # Some ports (e.g. iOS) might choose to display attachments inline, regardless of whether the response includes the
258 # HTTP header "Content-Disposition: attachment". This setting enables a sandbox around these attachments. The sandbox
259 # enforces all frame sandbox flags (see enum SandboxFlag in SecurityContext.h), and also disables <meta http-equiv>
260 # processing and subframe loading.
261 contentDispositionAttachmentSandboxEnabled initial=false
262
263 userInterfaceDirectionPolicy type=UserInterfaceDirectionPolicy, initial=UserInterfaceDirectionPolicy::Content
264 systemLayoutDirection type=TextDirection, initial=LTR
265
266 allowContentSecurityPolicySourceStarToMatchAnyProtocol initial=false
267
268 allowWindowOpenWithoutUserGesture initial=false
269
270 selectionPaintingWithoutSelectionGapsEnabled initial=false
271
272 shouldConvertInvalidURLsToBlank initial=true
273
274 springTimingFunctionEnabled initial=false
275
276 treatIPAddressAsDomain initial=false
277
278 variationFontsEnabled initial=true, setNeedsStyleRecalcInAllFrames=1, conditional=VARIATION_FONTS
279
280 # Runtime-enabled features
281 visualViewportEnabled initial=false, setNeedsStyleRecalcInAllFrames=1
282 intersectionObserverEnabled initial=false
283
284 inputEventsEnabled initial=true
285
286 quickTimePluginReplacementEnabled initial=defaultQuickTimePluginReplacementEnabled
287 youTubeFlashPluginReplacementEnabled initial=defaultYouTubeFlashPluginReplacementEnabled
288
289 forcedPrefersReducedMotionValue type=ForcedPrefersReducedMotionValue, initial=defaultForcedPrefersReducedMotionValue
290
291 asyncImageDecodingEnabled initial=true