646 lines
15 KiB
YAML
646 lines
15 KiB
YAML
#
|
|
# Copyright (c) 2020 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.
|
|
|
|
AcceleratedCompositedAnimationsEnabled:
|
|
type: bool
|
|
webcoreOnChange: setNeedsRecalcStyleInAllFrames
|
|
defaultValue:
|
|
WebCore:
|
|
default: true
|
|
|
|
AcceleratedFiltersEnabled:
|
|
type: bool
|
|
defaultValue:
|
|
WebCore:
|
|
default: false
|
|
|
|
AnimatedImageDebugCanvasDrawingEnabled:
|
|
type: bool
|
|
defaultValue:
|
|
WebCore:
|
|
default: false
|
|
|
|
AudioPlaybackRequiresUserGesture:
|
|
type: bool
|
|
defaultValue:
|
|
WebCore:
|
|
PLATFORM(IOS_FAMILY): true
|
|
default: false
|
|
|
|
AutoscrollForDragAndDropEnabled:
|
|
type: bool
|
|
defaultValue:
|
|
WebCore:
|
|
default: false
|
|
|
|
BackForwardCacheExpirationInterval:
|
|
type: double
|
|
refinedType: Seconds
|
|
defaultValue:
|
|
WebCore:
|
|
default: 30_min
|
|
|
|
BackgroundShouldExtendBeyondPage:
|
|
type: bool
|
|
webcoreOnChange: backgroundShouldExtendBeyondPageChanged
|
|
defaultValue:
|
|
WebCore:
|
|
default: false
|
|
|
|
ClientCoordinatesRelativeToLayoutViewport:
|
|
type: bool
|
|
webcoreOnChange: setNeedsRecalcStyleInAllFrames
|
|
defaultValue:
|
|
WebCore:
|
|
default: false
|
|
|
|
ClipboardAccessPolicy:
|
|
type: uint32_t
|
|
refinedType: ClipboardAccessPolicy
|
|
defaultValue:
|
|
WebCore:
|
|
default: ClipboardAccessPolicy::RequiresUserGesture
|
|
|
|
CrossOriginCheckInGetMatchedCSSRulesDisabled:
|
|
type: bool
|
|
defaultValue:
|
|
WebCore:
|
|
default: false
|
|
|
|
DataDetectorTypes:
|
|
type: uint32_t
|
|
refinedType: DataDetectorType
|
|
condition: ENABLE(DATA_DETECTION)
|
|
defaultValue:
|
|
WebCore:
|
|
default: DataDetectorType::None
|
|
|
|
DefaultVideoPosterURL:
|
|
comment: >-
|
|
Some apps could have a default video poster if it is not set.
|
|
type: String
|
|
defaultValue:
|
|
WebCore:
|
|
default: '{ }'
|
|
|
|
DisableScreenSizeOverride:
|
|
type: bool
|
|
defaultValue:
|
|
WebCore:
|
|
default: false
|
|
|
|
DownloadableBinaryFontsEnabled:
|
|
comment: >-
|
|
FIXME: This should really be disabled by default as it makes platforms that don't support the
|
|
feature download files they can't use by. Leaving enabled for now to not change existing behavior.
|
|
type: bool
|
|
defaultValue:
|
|
WebCore:
|
|
PLATFORM(WATCHOS): false
|
|
default: true
|
|
|
|
EditableLinkBehavior:
|
|
type: uint32_t
|
|
refinedType: EditableLinkBehavior
|
|
defaultValue:
|
|
WebCore:
|
|
default: EditableLinkBehavior::Default
|
|
|
|
EditingBehaviorType:
|
|
type: uint32_t
|
|
refinedType: EditingBehaviorType
|
|
defaultValue:
|
|
WebCore:
|
|
PLATFORM(IOS_FAMILY): EditingBehaviorType::iOS
|
|
OS(DARWIN): EditingBehaviorType::Mac
|
|
OS(WINDOWS): EditingBehaviorType::Windows
|
|
OS(UNIX): EditingBehaviorType::Unix
|
|
default: EditingBehaviorType::Mac
|
|
|
|
FixedBackgroundsPaintRelativeToDocument:
|
|
type: bool
|
|
defaultValue:
|
|
WebCore:
|
|
PLATFORM(IOS_FAMILY): true
|
|
default: false
|
|
|
|
FixedElementsLayoutRelativeToFrame:
|
|
type: bool
|
|
defaultValue:
|
|
WebCore:
|
|
default: false
|
|
|
|
FontFallbackPrefersPictographs:
|
|
type: bool
|
|
webcoreOnChange: setNeedsRecalcStyleInAllFrames
|
|
defaultValue:
|
|
WebCore:
|
|
default: false
|
|
|
|
FontLoadTimingOverride:
|
|
type: uint32_t
|
|
refinedType: FontLoadTimingOverride
|
|
defaultValue:
|
|
WebCore:
|
|
default: FontLoadTimingOverride::None
|
|
|
|
FontRenderingMode:
|
|
type: uint32_t
|
|
refinedType: FontRenderingMode
|
|
defaultValue:
|
|
WebCore:
|
|
default: FontRenderingMode::Normal
|
|
|
|
ForceCompositingMode:
|
|
type: bool
|
|
defaultValue:
|
|
WebCore:
|
|
default: false
|
|
|
|
ForcePendingWebGLPolicy:
|
|
type: bool
|
|
webcoreGetter: isForcePendingWebGLPolicy
|
|
defaultValue:
|
|
WebCore:
|
|
default: false
|
|
|
|
ForcedPrefersContrastAccessibilityValue:
|
|
type: uint32_t
|
|
refinedType: ForcedAccessibilityValue
|
|
defaultValue:
|
|
WebCore:
|
|
default: ForcedAccessibilityValue::System
|
|
|
|
ForcedColorsAreInvertedAccessibilityValue:
|
|
type: uint32_t
|
|
refinedType: ForcedAccessibilityValue
|
|
defaultValue:
|
|
WebCore:
|
|
default: ForcedAccessibilityValue::System
|
|
|
|
ForcedDisplayIsMonochromeAccessibilityValue:
|
|
type: uint32_t
|
|
refinedType: ForcedAccessibilityValue
|
|
defaultValue:
|
|
WebCore:
|
|
default: ForcedAccessibilityValue::System
|
|
|
|
ForcedPrefersReducedMotionAccessibilityValue:
|
|
type: uint32_t
|
|
refinedType: ForcedAccessibilityValue
|
|
defaultValue:
|
|
WebCore:
|
|
default: ForcedAccessibilityValue::System
|
|
|
|
ForcedSupportsHighDynamicRangeValue:
|
|
type: uint32_t
|
|
refinedType: ForcedAccessibilityValue
|
|
webcoreOnChange: setNeedsRecalcStyleInAllFrames
|
|
defaultValue:
|
|
WebCore:
|
|
default: ForcedAccessibilityValue::System
|
|
|
|
FrameFlattening:
|
|
type: uint32_t
|
|
refinedType: FrameFlattening
|
|
webcoreOnChange: setNeedsRelayoutAllFrames
|
|
defaultValue:
|
|
WebCore:
|
|
default: FrameFlattening::Disabled
|
|
|
|
GeolocationFloorLevelEnabled:
|
|
type: bool
|
|
defaultValue:
|
|
WebCore:
|
|
default: true
|
|
|
|
HTMLParserScriptingFlagPolicy:
|
|
type: uint32_t
|
|
refinedType: HTMLParserScriptingFlagPolicy
|
|
defaultValue:
|
|
WebCore:
|
|
default: HTMLParserScriptingFlagPolicy::OnlyIfScriptIsEnabled
|
|
|
|
IdempotentModeAutosizingOnlyHonorsPercentages:
|
|
type: bool
|
|
condition: ENABLE(TEXT_AUTOSIZING)
|
|
defaultValue:
|
|
WebCore:
|
|
default: false
|
|
|
|
ImageSubsamplingEnabled:
|
|
type: bool
|
|
defaultValue:
|
|
WebCore:
|
|
PLATFORM(IOS_FAMILY): true
|
|
default: false
|
|
|
|
ImagesEnabled:
|
|
type: bool
|
|
webcoreGetter: areImagesEnabled
|
|
webcoreOnChange: imagesEnabledChanged
|
|
inspectorOverride: true
|
|
defaultValue:
|
|
WebCore:
|
|
default: true
|
|
|
|
IsAccessibilityIsolatedTreeEnabled:
|
|
type: bool
|
|
defaultValue:
|
|
WebCore:
|
|
default: false
|
|
|
|
IsPerActivityStateCPUUsageMeasurementEnabled:
|
|
type: bool
|
|
defaultValue:
|
|
WebCore:
|
|
PLATFORM(MAC): true
|
|
default: false
|
|
|
|
IsPostBackgroundingCPUUsageMeasurementEnabled:
|
|
type: bool
|
|
defaultValue:
|
|
WebCore:
|
|
PLATFORM(MAC): true
|
|
default: false
|
|
|
|
IsPostBackgroundingMemoryUsageMeasurementEnabled:
|
|
type: bool
|
|
defaultValue:
|
|
WebCore:
|
|
PLATFORM(MAC): true
|
|
default: false
|
|
|
|
IsPostLoadCPUUsageMeasurementEnabled:
|
|
type: bool
|
|
defaultValue:
|
|
WebCore:
|
|
PLATFORM(COCOA): true
|
|
default: false
|
|
|
|
IsPostLoadMemoryUsageMeasurementEnabled:
|
|
type: bool
|
|
defaultValue:
|
|
WebCore:
|
|
PLATFORM(COCOA): true
|
|
default: false
|
|
|
|
JavaScriptRuntimeFlags:
|
|
type: uint32_t
|
|
refinedType: JSC::RuntimeFlags
|
|
defaultValue:
|
|
WebCore:
|
|
default: '{ }'
|
|
|
|
LangAttributeAwareFormControlUIEnabled:
|
|
type: bool
|
|
defaultValue:
|
|
WebCore:
|
|
default: false
|
|
|
|
LegacyBeforeLoadEventEnabled:
|
|
comment: >-
|
|
FIMXE: This does not appear to ever be set to true. Remove once verified.
|
|
type: bool
|
|
defaultValue:
|
|
WebCore:
|
|
default: false
|
|
|
|
LocalStorageDatabasePath:
|
|
type: String
|
|
defaultValue:
|
|
WebCore:
|
|
default: '{ }'
|
|
|
|
MaximumAccelerated2dCanvasSize:
|
|
type: uint32_t
|
|
defaultValue:
|
|
WebCore:
|
|
default: 5120*2880
|
|
|
|
MaximumHTMLParserDOMTreeDepth:
|
|
type: uint32_t
|
|
defaultValue:
|
|
WebCore:
|
|
default: defaultMaximumHTMLParserDOMTreeDepth
|
|
|
|
MaximumSourceBufferSize:
|
|
comment: >-
|
|
Allow SourceBuffers to store up to 304MB each, enough for approximately five minutes
|
|
of 1080p video and stereo audio.
|
|
type: uint32_t
|
|
condition: ENABLE(MEDIA_SOURCE)
|
|
defaultValue:
|
|
WebCore:
|
|
default: 318767104
|
|
|
|
MediaDeviceIdentifierStorageDirectory:
|
|
type: String
|
|
condition: ENABLE(MEDIA_STREAM)
|
|
defaultValue:
|
|
WebCore:
|
|
default: '{ }'
|
|
|
|
MediaKeysStorageDirectory:
|
|
type: String
|
|
defaultValue:
|
|
WebCore:
|
|
default: '{ }'
|
|
|
|
MediaTypeOverride:
|
|
type: String
|
|
webcoreOnChange: mediaTypeOverrideChanged
|
|
defaultValue:
|
|
WebCore:
|
|
default: '"screen"'
|
|
|
|
MinimumAccelerated2dCanvasSize:
|
|
comment: >-
|
|
Number of pixels below which 2D canvas is rendered in software
|
|
even if hardware acceleration is enabled.
|
|
Hardware acceleration is useful for large canvases where it can avoid the
|
|
pixel bandwidth between the CPU and GPU. But GPU acceleration comes at
|
|
a price - extra back-buffer and texture copy. Small canvases are also
|
|
widely used for stylized fonts. Anti-aliasing text in hardware at that
|
|
scale is generally slower. So below a certain size it is better to
|
|
draw canvas in software.
|
|
type: uint32_t
|
|
defaultValue:
|
|
WebCore:
|
|
default: 257*256
|
|
|
|
NeedsDeferKeyDownAndKeyPressTimersUntilNextEditingCommandQuirk:
|
|
comment: >-
|
|
This is an iOS-specific quirk. Unlike Mac, keyboard operations are asynchronous and hence a DOM update as
|
|
a result of text insertion or deletion does not occur within the same event loop iteration as a dispatched
|
|
DOM keydown event. Some sites, notably Google Sheets, schedule timers on keypress and expect on a DOM update
|
|
to have occurred on expiration. When enabled, this quirk puts all such scheduled timers in a holding tank
|
|
until the keyboard performs the insertion or deletion. This gives Google Sheets the illusion that the DOM
|
|
update happened within the same event loop iteration that the keypress event was dispatched in.
|
|
type: bool
|
|
defaultValue:
|
|
WebCore:
|
|
default: false
|
|
|
|
PaymentRequestEnabled:
|
|
type: bool
|
|
condition: ENABLE(PAYMENT_REQUEST)
|
|
defaultValue:
|
|
WebCore:
|
|
default: false
|
|
|
|
PitchCorrectionAlgorithm:
|
|
type: uint32_t
|
|
refinedType: MediaPlayerEnums::PitchCorrectionAlgorithm
|
|
defaultValue:
|
|
WebCore:
|
|
default: MediaPlayerEnums::PitchCorrectionAlgorithm::BestAllAround
|
|
|
|
PDFImageCachingPolicy:
|
|
type: uint32_t
|
|
refinedType: PDFImageCachingPolicy
|
|
defaultValue:
|
|
WebCore:
|
|
PLATFORM(IOS_FAMILY): PDFImageCachingPolicy::BelowMemoryLimit
|
|
default: PDFImageCachingPolicy::Enabled
|
|
|
|
PreferMIMETypeForImages:
|
|
type: bool
|
|
defaultValue:
|
|
WebCore:
|
|
default: false
|
|
|
|
PreventKeyboardDOMEventDispatch:
|
|
type: bool
|
|
defaultValue:
|
|
WebCore:
|
|
default: false
|
|
|
|
PrivateClickMeasurementFraudPreventionEnabled:
|
|
type: bool
|
|
defaultValue:
|
|
WebCore:
|
|
"HAVE(RSA_BSSA)": true
|
|
default: false
|
|
|
|
QuickTimePluginReplacementEnabled:
|
|
type: bool
|
|
defaultValue:
|
|
WebCore:
|
|
default: false
|
|
|
|
RepaintOutsideLayoutEnabled:
|
|
type: bool
|
|
defaultValue:
|
|
WebCore:
|
|
default: false
|
|
|
|
ScrollingCoordinatorEnabled:
|
|
type: bool
|
|
defaultValue:
|
|
WebCore:
|
|
default: false
|
|
|
|
ScrollingTreeIncludesFrames:
|
|
type: bool
|
|
defaultValue:
|
|
WebCore:
|
|
PLATFORM(IOS_FAMILY): true
|
|
default: false
|
|
|
|
SessionStorageQuota:
|
|
comment: >-
|
|
Allow clients concerned with memory consumption to set a quota on session storage
|
|
since the memory used won't be released until the Page is destroyed.
|
|
type: uint32_t
|
|
defaultValue:
|
|
WebCore:
|
|
default: 5242880
|
|
|
|
ShouldDispatchSyntheticMouseEventsWhenModifyingSelection:
|
|
type: bool
|
|
defaultValue:
|
|
WebCore:
|
|
default: false
|
|
|
|
ShouldDispatchSyntheticMouseOutAfterSyntheticClick:
|
|
type: bool
|
|
defaultValue:
|
|
WebCore:
|
|
default: false
|
|
|
|
ShouldIgnoreFontLoadCompletions:
|
|
type: bool
|
|
defaultValue:
|
|
WebCore:
|
|
default: false
|
|
|
|
ShouldInjectUserScriptsInInitialEmptyDocument:
|
|
type: bool
|
|
defaultValue:
|
|
WebCore:
|
|
default: false
|
|
|
|
StorageAccessAPIPerPageScopeEnabled:
|
|
type: bool
|
|
defaultValue:
|
|
WebCore:
|
|
default: true
|
|
|
|
StorageBlockingPolicy:
|
|
type: uint32_t
|
|
refinedType: StorageBlockingPolicy
|
|
webcoreOnChange: storageBlockingPolicyChanged
|
|
defaultValue:
|
|
WebCore:
|
|
default: StorageBlockingPolicy::AllowAll
|
|
|
|
SystemLayoutDirection:
|
|
type: uint32_t
|
|
refinedType: TextDirection
|
|
defaultValue:
|
|
WebCore:
|
|
default: TextDirection::LTR
|
|
|
|
TextAutosizingWindowSizeOverrideHeight:
|
|
type: uint32_t
|
|
webcoreOnChange: setNeedsRecalcStyleInAllFrames
|
|
condition: ENABLE(TEXT_AUTOSIZING)
|
|
defaultValue:
|
|
WebCore:
|
|
default: 0
|
|
|
|
TextAutosizingWindowSizeOverrideWidth:
|
|
type: uint32_t
|
|
webcoreOnChange: setNeedsRecalcStyleInAllFrames
|
|
condition: ENABLE(TEXT_AUTOSIZING)
|
|
defaultValue:
|
|
WebCore:
|
|
default: 0
|
|
|
|
TextDirectionSubmenuInclusionBehavior:
|
|
type: uint32_t
|
|
refinedType: TextDirectionSubmenuInclusionBehavior
|
|
defaultValue:
|
|
WebCore:
|
|
default: TextDirectionSubmenuInclusionBehavior::AutomaticallyIncluded
|
|
|
|
TimeWithoutMouseMovementBeforeHidingControls:
|
|
type: double
|
|
refinedType: Seconds
|
|
defaultValue:
|
|
WebCore:
|
|
default: 3_s
|
|
|
|
TouchEventEmulationEnabled:
|
|
type: bool
|
|
webcoreGetter: isTouchEventEmulationEnabled
|
|
condition: ENABLE(TOUCH_EVENTS)
|
|
defaultValue:
|
|
WebCore:
|
|
default: false
|
|
|
|
TreatIPAddressAsDomain:
|
|
type: bool
|
|
defaultValue:
|
|
WebCore:
|
|
default: false
|
|
|
|
UnhandledPromiseRejectionToConsoleEnabled:
|
|
type: bool
|
|
defaultValue:
|
|
WebCore:
|
|
default: true
|
|
|
|
UnifiedTextCheckerEnabled:
|
|
type: bool
|
|
defaultValue:
|
|
WebCore:
|
|
USE(UNIFIED_TEXT_CHECKING): true
|
|
default: false
|
|
|
|
UseAnonymousModeWhenFetchingMaskImages:
|
|
type: bool
|
|
defaultValue:
|
|
WebCore:
|
|
default: true
|
|
|
|
UserInterfaceDirectionPolicy:
|
|
type: uint32_t
|
|
refinedType: UserInterfaceDirectionPolicy
|
|
defaultValue:
|
|
WebCore:
|
|
default: UserInterfaceDirectionPolicy::Content
|
|
|
|
UserStyleSheetLocation:
|
|
type: String
|
|
refinedType: URL
|
|
webcoreOnChange: userStyleSheetLocationChanged
|
|
defaultValue:
|
|
WebCore:
|
|
default: '{ }'
|
|
|
|
ValidationMessageTimerMagnification:
|
|
comment: >-
|
|
Sets the magnification value for validation message timer. If the
|
|
magnification value is N, a validation message disappears automatically after
|
|
message length * N / 1000 seconds. If N is equal to or less than 0, a
|
|
validation message doesn't disappears automaticaly.
|
|
type: uint32_t
|
|
defaultValue:
|
|
WebCore:
|
|
default: 50
|
|
|
|
VideoPlaybackRequiresUserGesture:
|
|
type: bool
|
|
defaultValue:
|
|
WebCore:
|
|
PLATFORM(IOS_FAMILY): true
|
|
default: false
|
|
|
|
WebGLErrorsToConsoleEnabled:
|
|
type: bool
|
|
defaultValue:
|
|
WebCore:
|
|
default: true
|
|
|
|
WebRTCEncryptionEnabled:
|
|
type: bool
|
|
inspectorOverride: true
|
|
defaultValue:
|
|
WebCore:
|
|
default: true
|
|
|
|
WebkitImageReadyEventEnabled:
|
|
type: bool
|
|
defaultValue:
|
|
WebCore:
|
|
default: false
|
|
|
|
YouTubeFlashPluginReplacementEnabled:
|
|
type: bool
|
|
defaultValue:
|
|
WebCore:
|
|
default: false
|