blob: b929c9d72addb6500e98e1b0ad535bd018c547cc [file] [log] [blame]
# Copyright (c) 2020-2021 Apple Inc. All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
# 1. Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
# 2. Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in the
# documentation and/or other materials provided with the distribution.
#
# THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
# THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
# PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
# BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
# THE POSSIBILITY OF SUCH DAMAGE.
AVFoundationEnabled:
type: bool
getter: isAVFoundationEnabled
webcoreBinding: DeprecatedGlobalSettings
condition: USE(AVFOUNDATION)
defaultValue:
WebKitLegacy:
default: true
WebKit:
"PLATFORM(WATCHOS)": false
default: true
AVFoundationNSURLSessionEnabled:
type: bool
getter: isAVFoundationNSURLSessionEnabled
webcoreBinding: DeprecatedGlobalSettings
condition: USE(AVFOUNDATION)
defaultValue:
WebKitLegacy:
default: true
WebKit:
default: true
AcceleratedCompositingEnabled:
type: bool
webcoreOnChange: setNeedsRecalcStyleInAllFrames
defaultValue:
WebKitLegacy:
default: true
WebKit:
default: true
WebCore:
default: true
AcceleratedCompositingForFixedPositionEnabled:
type: bool
defaultValue:
WebKitLegacy:
default: true
WebKit:
PLATFORM(IOS_FAMILY): true
default: false
WebCore:
PLATFORM(IOS_FAMILY): true
default: false
AggressiveTileRetentionEnabled:
type: bool
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: false
WebCore:
default: false
AllowContentSecurityPolicySourceStarToMatchAnyProtocol:
type: bool
defaultValue:
WebKitLegacy:
PLATFORM(IOS_FAMILY): WebKit::defaultAllowContentSecurityPolicySourceStarToMatchAnyProtocol()
default: false
WebKit:
default: false
WebCore:
default: false
AllowCrossOriginSubresourcesToAskForCredentials:
type: bool
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: false
WebCore:
default: false
AllowDisplayOfInsecureContent:
type: bool
defaultValue:
WebKitLegacy:
default: WebKit::defaultAllowDisplayOfInsecureContent()
WebKit:
default: false
WebCore:
default: false
AllowFileAccessFromFileURLs:
type: bool
defaultValue:
WebKitLegacy:
default: true
WebKit:
default: false
WebCore:
default: true
AllowMediaContentTypesRequiringHardwareSupportAsFallback:
type: bool
humanReadableName: "Allow Media Content Types Requirining Hardware As Fallback"
humanReadableDescription: "Allow Media Content Types Requirining Hardware As Fallback"
defaultValue:
WebKitLegacy:
default: true
WebKit:
"PLATFORM(COCOA)": true
default: false
WebCore:
default: false
AllowMultiElementImplicitSubmission:
type: bool
webKitLegacyPreferenceKey: WebKitAllowMultiElementImplicitFormSubmissionPreferenceKey
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: false
WebCore:
default: false
AllowRunningOfInsecureContent:
type: bool
defaultValue:
WebKitLegacy:
default: WebKit::defaultAllowRunningOfInsecureContent()
WebKit:
default: false
WebCore:
default: false
AllowSettingAnyXHRHeaderFromFileURLs:
type: bool
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: false
WebCore:
default: false
AllowTopNavigationToDataURLs:
type: bool
defaultValue:
WebKitLegacy:
default: true
WebKit:
default: false
WebCore:
default: false
AllowUniversalAccessFromFileURLs:
type: bool
defaultValue:
WebKitLegacy:
default: true
WebKit:
default: false
WebCore:
default: true
AllowsAirPlayForMediaPlayback:
type: bool
webKitLegacyPreferenceKey: WebKitMediaPlaybackAllowsAirPlay
condition: ENABLE(WIRELESS_PLAYBACK_TARGET)
defaultValue:
WebKitLegacy:
default: true
WebKit:
default: true
WebCore:
default: true
AllowsInlineMediaPlayback:
type: bool
webKitLegacyPreferenceKey: WebKitMediaPlaybackAllowsInline
defaultValue:
WebKitLegacy:
"PLATFORM(IOS_FAMILY)": WebKit::defaultAllowsInlineMediaPlayback()
default: true
WebKit:
"PLATFORM(IOS_FAMILY)": false
default: true
WebCore:
"PLATFORM(IOS_FAMILY)": false
default: true
AllowsInlineMediaPlaybackAfterFullscreen:
type: bool
defaultValue:
WebKitLegacy:
"PLATFORM(IOS_FAMILY)": WebKit::defaultAllowsInlineMediaPlaybackAfterFullscreen()
default: false
WebKit:
"PLATFORM(IOS_FAMILY)": true
default: false
WebCore:
default: true
AllowsPictureInPictureMediaPlayback:
type: bool
defaultValue:
WebKitLegacy:
"PLATFORM(IOS_FAMILY)": WebKit::defaultAllowsPictureInPictureMediaPlayback()
default: false
WebKit:
"PLATFORM(IOS_FAMILY)": true
default: false
WebCore:
default: true
AlternateFormControlDesignEnabled:
type: bool
condition: PLATFORM(IOS_FAMILY)
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: false
WebCore:
default: false
AlwaysUseAcceleratedOverflowScroll:
type: bool
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: false
WebCore:
default: false
AnimatedImageAsyncDecodingEnabled:
type: bool
defaultValue:
WebKitLegacy:
default: true
WebKit:
default: true
WebCore:
default: true
AppHighlightsEnabled:
type: bool
condition: ENABLE(APP_HIGHLIGHTS)
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: false
WebCore:
default: false
AppleMailPaginationQuirkEnabled:
type: bool
defaultValue:
WebKitLegacy:
default: false
WebKit:
PLATFORM(MAC): WebKit::defaultAppleMailPaginationQuirkEnabled()
default: false
WebCore:
default: false
# FIXME: Is this implemented for WebKitLegacy? If not, this should be excluded from WebKitLegacy entirely (though we should still set the default value to false when initializing settings).
ApplePayCapabilityDisclosureAllowed:
type: bool
condition: ENABLE(APPLE_PAY)
defaultValue:
WebKitLegacy:
default: true
WebKit:
default: true
WebCore:
default: true
# FIXME: Is this implemented for WebKitLegacy? If not, this should be excluded from WebKitLegacy entirely (though we should still set the default value to false when initializing settings).
ApplePayEnabled:
type: bool
condition: ENABLE(APPLE_PAY)
defaultValue:
WebKitLegacy:
"ENABLE(APPLE_PAY_REMOTE_UI)": true
default: false
WebKit:
"ENABLE(APPLE_PAY_REMOTE_UI)": true
default: false
WebCore:
"ENABLE(APPLE_PAY_REMOTE_UI)": true
default: false
ArtificialPluginInitializationDelayEnabled:
type: bool
webcoreBinding: none
exposed: [ WebKit ]
defaultValue:
WebKit:
default: false
AsynchronousPluginInitializationEnabled:
type: bool
webcoreBinding: none
exposed: [ WebKit ]
defaultValue:
WebKit:
default: false
AsynchronousPluginInitializationEnabledForAllPlugins:
type: bool
webcoreBinding: none
exposed: [ WebKit ]
defaultValue:
WebKit:
default: false
AsynchronousSpellCheckingEnabled:
type: bool
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: false
WebCore:
default: false
AttachmentElementEnabled:
type: bool
webcoreBinding: RuntimeEnabledFeatures
condition: ENABLE(ATTACHMENT_ELEMENT)
defaultValue:
WebKitLegacy:
default: WebKit::defaultAttachmentElementEnabled()
WebKit:
default: false
AuthorAndUserStylesEnabled:
type: bool
webKitLegacyPreferenceKey: WebKitAuthorAndUserStylesEnabledPreferenceKey
webcoreOnChange: setNeedsRecalcStyleInAllFrames
inspectorOverride: true
defaultValue:
WebKitLegacy:
default: true
WebKit:
default: true
WebCore:
default: true
BackForwardCacheSupportsPlugins:
type: bool
webKitLegacyPreferenceKey: WebKitPageCacheSupportsPluginsPreferenceKey
defaultValue:
WebKitLegacy:
default: true
WebKit:
default: true
WebCore:
default: false
BackspaceKeyNavigationEnabled:
type: bool
defaultValue:
WebKitLegacy:
"PLATFORM(IOS_FAMILY)": false
default: true
WebKit:
"PLATFORM(IOS_FAMILY)": false
default: true
WebCore:
default: true
# FIXME: This is on by default in WebKit2. Perhaps we should consider turning it on for WebKitLegacy as well.
BeaconAPIEnabled:
type: bool
humanReadableName: "Beacon API"
humanReadableDescription: "Beacon API"
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: true
WebCore:
default: false
CSSTransformStyleOptimized3DEnabled:
type: bool
condition: ENABLE(CSS_TRANSFORM_STYLE_OPTIMIZED_3D)
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: true
WebCore:
default: true
# FIXME: This is not relevent for WebKitLegacy, so should be excluded from WebKitLegacy entirely (though we should still set the default value to false when initializing settings).
CacheAPIEnabled:
type: bool
webcoreBinding: RuntimeEnabledFeatures
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: true
CanvasUsesAcceleratedDrawing:
type: bool
defaultValue:
WebKitLegacy:
"PLATFORM(IOS_FAMILY) && !PLATFORM(IOS_FAMILY_SIMULATOR)": true
default: false
WebKit:
default: true
WebCore:
default: false
CaretBrowsingEnabled:
type: bool
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: false
WebCore:
default: false
ColorFilterEnabled:
type: bool
webcoreOnChange: setNeedsRecalcStyleInAllFrames
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: false
WebCore:
default: false
# FIXME: This needs a more clear name to explain that it is a CSS related preference. (Maybe we need namespacing? CSS.ConstantPropertiesEnabled?)
ConstantPropertiesEnabled:
type: bool
defaultValue:
WebKitLegacy:
default: true
WebKit:
default: true
WebCore:
default: false
ContentChangeObserverEnabled:
type: bool
condition: ENABLE(CONTENT_CHANGE_OBSERVER)
defaultValue:
WebKitLegacy:
default: true
WebKit:
default: true
WebCore:
"PLATFORM(IOS_FAMILY) && !PLATFORM(MACCATALYST)": true
default: false
ContentDispositionAttachmentSandboxEnabled:
comment: 'Some ports (e.g. iOS) might choose to display attachments inline, regardless
of whether the response includes the HTTP header \"Content-Disposition: attachment\".
This setting enables a sandbox around these attachments. The sandbox enforces
all frame sandbox flags (see enum SandboxFlag in SecurityContext.h), and also
disables <meta http-equiv> processing and subframe loading.'
type: bool
defaultValue:
WebKitLegacy:
default: true
WebKit:
PLATFORM(COCOA): true
default: false
WebCore:
default: false
# FIXME: This is handled via WebView SPI rather than WebPreferences for WebKitLegacy. We should change the SPI to lookup the WebPreferences value instead.
CookieEnabled:
type: bool
webKitLegacyBinding: custom
defaultValue:
WebKit:
default: true
WebKitLegacy:
default: true
WebCore:
default: true
CursiveFontFamily:
type: String
webKitLegacyPreferenceKey: WebKitCursiveFont
webcoreImplementation: custom
defaultValue:
WebKitLegacy:
"PLATFORM(IOS_FAMILY)": '"Snell Roundhand"'
default: '"Apple Chancery"'
WebKit:
"PLATFORM(COCOA) && PLATFORM(IOS_FAMILY)": '"Snell Roundhand"'
"PLATFORM(COCOA) && !PLATFORM(IOS_FAMILY)": '"Apple Chancery"'
default: '"Comic Sans MS"'
WebCore:
default: '""'
CustomPasteboardDataEnabled:
type: bool
humanReadableName: "Custom pasteboard data"
humanReadableDescription: "Enable custom clipboard types and better security model for clipboard API."
webcoreBinding: RuntimeEnabledFeatures
defaultValue:
WebKitLegacy:
default: false
WebKit:
"PLATFORM(COCOA) || PLATFORM(GTK) || PLATFORM(WIN)": true
default: false
DNSPrefetchingEnabled:
type: bool
webcoreOnChange: dnsPrefetchingEnabledChanged
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: false
WebCore:
default: false
DOMPasteAllowed:
type: bool
webKitLegacyPreferenceKey: WebKitDOMPasteAllowedPreferenceKey
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: false
WebCore:
default: false
DOMTimersThrottlingEnabled:
type: bool
webKitLegacyPreferenceKey: WebKitDOMTimersThrottlingEnabledPreferenceKey
defaultValue:
WebKitLegacy:
default: true
WebKit:
default: true
WebCore:
default: true
# FIXME: There is no custom binding implemented for WebKitLegacy.
DataDetectorTypes:
type: uint32_t
webcoreBinding: custom
condition: ENABLE(DATA_DETECTION)
defaultValue:
WebKitLegacy:
default: 0
WebKit:
default: 0
DataTransferItemsEnabled:
type: bool
humanReadableName: "Data Transfer Items"
humanReadableDescription: "Enables DataTransferItem in the clipboard API"
defaultValue:
WebKitLegacy:
default: true
WebKit:
"PLATFORM(COCOA) || PLATFORM(GTK) || PLATFORM(WPE)": true
default: false
WebCore:
default: false
DatabasesEnabled:
type: bool
webKitLegacyPreferenceKey: WebKitDatabasesEnabledPreferenceKey
webcoreBinding: custom
defaultValue:
WebKitLegacy:
default: true
WebKit:
default: true
DefaultFixedFontSize:
type: double
webcoreOnChange: setNeedsRecalcStyleInAllFrames
defaultValue:
WebKitLegacy:
default: 13
WebKit:
default: 13
WebCore:
default: 13
DefaultFontSize:
type: double
webcoreOnChange: setNeedsRecalcStyleInAllFrames
defaultValue:
WebKitLegacy:
default: 16
WebKit:
default: 16
WebCore:
default: 16
DefaultTextEncodingName:
type: String
defaultValue:
WebKitLegacy:
default: '"ISO-8859-1"'
WebKit:
default: WebCore::defaultTextEncodingNameForSystemLanguage()
WebCore:
default: '{ }'
DeferredCSSParserEnabled:
type: bool
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: false
WebCore:
default: false
DeviceHeight:
type: uint32_t
defaultValue:
WebKitLegacy:
default: 0
WebKit:
default: 0
WebCore:
default: 0
DeviceOrientationEventEnabled:
type: bool
condition: ENABLE(DEVICE_ORIENTATION)
defaultValue:
WebKitLegacy:
default: true
WebKit:
default: true
WebCore:
default: true
DeviceOrientationPermissionAPIEnabled:
type: bool
condition: ENABLE(DEVICE_ORIENTATION)
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: false
WebCore:
default: false
DeviceWidth:
type: uint32_t
defaultValue:
WebKitLegacy:
default: 0
WebKit:
default: 0
WebCore:
default: 0
DiagnosticLoggingEnabled:
type: bool
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: false
WebCore:
default: false
DirectoryUploadEnabled:
type: bool
humanReadableName: "Directory Upload"
humanReadableDescription: "input.webkitdirectory / dataTransferItem.webkitGetAsEntry()"
webcoreBinding: RuntimeEnabledFeatures
defaultValue:
WebKitLegacy:
default: false
WebKit:
"PLATFORM(COCOA) || PLATFORM(GTK) || PLATFORM(WPE)": true
default: false
DisabledAdaptationsMetaTagEnabled:
type: bool
defaultValue:
WebKitLegacy:
default: false
WebKit:
"PLATFORM(WATCHOS)": true
default: false
WebCore:
default: false
# FIXME: This is on by default in WebKit2. Perhaps we should consider turning it on for WebKitLegacy as well.
DownloadAttributeEnabled:
type: bool
condition: ENABLE(DOWNLOAD_ATTRIBUTE)
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: true
WebCore:
default: false
EditableLinkBehavior:
type: uint32_t
webcoreBinding: custom
defaultValue:
WebKitLegacy:
default: WebKitEditableLinkDefaultBehavior
WebKit:
default: WebCore::EditableLinkBehavior::NeverLive
EnableInheritURIQueryComponent:
type: bool
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: false
WebCore:
default: false
EncryptedMediaAPIEnabled:
type: bool
condition: ENABLE(ENCRYPTED_MEDIA)
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: true
WebCore:
default: false
EnumeratingAllNetworkInterfacesEnabled:
type: bool
webcoreBinding: none
exposed: [ WebKit ]
defaultValue:
WebKit:
default: false
ExtensibleSSOEnabled:
type: bool
getter: isExtensibleSSOEnabled
webcoreBinding: none
condition: HAVE(APP_SSO)
exposed: [ WebKit ]
defaultValue:
WebKit:
default: true
FTPDirectoryTemplatePath:
type: String
defaultValue:
WebKitLegacy:
default: '""'
WebKit:
default: '""'
WebCore:
default: '""'
FantasyFontFamily:
type: String
webKitLegacyPreferenceKey: WebKitFantasyFont
webcoreImplementation: custom
defaultValue:
WebKitLegacy:
default: '"Papyrus"'
WebKit:
"PLATFORM(COCOA)": '"Papyrus"'
default: '"Impact"'
WebCore:
default: '""'
FixedFontFamily:
type: String
webKitLegacyPreferenceKey: WebKitFixedFont
webcoreImplementation: custom
defaultValue:
WebKitLegacy:
default: '"Courier"'
WebKit:
"PLATFORM(COCOA)": '"Courier"'
default: '"Courier New"'
WebCore:
default: '""'
ForceCompositingMode:
type: bool
webcoreBinding: none
exposed: [ WebKit ]
defaultValue:
WebKit:
default: false
ForceFTPDirectoryListings:
type: bool
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: false
WebCore:
default: false
ForceWebGLUsesLowPower:
type: bool
defaultValue:
WebKitLegacy:
default: true
WebKit:
default: false
WebCore:
default: false
# FIXME: We should make autogeneration smart enough to deal with enums to avoid explicitly casting in this file and custom binding to WebCore.
# FIXME: This should be reconciled with 'FrameFlatteningEnabled' in WebPreferencesInternal.yaml.
FrameFlattening:
type: uint32_t
webcoreBinding: custom
exposed: [ WebKitLegacy ]
defaultValue:
WebKitLegacy:
"PLATFORM(IOS_FAMILY)": static_cast<uint32_t>(FrameFlattening::FullyEnabled)
default: static_cast<uint32_t>(FrameFlattening::Disabled)
GStreamerEnabled:
type: bool
getter: isGStreamerEnabled
webcoreBinding: DeprecatedGlobalSettings
condition: USE(GSTREAMER)
exposed: [ WebKit ]
defaultValue:
WebKit:
default: true
GamepadsEnabled:
type: bool
humanReadableName: "Gamepads"
humanReadableDescription: "Web Gamepad API support"
condition: ENABLE(GAMEPAD)
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: true
WebCore:
default: false
HTTPEquivEnabled:
type: bool
webcoreName: httpEquivEnabled
defaultValue:
WebKitLegacy:
default: true
WebKit:
default: true
WebCore:
default: true
HiddenPageCSSAnimationSuspensionEnabled:
type: bool
webcoreOnChange: hiddenPageCSSAnimationSuspensionEnabledChanged
defaultValue:
WebKitLegacy:
default: true
WebKit:
"PLATFORM(COCOA) || PLATFORM(GTK)": true
default: false
WebCore:
default: false
HiddenPageDOMTimerThrottlingAutoIncreases:
type: bool
webcoreOnChange: hiddenPageDOMTimerThrottlingStateChanged
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: false
WebCore:
default: false
HiddenPageDOMTimerThrottlingEnabled:
type: bool
webcoreOnChange: hiddenPageDOMTimerThrottlingStateChanged
defaultValue:
WebKitLegacy:
default: false
WebKit:
"PLATFORM(COCOA) || PLATFORM(GTK)": true
default: false
WebCore:
default: false
HyperlinkAuditingEnabled:
type: bool
defaultValue:
WebKitLegacy:
default: true
WebKit:
default: true
WebCore:
default: false
InactiveMediaCaptureSteamRepromptIntervalInMinutes:
type: double
webcoreBinding: none
exposed: [ WebKit ]
defaultValue:
WebKit:
"PLATFORM(IOS_FAMILY)": 1
default: 10
IncompleteImageBorderEnabled:
type: bool
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: false
WebCore:
default: false
IncrementalRenderingSuppressionTimeout:
type: double
webKitLegacyPreferenceKey: WebKitIncrementalRenderingSuppressionTimeoutInSeconds
webcoreName: incrementalRenderingSuppressionTimeoutInSeconds
defaultValue:
WebKitLegacy:
default: 5
WebKit:
default: 5
WebCore:
default: 5
InlineMediaPlaybackRequiresPlaysInlineAttribute:
type: bool
defaultValue:
WebKitLegacy:
"PLATFORM(IOS_FAMILY)": WebKit::defaultInlineMediaPlaybackRequiresPlaysInlineAttribute()
default: false
WebKit:
"PLATFORM(IOS_FAMILY)": true
default: false
WebCore:
"PLATFORM(IOS_FAMILY)": true
default: false
InputEventsEnabled:
type: bool
humanReadableName: "Input Events"
humanReadableDescription: "Enable InputEvents support"
defaultValue:
WebKitLegacy:
default: true
WebKit:
default: true
WebCore:
default: true
InspectorAdditionsEnabled:
type: bool
humanReadableName: "Web Inspector Additions"
humanReadableDescription: "Enable additional page APIs used by the Web Inspector frontend page"
webcoreBinding: RuntimeEnabledFeatures
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: false
InspectorAttachedHeight:
type: uint32_t
webcoreBinding: none
exposed: [ WebKit ]
defaultValue:
WebKit:
default: 500
InspectorAttachedWidth:
type: uint32_t
webcoreBinding: none
exposed: [ WebKit ]
defaultValue:
WebKit:
default: 750
InspectorAttachmentSide:
type: uint32_t
webcoreBinding: none
exposed: [ WebKit ]
defaultValue:
WebKit:
default: 0
InspectorStartsAttached:
type: bool
webcoreBinding: none
exposed: [ WebKit ]
defaultValue:
WebKit:
default: true
InspectorWindowFrame:
type: String
webcoreBinding: none
exposed: [ WebKit ]
defaultValue:
WebKit:
default: '""'
# FIXME: This is handled via WebView SPI rather than WebPreferences for WebKitLegacy. We should change the SPI to lookup the WebPreferences value instead.
InteractiveFormValidationEnabled:
type: bool
humanReadableName: "HTML Interactive Form Validation"
humanReadableDescription: "HTML interactive form validation"
webKitLegacyBinding: custom
defaultValue:
WebKit:
default: true
WebKitLegacy:
default: false
WebCore:
default: false
# FIXME: Is this implemented for WebKitLegacy? If not, this should be excluded from WebKitLegacy entirely (though we should still set the default value to false when initializing settings).
InterruptAudioOnPageVisibilityChangeEnabled:
type: bool
condition: ENABLE(MEDIA_STREAM)
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: WebCore::RealtimeMediaSourceCenter::shouldInterruptAudioOnPageVisibilityChange()
WebCore:
default: false
InvisibleAutoplayNotPermitted:
type: bool
webKitLegacyPreferenceKey: InvisibleAutoplayNotPermitted
defaultValue:
WebKitLegacy:
default: false
WebKit:
"PLATFORM(IOS_FAMILY)": true
default: false
WebCore:
default: false
IsAccessibilityIsolatedTreeEnabled:
type: bool
humanReadableName: "Isolated Accessibility Tree Mode"
humanReadableDescription: "Enable an accessibility hierarchy for VoiceOver that can be accessed on a secondary thread for improved performance"
webcoreBinding: RuntimeEnabledFeatures
condition: ENABLE(ACCESSIBILITY_ISOLATED_TREE)
defaultValue:
WebKitLegacy:
default: false
WebKit:
"USE(ATSPI)": true
default: false
WebCore:
default: false
# FIXME: This is not relevent for WebKitLegacy, so should be excluded from WebKitLegacy entirely (though we should still set the default value to false when initializing settings).
ItpDebugModeEnabled:
type: bool
humanReadableName: "ITP Debug Mode"
humanReadableDescription: "Intelligent Tracking Prevention Debug Mode"
webcoreBinding: RuntimeEnabledFeatures
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: false
JavaEnabled:
type: bool
webcoreGetter: isJavaEnabled
defaultValue:
WebKitLegacy:
"PLATFORM(IOS_FAMILY)": false
default: true
WebKit:
default: false
WebCore:
default: false
JavaEnabledForLocalFiles:
type: bool
webcoreGetter: isJavaEnabledForLocalFiles
defaultValue:
WebKitLegacy:
default: true
WebKit:
default: false
WebCore:
default: true
JavaScriptCanAccessClipboard:
type: bool
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: false
WebCore:
default: false
JavaScriptCanOpenWindowsAutomatically:
type: bool
defaultValue:
WebKitLegacy:
"PLATFORM(IOS_FAMILY)": WebKit::defaultJavaScriptCanOpenWindowsAutomatically()
default: true
WebKit:
"PLATFORM(IOS_FAMILY)": false
default: true
WebCore:
default: false
JavaScriptEnabled:
type: bool
inspectorOverride: true
webcoreGetter: isScriptEnabled
webcoreName: scriptEnabled
defaultValue:
WebKitLegacy:
default: true
WebKit:
default: true
WebCore:
default: false
# NOTE: Clients should use per-navigation "allowsContentJavaScript" policies instead
JavaScriptMarkupEnabled:
type: bool
webcoreName: scriptMarkupEnabled
defaultValue:
WebKitLegacy:
default: true
WebKit:
default: true
WebCore:
default: true
JavaScriptRuntimeFlags:
type: uint32_t
webKitLegacyPreferenceKey: WebKitJavaScriptRuntimeFlagsPreferenceKey
webcoreBinding: custom
defaultValue:
WebKitLegacy:
default: 0
WebKit:
default: 0
LargeImageAsyncDecodingEnabled:
type: bool
defaultValue:
WebKitLegacy:
default: true
WebKit:
default: true
WebCore:
default: true
LayoutFallbackWidth:
type: uint32_t
defaultValue:
WebKitLegacy:
default: 980
WebKit:
default: 980
WebCore:
default: 980
LayoutViewportHeightExpansionFactor:
type: double
webcoreOnChange: setNeedsRecalcStyleInAllFrames
defaultValue:
WebKitLegacy:
default: 0
WebKit:
"PLATFORM(WATCHOS)": 1
default: 0
WebCore:
default: 0
LegacyEncryptedMediaAPIEnabled:
type: bool
humanReadableName: "Enable Legacy EME API"
humanReadableDescription: "Enable legacy EME API"
condition: ENABLE(LEGACY_ENCRYPTED_MEDIA)
defaultValue:
WebKitLegacy:
default: true
WebKit:
default: true
WebCore:
default: true
LinkPreconnect:
type: bool
webcoreName: linkPreconnectEnabled
defaultValue:
WebKitLegacy:
default: false
WebKit:
"ENABLE(SERVER_PRECONNECT)": true
default: false
WebCore:
default: false
LinkPreloadEnabled:
type: bool
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: true
WebCore:
default: true
LoadDeferringEnabled:
type: bool
defaultValue:
WebKitLegacy:
PLATFORM(MAC): WebKit::defaultLoadDeferringEnabled()
default: true
WebKit:
default: true
WebCore:
default: true
# This only suppresses the network load of the image URL. A cached image will still be rendered if requested.
LoadsImagesAutomatically:
type: bool
webcoreOnChange: imagesEnabledChanged
webKitLegacyPreferenceKey: WebKitDisplayImagesKey
defaultValue:
WebKitLegacy:
default: true
WebKit:
default: true
WebCore:
default: false
# This preference only affects site icon image loading if the LoadsImagesAutomatically preference is false and
# this preference is true. All other permutations still heed LoadsImagesAutomatically preference.
LoadsSiteIconsIgnoringImageLoadingPreference:
type: bool
webKitLegacyPreferenceKey: WebKitLoadSiteIconsKey
webcoreName: loadsSiteIconsIgnoringImageLoadingSetting
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: false
WebCore:
default: false
LocalFileContentSniffingEnabled:
type: bool
webKitLegacyPreferenceKey: WebKitLocalFileContentSniffingEnabledPreferenceKey
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: false
WebCore:
default: false
LocalStorageEnabled:
type: bool
webKitLegacyPreferenceKey: WebKitLocalStorageEnabledPreferenceKey
defaultValue:
WebKitLegacy:
default: true
WebKit:
default: true
WebCore:
default: false
LongRunningMediaCaptureStreamRepromptIntervalInHours:
type: double
webcoreBinding: none
exposed: [ WebKit ]
defaultValue:
WebKit:
default: 24
LowPowerVideoAudioBufferSizeEnabled:
type: bool
webcoreBinding: DeprecatedGlobalSettings
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: true
MainContentUserGestureOverrideEnabled:
type: bool
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: false
WebCore:
default: false
MaxParseDuration:
type: double
webKitLegacyPreferenceKey: WebKitMaxParseDurationPreferenceKey
defaultValue:
WebKitLegacy:
default: -1
WebKit:
default: -1
WebCore:
default: -1
MediaCapabilitiesEnabled:
type: bool
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: true
WebCore:
default: false
MediaContentTypesRequiringHardwareSupport:
type: String
webcoreExcludeFromInternalSettings: true
webcoreImplementation: custom
defaultValue:
WebKitLegacy:
default: '""'
WebKit:
default: '""'
WebCore:
default: '""'
MediaControlsContextMenusEnabled:
type: bool
condition: ENABLE(MEDIA_CONTROLS_CONTEXT_MENUS)
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: true
WebCore:
default: false
MediaControlsScaleWithPageZoom:
type: bool
defaultValue:
WebKitLegacy:
"PLATFORM(IOS_FAMILY)": false
default: true
WebKit:
"PLATFORM(IOS_FAMILY)": false
default: true
WebCore:
default: true
MediaDataLoadsAutomatically:
type: bool
defaultValue:
WebKitLegacy:
"PLATFORM(IOS_FAMILY)": false
default: true
WebKit:
"PLATFORM(IOS_FAMILY)": false
default: true
WebCore:
"PLATFORM(IOS_FAMILY)": false
default: true
# FIXME: Is this implemented for WebKitLegacy? If not, this should be excluded from WebKitLegacy entirely (though we should still set the default value to false when initializing settings).
MediaDevicesEnabled:
type: bool
condition: ENABLE(MEDIA_STREAM)
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: false
WebCore:
default: false
MediaEnabled:
type: bool
condition: ENABLE(VIDEO)
defaultValue:
WebKitLegacy:
default: true
WebKit:
default: true
WebCore:
default: true
MediaPreloadingEnabled:
type: bool
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: false
WebCore:
default: false
MediaSourceEnabled:
type: bool
defaultValue:
WebKitLegacy:
"ENABLE(MEDIA_SOURCE) && PLATFORM(IOS_FAMILY)": WebKit::defaultMediaSourceEnabled()
"ENABLE(MEDIA_SOURCE) && !PLATFORM(IOS_FAMILY)": true
default: false
WebKit:
"ENABLE(MEDIA_SOURCE) && PLATFORM(IOS_FAMILY)": WebKit::defaultMediaSourceEnabled()
"ENABLE(MEDIA_SOURCE) && !PLATFORM(IOS_FAMILY)": true
default: false
WebCore:
"ENABLE(MEDIA_SOURCE)": true
default: false
# FIXME: Is this implemented for WebKitLegacy? If not, this should be excluded from WebKitLegacy entirely (though we should still set the default value to false when initializing settings).
# FIXME: Seems to be unused. Remove once verified.
MediaStreamEnabled:
type: bool
condition: ENABLE(MEDIA_STREAM)
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: true
WebCore:
default: true
MediaUserGestureInheritsFromDocument:
type: bool
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: false
WebCore:
default: false
MenuItemElementEnabled:
type: bool
webcoreBinding: RuntimeEnabledFeatures
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: false
MinimumFontSize:
type: double
webcoreOnChange: setNeedsRecalcStyleInAllFrames
defaultValue:
WebKitLegacy:
default: 0
WebKit:
default: 0
WebCore:
default: 0
MinimumLogicalFontSize:
type: double
webcoreOnChange: setNeedsRecalcStyleInAllFrames
defaultValue:
WebKitLegacy:
default: 9
WebKit:
default: 9
WebCore:
default: 0
MinimumZoomFontSize:
type: double
webKitLegacyPreferenceKey: WebKitMinimumZoomFontSizePreferenceKey
condition: ENABLE(TEXT_AUTOSIZING)
defaultValue:
WebKitLegacy:
default: 15
WebKit:
"PLATFORM(WATCHOS)": 30
default: 15
WebCore:
"PLATFORM(WATCHOS)": 30
default: 15
MockCaptureDevicesPromptEnabled:
type: bool
webcoreBinding: none
exposed: [ WebKit ]
defaultValue:
WebKit:
default: true
MockScrollAnimatorEnabled:
type: bool
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: false
WebCore:
default: false
MockScrollbarsEnabled:
type: bool
webcoreBinding: DeprecatedGlobalSettings
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: false
NeedsAdobeFrameReloadingQuirk:
comment: 'FIXME: This quirk is needed because of Radar 4674537 and 5211271. We need
to phase it out once Adobe can fix the bug from their end.'
type: bool
webcoreGetter: needsAcrobatFrameReloadingQuirk
defaultValue:
WebKitLegacy:
PLATFORM(MAC): WebKit::defaultNeedsAdobeFrameReloadingQuirk()
default: false
WebKit:
default: false
WebCore:
default: false
NeedsFrameNameFallbackToIdQuirk:
type: bool
defaultValue:
WebKitLegacy:
PLATFORM(MAC): WebKit::defaultNeedsFrameNameFallbackToIdQuirk()
default: false
WebKit:
default: false
WebCore:
default: false
NeedsKeyboardEventDisambiguationQuirks:
comment: This is a quirk we are pro-actively applying to old applications. It changes
keyboard event dispatching, making keyIdentifier available on keypress events,
making charCode available on keydown/keyup events, and getting keypress dispatched
in more cases.
type: bool
defaultValue:
WebKitLegacy:
PLATFORM(MAC): WebKit::defaultNeedsKeyboardEventDisambiguationQuirks()
default: false
WebKit:
default: false
WebCore:
default: false
NeedsSiteSpecificQuirks:
type: bool
webKitLegacyPreferenceKey: WebKitUseSiteSpecificSpoofing
inspectorOverride: true
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: true
WebCore:
default: false
NeedsStorageAccessFromFileURLsQuirk:
type: bool
defaultValue:
WebKitLegacy:
default: true
WebKit:
default: true
WebCore:
default: true
NotificationsEnabled:
type: bool
condition: ENABLE(NOTIFICATIONS)
defaultValue:
WebKitLegacy:
default: true
WebKit:
default: true
WebCore:
default: true
OfflineWebApplicationCacheEnabled:
type: bool
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: WebKit::defaultOfflineWebApplicationCacheEnabled()
WebCore:
default: false
PDFPluginEnabled:
type: bool
webcoreBinding: none
condition: PLATFORM(COCOA)
exposed: [ WebKit ]
defaultValue:
WebKit:
default: true
PageVisibilityBasedProcessSuppressionEnabled:
type: bool
webcoreBinding: none
exposed: [ WebKit ]
defaultValue:
WebKit:
default: true
PaginateDuringLayoutEnabled:
type: bool
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: false
WebCore:
default: false
PassiveTouchListenersAsDefaultOnDocument:
type: bool
defaultValue:
WebKitLegacy:
"PLATFORM(IOS_FAMILY)": WebKit::defaultPassiveTouchListenersAsDefaultOnDocument()
default: true
WebKit:
"PLATFORM(IOS_FAMILY)": WebKit::defaultPassiveTouchListenersAsDefaultOnDocument()
default: true
WebCore:
default: true
PasswordEchoDuration:
type: double
webKitLegacyPreferenceKey: WebKitPasswordEchoDurationPreferenceKey
webcoreName: passwordEchoDurationInSeconds
defaultValue:
WebKitLegacy:
"PLATFORM(IOS_FAMILY)": 2
default: 1
WebKit:
default: 2
WebCore:
default: 1
PasswordEchoEnabled:
type: bool
webKitLegacyPreferenceKey: WebKitEnablePasswordEchoPreferenceKey
defaultValue:
WebKitLegacy:
"PLATFORM(IOS_FAMILY)": true
default: false
WebKit:
"PLATFORM(IOS_FAMILY) && !PLATFORM(MACCATALYST)": true
default: false
WebCore:
default: false
PeerConnectionEnabled:
type: bool
condition: ENABLE(WEB_RTC)
defaultValue:
WebKitLegacy:
default: true
WebKit:
default: WebCore::LibWebRTCProvider::webRTCAvailable()
WebCore:
default: true
PictographFontFamily:
type: String
webKitLegacyPreferenceKey: WebKitPictographFont
webcoreImplementation: custom
defaultValue:
WebKitLegacy:
"PLATFORM(IOS_FAMILY)": '"AppleColorEmoji"'
default: '"Apple Color Emoji"'
WebKit:
"PLATFORM(COCOA) && PLATFORM(IOS_FAMILY)": '"AppleColorEmoji"'
"PLATFORM(COCOA) && !PLATFORM(IOS_FAMILY)": '"Apple Color Emoji"'
default: '"Times"'
WebCore:
default: '""'
PictureInPictureAPIEnabled:
type: bool
condition: ENABLE(PICTURE_IN_PICTURE_API)
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: true
WebCore:
default: true
PitchCorrectionAlgorithm:
type: uint32_t
webcoreBinding: custom
defaultValue:
WebKitLegacy:
"PLATFORM(COCOA)": static_cast<uint32_t>(WebCore::MediaPlayerEnums::PitchCorrectionAlgorithm::BestForSpeech)
default: static_cast<uint32_t>(WebCore::MediaPlayerEnums::PitchCorrectionAlgorithm::BestAllAround)
WebKit:
"PLATFORM(COCOA)": static_cast<uint32_t>(WebCore::MediaPlayerEnums::PitchCorrectionAlgorithm::BestForSpeech)
default: static_cast<uint32_t>(WebCore::MediaPlayerEnums::PitchCorrectionAlgorithm::BestAllAround)
PluginsEnabled:
type: bool
webcoreGetter: arePluginsEnabled
webcoreOnChange: pluginsEnabledChanged
defaultValue:
WebKitLegacy:
default: true
WebKit:
default: false
WebCore:
default: false
PrivateClickMeasurementEnabled:
type: bool
humanReadableName: "Private Click Measurement"
humanReadableDescription: "Enable Private Click Measurement for Cross-Site Link Navigations"
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: true
WebCore:
default: true
PunchOutWhiteBackgroundsInDarkMode:
type: bool
webcoreOnChange: setNeedsRecalcStyleInAllFrames
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: false
WebCore:
default: false
RequestAnimationFrameEnabled:
type: bool
defaultValue:
WebKitLegacy:
default: true
WebKit:
default: true
WebCore:
default: true
RequiresPageVisibilityToPlayAudio:
type: bool
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: false
WebCore:
default: false
RequiresUserGestureForAudioPlayback:
type: bool
webKitLegacyPreferenceKey: WebKitAudioPlaybackRequiresUserGesture
webcoreBinding: custom
defaultValue:
WebKitLegacy:
default: false
WebKit:
"PLATFORM(IOS_FAMILY)": true
default: false
RequiresUserGestureForMediaPlayback:
type: bool
webKitLegacyPreferenceKey: WebKitMediaPlaybackRequiresUserGesture
webcoreBinding: custom
defaultValue:
WebKitLegacy:
"PLATFORM(IOS_FAMILY)": true
default: false
WebKit:
default: false
RequiresUserGestureForVideoPlayback:
type: bool
webKitLegacyPreferenceKey: WebKitVideoPlaybackRequiresUserGesture
webcoreBinding: custom
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: false
RequiresUserGestureToLoadVideo:
type: bool
defaultValue:
WebKitLegacy:
"PLATFORM(IOS_FAMILY)": WebKit::defaultRequiresUserGestureToLoadVideo()
default: false
WebKit:
default: false
WebCore:
"PLATFORM(IOS_FAMILY)": true
default: false
RubberBandingForSubScrollableRegionsEnabled:
type: bool
condition: HAVE(RUBBER_BANDING)
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: true
WebCore:
default: true
SafeBrowsingEnabled:
type: bool
webcoreBinding: none
exposed: [ WebKit ]
defaultValue:
WebKit:
default: true
SampledPageTopColorMaxDifference:
type: double
defaultValue:
WebKitLegacy:
default: 0
WebKit:
default: 0
WebCore:
default: 0
SampledPageTopColorMinHeight:
type: double
defaultValue:
WebKitLegacy:
default: 0
WebKit:
default: 0
WebCore:
default: 0
SansSerifFontFamily:
type: String
webKitLegacyPreferenceKey: WebKitSansSerifFont
webcoreImplementation: custom
defaultValue:
WebKitLegacy:
default: '"Helvetica"'
WebKit:
default: '"Helvetica"'
WebCore:
default: '""'
ScrollAnimatorEnabled:
type: bool
defaultValue:
WebKitLegacy:
"PLATFORM(MAC)": true
default: false
WebKit:
"PLATFORM(MAC)": true
default: false
WebCore:
"PLATFORM(MAC)": true
default: false
# FIXME: This is handled via WebView SPI rather than WebPreferences for WebKitLegacy. We should change the SPI to lookup the WebPreferences value instead.
SelectTrailingWhitespaceEnabled:
type: bool
webKitLegacyBinding: custom
defaultValue:
WebKit:
default: false
WebKitLegacy:
default: false
WebCore:
default: false
SelectionPaintingWithoutSelectionGapsEnabled:
type: bool
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: false
WebCore:
default: false
SerifFontFamily:
type: String
webKitLegacyPreferenceKey: WebKitSerifFont
webcoreImplementation: custom
defaultValue:
WebKitLegacy:
default: '"Times"'
WebKit:
default: '"Times"'
WebCore:
default: '""'
ServiceControlsEnabled:
type: bool
condition: ENABLE(SERVICE_CONTROLS)
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: false
WebCore:
default: false
ServiceWorkerEntitlementDisabledForTesting:
type: bool
webcoreBinding: none
exposed: [ WebKit ]
defaultValue:
WebKit:
default: false
ShouldAllowUserInstalledFonts:
type: bool
webcoreOnChange: setNeedsRecalcStyleInAllFrames
defaultValue:
WebKitLegacy:
default: true
WebKit:
default: true
WebCore:
default: true
ShouldConvertInvalidURLsToBlank:
type: bool
defaultValue:
WebKitLegacy:
default: WebKit::defaultShouldConvertInvalidURLsToBlank()
WebKit:
default: true
WebCore:
default: true
ShouldConvertPositionStyleOnCopy:
type: bool
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: false
WebCore:
default: false
ShouldDecidePolicyBeforeLoadingQuickLookPreview:
type: bool
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: false
WebCore:
default: false
ShouldDisplayCaptions:
type: bool
condition: ENABLE(VIDEO)
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: false
WebCore:
default: false
ShouldDisplaySubtitles:
type: bool
condition: ENABLE(VIDEO)
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: false
WebCore:
default: false
ShouldDisplayTextDescriptions:
type: bool
condition: ENABLE(VIDEO)
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: false
WebCore:
default: false
ShouldEnableTextAutosizingBoost:
type: bool
webcoreOnChange: shouldEnableTextAutosizingBoostChanged
condition: ENABLE(TEXT_AUTOSIZING)
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: false
WebCore:
default: false
# FIXME: Is this implemented for WebKitLegacy? If not, this should be excluded from WebKitLegacy entirely (though we should still set the default value to false when initializing settings).
ShouldIgnoreMetaViewport:
type: bool
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: false
WebCore:
default: false
ShouldPrintBackgrounds:
type: bool
webKitLegacyPreferenceKey: WebKitShouldPrintBackgroundsPreferenceKey
defaultValue:
WebKitLegacy:
"PLATFORM(IOS_FAMILY)": true
default: false
WebKit:
"PLATFORM(IOS_FAMILY)": true
default: false
WebCore:
default: false
ShouldRespectImageOrientation:
type: bool
defaultValue:
WebKitLegacy:
"PLATFORM(IOS_FAMILY)": true
default: false
WebKit:
"PLATFORM(IOS_FAMILY)": true
default: false
WebCore:
"PLATFORM(IOS_FAMILY)": true
default: false
ShouldRestrictBaseURLSchemes:
type: bool
defaultValue:
WebKitLegacy:
default: WebKit::defaultShouldRestrictBaseURLSchemes()
WebKit:
default: false
WebCore:
default: true
ShouldSuppressTextInputFromEditingDuringProvisionalNavigation:
type: bool
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: false
WebCore:
default: false
# FIXME: This is not relevent for WebKitLegacy, so should be excluded from WebKitLegacy entirely (though we should still set the default value to false when initializing settings).
# FIXME: This is not used in WebCore, so should not have a binding to WebCore::Settings.
ShouldUseServiceWorkerShortTimeout:
type: bool
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: false
WebCore:
default: false
ShowsToolTipOverTruncatedText:
type: bool
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: false
WebCore:
default: false
ShowsURLsInToolTipsEnabled:
type: bool
webKitLegacyPreferenceKey: WebKitShowsURLsInToolTips
webcoreName: showsURLsInToolTips
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: false
WebCore:
default: false
ShrinksStandaloneImagesToFit:
type: bool
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: true
WebCore:
default: true
# FIXME: This is handled via WebView SPI rather than WebPreferences for WebKitLegacy. We should change the SPI to lookup the WebPreferences value instead.
SmartInsertDeleteEnabled:
type: bool
webKitLegacyBinding: custom
defaultValue:
WebKit:
default: true
WebKitLegacy:
default: true
WebCore:
default: true
SourceBufferChangeTypeEnabled:
type: bool
condition: ENABLE(MEDIA_SOURCE)
defaultValue:
WebKitLegacy:
default: true
WebKit:
default: true
WebCore:
default: true
SpatialNavigationEnabled:
type: bool
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: false
WebCore:
default: false
Standalone:
type: bool
webKitLegacyPreferenceKey: WebKitStandalonePreferenceKey
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: false
WebCore:
default: false
StandardFontFamily:
type: String
webKitLegacyPreferenceKey: WebKitStandardFont
webcoreImplementation: custom
defaultValue:
WebKitLegacy:
default: '"Times"'
WebKit:
"PLATFORM(WATCHOS)": '"system-ui"'
default: '"Times"'
WebCore:
default: '""'
StorageAccessAPIEnabled:
type: bool
defaultValue:
WebKitLegacy:
default: true
WebKit:
default: true
WebCore:
default: true
StorageBlockingPolicy:
type: uint32_t
webcoreOnChange: storageBlockingPolicyChanged
webcoreBinding: custom
defaultValue:
WebKitLegacy:
default: WebAllowAllStorage
WebKit:
default: WebCore::StorageBlockingPolicy::BlockThirdParty
SubresourceIntegrityEnabled:
type: bool
defaultValue:
WebKitLegacy:
default: true
WebKit:
default: true
WebCore:
default: true
SuppressesIncrementalRendering:
type: bool
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: false
WebCore:
default: false
# FIXME: There is no custom binding implemented for WebKitLegacy.
SystemLayoutDirection:
type: uint32_t
webcoreBinding: custom
defaultValue:
WebKitLegacy:
default: 0
WebKit:
default: 0
# FIXME: Is this implemented for WebKitLegacy? If not, this should be excluded from WebKitLegacy entirely (though we should still set the default value to false when initializing settings).
SystemPreviewEnabled:
type: bool
condition: USE(SYSTEM_PREVIEW)
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: false
WebCore:
default: false
TabsToLinks:
type: bool
webKitLegacyPreferenceKey: WebKitTabToLinksPreferenceKey
webcoreBinding: none
defaultValue:
WebKitLegacy:
default: false
WebKit:
"PLATFORM(GTK)": true
default: false
TelephoneNumberParsingEnabled:
type: bool
webKitLegacyPreferenceKey: WebKitTelephoneParsingEnabledPreferenceKey
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: false
WebCore:
default: false
TemporaryTileCohortRetentionEnabled:
type: bool
defaultValue:
WebKitLegacy:
default: true
WebKit:
"PLATFORM(IOS_FAMILY)": false
default: true
WebCore:
default: true
TextAreasAreResizable:
type: bool
webcoreOnChange: setNeedsRecalcStyleInAllFrames
defaultValue:
WebKitLegacy:
default: false
WebKit:
"PLATFORM(IOS_FAMILY)": false
default: true
WebCore:
default: false
TextAutosizingEnabled:
type: bool
webcoreOnChange: setNeedsRecalcStyleInAllFrames
condition: ENABLE(TEXT_AUTOSIZING)
defaultValue:
WebKitLegacy:
"PLATFORM(IOS_FAMILY)": true
default: false
WebKit:
"PLATFORM(IOS_FAMILY)": true
default: false
WebCore:
"PLATFORM(IOS_FAMILY)": true
default: false
TextInteractionEnabled:
type: bool
defaultValue:
WebKitLegacy:
"PLATFORM(WATCHOS)": false
default: true
WebKit:
"PLATFORM(WATCHOS)": false
default: true
WebCore:
"PLATFORM(WATCHOS)": false
default: true
ThreadedScrollingEnabled:
type: bool
webcoreBinding: none
exposed: [ WebKit ]
defaultValue:
WebKit:
default: true
TreatsAnyTextCSSLinkAsStylesheet:
type: bool
defaultValue:
WebKitLegacy:
PLATFORM(MAC): WebKit::defaultTreatsAnyTextCSSLinkAsStylesheet()
default: false
WebKit:
default: false
WebCore:
default: false
UseGiantTiles:
type: bool
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: false
WebCore:
default: false
UseImageDocumentForSubframePDF:
type: bool
defaultValue:
WebKitLegacy:
PLATFORM(IOS_FAMILY): true
default: false
WebKit:
PLATFORM(IOS_FAMILY): true
default: false
WebCore:
PLATFORM(IOS_FAMILY): true
default: false
UseLegacyBackgroundSizeShorthandBehavior:
type: bool
defaultValue:
WebKitLegacy:
default: WebKit::defaultUseLegacyBackgroundSizeShorthandBehavior()
WebKit:
default: false
WebCore:
default: false
UseLegacyTextAlignPositionedElementBehavior:
type: bool
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: false
WebCore:
default: false
UsePreHTML5ParserQuirks:
type: bool
defaultValue:
WebKitLegacy:
PLATFORM(MAC): WebKit::defaultUsePreHTML5ParserQuirks()
default: false
WebKit:
default: false
WebCore:
default: false
# FIXME: There is no custom binding implemented for WebKitLegacy.
UserInterfaceDirectionPolicy:
type: uint32_t
webcoreBinding: custom
defaultValue:
WebKitLegacy:
default: 0
WebKit:
default: 0
UsesBackForwardCache:
type: bool
webcoreOnChange: usesBackForwardCacheChanged
webcoreExcludeFromInternalSettings: true
webKitLegacyPreferenceKey: WebKitUsesPageCachePreferenceKey
defaultValue:
WebKitLegacy:
default: true
WebKit:
default: true
WebCore:
default: true
UsesEncodingDetector:
type: bool
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: false
WebCore:
default: false
VideoQualityIncludesDisplayCompositingEnabled:
type: bool
condition: ENABLE(VIDEO)
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: false
WebCore:
default: false
ViewGestureDebuggingEnabled:
type: bool
webcoreBinding: none
exposed: [ WebKit ]
defaultValue:
WebKit:
default: false
ViewportFitEnabled:
type: bool
humanReadableName: "Viewport Fit"
humanReadableDescription: "Enable viewport-fit viewport parameter"
defaultValue:
WebKitLegacy:
default: true
WebKit:
default: true
WebCore:
default: false
VisualViewportEnabled:
type: bool
webcoreOnChange: setNeedsRecalcStyleInAllFrames
defaultValue:
WebKitLegacy:
PLATFORM(IOS_FAMILY): false
default: true
WebKit:
default: true
WebCore:
default: true
WantsBalancedSetDefersLoadingBehavior:
type: bool
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: false
WebCore:
default: false
WebArchiveDebugModeEnabled:
type: bool
webKitLegacyPreferenceKey: WebKitWebArchiveDebugModeEnabledPreferenceKey
condition: ENABLE(WEB_ARCHIVE)
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: false
WebCore:
default: false
WebAudioEnabled:
type: bool
condition: ENABLE(WEB_AUDIO)
defaultValue:
WebKitLegacy:
"PLATFORM(IOS)": true
default: false
WebKit:
default: true
WebCore:
default: false
WebGLEnabled:
type: bool
defaultValue:
WebKitLegacy:
default: true
WebKit:
default: true
WebCore:
default: false
WebSecurityEnabled:
type: bool
inspectorOverride: true
defaultValue:
WebKitLegacy:
default: true
WebKit:
default: true
WebCore:
default: true
# FIXME: Is this implemented for WebKitLegacy? If not, this should be excluded from WebKitLegacy entirely (though we should still set the default value to false when initializing settings).
WebShareEnabled:
type: bool
humanReadableName: "Web Share"
humanReadableDescription: "Enable support for share sheet via Web Share API"
defaultValue:
WebKitLegacy:
default: false
WebKit:
"PLATFORM(COCOA) && !PLATFORM(WATCHOS) && !PLATFORM(APPLETV)": true
default: false
WebCore:
default: false
WindowFocusRestricted:
comment: When enabled, window.blur() does not change focus, and window.focus() only
changes focus when invoked from the context that created the window.
type: bool
defaultValue:
WebKitLegacy:
PLATFORM(MAC): WebKit::defaultWindowFocusRestricted()
default: true
WebKit:
default: true
WebCore:
default: true
XSSAuditorEnabled:
type: bool
defaultValue:
WebKitLegacy:
default: false
WebKit:
default: false
WebCore:
default: false