| # Copyright (c) 2020-2026 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. |
| |
| # Web preferences are assigned a `status` which implies a default value and |
| # controls the interfaces where the preference is declared. |
| # |
| # == Web Platform Features == |
| # unstable:: |
| # Feature in active development. Unfinished, no promise it is usable or safe. |
| # OFF by default. |
| # testable:: |
| # Feature in active development. Stable enough for testing, but not ready to ship. |
| # OFF by default. Enabled in test infrastructure only. |
| # preview:: |
| # Ready to be used in beta contexts like Safari Technology Preview. |
| # ON by default in Safari Technology Preview and test infrastructure. |
| # OFF by default elsewhere. May be enabled automatically by clients. |
| # stable:: |
| # Ready for general use, but should be able to be toggled to support |
| # debugging, A/B testing. |
| # ON by default. Some platforms may deviate from default behavior due to |
| # support or needed dependencies. |
| # mature:: |
| # Already in general use, with no UI to toggle. Features in this status may be |
| # cleaned up and removed altogether. |
| # ON by default. Some platforms may deviate from default behavior due to |
| # support or needed dependencies. |
| # |
| # == Developer Features == |
| # developer:: |
| # Tools for web developers, not part of a feature that will ever be enabled |
| # for end users. |
| # OFF by default. |
| # internal:: |
| # Tools for debugging the WebKit engine. Not generally useful to web developers. |
| # OFF by default. |
| # |
| # == Embedder Controls == |
| # embedder:: |
| # Adjusts WebKit behavior for embedding application needs. Not part of a |
| # web platform feature or a "mature" feature intended to be always-on. |
| # ANY default value. |
| # |
| # == Defaults Overridable == |
| # When features are declared with "defaultsOverridable: true", platform user |
| # defaults may override a default value at runtime, using the preference |
| # name prefixed with "WebKitDebug". |
| |
| ARIAActionsSupportEnabled: |
| type: bool |
| status: testable |
| category: dom |
| humanReadableName: "aria-actions" |
| humanReadableDescription: "Enable support for aria-actions" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| AVExperienceControllerFullscreenEnabled: |
| type: bool |
| status: internal |
| category: media |
| getter: isAVExperienceControllerFullscreenEnabled |
| webcoreGetter: isAVExperienceControllerFullscreenEnabled |
| defaultsOverridable: true |
| humanReadableName: "AVExperienceController Fullscreen" |
| humanReadableDescription: "Enable fullscreen video via AVExperienceController" |
| condition: HAVE(AVEXPERIENCECONTROLLER) |
| defaultValue: |
| WebCore: |
| default: false |
| WebKit: |
| default: true |
| WebKitLegacy: |
| default: false |
| |
| AVFoundationEnabled: |
| type: bool |
| status: embedder |
| getter: isAVFoundationEnabled |
| humanReadableName: "AVFoundation" |
| humanReadableDescription: "Enable AVFoundation" |
| webcoreBinding: DeprecatedGlobalSettings |
| condition: USE(AVFOUNDATION) |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| "PLATFORM(WATCHOS)": false |
| default: true |
| |
| AXCustomColorModeEnabled: |
| type: bool |
| status: embedder |
| getter: axCustomColorModeEnabled |
| webcoreName: axCustomColorModeEnabled |
| webcoreOnChange: setNeedsRecalcStyleInAllFrames |
| condition: ENABLE(AX_CUSTOM_COLOR_MODE) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| AcceleratedCompositingEnabled: |
| type: bool |
| status: embedder |
| webcoreOnChange: setNeedsRecalcStyleInAllFrames |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| AcceleratedCompositingForFixedPositionEnabled: |
| type: bool |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| PLATFORM(IOS_FAMILY): true |
| default: false |
| WebCore: |
| PLATFORM(IOS_FAMILY): true |
| default: false |
| |
| AcceleratedDrawingEnabled: |
| type: bool |
| status: internal |
| defaultsOverridable: true |
| humanReadableName: "GraphicsLayer accelerated drawing" |
| humanReadableDescription: "Enable GraphicsLayer accelerated drawing" |
| defaultValue: |
| WebKitLegacy: |
| "PLATFORM(IOS_FAMILY) && !PLATFORM(IOS_FAMILY_SIMULATOR)": true |
| default: false |
| WebKit: |
| default: true |
| WebCore: |
| default: false |
| |
| AcceleratedFiltersEnabled: |
| type: bool |
| status: unstable |
| webcoreOnChange: setNeedsRelayoutAllFrames |
| humanReadableName: "Accelerated Filter Rendering" |
| humanReadableDescription: "Accelerated CSS and SVG filter rendering" |
| condition: USE(CORE_IMAGE) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| AccentColorEnabled: |
| type: bool |
| status: stable |
| category: css |
| humanReadableName: "CSS Accent Color" |
| humanReadableDescription: "Enable accent-color CSS property" |
| defaultValue: |
| WebKitLegacy: |
| "PLATFORM(COCOA)" : true |
| default: false |
| WebKit: |
| "PLATFORM(COCOA) || USE(THEME_ADWAITA)": true |
| default: false |
| WebCore: |
| "PLATFORM(COCOA) || USE(THEME_ADWAITA)": true |
| default: false |
| |
| AccessHandleEnabled: |
| type: bool |
| status: mature |
| category: dom |
| humanReadableName: "AccessHandle API" |
| humanReadableDescription: "Enable AccessHandle API" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "PLATFORM(COCOA)" : true |
| "PLATFORM(GTK) || PLATFORM(WPE)" : true |
| default: false |
| WebCore: |
| "PLATFORM(COCOA)" : true |
| "PLATFORM(GTK) || PLATFORM(WPE)" : true |
| default: false |
| |
| AccessibilityTextStitchingEnabled: |
| type: bool |
| status: embedder |
| humanReadableName: "Enable Accessibility Text Stitching" |
| humanReadableDescription: "Stitch adjacent text elements into one in the accessibility tree" |
| webcoreBinding: DeprecatedGlobalSettings |
| defaultValue: |
| WebKitLegacy: |
| "ENABLE(ACCESSIBILITY_TEXT_STITCHING)": true |
| default: false |
| WebKit: |
| "ENABLE(ACCESSIBILITY_TEXT_STITCHING)": true |
| default: false |
| WebCore: |
| "ENABLE(ACCESSIBILITY_TEXT_STITCHING)": true |
| default: false |
| |
| AccessibilityThreadHitTestingEnabled: |
| type: bool |
| status: internal |
| defaultsOverridable: true |
| humanReadableName: "Off Main-Thread Accessibility Hit Testing" |
| humanReadableDescription: "Serve accessibility hit tests off the main-thread" |
| webcoreBinding: DeprecatedGlobalSettings |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| AggressiveTileRetentionEnabled: |
| type: bool |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| AllowContentSecurityPolicySourceStarToMatchAnyProtocol: |
| type: bool |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| PLATFORM(IOS_FAMILY): WebKit::defaultAllowContentSecurityPolicySourceStarToMatchAnyProtocol() |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| AllowFileAccessFromFileURLs: |
| type: bool |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: false |
| WebCore: |
| default: true |
| |
| AllowMediaContentTypesRequiringHardwareSupportAsFallback: |
| type: bool |
| status: embedder |
| 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 |
| status: embedder |
| webKitLegacyPreferenceKey: WebKitAllowMultiElementImplicitFormSubmissionPreferenceKey |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| AllowMultipleCommitLayerTreePending: |
| type: bool |
| status: internal |
| category: dom |
| humanReadableName: "Allow requesting CommitLayerTree before the previous has completed" |
| humanReadableDescription: "Allow requesting CommitLayerTree before the previous has completed" |
| defaultValue: |
| WebKitLegacy: |
| "PLATFORM(IOS_FAMILY)": false |
| default: true |
| WebKit: |
| "PLATFORM(IOS_FAMILY)": false |
| default: true |
| WebCore: |
| "PLATFORM(IOS_FAMILY)": false |
| default: true |
| |
| AllowPrivacySensitiveOperationsInNonPersistentDataStores: |
| type: bool |
| status: embedder |
| humanReadableName: "Allow Privacy-Sensitive Operations in Non-Persistent Data Stores" |
| humanReadableDescription: "Allow Privacy-Sensitive Operations in Non-Persistent Data Stores" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| sharedPreferenceForWebProcess: true |
| |
| AllowTestOnlyIPC: |
| type: bool |
| status: embedder |
| exposed: [ WebKit ] |
| webcoreBinding: none |
| defaultValue: |
| WebKit: |
| default: false |
| sharedPreferenceForWebProcess: true |
| |
| AllowTestOnlyMockContentFilterIPC: |
| type: bool |
| status: embedder |
| exposed: [ WebKit ] |
| webcoreBinding: none |
| defaultValue: |
| WebKit: |
| default: false |
| sharedPreferenceForWebProcess: true |
| |
| AllowTestOnlyOriginAccessAllowListIPC: |
| type: bool |
| status: embedder |
| exposed: [ WebKit ] |
| webcoreBinding: none |
| defaultValue: |
| WebKit: |
| default: false |
| sharedPreferenceForWebProcess: true |
| |
| AllowTopNavigationToDataURLs: |
| type: bool |
| humanReadableName: "Allow top navigation to data: URLs" |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| AllowUniversalAccessFromFileURLs: |
| type: bool |
| humanReadableName: "Allow universal access from file: URLs" |
| status: developer |
| category: security |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: false |
| WebCore: |
| default: true |
| |
| # FIXME: This is not relevant for WebKitLegacy, so it should be excluded from WebKitLegacy entirely. |
| AllowViewportShrinkToFitContent: |
| type: bool |
| status: internal |
| humanReadableName: "Allow Viewport Shrink to Fit Content" |
| humanReadableDescription: "Allow the viewport shrink to fit content heuristic when appropriate" |
| condition: PLATFORM(IOS_FAMILY) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| AllowWebGLInWorkers: |
| type: bool |
| status: stable |
| category: dom |
| humanReadableName: "Allow WebGL in Web Workers" |
| condition: ENABLE(WEBGL) |
| defaultValue: |
| WebKitLegacy: |
| "ENABLE(WEBGL_IN_WORKERS)": true |
| default: false |
| WebKit: |
| "ENABLE(WEBGL_IN_WORKERS)": true |
| default: false |
| WebCore: |
| "ENABLE(WEBGL_IN_WORKERS)": true |
| default: false |
| |
| AllowsAirPlayForMediaPlayback: |
| type: bool |
| status: embedder |
| webKitLegacyPreferenceKey: WebKitMediaPlaybackAllowsAirPlay |
| condition: ENABLE(WIRELESS_PLAYBACK_TARGET) |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| AllowsInlineMediaPlayback: |
| type: bool |
| status: embedder |
| 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 |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| "PLATFORM(IOS_FAMILY)": WebKit::defaultAllowsInlineMediaPlaybackAfterFullscreen() |
| default: false |
| WebKit: |
| "PLATFORM(IOS_FAMILY)": true |
| default: false |
| WebCore: |
| default: true |
| |
| AllowsPictureInPictureMediaPlayback: |
| type: bool |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| "PLATFORM(VISION)": false |
| "PLATFORM(IOS_FAMILY)": WebKit::defaultAllowsPictureInPictureMediaPlayback() |
| default: false |
| WebKit: |
| "PLATFORM(VISION)": false |
| "PLATFORM(IOS_FAMILY)": true |
| default: false |
| WebCore: |
| "PLATFORM(VISION)": false |
| default: true |
| disableInLockdownMode: true |
| |
| AlternateFullScreenControlDesignEnabled: |
| type: bool |
| status: embedder |
| condition: PLATFORM(IOS_FAMILY) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "PLATFORM(VISION)": true |
| default: false |
| WebCore: |
| default: false |
| |
| AltitudeAngleEnabled: |
| type: bool |
| status: stable |
| category: dom |
| humanReadableName: "altitudeAngle PointerEvent Property" |
| humanReadableDescription: "Enable the `altitudeAngle` property of the PointerEvents API" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "PLATFORM(COCOA)": true |
| default: false |
| WebCore: |
| "PLATFORM(COCOA)": true |
| default: false |
| |
| AlwaysAllowLocalWebarchive: |
| type: bool |
| status: internal |
| category: dom |
| humanReadableName: "Always allow loading local Web Archive" |
| humanReadableDescription: "Enable always allowing loading local Web Archive" |
| condition: ENABLE(WEB_ARCHIVE) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| AlwaysUseTouchEventRegions: |
| type: bool |
| status: internal |
| humanReadableName: "Always use touch event regions" |
| humanReadableDescription: "Use touch event regions regardless of site isolation enablement" |
| condition: ENABLE(TOUCH_EVENT_REGIONS) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| AlwaysZoomOnDoubleTap: |
| type: bool |
| status: internal |
| humanReadableName: "DTTZ always" |
| humanReadableDescription: "Double taps zoom, even if we dispatched a click anywhere" |
| webcoreBinding: none |
| condition: PLATFORM(IOS_FAMILY) |
| exposed: [ WebKit ] |
| defaultValue: |
| WebKit: |
| default: false |
| |
| AnimatedImageAsyncDecodingEnabled: |
| type: bool |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| AnimationTriggersEnabled: |
| type: bool |
| status: testable |
| category: animation |
| humanReadableName: "Animation Triggers" |
| humanReadableDescription: "Support for the timeline-trigger, animation-trigger and event-trigger CSS properties" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| AnonymousBlockGenerationDisabled: |
| type: bool |
| status: unstable |
| category: css |
| humanReadableName: "Disable anonymous block generation" |
| humanReadableDescription: "Disable anonymous block generation for mixed blocks" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| AppBadgeEnabled: |
| type: bool |
| status: unstable |
| category: dom |
| humanReadableName: "App Badge" |
| humanReadableDescription: "Enable App Badge" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| sharedPreferenceForWebProcess: true |
| richJavaScript: true |
| |
| AppHighlightsEnabled: |
| type: bool |
| status: unstable |
| category: css |
| humanReadableName: "App Highlights" |
| humanReadableDescription: "Enable App Highlights" |
| condition: ENABLE(APP_HIGHLIGHTS) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| AppleMailPaginationQuirkEnabled: |
| type: bool |
| status: embedder |
| 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 |
| status: embedder |
| 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 |
| status: embedder |
| 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 |
| sharedPreferenceForWebProcess: true |
| richJavaScript: true |
| |
| AsyncAudioSessionActivationEnabled: |
| type: bool |
| status: stable |
| category: media |
| humanReadableName: "Async Audio Session Activation" |
| humanReadableDescription: "Use async IPC for audio session activation" |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| sharedPreferenceForWebProcess: true |
| |
| # FIXME: This is on by default in WebKit2 PLATFORM(COCOA). Perhaps we should consider turning it on for WebKitLegacy as well. |
| AsyncClipboardAPIEnabled: |
| type: bool |
| status: mature |
| humanReadableName: "Async clipboard API" |
| humanReadableDescription: "Enable the async clipboard API" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "PLATFORM(COCOA) || PLATFORM(GTK) || PLATFORM(WPE) || PLATFORM(WIN)" : true |
| default: false |
| WebCore: |
| default: false |
| |
| AsyncClipboardRichContentEnabled: |
| type: bool |
| status: internal |
| humanReadableName: "Async clipboard rich content" |
| humanReadableDescription: "Enable rich content types in the async clipboard API" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "PLATFORM(COCOA) || PLATFORM(GTK) || PLATFORM(WPE)": true |
| default: false |
| WebCore: |
| default: false |
| |
| AsyncFrameScrollingEnabled: |
| type: bool |
| status: internal |
| webcoreOnChange: setNeedsRelayoutAllFrames |
| humanReadableName: "Async Frame Scrolling" |
| humanReadableDescription: "Perform frame scrolling off the main thread" |
| exposed: [ WebKit ] |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "USE(COORDINATED_GRAPHICS)": true |
| "PLATFORM(COCOA)": true |
| default: false |
| WebCore: |
| default: false |
| |
| AsyncOverflowScrollingEnabled: |
| type: bool |
| status: internal |
| webcoreOnChange: setNeedsRelayoutAllFrames |
| humanReadableName: "Async Overflow Scrolling" |
| humanReadableDescription: "Perform overflow scrolling off the main thread" |
| exposed: [ WebKit ] |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "USE(COORDINATED_GRAPHICS)": true |
| "PLATFORM(COCOA)": true |
| default: false |
| WebCore: |
| default: false |
| |
| AsyncStackTraceEnabled: |
| type: bool |
| status: stable |
| category: javascript |
| humanReadableName: "Async Stack Traces" |
| humanReadableDescription: "Enable async stack traces" |
| webcoreBinding: none |
| jscOptionName: useAsyncStackTrace |
| sharedPreferenceForWebProcess: true |
| defaultValue: |
| WebKit: |
| default: true |
| |
| AsynchronousSpellCheckingEnabled: |
| type: bool |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| AttachmentElementEnabled: |
| type: bool |
| status: embedder |
| humanReadableName: "Attachment Element" |
| humanReadableDescription: "Allow the insertion of attachment elements" |
| webcoreBinding: DeprecatedGlobalSettings |
| condition: ENABLE(ATTACHMENT_ELEMENT) |
| defaultValue: |
| WebKitLegacy: |
| default: WebKit::defaultAttachmentElementEnabled() |
| WebKit: |
| default: false |
| sharedPreferenceForWebProcess: true |
| |
| AttachmentWideLayoutEnabled: |
| type: bool |
| status: embedder |
| humanReadableName: "Attachment wide-layout styling" |
| humanReadableDescription: "Use horizontal wide-layout attachment style, requires Attachment Element" |
| condition: ENABLE(ATTACHMENT_ELEMENT) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| AudioControlsScaleWithPageZoom: |
| type: bool |
| status: embedder |
| category: media |
| defaultValue: |
| WebKitLegacy: |
| "PLATFORM(VISION)": true |
| "PLATFORM(IOS_FAMILY)": false |
| default: true |
| WebKit: |
| "PLATFORM(VISION)": true |
| "PLATFORM(IOS_FAMILY)": false |
| default: true |
| WebCore: |
| "PLATFORM(VISION)": true |
| "PLATFORM(IOS_FAMILY)": false |
| default: true |
| |
| AudioDescriptionsEnabled: |
| type: bool |
| status: stable |
| category: media |
| condition: ENABLE(VIDEO) |
| humanReadableName: "Audio descriptions for video - Standard" |
| humanReadableDescription: "Enable standard audio descriptions for video" |
| defaultValue: |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| AuthorAndUserStylesEnabled: |
| type: bool |
| status: embedder |
| webKitLegacyPreferenceKey: WebKitAuthorAndUserStylesEnabledPreferenceKey |
| webcoreOnChange: setNeedsRecalcStyleInAllFrames |
| inspectorOverride: true |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| AutomaticLiveResizeEnabled: |
| type: bool |
| status: internal |
| humanReadableName: "Enable Automatic Live Resize" |
| humanReadableDescription: "Automatically synchronize web view resize with painting" |
| webcoreBinding: none |
| exposed: [ WebKit ] |
| condition: PLATFORM(IOS_FAMILY) |
| defaultValue: |
| WebKit: |
| default: WebKit::defaultAutomaticLiveResizeEnabled() |
| |
| AutomaticallyAdjustsViewScaleUsingMinimumEffectiveDeviceWidth: |
| type: bool |
| status: internal |
| humanReadableName: "Automatically Adjust View Scale" |
| humanReadableDescription: "Automatically Adjust View Scale to Fit Min. Effective Device Width" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "ENABLE(FLEXIBLE_VIEW_SCALE_FACTOR)": true |
| default: false |
| WebCore: |
| default: false |
| |
| AutomaticallyForceEnableScrollingIfNeededToRevealUI: |
| type: bool |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| AzimuthAngleEnabled: |
| type: bool |
| status: stable |
| category: dom |
| humanReadableName: "azimuthAngle PointerEvent Property" |
| humanReadableDescription: "Enable the `azimuthAngle` property of the PointerEvents API" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "PLATFORM(COCOA)": true |
| default: false |
| WebCore: |
| "PLATFORM(COCOA)": true |
| default: false |
| |
| BackForwardCacheWithMediaEnabled: |
| type: bool |
| status: stable |
| category: media |
| humanReadableName: "Back/Forward Cache with Media" |
| humanReadableDescription: "Enable back/forward cache for pages with media" |
| condition: PLATFORM(WPE) |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| BackgroundFetchAPIEnabled: |
| type: bool |
| status: testable |
| category: networking |
| humanReadableName: "Enable background-fetch API" |
| humanReadableDescription: "Enable background-fetch API" |
| exposed: [ WebKit ] |
| defaultValue: |
| WebCore: |
| default: false |
| WebKit: |
| default: false |
| sharedPreferenceForWebProcess: true |
| richJavaScript: true |
| |
| BackgroundWebContentRunningBoardThrottlingEnabled: |
| type: bool |
| status: unstable |
| category: networking |
| humanReadableName: "Enable background web content throttling via RunningBoard" |
| humanReadableDescription: "Enable background web content throttling via RunningBoard" |
| exposed: [ WebKit ] |
| condition: PLATFORM(MAC) && USE(RUNNINGBOARD) |
| defaultValue: |
| WebCore: |
| default: false |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: WebKit::defaultRunningBoardThrottlingEnabled() |
| |
| BackspaceKeyNavigationEnabled: |
| type: bool |
| status: embedder |
| 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 |
| status: mature |
| humanReadableName: "Beacon API" |
| humanReadableDescription: "Beacon API" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: true |
| WebCore: |
| default: false |
| |
| BidiContentAwarePasteEnabled: |
| type: bool |
| status: internal |
| humanReadableName: "Bidi Content Aware Paste" |
| humanReadableDescription: "Bidi content aware paste" |
| defaultValue: |
| WebKit: |
| "PLATFORM(IOS_FAMILY)": WebKit::defaultBidiContentAwarePasteEnabled() |
| default: false |
| WebKitLegacy: |
| default: false |
| WebCore: |
| default: false |
| |
| BigIntMathMethodsEnabled: |
| type: bool |
| status: testable |
| category: javascript |
| humanReadableName: "BigInt Math Methods" |
| humanReadableDescription: "Enable BigInt math helper methods." |
| webcoreBinding: none |
| jscOptionName: useBigIntMathMethods |
| sharedPreferenceForWebProcess: true |
| defaultValue: |
| WebKit: |
| default: false |
| |
| BlobFileAccessEnforcementEnabled: |
| type: bool |
| status: embedder |
| category: security |
| humanReadableName: "Enforce blob backed file access valid for web process" |
| humanReadableDescription: "Validate file backed blobs were created by the correct web process" |
| sharedPreferenceForWebProcess: true |
| defaultValue: |
| WebKitLegacy: |
| "PLATFORM(COCOA)": true |
| default: false |
| WebKit: |
| "PLATFORM(COCOA)": true |
| default: false |
| WebCore: |
| "PLATFORM(COCOA)": true |
| default: false |
| |
| BlockMediaLayerRehostingInWebContentProcess: |
| type: bool |
| status: internal |
| category: media |
| humanReadableName: "GPU Process: Block Media Layer Re-hosting" |
| humanReadableDescription: "GPU Process: Block Media Layer Re-hosting in WebContent process" |
| condition: ENABLE(GPU_PROCESS) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: true |
| WebCore: |
| default: false |
| |
| # We would have to partition BroadcastChannel based on PageGroups if we wanted to enable this for WebKitLegacy. |
| BroadcastChannelEnabled: |
| type: bool |
| status: stable |
| category: dom |
| humanReadableName: "BroadcastChannel API" |
| humanReadableDescription: "BroadcastChannel API" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| sharedPreferenceForWebProcess: true |
| richJavaScript: true |
| |
| BuiltInNotificationsEnabled: |
| type: bool |
| status: unstable |
| category: dom |
| humanReadableName: "Built-In Web Notifications" |
| humanReadableDescription: "Enable built-in WebKit managed notifications" |
| webcoreBinding: DeprecatedGlobalSettings |
| condition: ENABLE(WEB_PUSH_NOTIFICATIONS) |
| defaultValue: |
| WebCore: |
| default: false |
| WebKit: |
| default: defaultBuiltInNotificationsEnabled() |
| sharedPreferenceForWebProcess: true |
| |
| CSS3DTransformBackfaceVisibilityInteroperabilityEnabled: |
| type: bool |
| status: preview |
| category: css |
| humanReadableName: "CSS 3D Transform Interoperability for backface-visibility" |
| humanReadableDescription: "Enable 3D transform behavior for backface-visibility that is specification-compliant but backwards incompatible" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| CSSAppearanceBaseEnabled: |
| type: bool |
| status: testable |
| category: css |
| humanReadableName: "CSS appearance: base" |
| humanReadableDescription: "Enable base value for CSS appearance" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| CSSAttrSubstitutionFunctionEnabled: |
| type: bool |
| category: css |
| status: stable |
| humanReadableName: "CSS attr() substitution function" |
| humanReadableDescription: "Enable CSS Values 5 attr() arbitrary substitution function" |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| CSSAxisRelativePositionKeywordsEnabled: |
| type: bool |
| category: css |
| status: stable |
| humanReadableName: "CSS axis relative keywords in <position>" |
| humanReadableDescription: "Enable support for CSS Values and Units Module Level 5 axis relative keywords in <position>" |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| CSSBaselineSourceEnabled: |
| type: bool |
| status: testable |
| category: css |
| humanReadableName: "CSS baseline-source" |
| humanReadableDescription: "Enable CSS baseline-source" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| CSSCalcMixEnabled: |
| type: bool |
| category: css |
| status: stable |
| humanReadableName: "CSS calc-mix()" |
| humanReadableDescription: "Enable support for CSS calc-mix()" |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| CSSColorLayersEnabled: |
| type: bool |
| category: css |
| status: preview |
| humanReadableName: "CSS color-layers()" |
| humanReadableDescription: "Enable support for CSS color-layers()" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| CSSConstrainedDynamicRangeLimitEnabled: |
| type: bool |
| category: css |
| status: testable |
| humanReadableName: "CSS dynamic-range-limit: constrained" |
| humanReadableDescription: "Enable support for CSS dynamic-range-limit value constrained" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| CSSCornerShapeEnabled: |
| type: bool |
| category: css |
| status: stable |
| humanReadableName: "CSS corner-shape property" |
| humanReadableDescription: "Enable support for CSS corner-shape property" |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| CSSCounterStyleAtRuleImageSymbolsEnabled: |
| type: bool |
| status: testable |
| category: css |
| humanReadableName: "CSS @counter-style <image> symbols" |
| humanReadableDescription: "Enable support for <image> symbols in CSS @counter-style rules" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| CSSDPropertyEnabled: |
| type: bool |
| status: preview |
| category: css |
| humanReadableName: "CSS d property" |
| humanReadableDescription: "Enable support for the CSS d property and SVG d presentation attribute" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| CSSDynamicRangeLimitMixEnabled: |
| type: bool |
| category: css |
| status: testable |
| humanReadableName: "CSS dynamic-range-limit-mix()" |
| humanReadableDescription: "Enable support for CSS dynamic-range-limit-mix(), but animation stays unsupported" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| CSSFieldSizingEnabled: |
| type: bool |
| status: stable |
| category: css |
| humanReadableName: "CSS field-sizing property" |
| humanReadableDescription: "Enable field-sizing CSS property" |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| CSSFontFaceMetricOverrideDescriptorsEnabled: |
| type: bool |
| status: stable |
| category: css |
| humanReadableName: "CSS @font-face metric override descriptors" |
| humanReadableDescription: "Enable CSS @font-face metric override descriptors" |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| CSSFontSynthesisStyleObliqueOnlyEnabled: |
| type: bool |
| status: preview |
| category: css |
| humanReadableName: "CSS font-synthesis-style: oblique-only" |
| humanReadableDescription: "Enable the oblique-only value for the font-synthesis-style CSS property" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| CSSFontVariantEmojiEnabled: |
| type: bool |
| status: preview |
| category: css |
| humanReadableName: "CSS font-variant-emoji property" |
| humanReadableDescription: "Enable the font-variant-emoji CSS property" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "PLATFORM(GTK) || PLATFORM(WPE)": true |
| default: false |
| WebCore: |
| default: false |
| |
| CSSFunctionAtRuleEnabled: |
| type: bool |
| status: stable |
| category: css |
| humanReadableName: "CSS @function" |
| humanReadableDescription: "Enable CSS @function rule" |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| CSSIdentFunctionEnabled: |
| type: bool |
| status: stable |
| category: css |
| humanReadableName: "CSS ident() function" |
| humanReadableDescription: "Enable the CSS Values 5 ident() function" |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| CSSIfFunctionEnabled: |
| type: bool |
| category: css |
| status: stable |
| humanReadableName: "CSS if() function" |
| humanReadableDescription: "Enable CSS Values 5 if() conditional substitution function" |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| CSSInheritFunctionEnabled: |
| type: bool |
| status: stable |
| category: css |
| humanReadableName: "CSS inherit() function" |
| humanReadableDescription: "Enable the CSS Values 5 inherit() function" |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| CSSInputSecurityEnabled: |
| type: bool |
| status: testable |
| category: css |
| humanReadableName: "CSS Input Security" |
| humanReadableDescription: "Enable input-security CSS property" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| CSSInternalAutoBaseParsingEnabled: |
| type: bool |
| status: internal |
| category: css |
| humanReadableName: "CSS -internal-auto-base() in author sheet" |
| humanReadableDescription: "Enable parsing -internal-auto-base() in author sheet" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| CSSLineClampEnabled: |
| type: bool |
| status: preview |
| category: css |
| humanReadableName: "CSS line-clamp" |
| humanReadableDescription: "Enable CSS line-clamp" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| CSSLineFitEdgeEnabled: |
| type: bool |
| status: unstable |
| category: css |
| humanReadableName: "CSS line-fit-edge" |
| humanReadableDescription: "Enable CSS line-fit-edge" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| CSSMarkerContentEnabled: |
| type: bool |
| status: stable |
| category: css |
| humanReadableName: "CSS content on ::marker" |
| humanReadableDescription: "Enable the content property on the ::marker pseudo-element" |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| CSSMathDepthEnabled: |
| type: bool |
| status: stable |
| category: css |
| humanReadableName: "CSS math-depth" |
| humanReadableDescription: "Enable support for math-depth from MathML Core." |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| CSSObjectViewBoxEnabled: |
| type: bool |
| status: stable |
| category: css |
| humanReadableName: "CSS object-view-box property" |
| humanReadableDescription: "Enable support for CSS object-view-box property" |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| CSSOverflowClipMarginEnabled: |
| type: bool |
| status: testable |
| category: css |
| humanReadableName: "CSS overflow-clip-margin" |
| humanReadableDescription: "Enable CSS overflow-clip-margin" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| CSSPaintingAPIEnabled: |
| type: bool |
| status: testable |
| category: css |
| humanReadableName: "CSS Painting API" |
| humanReadableDescription: "Enable the CSS Painting API" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "ENABLE(EXPERIMENTAL_FEATURES)": true |
| default: false |
| WebCore: |
| default: false |
| |
| CSSPickerPseudoElementEnabled: |
| type: bool |
| status: internal |
| category: css |
| humanReadableName: "CSS ::picker() pseudo-element" |
| humanReadableDescription: "Enable the CSS ::picker() pseudo-element" |
| defaultValue: |
| WebKitLegacy: |
| "PLATFORM(WATCHOS)": false |
| default: true |
| WebKit: |
| "PLATFORM(WATCHOS)": false |
| default: true |
| WebCore: |
| "PLATFORM(WATCHOS)": false |
| default: true |
| |
| CSSRandomFunctionEnabled: |
| type: bool |
| category: css |
| status: stable |
| humanReadableName: "CSS random()" |
| humanReadableDescription: "Enable support for CSS Values and Units Module Level 5 random()" |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| CSSRandomItemFunctionEnabled: |
| type: bool |
| category: css |
| status: stable |
| humanReadableName: "CSS random-item()" |
| humanReadableDescription: "Enable support for CSS Values and Units Module Level 5 random-item()" |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| CSSRhythmicSizingEnabled: |
| type: bool |
| status: testable |
| category: css |
| humanReadableName: "CSS Rhythmic Sizing" |
| humanReadableDescription: "Enable CSS Rhythmic Sizing properties" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| CSSRubyDisplayTypesInAuthorStylesEnabled: |
| type: bool |
| status: unstable |
| category: css |
| humanReadableName: "CSS Ruby Display Types in Author Styles" |
| humanReadableDescription: "Enable CSS Ruby Display types in author styles" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| CSSScrollAnchoringEnabled: |
| type: bool |
| status: stable |
| category: css |
| humanReadableName: "CSS Scroll Anchoring" |
| humanReadableDescription: "Enable CSS Scroll Anchoring" |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| CSSScrollStateContainerQueriesEnabled: |
| type: bool |
| status: testable |
| category: css |
| humanReadableName: "CSS Scroll State Container Queries" |
| humanReadableDescription: "Enable scroll-state value for container-type CSS property" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| CSSScrollbarColorEnabled: |
| type: bool |
| status: stable |
| category: css |
| humanReadableName: "CSS scrollbar-color property" |
| humanReadableDescription: "Enable scrollbar-color CSS property" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: defaultScrollbarColorEnabled() |
| WebCore: |
| default: false |
| |
| CSSScrollbarGutterEnabled: |
| type: bool |
| status: stable |
| category: css |
| humanReadableName: "CSS scrollbar-gutter property" |
| humanReadableDescription: "Enable scrollbar-gutter CSS property" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| CSSScrollbarWidthEnabled: |
| type: bool |
| status: stable |
| category: css |
| humanReadableName: "CSS scrollbar-width property" |
| humanReadableDescription: "Enable scrollbar-width CSS property" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| CSSSelectorJITCompilerEnabled: |
| type: bool |
| status: internal |
| category: css |
| humanReadableName: "CSS Selector JIT Compiler" |
| humanReadableDescription: "Enable the JIT compiler for CSS selectors" |
| condition: ENABLE(CSS_SELECTOR_JIT) |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| CSSTextDecorationInsetEnabled: |
| type: bool |
| status: stable |
| category: css |
| webcoreOnChange: setNeedsRecalcStyleInAllFrames |
| humanReadableName: "CSS text-decoration-inset property" |
| humanReadableDescription: "Enable the text-decoration-inset property, defined in CSS Text Decoration 4" |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| CSSTextDecorationLineErrorValues: |
| type: bool |
| status: stable |
| category: css |
| humanReadableName: "CSS text-decoration-line: spelling-error/grammar-error" |
| humanReadableDescription: "Enable support for spelling-error and grammar-error values on text-decoration-line" |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| CSSTextGroupAlignEnabled: |
| type: bool |
| status: testable |
| category: css |
| humanReadableName: "CSS text-group-align property" |
| humanReadableDescription: "Enable text-group-align CSS property" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| CSSTextJustifyEnabled: |
| type: bool |
| status: testable |
| category: css |
| humanReadableName: "CSS text-justify property" |
| humanReadableDescription: "Enable the property text-justify, defined in CSS Text 3" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| CSSTextSpacingTrimEnabled: |
| type: bool |
| status: testable |
| category: css |
| humanReadableName: "CSS text-spacing-trim property" |
| humanReadableDescription: "Enable the property text-spacing-trim, defined in CSS Text 4" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| CSSTextTransformMathAutoEnabled: |
| type: bool |
| status: testable |
| category: css |
| humanReadableName: "CSS text-transform: math-auto" |
| humanReadableDescription: "Enable the math-auto text transform." |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "PLATFORM(GTK) || PLATFORM(WPE)": true |
| default: false |
| WebCore: |
| default: false |
| |
| CSSTextWrapPrettyEnabled: |
| type: bool |
| status: stable |
| category: css |
| humanReadableName: "CSS text-wrap: pretty" |
| humanReadableDescription: "Enable the pretty value for text-wrap-style" |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| CSSToggleFunctionEnabled: |
| type: bool |
| status: testable |
| category: css |
| humanReadableName: "CSS toggle() function" |
| humanReadableDescription: "Enable CSS Values 5 toggle() function" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| CSSTransformStyleSeparatedEnabled: |
| type: bool |
| status: testable |
| category: css |
| humanReadableName: "CSS transform-style: separated" |
| humanReadableDescription: "Enable transform-style: separated property to access the separated graphics layer" |
| condition: HAVE(CORE_ANIMATION_SEPARATED_LAYERS) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| CSSTreeCountingFunctionsEnabled: |
| type: bool |
| category: css |
| status: stable |
| humanReadableName: "CSS Tree Counting Functions" |
| humanReadableDescription: "Enable support for CSS Values and Units Module Level 5 tree counting functions sibling-count() and sibling-index()" |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| CSSTypedOMColorEnabled: |
| type: bool |
| status: testable |
| category: css |
| humanReadableName: "CSS Typed OM: Color Support" |
| humanReadableDescription: "Enable the CSS Typed OM Color support" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| CSSURLIntegrityModifierEnabled: |
| type: bool |
| status: testable |
| category: css |
| humanReadableName: "CSS URL Modifiers: integrity()" |
| humanReadableDescription: "Enable support for CSS Values and Units Module Level 5 URL integrity() modifier" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| CSSURLModifiersEnabled: |
| type: bool |
| status: stable |
| category: css |
| humanReadableName: "CSS URL Modifiers" |
| humanReadableDescription: "Enable support for CSS Values and Units Module Level 5 URL modifiers" |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| CSSUnprefixedBackdropFilterEnabled: |
| type: bool |
| status: Backdropfilter_feature_status |
| category: css |
| humanReadableName: "CSS Unprefixed Backdrop Filter" |
| humanReadableDescription: "Enable unprefixed backdrop-filter CSS property" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "ENABLE(UNPREFIXED_BACKDROP_FILTER)": true |
| default: false |
| WebCore: |
| "ENABLE(UNPREFIXED_BACKDROP_FILTER)": true |
| default: false |
| |
| CSSUserSelectEnabled: |
| type: bool |
| status: testable |
| category: css |
| humanReadableName: "CSS Unprefixed User Select" |
| humanReadableDescription: "Enable the unprefixed user-select CSS property" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| CSSWhiteSpaceTrimEnabled: |
| type: bool |
| status: stable |
| category: css |
| webcoreOnChange: setNeedsRecalcStyleInAllFrames |
| humanReadableName: "CSS white-space-trim property" |
| humanReadableDescription: "Enable the property white-space-trim, defined in CSS Text 4" |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| CSSWordBreakAutoPhraseEnabled: |
| type: bool |
| status: preview |
| category: css |
| webcoreOnChange: setNeedsRecalcStyleInAllFrames |
| humanReadableName: "word-break: auto-phrase enabled" |
| humanReadableDescription: "Enables the auto-phrase value of the word-break CSS property" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| CSSWrapInsideEnabled: |
| type: bool |
| status: stable |
| category: css |
| webcoreOnChange: setNeedsRecalcStyleInAllFrames |
| humanReadableName: "CSS wrap-inside property" |
| humanReadableDescription: "Enable the wrap-inside property, defined in CSS Text 4" |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| # FIXME: This is not relevant for WebKitLegacy, so it should be excluded from WebKitLegacy entirely (though we should still set the default value to false when initializing settings). |
| CacheAPIEnabled: |
| type: bool |
| status: embedder |
| humanReadableName: "Cache API" |
| humanReadableDescription: "Cache API" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: true |
| WebCore: |
| default: false |
| disableInLockdownMode: true |
| richJavaScript: true |
| |
| CanvasColorSpaceEnabled: |
| type: bool |
| status: stable |
| category: dom |
| humanReadableName: "Canvas Color Spaces" |
| humanReadableDescription: "Enable use of predefined canvas color spaces" |
| defaultValue: |
| WebKitLegacy: |
| "PLATFORM(COCOA) || PLATFORM(GTK) || PLATFORM(WPE)": true |
| default: false |
| WebKit: |
| "PLATFORM(COCOA) || PLATFORM(GTK) || PLATFORM(WPE)": true |
| default: false |
| WebCore: |
| default: false |
| |
| CanvasColorTypeEnabled: |
| type: bool |
| status: testable |
| category: dom |
| humanReadableName: "Canvas Color Types and ImageData Pixel Formats" |
| humanReadableDescription: "Allow different color types and pixel formats in 2D canvas" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| disableInLockdownMode: true |
| sharedPreferenceForWebProcess: true |
| |
| CanvasFiltersEnabled: |
| type: bool |
| status: testable |
| category: dom |
| webcoreOnChange: setNeedsRelayoutAllFrames |
| humanReadableName: "Canvas Filters" |
| humanReadableDescription: "Canvas Filters" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| CanvasFingerprintingQuirkEnabled: |
| type: bool |
| status: stable |
| category: dom |
| humanReadableName: "Enable Canvas fingerprinting-related quirk" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| CanvasLayersEnabled: |
| type: bool |
| status: testable |
| category: dom |
| humanReadableName: "Canvas Layers" |
| humanReadableDescription: "Enable Canvas Layers" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| CanvasUsesAcceleratedDrawing: |
| type: bool |
| status: embedder |
| humanReadableName: "Canvas uses accelerated drawing" |
| condition: USE(CA) || USE(SKIA) |
| defaultValue: |
| WebKitLegacy: |
| "PLATFORM(IOS_FAMILY) && !PLATFORM(IOS_FAMILY_SIMULATOR)": true |
| default: false |
| WebKit: |
| default: true |
| WebCore: |
| default: false |
| |
| CaptionDisplaySettingsEnabled: |
| type: bool |
| status: internal |
| defaultsOverridable: true |
| category: media |
| humanReadableName: "Caption Display Settings API" |
| humanReadableDescription: "Enable Caption Display Settings API" |
| condition: ENABLE(VIDEO) |
| defaultValue: |
| WebKit: |
| default: WebKit::defaultCaptionDisplaySettingsEnabled() |
| WebKitLegacy: |
| default: false |
| WebCore: |
| default: false |
| |
| CaptureAudioInGPUProcessEnabled: |
| type: bool |
| status: internal |
| category: media |
| humanReadableName: "GPU Process: Audio Capture" |
| humanReadableDescription: "Enable audio capture in GPU Process" |
| webcoreBinding: none |
| condition: ENABLE(MEDIA_STREAM) |
| exposed: [ WebKit ] |
| defaultValue: |
| WebKit: |
| default: WebKit::defaultCaptureAudioInGPUProcessEnabled() |
| |
| CaptureVideoInGPUProcessEnabled: |
| type: bool |
| status: internal |
| category: media |
| humanReadableName: "GPU Process: Video Capture" |
| humanReadableDescription: "Enable video capture in GPU Process" |
| webcoreBinding: none |
| condition: ENABLE(MEDIA_STREAM) |
| exposed: [ WebKit ] |
| defaultValue: |
| WebKit: |
| "ENABLE(GPU_PROCESS_BY_DEFAULT)": true |
| default: false |
| |
| CaretBrowsingEnabled: |
| type: bool |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| CaretPositionFromPointEnabled: |
| type: bool |
| status: stable |
| category: dom |
| humanReadableName: "document.caretPositionFromPoint() API" |
| humanReadableDescription: "Enable document.caretPositionFromPoint() API" |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| ChildProcessDebuggabilityEnabled: |
| comment: Disables GPU process IPC timeouts |
| type: bool |
| status: internal |
| humanReadableName: "Child Process Debuggability" |
| humanReadableDescription: "Enable stopping child processes with a debugger" |
| exposed: [ WebKit ] |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| ClearSiteDataExecutionContextsSupportEnabled: |
| type: bool |
| status: testable |
| category: networking |
| humanReadableName: "Clear-Site-Data: 'executionContexts' support" |
| humanReadableDescription: "Enable Clear-Site-Data: 'executionContexts' support" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| ClearSiteDataHTTPHeaderEnabled: |
| type: bool |
| status: stable |
| category: networking |
| humanReadableName: "Clear-Site-Data HTTP Header" |
| humanReadableDescription: "Enable Clear-Site-Data HTTP Header support" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: true |
| WebCore: |
| default: false |
| |
| CloseWatcherEnabled: |
| type: bool |
| status: stable |
| category: html |
| humanReadableName: "Close Watcher API" |
| humanReadableDescription: "Enable Close Watcher API including dialog closedby attribute" |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| ColorFilterEnabled: |
| type: bool |
| status: embedder |
| webcoreOnChange: setNeedsRecalcStyleInAllFrames |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| CommandAttributesEnabled: |
| type: bool |
| status: stable |
| category: html |
| humanReadableName: "HTML command & commandfor attributes" |
| humanReadableDescription: "Enable HTML command & commandfor attribute support" |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| # FIXME: WebKit has an alternate name for this called 'ShowDebugBorders'. We should standardize on one name. |
| CompositingBordersVisible: |
| type: bool |
| status: internal |
| defaultsOverridable: true |
| humanReadableName: "Compositing borders visible" |
| webKitLegacyPreferenceKey: WebKitShowDebugBorders |
| webcoreName: showDebugBorders |
| webcoreOnChange: setNeedsRecalcStyleInAllFrames |
| inspectorOverride: true |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| # FIXME: WebKit has an alternate name for this called 'ShowRepaintCounter'. We should standardize on one name. |
| CompositingRepaintCountersVisible: |
| type: bool |
| status: internal |
| defaultsOverridable: true |
| humanReadableName: "Compositing repaint counters visible" |
| webKitLegacyPreferenceKey: WebKitShowRepaintCounter |
| webcoreName: showRepaintCounter |
| webcoreOnChange: setNeedsRecalcStyleInAllFrames |
| inspectorOverride: true |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| CompressionStreamEnabled: |
| type: bool |
| status: stable |
| category: dom |
| humanReadableName: "Compression Stream API" |
| humanReadableDescription: "Enable Compression Stream API" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: true |
| WebCore: |
| default: false |
| |
| ConsistentQueryParameterFilteringInternalQuirkEnabled: |
| type: bool |
| status: internal |
| category: dom |
| humanReadableName: "Consistent Query Parameter Filtering Internal" |
| humanReadableDescription: "Enable internal consistent query parameter filtering" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| ConsistentQueryParameterFilteringQuirkEnabled: |
| type: bool |
| status: stable |
| category: dom |
| humanReadableName: "Consistent Query Parameter Filtering" |
| humanReadableDescription: "Enable consistent query parameter filtering" |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| ContactPickerAPIEnabled: |
| type: bool |
| status: testable |
| category: dom |
| humanReadableName: "Contact Picker API" |
| humanReadableDescription: "Enable the Contact Picker API" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| sharedPreferenceForWebProcess: true |
| richJavaScript: true |
| |
| ContentChangeObserverEnabled: |
| type: bool |
| status: embedder |
| condition: ENABLE(CONTENT_CHANGE_OBSERVER) |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: defaultContentChangeObserverEnabled() |
| WebCore: |
| 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 |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| PLATFORM(COCOA): true |
| default: false |
| WebCore: |
| default: false |
| |
| ContentInsetBackgroundFillEnabled: |
| type: bool |
| status: internal |
| humanReadableName: "Content Inset Background Fill" |
| humanReadableDescription: "Fill content insets with background colors" |
| defaultValue: |
| WebKit: |
| default: WebKit::defaultContentInsetBackgroundFillEnabled() |
| WebKitLegacy: |
| default: false |
| WebCore: |
| default: false |
| |
| ContextMenuQRCodeDetectionEnabled: |
| type: bool |
| status: embedder |
| condition: ENABLE(CONTEXT_MENU_QR_CODE_DETECTION) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| 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 |
| status: embedder |
| humanReadableName: "Cookies Enabled" |
| webKitLegacyBinding: custom |
| defaultValue: |
| WebKit: |
| default: true |
| WebKitLegacy: |
| default: true |
| WebCore: |
| default: true |
| |
| CookieStoreAPIEnabled: |
| type: bool |
| category: dom |
| status: stable |
| humanReadableName: "Cookie Store API" |
| humanReadableDescription: "Enable Cookie Store API" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: defaultCookieStoreAPIEnabled() |
| WebCore: |
| default: true |
| sharedPreferenceForWebProcess: true |
| richJavaScript: true |
| |
| CookieStoreManagerEnabled: |
| type: bool |
| category: dom |
| status: testable |
| humanReadableName: "Cookie Store API CookieStoreManager" |
| humanReadableDescription: "Enable Cookie Store API CookieStoreManager which controls cookie change subscriptions for Service Workers" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| sharedPreferenceForWebProcess: true |
| richJavaScript: true |
| |
| CoreMathMLDeprecateLegacyMathvariant: |
| type: bool |
| status: testable |
| category: dom |
| humanReadableName: "Deprecate legacy mathvariant" |
| humanReadableDescription: "Align the mathvariant attribute with MathML Core, disabling all variants except italic." |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| CoreMathMLEnabled: |
| type: bool |
| status: unstable |
| category: dom |
| webcoreOnChange: setNeedsRecalcStyleInAllFrames |
| humanReadableName: "MathML Core" |
| humanReadableDescription: "Disable features removed from the MathML Core spec." |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "PLATFORM(GTK) || PLATFORM(WPE)": true |
| default: false |
| WebCore: |
| default: false |
| |
| CrossOriginEmbedderPolicyEnabled: |
| type: bool |
| status: stable |
| category: security |
| humanReadableName: "Cross-Origin-Embedder-Policy (COEP) header" |
| humanReadableDescription: "Support for Cross-Origin-Embedder-Policy (COEP) header" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: true |
| WebCore: |
| default: false |
| |
| CrossOriginOpenerPolicyEnabled: |
| type: bool |
| status: stable |
| category: security |
| humanReadableName: "Cross-Origin-Opener-Policy (COOP) header" |
| humanReadableDescription: "Support for Cross-Origin-Opener-Policy (COOP) header" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: true |
| WebCore: |
| default: false |
| |
| CursiveFontFamily: |
| type: String |
| status: embedder |
| webKitLegacyPreferenceKey: WebKitCursiveFont |
| webcoreImplementation: custom |
| defaultValue: |
| WebKitLegacy: |
| "PLATFORM(IOS_FAMILY)": '"Snell Roundhand"_str' |
| default: '"Apple Chancery"_str' |
| WebKit: |
| "PLATFORM(COCOA) && PLATFORM(IOS_FAMILY)": '"Snell Roundhand"_str' |
| "PLATFORM(COCOA) && !PLATFORM(IOS_FAMILY)": '"Apple Chancery"_str' |
| default: '"Comic Sans MS"_str' |
| WebCore: |
| default: '""_str' |
| |
| CustomPasteboardDataEnabled: |
| type: bool |
| status: embedder |
| humanReadableName: "Custom pasteboard data" |
| humanReadableDescription: "Enable custom clipboard types and better security model for clipboard API." |
| webcoreBinding: DeprecatedGlobalSettings |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "PLATFORM(COCOA) || PLATFORM(GTK) || PLATFORM(WPE) || PLATFORM(WIN)": true |
| default: false |
| |
| DOMAudioSessionEnabled: |
| type: bool |
| status: mature |
| category: media |
| humanReadableName: "AudioSession API" |
| humanReadableDescription: "Enable AudioSession API" |
| condition: ENABLE(DOM_AUDIO_SESSION) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| DOMAudioSessionFullEnabled: |
| type: bool |
| status: testable |
| category: media |
| humanReadableName: "AudioSession full API" |
| humanReadableDescription: "Enable AudioSession full API" |
| condition: ENABLE(DOM_AUDIO_SESSION) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| DOMPasteAccessRequestsEnabled: |
| type: bool |
| status: internal |
| category: dom |
| humanReadableName: "DOM Paste Access Requests" |
| humanReadableDescription: "Enable DOM Paste Access Requests" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "PLATFORM(IOS) || PLATFORM(MAC) || PLATFORM(GTK) || PLATFORM(WPE) || PLATFORM(WIN) || PLATFORM(VISION)": true |
| default: false |
| WebCore: |
| default: false |
| |
| DOMPasteAllowed: |
| type: bool |
| status: embedder |
| webKitLegacyPreferenceKey: WebKitDOMPasteAllowedPreferenceKey |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| DOMTestingAPIsEnabled: |
| type: bool |
| status: internal |
| category: dom |
| humanReadableName: "Additional Testing APIs for DOM Objects" |
| humanReadableDescription: "Enable additional testing APIs for DOM objects" |
| defaultValue: |
| WebCore: |
| default: false |
| WebKit: |
| default: false |
| WebKitLegacy: |
| default: false |
| |
| DOMTimersThrottlingEnabled: |
| type: bool |
| status: embedder |
| humanReadableName: "DOM timer throttling enabled" |
| webKitLegacyPreferenceKey: WebKitDOMTimersThrottlingEnabledPreferenceKey |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| DamageRectangleThreshold: |
| type: uint32_t |
| status: unstable |
| category: dom |
| humanReadableName: "Damage Rectangle Threshold" |
| humanReadableDescription: "Maximum number of damage rectangles to track before damaged regions are unified into their bounding box" |
| condition: ENABLE(DAMAGE_TRACKING) |
| defaultValue: |
| WebKitLegacy: |
| default: 4 |
| WebKit: |
| default: 4 |
| WebCore: |
| default: 4 |
| |
| DataDetectorTypes: |
| type: uint32_t |
| refinedType: WebCore::DataDetectorType |
| status: embedder |
| condition: ENABLE(DATA_DETECTION) |
| defaultValue: |
| WebKitLegacy: |
| default: static_cast<DataDetectorType>(0) |
| WebKit: |
| default: static_cast<DataDetectorType>(0) |
| WebCore: |
| default: static_cast<DataDetectorType>(0) |
| |
| # FIXME: This is on by default in WebKit2 (for everything but WatchOS). Perhaps we should consider turning it on for WebKitLegacy as well. |
| DataListElementEnabled: |
| type: bool |
| status: mature |
| humanReadableName: "DataList Element" |
| humanReadableDescription: "Enable datalist elements" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "(PLATFORM(COCOA) && !PLATFORM(WATCHOS)) || PLATFORM(GTK)": true |
| default: false |
| WebCore: |
| "(PLATFORM(COCOA) && !PLATFORM(WATCHOS)) || PLATFORM(GTK)": true |
| default: false |
| sharedPreferenceForWebProcess: true |
| |
| DataTransferItemsEnabled: |
| type: bool |
| status: embedder |
| humanReadableName: "Data Transfer Items" |
| humanReadableDescription: "Enables DataTransferItem in the clipboard API" |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| "PLATFORM(COCOA) || PLATFORM(GTK) || PLATFORM(WPE) || PLATFORM(WIN)": true |
| default: false |
| WebCore: |
| default: false |
| |
| DatabasesEnabled: |
| type: bool |
| status: embedder |
| webKitLegacyPreferenceKey: WebKitDatabasesEnabledPreferenceKey |
| webcoreBinding: custom |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| |
| # FIXME: This is on by default in WebKit2 (for macOS at least). Perhaps we should consider turning it on for WebKitLegacy as well. |
| DateTimeInputsEditableComponentsEnabled: |
| type: bool |
| status: embedder |
| humanReadableName: "Date/Time inputs have editable components" |
| humanReadableDescription: "Enable multiple editable components in date/time inputs" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "PLATFORM(MAC) || PLATFORM(GTK)": true |
| default: false |
| WebCore: |
| default: false |
| |
| DeclarativeWebPush: |
| type: bool |
| status: stable |
| category: dom |
| defaultsOverridable: true |
| condition: ENABLE(DECLARATIVE_WEB_PUSH) |
| humanReadableName: "Declarative Web Push" |
| humanReadableDescription: "Enable Declarative Web Push" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: true |
| WebCore: |
| default: false |
| |
| DefaultFixedFontSize: |
| type: double |
| status: embedder |
| webcoreOnChange: setNeedsRecalcStyleInAllFrames |
| defaultValue: |
| WebKitLegacy: |
| default: 13 |
| WebKit: |
| default: 13 |
| WebCore: |
| default: 13 |
| |
| DefaultFontSize: |
| type: double |
| status: embedder |
| webcoreOnChange: setNeedsRecalcStyleInAllFrames |
| defaultValue: |
| WebKitLegacy: |
| default: 16 |
| WebKit: |
| default: 16 |
| WebCore: |
| default: 16 |
| |
| DefaultTextEncodingName: |
| type: String |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| default: '"ISO-8859-1"_str' |
| WebKit: |
| default: PAL::defaultTextEncodingNameForSystemLanguage() |
| WebCore: |
| default: '{ }' |
| |
| DeprecationReportingEnabled: |
| type: bool |
| status: testable |
| category: dom |
| humanReadableName: "Deprecation Reporting" |
| humanReadableDescription: "Enable Deprecation Reporting" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| DetachableMediaSourceEnabled: |
| type: bool |
| status: developer |
| category: media |
| humanReadableName: "Detachable Media Source" |
| humanReadableDescription: "Detachable Media Source API" |
| condition: ENABLE(MEDIA_SOURCE) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| DetailsAutoExpandEnabled: |
| type: bool |
| status: stable |
| category: html |
| humanReadableName: "HTML auto-expanding <details>" |
| humanReadableDescription: "Enable HTML auto-expanding <details>" |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| DeveloperExtrasEnabled: |
| type: bool |
| status: embedder |
| defaultsOverridable: true |
| webKitLegacyPreferenceKey: WebKitDeveloperExtrasEnabledPreferenceKey |
| webKitLegacyBinding: custom |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| DeviceHeight: |
| type: uint32_t |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| default: 0 |
| WebKit: |
| default: 0 |
| WebCore: |
| default: 0 |
| |
| DeviceOrientationEventEnabled: |
| type: bool |
| status: embedder |
| condition: ENABLE(DEVICE_ORIENTATION) |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| sharedPreferenceForWebProcess: true |
| richJavaScript: true |
| |
| |
| DeviceOrientationPermissionAPIEnabled: |
| type: bool |
| status: embedder |
| condition: ENABLE(DEVICE_ORIENTATION) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: defaultDeviceOrientationPermissionAPIEnabled() |
| WebCore: |
| default: false |
| sharedPreferenceForWebProcess: true |
| richJavaScript: true |
| |
| DeviceWidth: |
| type: uint32_t |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| default: 0 |
| WebKit: |
| default: 0 |
| WebCore: |
| default: 0 |
| |
| DiagnosticLoggingEnabled: |
| type: bool |
| status: embedder |
| humanReadableName: "Diagnostic logging enabled" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| DigitalCredentialsEnabled: |
| type: bool |
| status: stable |
| category: dom |
| humanReadableName: "Digital Credentials API" |
| humanReadableDescription: "Enable the Digital Credentials API" |
| condition: ENABLE(WEB_AUTHN) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: WebKit::defaultDigitalCredentialsEnabled() |
| WebCore: |
| default: false |
| sharedPreferenceForWebProcess: true |
| disableInLockdownMode: true |
| richJavaScript: true |
| |
| DigitalCredentialsOpenID4VPEnabled: |
| type: bool |
| status: internal |
| category: dom |
| humanReadableName: "OpenID4VP for Digital Credentials API" |
| humanReadableDescription: "Enable the OpenID4VP presentation protocols for the Digital Credentials API" |
| condition: ENABLE(WEB_AUTHN) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| disableInLockdownMode: true |
| |
| DirectoryUploadEnabled: |
| type: bool |
| status: embedder |
| humanReadableName: "Directory Upload" |
| humanReadableDescription: "input.webkitdirectory / dataTransferItem.webkitGetAsEntry()" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "PLATFORM(COCOA) || PLATFORM(GTK) || PLATFORM(WPE)": true |
| default: false |
| WebCore: |
| default: false |
| |
| # FIXME: Starting the preference name with "Disable" is inconsistent with most other preferences and should be changed. |
| DisableScreenSizeOverride: |
| type: bool |
| status: internal |
| defaultsOverridable: true |
| humanReadableName: "Disable screen size override" |
| webcoreBinding: DeprecatedGlobalSettings |
| condition: PLATFORM(IOS_FAMILY) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| DisabledAdaptationsMetaTagEnabled: |
| type: bool |
| status: embedder |
| 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 |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: true |
| WebCore: |
| default: false |
| |
| DynamicSiteInterventionsEnabled: |
| type: bool |
| status: unstable |
| category: none |
| humanReadableName: "Dynamic Site Interventions" |
| humanReadableDescription: "Enable dynamic site interventions for broken websites" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| EditableLinkBehavior: |
| type: uint32_t |
| refinedType: WebCore::EditableLinkBehavior |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| default: WebKitEditableLinkDefaultBehavior |
| WebKit: |
| default: WebCore::EditableLinkBehavior::NeverLive |
| WebCore: |
| default: EditableLinkBehavior::Default |
| |
| EmbedElementEnabled: |
| type: bool |
| status: mature |
| humanReadableName: "Embed Element" |
| humanReadableDescription: "Embed Element" |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| disableInLockdownMode: true |
| |
| EnableAccessibilityOnDemand: |
| type: bool |
| status: internal |
| category: networking |
| humanReadableName: "Enable Accessibility On Demand" |
| humanReadableDescription: "Enable Accessibility On Demand" |
| webcoreBinding: none |
| condition: PLATFORM(MAC) |
| exposed: [ WebKit ] |
| defaultValue: |
| WebKit: |
| "ENABLE(INITIALIZE_ACCESSIBILITY_ON_DEMAND)": true |
| default: false |
| |
| EnableDebuggingFeaturesInSandbox: |
| type: bool |
| status: internal |
| category: security |
| humanReadableName: "Enable debugging features in sandbox" |
| humanReadableDescription: "Enable debugging features in sandbox" |
| condition: HAVE(SANDBOX_STATE_FLAGS) |
| defaultsOverridable: true |
| webcoreBinding: none |
| exposed: [ WebKit ] |
| defaultValue: |
| WebKit: |
| default: false |
| |
| EnableElementCurrentCSSZoom: |
| type: bool |
| status: stable |
| category: dom |
| humanReadableName: "Enable Element.currentCSSZoom" |
| humanReadableDescription: "Enable Element.currentCSSZoom" |
| defaultValue: |
| WebKitLegacy: |
| "PLATFORM(COCOA)": true |
| default: false |
| WebKit: |
| "PLATFORM(COCOA)": true |
| default: false |
| WebCore: |
| "PLATFORM(COCOA)": true |
| default: false |
| |
| EnableInheritURIQueryComponent: |
| type: bool |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| EnableOpaqueLoadingForMedia: |
| type: bool |
| status: internal |
| category: media |
| humanReadableName: "Opaque loading for media" |
| humanReadableDescription: "Enable opaque loading for media" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: true |
| WebCore: |
| default: false |
| |
| EncryptedMediaAPIEnabled: |
| type: bool |
| status: embedder |
| condition: ENABLE(ENCRYPTED_MEDIA) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "PLATFORM(GTK) || PLATFORM(WPE)": false |
| default: true |
| WebCore: |
| default: false |
| sharedPreferenceForWebProcess: true |
| mediaPlaybackRelated: true |
| |
| EnhancedSecurityForceDisabled: |
| type: bool |
| status: internal |
| category: security |
| defaultsOverridable: true |
| humanReadableName: "Force disable Enhanced Security" |
| humanReadableDescription: "Disables Enhanced Security for all navigations" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| EnhancedSecurityHeuristicsEnabled: |
| type: bool |
| status: stable |
| category: security |
| defaultsOverridable: true |
| humanReadableName: "Enable EnhancedSecurity Heuristics" |
| humanReadableDescription: "Triggers EnhancedSecurity when insecure HTTP loads occur" |
| defaultValue: |
| WebKitLegacy: |
| "PLATFORM(COCOA)": true |
| default: false |
| WebKit: |
| "PLATFORM(COCOA)": true |
| default: false |
| WebCore: |
| "PLATFORM(COCOA)": true |
| default: false |
| |
| EnhancedSecurityLinksEnabled: |
| type: bool |
| status: stable |
| category: security |
| condition: HAVE(ENHANCED_SECURITY_LINKS) |
| defaultsOverridable: true |
| humanReadableName: "Enhanced Security for links" |
| humanReadableDescription: "Enables additional Enhanced Security support for certain links" |
| defaultValue: |
| WebKitLegacy: |
| "PLATFORM(COCOA)": true |
| default: false |
| WebKit: |
| "PLATFORM(COCOA)": true |
| default: false |
| WebCore: |
| "PLATFORM(COCOA)": true |
| default: false |
| |
| EnterKeyHintEnabled: |
| type: bool |
| status: internal |
| category: dom |
| humanReadableName: "Enter Key Hint" |
| humanReadableDescription: "Enable the enterKeyHint HTML attribute" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "PLATFORM(COCOA)": true |
| default: false |
| WebCore: |
| default: false |
| |
| EnumeratedARIAAttributeReflectionEnabled: |
| type: bool |
| status: developer |
| category: javascript |
| humanReadableName: "Enumerated ARIA Attribute Reflection" |
| humanReadableDescription: "Enable enumerated ARIA attributes" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| EnumeratingAllNetworkInterfacesEnabled: |
| type: bool |
| status: internal |
| humanReadableName: "Enable Enumerating All Network Interfaces" |
| webcoreBinding: none |
| exposed: [ WebKit ] |
| defaultValue: |
| WebKit: |
| default: false |
| |
| EnumeratingVisibleNetworkInterfacesEnabled: |
| type: bool |
| status: internal |
| humanReadableName: "Enable Enumerating Visible Network Interfaces" |
| webcoreBinding: none |
| exposed: [ WebKit ] |
| defaultValue: |
| WebKit: |
| default: true |
| |
| EventHandlerDrivenSmoothKeyboardScrollingEnabled: |
| type: bool |
| status: internal |
| category: dom |
| humanReadableName: "EventHandler driven smooth keyboard scrolling" |
| humanReadableDescription: "Enable EventHandler driven smooth keyboard scrolling" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "PLATFORM(MAC)": WebKit::defaultScrollAnimatorEnabled() |
| default: false |
| WebCore: |
| default: false |
| |
| EventTimingEnabled: |
| type: bool |
| status: stable |
| category: dom |
| humanReadableName: "Event Timing API" |
| humanReadableDescription: "Enable the Event Timing API and supporting instrumentation" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| ExperimentalSandboxEnabled: |
| type: bool |
| status: internal |
| category: security |
| humanReadableName: "Enable experimental sandbox features" |
| humanReadableDescription: "Enable experimental sandbox features" |
| condition: HAVE(MACH_BOOTSTRAP_EXTENSION) || HAVE(SANDBOX_STATE_FLAGS) |
| webcoreBinding: none |
| exposed: [ WebKit ] |
| defaultValue: |
| WebKit: |
| default: false |
| |
| ExplicitResourceManagementEnabled: |
| type: bool |
| status: stable |
| category: javascript |
| humanReadableName: "Explicit Resource Management" |
| humanReadableDescription: "Enable explicit resource management builtins and syntax." |
| webcoreBinding: none |
| jscOptionName: useExplicitResourceManagement |
| sharedPreferenceForWebProcess: true |
| defaultValue: |
| WebKit: |
| default: true |
| |
| ExposeCaptureDevicesAfterCaptureEnabled: |
| type: bool |
| status: internal |
| category: media |
| humanReadableName: "Expose all capture devices when one is used" |
| humanReadableDescription: "Expose all capture devices when one is used" |
| condition: ENABLE(MEDIA_STREAM) |
| defaultValue: |
| WebKit: |
| default: true |
| WebCore: |
| default: false |
| |
| ExposeDefaultSpeakerAsSpecificDeviceEnabled: |
| type: bool |
| status: internal |
| category: media |
| humanReadableName: "Expose the system default speaker as a specific device" |
| humanReadableDescription: "Expose the system default speaker as a specific device" |
| condition: ENABLE(MEDIA_STREAM) |
| defaultValue: |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| ExposeRollAngleAsTwistEnabled: |
| type: bool |
| status: unstable |
| category: dom |
| humanReadableName: "Expose Apple Pencil rotation for twist PointerEvent Property" |
| humanReadableDescription: "Expose Apple Pencil rotation for the `twist` PointerEvent Property" |
| condition: HAVE(UITOUCH_ROLLANGLE) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| ExposeSpeakersEnabled: |
| type: bool |
| status: internal |
| category: media |
| humanReadableName: "Allow speaker device selection" |
| humanReadableDescription: "Allow speaker device selection" |
| condition: ENABLE(MEDIA_STREAM) |
| defaultValue: |
| WebKit: |
| "PLATFORM(COCOA)": true |
| default: false |
| WebCore: |
| default: false |
| |
| ExposeSpeakersWithoutMicrophoneEnabled: |
| type: bool |
| status: internal |
| category: media |
| humanReadableName: "Allow selection of speaker device without related microphone" |
| humanReadableDescription: "Allow selection of speaker device without related microphone" |
| condition: ENABLE(MEDIA_STREAM) |
| defaultValue: |
| WebKit: |
| "PLATFORM(COCOA)": true |
| default: false |
| WebCore: |
| default: false |
| |
| ExtendedAudioDescriptionsEnabled: |
| type: bool |
| status: stable |
| category: media |
| condition: ENABLE(VIDEO) |
| humanReadableName: "Audio descriptions for video - Extended" |
| humanReadableDescription: "Enable extended audio descriptions for video" |
| defaultValue: |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| ExtendedProofreadingEnabled: |
| type: bool |
| status: internal |
| humanReadableName: "Extended Proofreading" |
| humanReadableDescription: "Enable Extended Proofreading" |
| condition: PLATFORM(COCOA) |
| defaultValue: |
| WebCore: |
| default: false |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: WebKit::defaultExtendedProofreadingEnabled() |
| sharedPreferenceForWebProcess: true |
| |
| ExtensibleSSOEnabled: |
| type: bool |
| status: embedder |
| getter: isExtensibleSSOEnabled |
| webcoreBinding: none |
| condition: HAVE(APP_SSO) |
| exposed: [ WebKit ] |
| defaultValue: |
| WebKit: |
| default: true |
| |
| FTPEnabled: |
| type: bool |
| status: developer |
| category: networking |
| humanReadableName: "FTP support enabled" |
| humanReadableDescription: "FTP support enabled" |
| defaultValue: |
| WebCore: |
| default: false |
| WebKit: |
| default: false |
| WebKitLegacy: |
| default: false |
| |
| FacebookLiveRecordingQuirkEnabled: |
| type: bool |
| status: internal |
| humanReadableName: "Facebook Live Recording Quirk" |
| humanReadableDescription: "Enable Facebook Live Recording Quirk" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: WebKit::defaultFacebookLiveRecordingQuirkEnabled() |
| WebCore: |
| default: false |
| |
| FantasyFontFamily: |
| type: String |
| status: embedder |
| webKitLegacyPreferenceKey: WebKitFantasyFont |
| webcoreImplementation: custom |
| defaultValue: |
| WebKitLegacy: |
| default: '"Papyrus"_str' |
| WebKit: |
| "PLATFORM(COCOA)": '"Papyrus"_str' |
| default: '"Impact"_str' |
| WebCore: |
| default: '""_str' |
| |
| FasterClicksEnabled: |
| type: bool |
| status: internal |
| category: dom |
| humanReadableName: "Fast clicks" |
| humanReadableDescription: "Support faster clicks on zoomable pages" |
| webcoreBinding: none |
| condition: PLATFORM(IOS_FAMILY) |
| exposed: [ WebKit ] |
| defaultValue: |
| WebKit: |
| default: true |
| |
| FetchUploadStreamsEnabled: |
| type: bool |
| status: testable |
| category: networking |
| humanReadableName: "Fetch upload streams" |
| humanReadableDescription: "Enable ReadableStream request bodies for fetch(). HTTP/2 (or later) required." |
| exposed: [ WebKit ] |
| defaultValue: |
| WebCore: |
| default: false |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| |
| FileReaderAPIEnabled: |
| type: bool |
| status: embedder |
| humanReadableName: "FileReader API" |
| humanReadableDescription: "FileReader API" |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| disableInLockdownMode: true |
| |
| FileSystemEnabled: |
| type: bool |
| status: mature |
| category: dom |
| humanReadableName: "File System API" |
| humanReadableDescription: "Enable File System API" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "PLATFORM(COCOA)" : true |
| "PLATFORM(GTK) || PLATFORM(WPE)" : true |
| default: false |
| WebCore: |
| "PLATFORM(COCOA)" : true |
| "PLATFORM(GTK) || PLATFORM(WPE)" : true |
| default: false |
| disableInLockdownMode: true |
| sharedPreferenceForWebProcess: true |
| |
| FileSystemHandleSerializationEnabled: |
| type: bool |
| status: stable |
| category: dom |
| humanReadableName: "File System Handle Serialization" |
| humanReadableDescription: "Enable FileSystemHandle for postMessage() and structuredClone()" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "PLATFORM(COCOA)" : true |
| default: false |
| WebCore: |
| "PLATFORM(COCOA)" : true |
| default: false |
| disableInLockdownMode: true |
| sharedPreferenceForWebProcess: true |
| |
| FileSystemWritableStreamEnabled: |
| type: bool |
| status: stable |
| category: dom |
| humanReadableName: "File System WritableStream" |
| humanReadableDescription: "Enable File System WritableStream API" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "PLATFORM(COCOA)" : true |
| "PLATFORM(GTK) || PLATFORM(WPE)": true |
| default: false |
| WebCore: |
| "PLATFORM(COCOA)" : true |
| "PLATFORM(GTK) || PLATFORM(WPE)": true |
| default: false |
| disableInLockdownMode: true |
| sharedPreferenceForWebProcess: true |
| |
| FilterLinkDecorationByDefaultEnabled: |
| type: bool |
| status: preview |
| category: networking |
| humanReadableName: "Filter Link Decoration" |
| humanReadableDescription: "Enable Filtering Link Decoration" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| FindInVideoEnabled: |
| type: bool |
| status: testable |
| category: media |
| humanReadableName: "Find in Video" |
| humanReadableDescription: "Include video subtitle/caption cues in Find-in-Page results" |
| condition: ENABLE(VIDEO) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| FixedFontFamily: |
| type: String |
| status: embedder |
| webKitLegacyPreferenceKey: WebKitFixedFont |
| webcoreImplementation: custom |
| defaultValue: |
| WebKitLegacy: |
| default: '"Courier"_str' |
| WebKit: |
| "PLATFORM(COCOA)": '"Courier"_str' |
| default: '"Courier New"_str' |
| WebCore: |
| default: '""_str' |
| |
| FontFaceSetConstructorEnabled: |
| type: bool |
| status: developer |
| category: dom |
| humanReadableName: "Legacy FontFaceSet Constructor API" |
| humanReadableDescription: "Legacy FontFaceSet Constructor API" |
| defaultValue: |
| WebKitLegacy: |
| default: WebKit::defaultFontFaceSetConstructorEnabled() |
| WebKit: |
| default: WebKit::defaultFontFaceSetConstructorEnabled() |
| WebCore: |
| default: false |
| |
| ForceAlwaysUserScalable: |
| type: bool |
| status: internal |
| defaultsOverridable: true |
| humanReadableName: "Force always user-scalable" |
| webcoreBinding: none |
| condition: PLATFORM(IOS_FAMILY) |
| exposed: [ WebKit ] |
| defaultValue: |
| WebKit: |
| default: false |
| |
| ForceCompositingMode: |
| type: bool |
| status: embedder |
| webcoreBinding: none |
| exposed: [ WebKit ] |
| defaultValue: |
| WebKit: |
| default: false |
| |
| ForceEnhancedSecurity: |
| type: bool |
| status: internal |
| defaultsOverridable: true |
| humanReadableName: "Force Enhanced Security Mode" |
| humanReadableDescription: "Force all navigations to use Enhanced Security" |
| webcoreBinding: none |
| exposed: [ WebKit ] |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| ForceLockdownFontParserEnabled: |
| type: bool |
| status: internal |
| humanReadableName: "Force Lockdown Mode Safe Font Parser" |
| humanReadableDescription: "Forcing the Lockdown Mode Safe Font Parser independently from Lockdown Mode state" |
| exposed: [ WebKit ] |
| category: security |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| sharedPreferenceForWebProcess: true |
| |
| ForceWebGLUsesLowPower: |
| type: bool |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| FormControlRefreshEnabled: |
| type: bool |
| status: internal |
| humanReadableName: "Form control refresh for Cocoa platforms" |
| humanReadableDescription: "Enable form control refresh for Cocoa platforms" |
| condition: ENABLE(FORM_CONTROL_REFRESH) |
| defaultValue: |
| WebKit: |
| default: true |
| WebKitLegacy: |
| default: true |
| WebCore: |
| default: false |
| |
| FullScreenEnabled: |
| type: bool |
| status: embedder |
| humanReadableName: "Fullscreen API" |
| humanReadableDescription: "Fullscreen API" |
| condition: ENABLE(FULLSCREEN_API) |
| hidden: EXPERIMENTAL_FULLSCREEN_API_HIDDEN |
| inspectorOverride: true |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "PLATFORM(GTK) || PLATFORM(WPE)": true |
| default: false |
| WebCore: |
| "PLATFORM(GTK) || PLATFORM(WPE)": true |
| default: false |
| sharedPreferenceForWebProcess: true |
| |
| FullScreenKeyboardLock: |
| type: bool |
| status: unstable |
| category: dom |
| humanReadableName: "Fullscreen API based Keyboard Lock" |
| humanReadableDescription: "Fullscreen API based Keyboard Lock" |
| condition: ENABLE(FULLSCREEN_API) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| FullscreenRequirementForScreenOrientationLockingEnabled: |
| type: bool |
| status: embedder |
| humanReadableName: "Require being in Fullscreen to lock screen orientation" |
| humanReadableDescription: "Require being in Fullscreen to lock screen orientation" |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| FullscreenSceneAspectRatioLockingEnabled: |
| type: bool |
| status: internal |
| humanReadableName: "Fullscreen scene aspect ratio locking" |
| humanReadableDescription: "Enable scene aspect ratio locking in Fullscreen" |
| condition: PLATFORM(VISION) |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| FullscreenSceneDimmingEnabled: |
| type: bool |
| status: internal |
| humanReadableName: "Fullscreen scene dimming" |
| humanReadableDescription: "Enable scene dimming in Fullscreen" |
| condition: PLATFORM(VISION) |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| GStreamerEnabled: |
| type: bool |
| status: embedder |
| getter: isGStreamerEnabled |
| webcoreBinding: DeprecatedGlobalSettings |
| condition: USE(GSTREAMER) |
| exposed: [ WebKit ] |
| defaultValue: |
| WebKit: |
| default: true |
| |
| GamepadTriggerRumbleEnabled: |
| type: bool |
| status: testable |
| category: dom |
| humanReadableName: "Gamepad trigger vibration support" |
| humanReadableDescription: "Support for Gamepad trigger vibration" |
| condition: ENABLE(GAMEPAD) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| GamepadVibrationActuatorEnabled: |
| type: bool |
| status: stable |
| category: dom |
| humanReadableName: "Gamepad.vibrationActuator support" |
| humanReadableDescription: "Support for Gamepad.vibrationActuator" |
| condition: ENABLE(GAMEPAD) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: defaultGamepadVibrationActuatorEnabled() |
| WebCore: |
| default: false |
| |
| GamepadsEnabled: |
| type: bool |
| status: embedder |
| humanReadableName: "Gamepads" |
| humanReadableDescription: "Web Gamepad API support" |
| condition: ENABLE(GAMEPAD) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: true |
| WebCore: |
| default: false |
| disableInLockdownMode: true |
| sharedPreferenceForWebProcess: true |
| richJavaScript: true |
| |
| # FIXME: This is on by default in WebKit2. Perhaps we should consider turning it on for WebKitLegacy as well. |
| GenericCueAPIEnabled: |
| type: bool |
| status: mature |
| condition: ENABLE(VIDEO) |
| humanReadableName: "Generic Text Track Cue API" |
| humanReadableDescription: "Enable Generic Text Track Cue API" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: true |
| WebCore: |
| default: false |
| |
| GeolocationAPIEnabled: |
| type: bool |
| status: embedder |
| humanReadableName: "Geolocation API" |
| humanReadableDescription: "Enable Geolocation API" |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| sharedPreferenceForWebProcess: true |
| richJavaScript: true |
| |
| GetBoundingClientRectZoomedEnabled: |
| type: bool |
| status: stable |
| category: dom |
| humanReadableName: "Get(Bounding)ClientRect API zoomed" |
| humanReadableDescription: "Get(Bounding)ClientRect API return a zoomed rect" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "PLATFORM(IOS_FAMILY)": WebKit::defaultGetBoundingClientRectZoomedEnabled() |
| default: true |
| WebCore: |
| default: true |
| |
| GetUserMediaRequiresFocus: |
| type: bool |
| status: internal |
| category: media |
| humanReadableName: "Require focus to start getUserMedia" |
| humanReadableDescription: "Require focus to start getUserMedia" |
| condition: ENABLE(MEDIA_STREAM) |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| GlobalPrivacyControlEnabled: |
| type: "std::optional<bool>" |
| status: embedder |
| humanReadableName: "Global Privacy Control" |
| humanReadableDescription: "Enable Global Privacy Control (GPC) signal" |
| defaultValue: |
| WebCore: |
| default: std::nullopt |
| |
| GoogleAntiFlickerOptimizationQuirkEnabled: |
| type: bool |
| status: mature |
| humanReadableName: "Quirk to prevent delayed initial painting on sites using Google's Anti-Flicker optimization" |
| humanReadableDescription: "Quirk to prevent delayed initial painting on sites using Google's Anti-Flicker optimization" |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| GraphicsContextFiltersEnabled: |
| type: bool |
| status: stable |
| category: media |
| webcoreOnChange: setNeedsRelayoutAllFrames |
| humanReadableName: "GraphicsContext Filter Rendering" |
| humanReadableDescription: "GraphicsContext Filter Rendering" |
| condition: USE(GRAPHICS_CONTEXT_FILTERS) |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| GridFormattingContextIntegrationEnabled: |
| type: bool |
| status: stable |
| category: dom |
| humanReadableName: "Next-generation grid layout integration (GFC)" |
| humanReadableDescription: "Enable next-generation grid layout integration (GFC)" |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| GridLanesEnabled: |
| type: bool |
| status: stable |
| category: css |
| humanReadableName: "CSS display: grid-lanes" |
| humanReadableDescription: "Enable CSS display: grid-lanes" |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| HDRAcceleratedApplyGainMapEnabled: |
| type: bool |
| status: stable |
| category: css |
| webcoreOnChange: setNeedsRelayoutAllFrames |
| humanReadableName: "HDR Accelerated Apply GainMap" |
| humanReadableDescription: "Enable HDR Accelerated Apply GainMap" |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| HTMLEnhancedSelectEnabled: |
| type: bool |
| status: stable |
| category: dom |
| humanReadableName: "Enhanced HTML select element" |
| humanReadableDescription: "Enable enhanced HTML select element" |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| HTMLEnhancedSelectParsingEnabled: |
| type: bool |
| status: stable |
| category: dom |
| humanReadableName: "Enhanced HTML select element parsing" |
| humanReadableDescription: "Enable enhanced HTML select element parsing" |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| HTMLEnhancedSelectParsingQuirkEnabled: |
| type: bool |
| status: internal |
| category: dom |
| humanReadableName: "Enhanced HTML select element parsing quirk" |
| humanReadableDescription: "Enable enhanced HTML select element parsing quirk for specific applications" |
| defaultValue: |
| WebKitLegacy: |
| PLATFORM(MAC): WebKit::defaultHTMLEnhancedSelectParsingQuirkEnabled() |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| HTMLInCanvasEnabled: |
| type: bool |
| status: unstable |
| category: dom |
| webcoreOnChange: setNeedsRelayoutAllFrames |
| humanReadableName: "HTML-in-Canvas" |
| humanReadableDescription: "Enable HTML-in-Canvas" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| HTTPEquivEnabled: |
| type: bool |
| status: mature |
| humanReadableName: "http-equiv" |
| humanReadableDescription: "Enable http-equiv attribute" |
| webcoreName: httpEquivEnabled |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| HTTPSByDefaultEnabled: |
| type: bool |
| status: testable |
| category: security |
| humanReadableName: "HTTPS-by-default (HTTPS-First)" |
| humanReadableDescription: "Enable HTTPS-by-default (HTTPS-First)" |
| webcoreName: httpsByDefault |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| HardwareAccelerationEnabled: |
| type: bool |
| status: internal |
| humanReadableName: "Hardware acceleration" |
| humanReadableDescription: "Enable hardware acceleration" |
| condition: PLATFORM(GTK) || ENABLE(WPE_PLATFORM) |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| HeadingOffsetEnabled: |
| type: bool |
| status: stable |
| category: html |
| humanReadableName: "HTML headingoffset & headingreset attributes" |
| humanReadableDescription: "Enable HTML headingoffset & headingreset attribute support" |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| HiddenPageCSSAnimationSuspensionEnabled: |
| type: bool |
| status: embedder |
| webcoreOnChange: hiddenPageCSSAnimationSuspensionEnabledChanged |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| "PLATFORM(COCOA) || PLATFORM(GTK)": true |
| default: false |
| WebCore: |
| default: false |
| |
| HiddenPageDOMTimerThrottlingAutoIncreases: |
| type: bool |
| status: embedder |
| humanReadableName: "Hidden page DOM timer throttling auto-increases" |
| webcoreOnChange: hiddenPageDOMTimerThrottlingStateChanged |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| HiddenPageDOMTimerThrottlingEnabled: |
| type: bool |
| status: embedder |
| humanReadableName: "Hidden page DOM timer throttling" |
| humanReadableDescription: "Enable hidden page DOM timer throttling" |
| webcoreOnChange: hiddenPageDOMTimerThrottlingStateChanged |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "PLATFORM(COCOA) || PLATFORM(GTK)": true |
| default: false |
| WebCore: |
| default: false |
| |
| HiddenUntilFoundEnabled: |
| type: bool |
| status: stable |
| category: html |
| humanReadableName: "hidden=until-found" |
| humanReadableDescription: "Enable support for hidden=until-found" |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| HighlightsFromPointEnabled: |
| type: bool |
| status: stable |
| category: css |
| humanReadableName: "CSS Custom Highlight API: highlightsFromPoint()" |
| humanReadableDescription: "Enable the CSS Custom Highlight API highlightsFromPoint() method" |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| HorizontalBannerViewOverlaysEnabled: |
| type: bool |
| status: internal |
| condition: ENABLE(HORIZONTAL_BANNER_VIEW_OVERLAYS) |
| humanReadableName: "Horizontal Banner View Overlays" |
| humanReadableDescription: "Horizontal Banner View Overlays" |
| defaultValue: |
| WebKit: |
| default: WebKit::defaultHorizontalBannerViewOverlaysEnabled() |
| WebKitLegacy: |
| default: false |
| WebCore: |
| default: false |
| |
| HostedBlurMaterialInMediaControlsEnabled: |
| type: bool |
| status: internal |
| humanReadableName: "Hosted blur material in media controls" |
| humanReadableDescription: "Enable hosted blur material in media controls" |
| condition: HAVE(MATERIAL_HOSTING) |
| defaultValue: |
| WebKit: |
| default: defaultHostedBlurMaterialInMediaControlsEnabled() |
| WebKitLegacy: |
| default: false |
| WebCore: |
| default: false |
| |
| ICECandidateFilteringEnabled: |
| type: bool |
| status: internal |
| category: dom |
| webcoreOnChange: iceCandidateFilteringEnabledChanged |
| inspectorOverride: true |
| humanReadableName: "Enable ICE Candidate Filtering" |
| humanReadableDescription: "Enable ICE Candidate Filtering" |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| IFrameResourceMonitorNetworkUsageThresholdForTesting: |
| type: uint32_t |
| status: internal |
| category: networking |
| condition: ENABLE(CONTENT_EXTENSIONS) |
| defaultsOverridable: true |
| humanReadableName: "Frame Resource Monitor Network Usage Threshold For Testing" |
| humanReadableDescription: "Test override for the iframe resource monitor network usage threshold in bytes (0 means use production default)" |
| defaultValue: |
| WebKitLegacy: |
| default: 0 |
| WebKit: |
| default: 0 |
| WebCore: |
| default: 0 |
| |
| IFrameResourceMonitorNetworkUsageThresholdRandomnessForTesting: |
| type: double |
| status: internal |
| category: networking |
| condition: ENABLE(CONTENT_EXTENSIONS) |
| humanReadableName: "Frame Resource Monitor Network Usage Threshold Randomness For Testing" |
| humanReadableDescription: "Test override for the iframe resource monitor network usage threshold randomness factor (only applied when the threshold-for-testing preference is set)" |
| defaultValue: |
| WebKitLegacy: |
| default: 0 |
| WebKit: |
| default: 0 |
| WebCore: |
| default: 0 |
| |
| IFrameResourceMonitoringEnabled: |
| type: bool |
| status: internal |
| category: networking |
| condition: ENABLE(CONTENT_EXTENSIONS) |
| defaultsOverridable: true |
| humanReadableName: "Frame Resource Monitoring Support" |
| humanReadableDescription: "Enable Usage Monitoring of Frame Resource Support" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| IFrameResourceMonitoringTestingSettingsEnabled: |
| type: bool |
| status: internal |
| category: networking |
| condition: ENABLE(CONTENT_EXTENSIONS) |
| defaultsOverridable: true |
| humanReadableName: "Frame Resource Monitoring Settings For Testing" |
| humanReadableDescription: "Use Resource Monitoring Settings for testing" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| IOSurfaceLosslessCompressionEnabled: |
| type: bool |
| status: internal |
| humanReadableName: "IOSurface Lossless Compression" |
| humanReadableDescription: "Use losslessly compressed IOSurfaces" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "HAVE(LOSSLESS_COMPRESSED_IOSURFACE_CG_SUPPORT)": defaultIOSurfaceLosslessCompressionEnabled() |
| default: false |
| WebCore: |
| default: false |
| |
| IPAddressAndLocalhostMixedContentUpgradeTestingEnabled: |
| type: bool |
| status: testable |
| category: security |
| humanReadableName: "Upgrade IP addresses and localhost in mixed content" |
| humanReadableDescription: "Enable Upgrading IP addresses and localhost in mixed content" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| IPCTestingAPIEnabled: |
| type: bool |
| status: internal |
| category: security |
| humanReadableName: "IPC Testing API" |
| humanReadableDescription: "Enable IPC Testing API for JavaScript" |
| webcoreBinding: none |
| condition: ENABLE(IPC_TESTING_API) |
| exposed: [ WebKit ] |
| defaultValue: |
| WebKit: |
| default: false |
| |
| IgnoreIframeEmbeddingProtectionsEnabled: |
| type: bool |
| status: internal |
| category: security |
| humanReadableName: "Ignore iframe Embedding Protections" |
| humanReadableDescription: "Ignores X-Frame-Options and CSP ancestors" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| sharedPreferenceForWebProcess: true |
| |
| IgnoreInvalidMessageWhenIPCTestingAPIEnabled: |
| type: bool |
| status: internal |
| category: security |
| humanReadableName: "Ignore Invalid IPC Messages For Testing" |
| humanReadableDescription: "Prevents invalid IPC messages from terminating the caller" |
| webcoreBinding: none |
| condition: ENABLE(IPC_TESTING_API) |
| exposed: [ WebKit ] |
| defaultValue: |
| WebKit: |
| default: true |
| |
| ImageAnalysisDuringFindInPageEnabled: |
| type: bool |
| status: unstable |
| humanReadableName: "Image Analysis for Find-in-Page" |
| humanReadableDescription: "Trigger image analysis when performing Find-in-Page" |
| condition: ENABLE(IMAGE_ANALYSIS) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| ImageCaptureEnabled: |
| type: bool |
| status: stable |
| category: media |
| humanReadableName: "Image Capture API" |
| humanReadableDescription: "Enable Image Capture API" |
| condition: ENABLE(MEDIA_STREAM) |
| defaultValue: |
| WebKit: |
| "PLATFORM(COCOA)": true |
| default: false |
| WebCore: |
| "PLATFORM(COCOA)": true |
| default: false |
| |
| ImageControlsEnabled: |
| type: bool |
| status: unstable |
| category: dom |
| humanReadableName: "Image Controls" |
| humanReadableDescription: "Enable image controls" |
| condition: ENABLE(SERVICE_CONTROLS) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| ImportDeferEnabled: |
| type: bool |
| status: stable |
| category: javascript |
| humanReadableName: "Import Defer" |
| humanReadableDescription: "Enable deferred module import." |
| webcoreBinding: none |
| jscOptionName: useImportDefer |
| sharedPreferenceForWebProcess: true |
| defaultValue: |
| WebKit: |
| default: true |
| |
| ImportTextEnabled: |
| type: bool |
| status: stable |
| category: javascript |
| humanReadableName: "Import Text" |
| humanReadableDescription: "Enable text module import." |
| webcoreBinding: none |
| jscOptionName: useImportText |
| sharedPreferenceForWebProcess: true |
| defaultValue: |
| WebKit: |
| default: true |
| |
| InactiveMediaCaptureStreamRepromptIntervalInMinutes: |
| type: double |
| status: embedder |
| condition: ENABLE(MEDIA_STREAM) |
| webcoreBinding: none |
| exposed: [ WebKit ] |
| defaultValue: |
| WebKit: |
| default: 10 |
| |
| InactiveMediaCaptureStreamRepromptWithoutUserGestureIntervalInMinutes: |
| type: double |
| status: embedder |
| condition: ENABLE(MEDIA_STREAM) |
| webcoreBinding: none |
| exposed: [ WebKit ] |
| defaultValue: |
| WebKit: |
| default: defaultInactiveMediaCaptureStreamRepromptWithoutUserGestureIntervalInMinutes() |
| |
| IncludeIgnoredInCoreAXTree: |
| type: bool |
| status: internal |
| condition: ENABLE(INCLUDE_IGNORED_IN_CORE_AX_TREE) |
| humanReadableName: "Include ignored elements in core accessibility tree" |
| humanReadableDescription: "When true, accessibility-is-ignored is not used to build the core, platform-agnostic accessibility tree, and instead is expected to be applied at any platform-exposed layer." |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| IncompleteImageBorderEnabled: |
| type: bool |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| IncrementalPDFLoadingEnabled: |
| type: bool |
| status: embedder |
| condition: HAVE(INCREMENTAL_PDF_APIS) |
| defaultValue: |
| WebKitLegacy: |
| "PLATFORM(MAC)": true |
| default: false |
| WebKit: |
| "PLATFORM(MAC)": true |
| default: false |
| WebCore: |
| "PLATFORM(MAC)": true |
| default: false |
| |
| IncrementalRenderingSuppressionTimeout: |
| type: double |
| status: embedder |
| webKitLegacyPreferenceKey: WebKitIncrementalRenderingSuppressionTimeoutInSeconds |
| webcoreName: incrementalRenderingSuppressionTimeoutInSeconds |
| defaultValue: |
| WebKitLegacy: |
| default: 5 |
| WebKit: |
| default: 5 |
| WebCore: |
| default: 5 |
| |
| IndexedDBAPIEnabled: |
| type: bool |
| status: embedder |
| humanReadableName: "IndexedDB API" |
| humanReadableDescription: "IndexedDB API" |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| disableInLockdownMode: true |
| sharedPreferenceForWebProcess: true |
| richJavaScript: true |
| |
| IndexedDBGetAllRecordsAndGetAllOptionsEnabled: |
| type: bool |
| category: dom |
| status: stable |
| humanReadableName: "IndexedDB getAllRecords() API and IDBGetAllOptions" |
| humanReadableDescription: "Enable the getAllRecords() API on IDBObjectStore/IDBIndex and enable getAll()/getAllKeys() to accept IDBGetAllOptions and support direction" |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| IndexedDBSQLiteMemoryBackingStoreEnabled: |
| type: bool |
| status: stable |
| category: dom |
| humanReadableName: "IndexedDB SQLite Memory Backing Store" |
| humanReadableDescription: "Use SQLite in-memory database for ephemeral IndexedDB instead of MemoryIDBBackingStore" |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| sharedPreferenceForWebProcess: true |
| |
| InlineMediaPlaybackRequiresPlaysInlineAttribute: |
| type: bool |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| "PLATFORM(IOS_FAMILY)": WebKit::defaultInlineMediaPlaybackRequiresPlaysInlineAttribute() |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| InputMethodUsesCorrectKeyEventOrder: |
| type: bool |
| status: unstable |
| category: dom |
| humanReadableName: "Correct key event ordering with composition events" |
| condition: PLATFORM(MAC) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| sharedPreferenceForWebProcess: true |
| |
| InputTypeColorEnabled: |
| type: bool |
| status: mature |
| humanReadableName: "Color Inputs" |
| humanReadableDescription: "Enable input elements of type color" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "PLATFORM(COCOA) && !PLATFORM(WATCHOS)": true |
| "PLATFORM(GTK) || PLATFORM(WPE)": true |
| default: false |
| WebCore: |
| default: false |
| sharedPreferenceForWebProcess: true |
| |
| InputTypeColorEnhancementsEnabled: |
| type: bool |
| status: stable |
| category: html |
| humanReadableName: "HTML alpha and colorspace attribute support for color inputs" |
| humanReadableDescription: "Enable HTML alpha and colorspace attribute support for input elements of type color" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "PLATFORM(COCOA) && !PLATFORM(WATCHOS)": true |
| default: false |
| WebCore: |
| "PLATFORM(COCOA) && !PLATFORM(WATCHOS)": true |
| default: false |
| sharedPreferenceForWebProcess: true |
| |
| InputTypeDateEnabled: |
| type: bool |
| status: mature |
| humanReadableName: "Date Input" |
| humanReadableDescription: "Enable input elements of type date" |
| defaultValue: |
| WebKitLegacy: |
| "PLATFORM(IOS_FAMILY)": true |
| default: false |
| WebKit: |
| "PLATFORM(COCOA) || PLATFORM(GTK)": true |
| default: false |
| WebCore: |
| default: false |
| sharedPreferenceForWebProcess: true |
| |
| InputTypeDateTimeLocalEnabled: |
| type: bool |
| status: mature |
| humanReadableName: "datetime-local Inputs" |
| humanReadableDescription: "Enable input elements of type datetime-local" |
| defaultValue: |
| WebKitLegacy: |
| "PLATFORM(IOS_FAMILY)": true |
| default: false |
| WebKit: |
| "PLATFORM(COCOA) || PLATFORM(GTK)": true |
| default: false |
| WebCore: |
| default: false |
| sharedPreferenceForWebProcess: true |
| |
| InputTypeMonthEnabled: |
| type: bool |
| status: embedder |
| humanReadableName: "Month Input" |
| humanReadableDescription: "Enable input elements of type month" |
| inspectorOverride: true |
| defaultValue: |
| WebKitLegacy: |
| "PLATFORM(IOS_FAMILY)": true |
| default: false |
| WebKit: |
| "PLATFORM(IOS_FAMILY) || PLATFORM(GTK)": true |
| default: false |
| WebCore: |
| default: false |
| sharedPreferenceForWebProcess: true |
| |
| InputTypeTimeEnabled: |
| type: bool |
| status: mature |
| humanReadableName: "Time Input" |
| humanReadableDescription: "Enable input elements of type time" |
| defaultValue: |
| WebKitLegacy: |
| "PLATFORM(IOS_FAMILY)": true |
| default: false |
| WebKit: |
| "PLATFORM(COCOA) || PLATFORM(GTK)": true |
| default: false |
| WebCore: |
| default: false |
| sharedPreferenceForWebProcess: true |
| |
| InputTypeWeekEnabled: |
| type: bool |
| status: embedder |
| humanReadableName: "Week Input" |
| humanReadableDescription: "Enable input elements of type week" |
| inspectorOverride: true |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "PLATFORM(IOS_FAMILY) && !PLATFORM(APPLETV) || PLATFORM(GTK)": true |
| default: false |
| WebCore: |
| default: false |
| sharedPreferenceForWebProcess: true |
| |
| InspectorAttachedHeight: |
| type: uint32_t |
| status: embedder |
| webcoreBinding: none |
| exposed: [ WebKit ] |
| defaultValue: |
| WebKit: |
| default: 500 |
| |
| InspectorAttachedWidth: |
| type: uint32_t |
| status: embedder |
| webcoreBinding: none |
| exposed: [ WebKit ] |
| defaultValue: |
| WebKit: |
| default: 750 |
| |
| InspectorAttachmentSide: |
| type: uint32_t |
| status: embedder |
| webcoreBinding: none |
| exposed: [ WebKit ] |
| defaultValue: |
| WebKit: |
| default: 0 |
| |
| InspectorMaximumResourcesContentSize: |
| type: uint32_t |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| default: 200 |
| WebKit: |
| "PLATFORM(WPE)": 50 |
| default: 200 |
| WebCore: |
| "PLATFORM(WPE)": 50 |
| default: 200 |
| |
| InspectorStartsAttached: |
| type: bool |
| status: embedder |
| webcoreBinding: none |
| exposed: [ WebKit ] |
| defaultValue: |
| WebKit: |
| default: true |
| |
| InspectorSupportsShowingCertificate: |
| type: bool |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "PLATFORM(COCOA) || PLATFORM(WIN)": true |
| default: false |
| WebCore: |
| "PLATFORM(COCOA) || PLATFORM(WIN)": true |
| default: false |
| |
| InspectorWindowFrame: |
| type: String |
| status: embedder |
| webcoreBinding: none |
| exposed: [ WebKit ] |
| defaultValue: |
| WebKit: |
| default: '""_str' |
| |
| InteractionRegionInlinePadding: |
| type: double |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| default: 4 |
| WebKit: |
| default: 4 |
| WebCore: |
| default: 4 |
| |
| InteractionRegionMinimumCornerRadius: |
| type: double |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| default: 8 |
| WebKit: |
| default: 8 |
| WebCore: |
| default: 8 |
| |
| InteractionRegionsEnabled: |
| type: bool |
| status: internal |
| category: dom |
| humanReadableName: "Interaction Regions" |
| humanReadableDescription: "Generate and visualize interaction regions" |
| condition: ENABLE(INTERACTION_REGIONS_IN_EVENT_REGION) |
| defaultValue: |
| WebKit: |
| default: true |
| WebKitLegacy: |
| 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. |
| InteractiveFormValidationEnabled: |
| type: bool |
| status: embedder |
| 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 |
| status: embedder |
| condition: ENABLE(MEDIA_STREAM) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "PLATFORM(IOS_FAMILY)": true |
| default: false |
| WebCore: |
| default: false |
| |
| InterruptVideoOnPageVisibilityChangeEnabled: |
| type: bool |
| status: embedder |
| condition: ENABLE(MEDIA_STREAM) |
| defaultValue: |
| WebKitLegacy: |
| "PLATFORM(IOS_FAMILY)": true |
| default: false |
| WebKit: |
| "PLATFORM(IOS_FAMILY)": true |
| default: false |
| WebCore: |
| default: false |
| |
| InvisibleAutoplayNotPermitted: |
| type: bool |
| status: embedder |
| webKitLegacyPreferenceKey: InvisibleAutoplayNotPermitted |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "PLATFORM(IOS_FAMILY)": true |
| default: false |
| WebCore: |
| default: false |
| |
| IsARIANotifyEnabled: |
| type: bool |
| status: internal |
| humanReadableName: "ariaNotify()" |
| humanReadableDescription: "Enable ariaNotify support" |
| defaultValue: |
| WebKitLegacy: |
| "ENABLE(ARIA_NOTIFY)": true |
| default: false |
| WebKit: |
| "ENABLE(ARIA_NOTIFY)": true |
| default: false |
| WebCore: |
| "ENABLE(ARIA_NOTIFY)": true |
| default: false |
| |
| IsAccessibilityIsolatedTreeEnabled: |
| type: bool |
| status: embedder |
| humanReadableName: "Isolated Accessibility Tree Mode" |
| humanReadableDescription: "Enable an accessibility hierarchy for VoiceOver that can be accessed on a secondary thread for improved performance" |
| webcoreBinding: DeprecatedGlobalSettings |
| condition: ENABLE(ACCESSIBILITY_ISOLATED_TREE) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "USE(ATSPI)": true |
| default: false |
| WebCore: |
| default: false |
| |
| IsAriaLiveRegionManagementEnabled: |
| type: bool |
| status: internal |
| humanReadableName: "ARIA Live Regions in WebKit" |
| humanReadableDescription: "Turn on ARIA live-region management within WebKit" |
| defaultValue: |
| WebKitLegacy: |
| "ENABLE(WEBKIT_MANAGED_LIVE_REGIONS)": true |
| default: false |
| WebKit: |
| "ENABLE(WEBKIT_MANAGED_LIVE_REGIONS)": true |
| default: false |
| WebCore: |
| "ENABLE(WEBKIT_MANAGED_LIVE_REGIONS)": true |
| default: false |
| |
| # FIXME: The 'Is' prefix is inconsistent with most other preferences and should be removed. |
| IsFirstPartyWebsiteDataRemovalDisabled: |
| type: bool |
| status: developer |
| category: privacy |
| humanReadableName: "Disable Removal of Non-Cookie Data After 7 Days of No User Interaction (ITP)" |
| humanReadableDescription: "Disable removal of all non-cookie website data after seven days of no user interaction when Intelligent Tracking Prevention is enabled" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| # FIXME: This is not relevant for WebKitLegacy, so it should be excluded from WebKitLegacy entirely. |
| IsFirstPartyWebsiteDataRemovalLiveOnTestingEnabled: |
| type: bool |
| status: developer |
| category: privacy |
| humanReadableName: "[ITP Live-On] 1 Hour Timeout For Non-Cookie Data Removal" |
| humanReadableDescription: "Remove all non-cookie website data after just one hour of no user interaction when Intelligent Tracking Prevention is enabled" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| # FIXME: This is not relevant for WebKitLegacy, so it should be excluded from WebKitLegacy entirely. |
| IsFirstPartyWebsiteDataRemovalReproTestingEnabled: |
| type: bool |
| status: developer |
| category: privacy |
| humanReadableName: "[ITP Repro] 30 Second Timeout For Non-Cookie Data Removal" |
| humanReadableDescription: "Remove all non-cookie website data after just 30 seconds of no user interaction when Intelligent Tracking Prevention is enabled" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| # FIXME: The 'Is' prefix is inconsistent with most other preferences and should be removed. |
| IsSameSiteStrictEnforcementEnabled: |
| type: bool |
| status: unstable |
| category: privacy |
| humanReadableName: "SameSite strict enforcement (ITP)" |
| humanReadableDescription: "Enable SameSite strict enforcement to mitigate bounce tracking" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| # FIXME: The 'Is' prefix is inconsistent with most other preferences and should be removed. |
| IsThirdPartyCookieBlockingDisabled: |
| type: bool |
| status: developer |
| category: privacy |
| humanReadableName: "Disable Full 3rd-Party Cookie Blocking (ITP)" |
| humanReadableDescription: "Disable full third-party cookie blocking when Intelligent Tracking Prevention is enabled" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| IteratorChunkingEnabled: |
| type: bool |
| status: stable |
| category: javascript |
| humanReadableName: "Iterator Chunking" |
| humanReadableDescription: "Expose the Iterator.prototype.chunks and Iterator.prototype.windows methods." |
| webcoreBinding: none |
| jscOptionName: useIteratorChunking |
| sharedPreferenceForWebProcess: true |
| defaultValue: |
| WebKit: |
| default: true |
| |
| IteratorIncludesEnabled: |
| type: bool |
| status: stable |
| category: javascript |
| humanReadableName: "Iterator Includes" |
| humanReadableDescription: "Expose the Iterator.includes method." |
| webcoreBinding: none |
| jscOptionName: useIteratorIncludes |
| sharedPreferenceForWebProcess: true |
| defaultValue: |
| WebKit: |
| default: true |
| |
| IteratorJoinEnabled: |
| type: bool |
| status: stable |
| category: javascript |
| humanReadableName: "Iterator Join" |
| humanReadableDescription: "Expose the Iterator.prototype.join method." |
| webcoreBinding: none |
| jscOptionName: useIteratorJoin |
| sharedPreferenceForWebProcess: true |
| defaultValue: |
| WebKit: |
| default: true |
| |
| IteratorSequencingEnabled: |
| type: bool |
| status: stable |
| category: javascript |
| humanReadableName: "Iterator Sequencing" |
| humanReadableDescription: "Expose the Iterator.concat method." |
| webcoreBinding: none |
| jscOptionName: useIteratorSequencing |
| sharedPreferenceForWebProcess: true |
| defaultValue: |
| WebKit: |
| default: true |
| |
| # FIXME: This is not relevant for WebKitLegacy, so it should be excluded from WebKitLegacy entirely (though we should still set the default value to false when initializing settings). |
| ItpDebugModeEnabled: |
| type: bool |
| status: developer |
| category: privacy |
| humanReadableName: "ITP Debug Mode" |
| humanReadableDescription: "Intelligent Tracking Prevention Debug Mode" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| JSONSourceTextAccessEnabled: |
| type: bool |
| status: stable |
| category: javascript |
| humanReadableName: "JSON Source Text Access" |
| humanReadableDescription: "Expose JSON source text access feature." |
| webcoreBinding: none |
| jscOptionName: useJSONSourceTextAccess |
| sharedPreferenceForWebProcess: true |
| defaultValue: |
| WebKit: |
| default: true |
| |
| JSPIEnabled: |
| type: bool |
| status: stable |
| category: javascript |
| humanReadableName: "JavaScript Promise Integration" |
| humanReadableDescription: "Enable the implementation of JavaScript Promise Integration." |
| webcoreBinding: none |
| jscOptionName: useJSPI |
| sharedPreferenceForWebProcess: true |
| defaultValue: |
| WebKit: |
| default: true |
| |
| JavaScriptCanAccessClipboard: |
| type: bool |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| JavaScriptCanOpenWindowsAutomatically: |
| type: bool |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| "PLATFORM(IOS_FAMILY)": false |
| default: true |
| WebKit: |
| "PLATFORM(IOS_FAMILY) || PLATFORM(GTK) || PLATFORM(WPE)": false |
| default: true |
| WebCore: |
| default: false |
| |
| JavaScriptEnabled: |
| type: bool |
| status: mature |
| humanReadableName: "JavaScript" |
| humanReadableDescription: "Enable JavaScript" |
| 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 |
| status: embedder |
| webcoreName: scriptMarkupEnabled |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| JavaScriptRuntimeFlags: |
| type: uint32_t |
| refinedType: JSC::RuntimeFlags |
| status: embedder |
| webKitLegacyPreferenceKey: WebKitJavaScriptRuntimeFlagsPreferenceKey |
| defaultValue: |
| WebKitLegacy: |
| default: 0 |
| WebKit: |
| default: 0 |
| WebCore: |
| default: '{ }' |
| |
| JointIterationEnabled: |
| type: bool |
| status: stable |
| category: javascript |
| humanReadableName: "Joint Iteration" |
| humanReadableDescription: "Expose the Iterator.zip and Iterator.zipKeyed methods" |
| webcoreBinding: none |
| jscOptionName: useJointIteration |
| sharedPreferenceForWebProcess: true |
| defaultValue: |
| WebKit: |
| default: true |
| |
| KeyboardDismissalGestureEnabled: |
| type: bool |
| status: internal |
| webcoreBinding: none |
| condition: PLATFORM(IOS_FAMILY) |
| humanReadableName: "Keyboard Dismissal Gesture" |
| humanReadableDescription: "Enable the keyboard dismissal gesture" |
| defaultValue: |
| WebKit: |
| "PLATFORM(APPLETV)" : true |
| default: false |
| |
| LargeImageAsyncDecodingEnabled: |
| type: bool |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| |
| LargestContentfulPaintEnabled: |
| type: bool |
| status: stable |
| category: dom |
| humanReadableName: "Largest Contentful Paint" |
| humanReadableDescription: "Enable Largest Contentful Paint performance entries" |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| |
| LayerBasedSVGEngineEnabled: |
| type: bool |
| status: unstable |
| humanReadableName: "Layer-based SVG Engine (LBSE)" |
| humanReadableDescription: "Enable next-generation layer-based SVG Engine (LBSE)" |
| webcoreOnChange: layerBasedSVGEngineEnabledChanged |
| defaultValue: |
| WebCore: |
| default: false |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| |
| LayerBasedSVGEngineForceLayerCreationEnabled: |
| type: bool |
| status: internal |
| humanReadableName: "LBSE: Force layer creation for all SVG renderers" |
| humanReadableDescription: "Force the layer-based SVG Engine (LBSE) to create a RenderLayer for every SVG renderer (debugging only)" |
| defaultValue: |
| WebCore: |
| default: false |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| |
| LayoutFallbackWidth: |
| type: uint32_t |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| default: 980 |
| WebKit: |
| default: 980 |
| WebCore: |
| default: 980 |
| |
| LayoutViewportHeightExpansionFactor: |
| type: double |
| status: embedder |
| webcoreOnChange: setNeedsRecalcStyleInAllFrames |
| defaultValue: |
| WebKitLegacy: |
| default: 0 |
| WebKit: |
| "PLATFORM(WATCHOS) || ENABLE(FLEXIBLE_VIEW_SCALE_FACTOR)" : 1 |
| default: 0 |
| WebCore: |
| default: 0 |
| |
| LazyIframeLoadingEnabled: |
| type: bool |
| status: mature |
| category: html |
| humanReadableName: "Lazy iframe loading" |
| humanReadableDescription: "Enable lazy iframe loading support" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: true |
| WebCore: |
| default: false |
| |
| LazyImageLoadingEnabled: |
| type: bool |
| status: stable |
| category: html |
| humanReadableName: "Lazy image loading" |
| humanReadableDescription: "Enable lazy image loading support" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: true |
| WebCore: |
| default: false |
| |
| LegacyEncryptedMediaAPIEnabled: |
| type: bool |
| status: embedder |
| 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 |
| sharedPreferenceForWebProcess: true |
| mediaPlaybackRelated: true |
| |
| LegacyLineLayoutVisualCoverageEnabled: |
| type: bool |
| status: internal |
| category: dom |
| defaultsOverridable: true |
| humanReadableName: "Legacy line layout visual coverage" |
| humanReadableDescription: "Enable legacy line layout visual coverage" |
| webcoreOnChange: setNeedsRecalcStyleInAllFrames |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| LegacyOverflowScrollingTouchEnabled: |
| type: bool |
| status: internal |
| webcoreOnChange: setNeedsRelayoutAllFrames |
| humanReadableName: "Legacy -webkit-overflow-scrolling property" |
| humanReadableDescription: "Support the legacy -webkit-overflow-scrolling CSS property" |
| condition: ENABLE(WEBKIT_OVERFLOW_SCROLLING_CSS_PROPERTY) |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| LegacyPluginQuirkForMailSignaturesEnabled: |
| type: bool |
| status: internal |
| humanReadableName: "Quirk to get Mail to load signatures correctly with WebKitLegacy" |
| humanReadableDescription: "Quirk to get Mail to load signatures correctly with WebKitLegacy" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| LegacyWebRTCOfferOptionsEnabled: |
| type: bool |
| status: embedder |
| humanReadableName: "WebRTC Peer Connection Legacy Offer options" |
| humanReadableDescription: "Enable RTCPeerConnection Legacy offer options (offerToReceiveAudio, offerToReceiveVideo)" |
| condition: ENABLE(WEB_RTC) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "PLATFORM(GTK) || PLATFORM(WPE)": true |
| default: false |
| WebCore: |
| default: false |
| |
| LimitedMatroskaSupportEnabled: |
| type: bool |
| status: developer |
| category: media |
| humanReadableName: "Limited Matroska Support" |
| humanReadableDescription: "Enable H264 and PCM with WebM Player and MediaRecorder" |
| condition: ENABLE(MEDIA_RECORDER_WEBM) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| LinearMediaPlayerEnabled: |
| type: bool |
| status: internal |
| category: media |
| humanReadableName: "Linear Media Player" |
| humanReadableDescription: "Enable LinearMediaPlayer for fullscreen video" |
| condition: ENABLE(LINEAR_MEDIA_PLAYER) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: WebKit::defaultLinearMediaPlayerEnabled() |
| WebCore: |
| default: false |
| |
| LinkPreconnect: |
| type: bool |
| status: embedder |
| webcoreName: linkPreconnectEnabled |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "ENABLE(SERVER_PRECONNECT)": true |
| default: false |
| WebCore: |
| default: false |
| |
| LinkPreconnectEarlyHintsEnabled: |
| type: bool |
| status: stable |
| category: networking |
| humanReadableName: "Link rel=preconnect via HTTP early hints" |
| humanReadableDescription: "Enable link rel=preconnect via early hints" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "ENABLE(SERVER_PRECONNECT)": true |
| default: false |
| WebCore: |
| default: false |
| |
| LinkPrefetchEnabled: |
| type: bool |
| status: testable |
| category: networking |
| humanReadableName: "LinkPrefetch" |
| humanReadableDescription: "Enable LinkedPrefetch" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| LinkPreloadEnabled: |
| type: bool |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| LinkSanitizerEnabled: |
| type: bool |
| status: unstable |
| category: networking |
| humanReadableName: "Link Sanitizer" |
| humanReadableDescription: "Enable link sanitizer" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| ListMarkerPositionedPostLayoutEnabled: |
| type: bool |
| status: stable |
| category: css |
| humanReadableName: "Position outside list markers after layout" |
| humanReadableDescription: "Keep an outside list marker as the list item's first child and position it after layout, instead of reparenting it into the descendant that holds the first line box" |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| LoadDeferringEnabled: |
| type: bool |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| PLATFORM(MAC): WebKit::defaultLoadDeferringEnabled() |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| LoadWebArchiveWithEphemeralStorageEnabled: |
| type: bool |
| status: stable |
| category: dom |
| humanReadableName: "Load Web Archive with ephemeral storage" |
| humanReadableDescription: "Enable loading web archive with ephemeral storage" |
| condition: ENABLE(WEB_ARCHIVE) |
| defaultValue: |
| WebKitLegacy: |
| 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 |
| status: embedder |
| webcoreOnChange: imagesEnabledChanged |
| webKitLegacyPreferenceKey: WebKitDisplayImagesKey |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: false |
| |
| LocalFileContentSniffingEnabled: |
| type: bool |
| status: internal |
| category: networking |
| humanReadableName: "Local File Content Sniffing" |
| humanReadableDescription: "Enable Local File Content Sniffing" |
| webKitLegacyPreferenceKey: WebKitLocalFileContentSniffingEnabledPreferenceKey |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| LocalNetworkAccessEnabled: |
| type: bool |
| status: unstable |
| category: networking |
| humanReadableName: "Local Network Access" |
| humanReadableDescription: "Enable Local Network Access" |
| webKitLegacyPreferenceKey: WebKitLocalNetworkAccessEnabledPreferenceKey |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| LocalStorageEnabled: |
| type: bool |
| status: mature |
| humanReadableName: "Local Storage" |
| humanReadableDescription: "Enable Local Storage" |
| webKitLegacyPreferenceKey: WebKitLocalStorageEnabledPreferenceKey |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: false |
| sharedPreferenceForWebProcess: true |
| |
| LockdownFontParserEnabled: |
| type: bool |
| status: stable |
| humanReadableName: "Lockdown Mode Safe Fonts" |
| humanReadableDescription: "Try parsing Web fonts with safe font parser in Lockdown Mode" |
| exposed: [ WebKit ] |
| category: security |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| sharedPreferenceForWebProcess: true |
| |
| LoginStatusAPIEnabled: |
| type: bool |
| status: testable |
| category: dom |
| humanReadableName: "Login Status API" |
| humanReadableDescription: "Enable the proposed Login Status API" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| LoginStatusAPIRequiresWebAuthnEnabled: |
| type: bool |
| status: internal |
| category: dom |
| humanReadableName: "Require WebAuthn with the Login Status API" |
| humanReadableDescription: "Require a recent WebAuthn authentication to set login status" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| sharedPreferenceForWebProcess: true |
| |
| LogsPageMessagesToSystemConsoleEnabled: |
| type: bool |
| status: internal |
| category: dom |
| defaultsOverridable: true |
| humanReadableName: "Log page messages to system console" |
| humanReadableDescription: "Enable logging page messages to system console" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| LongRunningMediaCaptureStreamRepromptIntervalInHours: |
| type: double |
| status: embedder |
| webcoreBinding: none |
| exposed: [ WebKit ] |
| defaultValue: |
| WebKit: |
| default: 24 |
| |
| LowPowerVideoAudioBufferSizeEnabled: |
| type: bool |
| status: embedder |
| webcoreBinding: DeprecatedGlobalSettings |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: true |
| |
| MainContentUserGestureOverrideEnabled: |
| type: bool |
| status: embedder |
| humanReadableName: "Main content user gesture override" |
| humanReadableDescription: "Enable main content user gesture override" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| ManageCaptureStatusBarInGPUProcessEnabled: |
| type: bool |
| status: internal |
| category: media |
| humanReadableName: "GPU Process: Capture Status Bar management" |
| humanReadableDescription: "Enable Capture Status Bar management in GPU Process" |
| condition: ENABLE(MEDIA_STREAM) && PLATFORM(IOS_FAMILY) |
| defaultValue: |
| WebKit: |
| default: WebKit::defaultManageCaptureStatusBarInGPUProcessEnabled() |
| WebKitLegacy: |
| default: false |
| WebCore: |
| default: false |
| |
| ManagedMediaSourceEnabled: |
| type: bool |
| status: mature |
| category: media |
| humanReadableName: "Managed Media Source API" |
| humanReadableDescription: "Managed Media Source API" |
| condition: ENABLE(MEDIA_SOURCE) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: WebKit::defaultManagedMediaSourceEnabled() |
| WebCore: |
| default: true |
| sharedPreferenceForWebProcess: true |
| richJavaScript: true |
| mediaPlaybackRelated: true |
| |
| ManagedMediaSourceHighThreshold: |
| type: double |
| status: embedder |
| condition: ENABLE(MEDIA_SOURCE) |
| defaultValue: |
| WebKit: |
| default: 30 |
| WebCore: |
| default: 30 |
| |
| ManagedMediaSourceLowThreshold: |
| type: double |
| status: embedder |
| condition: ENABLE(MEDIA_SOURCE) |
| defaultValue: |
| WebKit: |
| default: 10 |
| WebCore: |
| default: 10 |
| |
| ManagedMediaSourceNeedsAirPlay: |
| type: bool |
| status: mature |
| category: media |
| humanReadableName: "Managed Media Source Requires AirPlay source" |
| humanReadableDescription: "Managed Media Source Requires AirPlay source" |
| condition: ENABLE(MEDIA_SOURCE) && ENABLE(WIRELESS_PLAYBACK_TARGET) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: WebKit::defaultManagedMediaSourceNeedsAirPlay() |
| WebCore: |
| default: false |
| |
| MathFontFamily: |
| type: String |
| status: embedder |
| webKitLegacyPreferenceKey: WebKitMathFont |
| webcoreImplementation: custom |
| defaultValue: |
| WebKitLegacy: |
| default: '""_str' |
| WebKit: |
| default: '""_str' |
| WebCore: |
| default: '""_str' |
| |
| MathMLDisableHrefOnNonAnchorElement: |
| type: bool |
| status: testable |
| category: dom |
| humanReadableName: "Disable href attribute on MathML elements" |
| humanReadableDescription: "The only MathML element on which href is allowed is <a>." |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| MathMLEnabled: |
| type: bool |
| status: embedder |
| condition: ENABLE(MATHML) |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| disableInLockdownMode: true |
| |
| MaxParseDuration: |
| type: double |
| status: embedder |
| webKitLegacyPreferenceKey: WebKitMaxParseDurationPreferenceKey |
| defaultValue: |
| WebKitLegacy: |
| default: -1 |
| WebKit: |
| default: -1 |
| WebCore: |
| default: -1 |
| |
| MediaAudioCodecIDsAllowedInLockdownMode: |
| type: String |
| status: embedder |
| webcoreBinding: none |
| exposed: [ WebKit ] |
| defaultValue: |
| WebKit: |
| default: '"aac ,zaac,qaac,caac,.mp3,mp4a"_str' |
| |
| MediaCapabilitiesEnabled: |
| type: bool |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: true |
| WebCore: |
| default: false |
| |
| # FIXME: This is on by default in WebKit2. Perhaps we should consider turning it on for WebKitLegacy as well. |
| MediaCapabilitiesExtensionsEnabled: |
| type: bool |
| status: mature |
| category: media |
| humanReadableName: "Media Capabilities Extensions" |
| humanReadableDescription: "Media Capabilities Extensions" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: true |
| WebCore: |
| default: false |
| |
| MediaCapabilityGrantsEnabled: |
| type: bool |
| status: embedder |
| condition: ENABLE(EXTENSION_CAPABILITIES) |
| humanReadableName: "Media Capability Grants" |
| humanReadableDescription: "Enable granting and revoking of media capabilities" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "PLATFORM(IOS_FAMILY_SIMULATOR)": false |
| default: true |
| WebCore: |
| "PLATFORM(IOS_FAMILY_SIMULATOR)": false |
| default: true |
| sharedPreferenceForWebProcess: true |
| |
| MediaCaptionFormatTypesAllowedInLockdownMode: |
| type: String |
| status: embedder |
| webcoreBinding: none |
| exposed: [ WebKit ] |
| defaultValue: |
| WebKit: |
| default: '"c608,wvtt"_str' |
| |
| MediaCaptureRequiresSecureConnection: |
| type: bool |
| status: internal |
| category: media |
| inspectorOverride: true |
| humanReadableName: "Limit Media Capture to Secure Sites" |
| humanReadableDescription: "Limit Media Capture to Secure Sites" |
| condition: ENABLE(MEDIA_STREAM) |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| MediaCodecTypesAllowedInLockdownMode: |
| type: String |
| status: embedder |
| webcoreBinding: none |
| exposed: [ WebKit ] |
| defaultValue: |
| WebKit: |
| default: '"mp4a.40,avc1"_str' |
| |
| MediaContainerTypesAllowedInLockdownMode: |
| type: String |
| status: embedder |
| webcoreBinding: none |
| exposed: [ WebKit ] |
| defaultValue: |
| WebKit: |
| default: '"video/mp4,audio/mp4,video/x-m4v,audio/x-m4a,audio/mp3,application/x-mpegURL,application/vnd.apple.mpegURL,video/mp2t,video/iso.segment,audio/aac,audio/mpeg,audio/ac3,audio/eac3,video/mpeg2,text/vtt"_str' |
| |
| MediaContentTypesRequiringHardwareSupport: |
| type: String |
| status: embedder |
| webcoreExcludeFromInternalSettings: true |
| webcoreImplementation: custom |
| defaultValue: |
| WebKitLegacy: |
| default: '""_str' |
| WebKit: |
| default: '""_str' |
| WebCore: |
| default: '""_str' |
| |
| MediaControlsContextMenusEnabled: |
| type: bool |
| status: embedder |
| condition: ENABLE(MEDIA_CONTROLS_CONTEXT_MENUS) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: true |
| WebCore: |
| default: false |
| sharedPreferenceForWebProcess: true |
| mediaPlaybackRelated: true |
| |
| MediaControlsMacInlineSizeSpecsEnabled: |
| type: bool |
| status: preview |
| category: media |
| humanReadableName: "Mac Inline Media Controls Specs" |
| humanReadableDescription: "Adopt new size specs for media controls" |
| condition: HAVE(MATERIAL_HOSTING) |
| defaultValue: |
| WebKit: |
| default: defaultHostedBlurMaterialInMediaControlsEnabled() |
| WebKitLegacy: |
| default: false |
| WebCore: |
| default: false |
| |
| MediaControlsScaleWithPageZoom: |
| type: bool |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| "PLATFORM(IOS_FAMILY)": false |
| default: true |
| WebKit: |
| "PLATFORM(IOS_FAMILY)": false |
| default: true |
| WebCore: |
| default: true |
| |
| MediaDataLoadsAutomatically: |
| type: bool |
| status: embedder |
| 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 |
| status: embedder |
| humanReadableName: "Media devices" |
| humanReadableDescription: "Enable media devices" |
| condition: ENABLE(MEDIA_STREAM) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "PLATFORM(GTK) || PLATFORM(WPE)": true |
| default: false |
| WebCore: |
| "PLATFORM(GTK) || PLATFORM(WPE)": true |
| default: false |
| disableInLockdownMode: true |
| |
| MediaEnabled: |
| type: bool |
| status: embedder |
| humanReadableName: "HTML Media Elements" |
| humanReadableDescription: "Enable HTML media elements <audio>, <video> and <track>" |
| condition: ENABLE(VIDEO) |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| MediaPlaybackEnabled: |
| type: bool |
| status: embedder |
| humanReadableName: "Media Playback Functionalities" |
| humanReadableDescription: "Enable media playback functionalities" |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| sharedPreferenceForWebProcess: true |
| mediaPlaybackRelated: true |
| |
| MediaPreferredFullscreenWidth: |
| type: double |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| default: 960 |
| WebKit: |
| default: 960 |
| WebCore: |
| default: 960 |
| |
| MediaPreloadingEnabled: |
| type: bool |
| status: embedder |
| 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. |
| MediaRecorderEnabled: |
| type: bool |
| status: mature |
| category: media |
| humanReadableName: "MediaRecorder" |
| humanReadableDescription: "MediaRecorder" |
| condition: ENABLE(MEDIA_RECORDER) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "PLATFORM(COCOA)": true |
| "USE(GSTREAMER)": true |
| default: false |
| WebCore: |
| default: false |
| sharedPreferenceForWebProcess: true |
| richJavaScript: true |
| mediaPlaybackRelated: true |
| |
| MediaRecorderEnabledWebM: |
| type: bool |
| status: stable |
| category: media |
| humanReadableName: "MediaRecorder WebM" |
| humanReadableDescription: "Enable WebM support with MediaRecorder" |
| condition: ENABLE(MEDIA_RECORDER_WEBM) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "PLATFORM(COCOA)": true |
| default: false |
| WebCore: |
| default: false |
| sharedPreferenceForWebProcess: true |
| |
| MediaSessionCaptureToggleAPIEnabled: |
| type: bool |
| status: stable |
| category: media |
| humanReadableName: "MediaSession capture related API" |
| humanReadableDescription: "Enable MediaSession capture related API" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "PLATFORM(COCOA)": true |
| default: false |
| WebCore: |
| default: false |
| |
| MediaSessionCoordinatorEnabled: |
| type: bool |
| status: mature |
| category: media |
| humanReadableName: "Experimental MediaSession coordinator API" |
| humanReadableDescription: "Enable experimental MediaSession coordinator API" |
| condition: ENABLE(MEDIA_SESSION_COORDINATOR) |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: WebKit::defaultMediaSessionCoordinatorEnabled() |
| WebCore: |
| default: true |
| sharedPreferenceForWebProcess: true |
| richJavaScript: true |
| mediaPlaybackRelated: true |
| |
| MediaSessionEnabled: |
| type: bool |
| status: mature |
| humanReadableName: "Media Session API" |
| humanReadableDescription: "Media Session API" |
| condition: ENABLE(MEDIA_SESSION) |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| sharedPreferenceForWebProcess: true |
| |
| MediaSessionExtendedActionsEnabled: |
| type: bool |
| status: testable |
| category: media |
| humanReadableName: "MediaSession extended actions" |
| humanReadableDescription: "Enable MediaSession hangup, previousslide, nextslide, and enterpictureinpicture actions" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| MediaSessionPlaylistEnabled: |
| type: bool |
| status: mature |
| category: media |
| humanReadableName: "Experimental MediaSession playlist API" |
| humanReadableDescription: "Enable experimental MediaSession playlist API" |
| condition: ENABLE(MEDIA_SESSION_COORDINATOR) && ENABLE(MEDIA_SESSION_PLAYLIST) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: WebKit::defaultMediaSessionCoordinatorEnabled() |
| WebCore: |
| default: true |
| |
| MediaSourceEnabled: |
| type: bool |
| status: embedder |
| category: media |
| humanReadableName: "Media Source API" |
| humanReadableDescription: "Media Source API" |
| 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 |
| sharedPreferenceForWebProcess: true |
| mediaPlaybackRelated: true |
| |
| MediaSourceInWorkerEnabled: |
| type: bool |
| status: stable |
| category: media |
| humanReadableName: "MediaSource in a Worker" |
| humanReadableDescription: "MediaSource in a Worker" |
| condition: ENABLE(MEDIA_SOURCE_IN_WORKERS) |
| exposed: [ WebCore, WebKit ] |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| mediaPlaybackRelated: true |
| |
| MediaSourcePrefersDecompressionSession: |
| type: bool |
| status: stable |
| category: media |
| humanReadableName: "MediaSource prefers DecompressionSession" |
| humanReadableDescription: "MediaSource prefers DecompressionSession" |
| condition: ENABLE(MEDIA_SOURCE) && USE(AVFOUNDATION) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: WebKit::defaultMediaSourcePrefersDecompressionSession() |
| WebCore: |
| default: true |
| sharedPreferenceForWebProcess: true |
| |
| MediaStreamTrackHandleEnabled: |
| type: bool |
| status: preview |
| category: media |
| humanReadableName: "MediaStreamTrackHandle" |
| humanReadableDescription: "Enable MediaStreamTrackHandle" |
| condition: ENABLE(MEDIA_STREAM) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| MediaStreamTrackProcessingEnabled: |
| type: bool |
| status: mature |
| category: media |
| humanReadableName: "MediaStreamTrack Processing" |
| humanReadableDescription: "Enable MediaStreamTrack Processing" |
| condition: ENABLE(MEDIA_STREAM) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "PLATFORM(COCOA)": true |
| default: false |
| WebCore: |
| "PLATFORM(COCOA)": true |
| default: false |
| |
| MediaUserGestureInheritsFromDocument: |
| type: bool |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| MediaVideoCodecIDsAllowedInLockdownMode: |
| type: String |
| status: embedder |
| webcoreBinding: none |
| exposed: [ WebKit ] |
| defaultValue: |
| WebKit: |
| default: '"avc1,zavc,qavc,cavc"_str' |
| |
| MetaViewportInteractiveWidgetEnabled: |
| type: bool |
| status: stable |
| category: css |
| humanReadableName: "Meta Viewport Interactive Widget" |
| humanReadableDescription: "Enable the interactive-widget attribute on the viewport meta element" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "PLATFORM(COCOA)": true |
| default: false |
| WebCore: |
| default: false |
| |
| MinimumFontSize: |
| type: double |
| status: embedder |
| webcoreOnChange: setNeedsRecalcStyleInAllFrames |
| defaultValue: |
| WebKitLegacy: |
| default: 0 |
| WebKit: |
| default: 0 |
| WebCore: |
| default: 0 |
| |
| MinimumLogicalFontSize: |
| type: double |
| status: embedder |
| webcoreOnChange: setNeedsRecalcStyleInAllFrames |
| defaultValue: |
| WebKitLegacy: |
| default: 9 |
| WebKit: |
| default: 9 |
| WebCore: |
| default: 0 |
| |
| MinimumZoomFontSize: |
| type: double |
| status: embedder |
| webKitLegacyPreferenceKey: WebKitMinimumZoomFontSizePreferenceKey |
| condition: ENABLE(TEXT_AUTOSIZING) |
| defaultValue: |
| WebKitLegacy: |
| default: 15 |
| WebKit: |
| "PLATFORM(WATCHOS)": 30 |
| default: 15 |
| WebCore: |
| "PLATFORM(WATCHOS)": 30 |
| default: 15 |
| |
| MockCaptureDevicesEnabled: |
| type: bool |
| status: internal |
| category: media |
| webcoreOnChange: mockCaptureDevicesEnabledChanged |
| inspectorOverride: true |
| condition: ENABLE(MEDIA_STREAM) |
| humanReadableName: "Enable Mock Capture Devices" |
| humanReadableDescription: "Enable Mock Capture Devices" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "PLATFORM(IOS_FAMILY_SIMULATOR)": true |
| default: false |
| WebCore: |
| default: false |
| |
| MockCaptureDevicesPromptEnabled: |
| type: bool |
| status: embedder |
| webcoreBinding: none |
| exposed: [ WebKit ] |
| defaultValue: |
| WebKit: |
| default: true |
| |
| MockScrollbarsControllerEnabled: |
| type: bool |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| MockScrollbarsEnabled: |
| type: bool |
| status: embedder |
| webcoreBinding: DeprecatedGlobalSettings |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| |
| ModelDocumentEnabled: |
| type: bool |
| status: testable |
| category: html |
| humanReadableName: "HTML <model> elements for stand-alone document" |
| humanReadableDescription: "Enable HTML <model> element for model documents" |
| condition: ENABLE(MODEL_ELEMENT) |
| webcoreBinding: DeprecatedGlobalSettings |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| |
| ModelElementEnabled: |
| type: bool |
| status: Modelelement_feature_status |
| category: html |
| humanReadableName: "HTML <model> element" |
| humanReadableDescription: "Enable HTML <model> element" |
| condition: ENABLE(MODEL_ELEMENT) |
| defaultValue: |
| WebKitLegacy: |
| "(PLATFORM(VISION) || ENABLE(GPU_PROCESS_MODEL)) && ENABLE(MODEL_ELEMENT)": true |
| default: false |
| WebKit: |
| "(PLATFORM(VISION) || ENABLE(GPU_PROCESS_MODEL)) && ENABLE(MODEL_ELEMENT)": true |
| default: false |
| WebCore: |
| "(PLATFORM(VISION) || ENABLE(GPU_PROCESS_MODEL)) && ENABLE(MODEL_ELEMENT)": true |
| default: false |
| disableInLockdownMode: true |
| sharedPreferenceForWebProcess: true |
| |
| ModelElementImmersiveEnabled: |
| type: bool |
| status: stable |
| category: javascript |
| condition: ENABLE(MODEL_ELEMENT_IMMERSIVE) |
| humanReadableName: "Immersive <model> API" |
| humanReadableDescription: "Enable <model> element immersive API" |
| defaultValue: |
| WebKitLegacy: |
| "ENABLE(MODEL_ELEMENT_IMMERSIVE)": true |
| default: false |
| WebKit: |
| "ENABLE(MODEL_ELEMENT_IMMERSIVE)": true |
| default: false |
| WebCore: |
| "ENABLE(MODEL_ELEMENT_IMMERSIVE)": true |
| default: false |
| disableInLockdownMode: true |
| sharedPreferenceForWebProcess: true |
| |
| ModelNoPortalAttributeEnabled: |
| type: bool |
| status: unstable |
| condition: PLATFORM(VISION) && ENABLE(MODEL_PROCESS) |
| humanReadableName: "Model noportal attribute" |
| humanReadableDescription: "Enable Model noportal attribute support" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| disableInLockdownMode: true |
| |
| ModelProcessEnabled: |
| type: bool |
| status: stable |
| category: dom |
| condition: ENABLE(MODEL_PROCESS) |
| humanReadableName: "Enable Model Process" |
| humanReadableDescription: "Load <model> content in a separate process" |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| disableInLockdownMode: true |
| sharedPreferenceForWebProcess: true |
| |
| MomentumScrollingAnimatorEnabled: |
| type: bool |
| status: internal |
| humanReadableName: "Momentum Scrolling Animator" |
| humanReadableDescription: "Generate momentum events in WebKit instead of using those delivered by the system" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: true |
| WebCore: |
| default: false |
| |
| MoreCurrencyDisplayChoicesEnabled: |
| type: bool |
| status: testable |
| category: javascript |
| humanReadableName: "More Currency Display Choices" |
| humanReadableDescription: "Enable more currencyDisplay choices for Intl.NumberFormat" |
| webcoreBinding: none |
| jscOptionName: useMoreCurrencyDisplayChoices |
| sharedPreferenceForWebProcess: true |
| defaultValue: |
| WebKit: |
| default: false |
| |
| MouseEventsSimulationEnabled: |
| type: bool |
| status: internal |
| category: dom |
| humanReadableName: "Mouse events simulation" |
| humanReadableDescription: "Enable mouse events dispatch along with touch events on iOS" |
| condition: ENABLE(TOUCH_EVENTS) || ENABLE(TOUCH_EVENT_REGIONS) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| MoveBeforeEnabled: |
| type: bool |
| status: unstable |
| category: dom |
| humanReadableName: "DOM moveBefore()" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| MultiProcessBackForwardCacheEnabled: |
| type: bool |
| status: testable |
| category: security |
| humanReadableName: "Multi-Process Back/Forward Cache" |
| humanReadableDescription: "Enable back/forward cache when site isolation is active" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| MutationEventsEnabled: |
| type: bool |
| status: testable |
| category: dom |
| humanReadableName: "DOM mutation events" |
| defaultValue: |
| WebKitLegacy: |
| default: WebKit::defaultMutationEventsEnabled() |
| WebKit: |
| default: WebKit::defaultMutationEventsEnabled() |
| WebCore: |
| default: false |
| |
| MuteCameraOnMicrophoneInterruptionEnabled: |
| type: bool |
| status: internal |
| category: media |
| humanReadableName: "Mute Camera on Microphone Interruption" |
| humanReadableDescription: "Mute Camera on Microphone Interruption" |
| condition: ENABLE(MEDIA_STREAM) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "PLATFORM(IOS_FAMILY)": true |
| default: false |
| WebCore: |
| default: false |
| |
| NavigationAPIEnabled: |
| type: bool |
| status: stable |
| category: dom |
| humanReadableName: "Navigation API" |
| humanReadableDescription: "Enable Navigation API" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "PLATFORM(COCOA) || PLATFORM(GTK) || PLATFORM(WPE)": true |
| default: false |
| WebCore: |
| "PLATFORM(COCOA) || PLATFORM(GTK) || PLATFORM(WPE)": true |
| default: false |
| |
| NavigationAPIPrecommitHandlerEnabled: |
| type: bool |
| status: stable |
| category: dom |
| humanReadableName: "Navigation API Precommit Handler" |
| humanReadableDescription: "Enable Navigation API Precommit Handler" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "PLATFORM(COCOA) || PLATFORM(GTK) || PLATFORM(WPE)": true |
| default: false |
| WebCore: |
| "PLATFORM(COCOA) || PLATFORM(GTK) || PLATFORM(WPE)": true |
| default: false |
| |
| NavigatorUserAgentDataJavaScriptAPIEnabled: |
| type: bool |
| status: internal |
| category: dom |
| humanReadableName: "Navigator userAgentData JavaScript API" |
| humanReadableDescription: "Enable the navigator.userAgentData JavaScript API" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| NavigatorWebDriverActivePolicy: |
| type: uint32_t |
| refinedType: WebCore::NavigatorWebDriverActivePolicy |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| default: static_cast<uint32_t>(WebCore::NavigatorWebDriverActivePolicy::Auto) |
| WebKit: |
| default: static_cast<uint32_t>(WebCore::NavigatorWebDriverActivePolicy::Auto) |
| WebCore: |
| default: NavigatorWebDriverActivePolicy::Auto |
| |
| 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 |
| status: embedder |
| webcoreGetter: needsAcrobatFrameReloadingQuirk |
| defaultValue: |
| WebKitLegacy: |
| PLATFORM(MAC): WebKit::defaultNeedsAdobeFrameReloadingQuirk() |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| NeedsFrameNameFallbackToIdQuirk: |
| type: bool |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| PLATFORM(MAC): WebKit::defaultNeedsFrameNameFallbackToIdQuirk() |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| NeedsInAppBrowserPrivacyQuirks: |
| type: bool |
| status: internal |
| category: dom |
| defaultsOverridable: true |
| humanReadableName: "Needs In-App Browser Privacy Quirks" |
| humanReadableDescription: "Enable quirks needed to support In-App Browser privacy" |
| webcoreBinding: none |
| exposed: [ WebKit ] |
| condition: ENABLE(APP_BOUND_DOMAINS) |
| defaultValue: |
| WebKit: |
| 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 |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| PLATFORM(MAC): WebKit::defaultNeedsKeyboardEventDisambiguationQuirks() |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| NeedsSiteSpecificQuirks: |
| type: bool |
| status: embedder |
| humanReadableName: "Needs Site-Specific Quirks" |
| humanReadableDescription: "Enable site-specific quirks" |
| webKitLegacyPreferenceKey: WebKitUseSiteSpecificSpoofing |
| inspectorOverride: true |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: true |
| WebCore: |
| default: false |
| |
| NeedsStorageAccessFromFileURLsQuirk: |
| type: bool |
| status: embedder |
| humanReadableName: "Needs storage access from file URLs quirk" |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| NotificationEventEnabled: |
| type: bool |
| status: internal |
| category: dom |
| humanReadableName: "NotificationEvent support" |
| humanReadableDescription: "NotificationEvent and ServiceWorkerRegistration.showNotification() support" |
| condition: ENABLE(NOTIFICATION_EVENT) |
| defaultValue: |
| WebCore: |
| "ENABLE(NOTIFICATION_EVENT) && !PLATFORM(IOS_FAMILY)": true |
| default: false |
| WebKit: |
| "ENABLE(NOTIFICATION_EVENT) && !PLATFORM(IOS_FAMILY)": true |
| default: false |
| sharedPreferenceForWebProcess: true |
| richJavaScript: true |
| |
| NotificationsEnabled: |
| type: bool |
| status: stable |
| category: dom |
| humanReadableName: "Notifications" |
| humanReadableDescription: "Enable the Notifications API" |
| condition: ENABLE(NOTIFICATIONS) |
| inspectorOverride: true |
| defaultValue: |
| WebKitLegacy: |
| "PLATFORM(IOS_FAMILY)": false |
| default: true |
| WebKit: |
| "PLATFORM(IOS_FAMILY)": false |
| default: true |
| WebCore: |
| "PLATFORM(IOS_FAMILY)": false |
| default: true |
| disableInLockdownMode: true |
| sharedPreferenceForWebProcess: true |
| richJavaScript: true |
| |
| ObservableEnabled: |
| type: bool |
| status: testable |
| category: dom |
| humanReadableName: "Observable API" |
| humanReadableDescription: "Support for the Observable API" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| OffscreenCanvasEnabled: |
| type: bool |
| status: stable |
| category: dom |
| humanReadableName: "OffscreenCanvas" |
| humanReadableDescription: "Support for the OffscreenCanvas APIs" |
| condition: ENABLE(OFFSCREEN_CANVAS) |
| defaultValue: |
| WebKitLegacy: |
| "PLATFORM(COCOA)": true |
| default: false |
| WebKit: |
| "PLATFORM(COCOA) || PLATFORM(GTK) || PLATFORM(WPE)": true |
| default: false |
| WebCore: |
| "PLATFORM(COCOA) || PLATFORM(GTK) || PLATFORM(WPE)": true |
| default: false |
| |
| OffscreenCanvasInWorkersEnabled: |
| type: bool |
| status: stable |
| category: dom |
| humanReadableName: "OffscreenCanvas in Workers" |
| humanReadableDescription: "Support for the OffscreenCanvas APIs in Workers" |
| condition: ENABLE(OFFSCREEN_CANVAS_IN_WORKERS) |
| defaultValue: |
| WebKitLegacy: |
| "PLATFORM(COCOA)": true |
| default: false |
| WebKit: |
| "PLATFORM(COCOA) || PLATFORM(GTK) || PLATFORM(WPE)": true |
| default: false |
| WebCore: |
| "PLATFORM(COCOA) || PLATFORM(GTK) || PLATFORM(WPE)": true |
| default: false |
| |
| OpenPseudoClassEnabled: |
| type: bool |
| status: stable |
| humanReadableName: ":open pseudo-class" |
| humanReadableDescription: "Enable the :open CSS pseudo-class" |
| category: css |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| OpenXRDMABufRelaxedForTesting: |
| type: bool |
| status: internal |
| humanReadableName: "OpenXR DMA-BUF requirement relaxed for testing" |
| humanReadableDescription: "During testing, allows relaxing the requirement that the GL display used by the OpenXR coordinator has MESA_image_dma_buf_export" |
| webcoreBinding: none |
| condition: ENABLE(DEVELOPER_MODE) && USE(OPENXR) |
| exposed: [ WebKit ] |
| defaultValue: |
| WebKit: |
| default: false |
| |
| # FIXME: Reenable this on iOS once we can mitigate impact on memory use. |
| OpportunisticSweepingAndGarbageCollectionEnabled: |
| type: bool |
| status: internal |
| humanReadableName: "Opportunistic Sweeping and GC" |
| humanReadableDescription: "Enable Opportunistic Sweeping and GC" |
| category: javascript |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: true |
| WebCore: |
| default: false |
| |
| OptInPartitionedCookiesEnabled: |
| type: bool |
| status: stable |
| category: dom |
| humanReadableName: "Opt-in partitioned cookies (CHIPS)" |
| humanReadableDescription: "Enable opt-in partitioned cookies" |
| condition: ENABLE(OPT_IN_PARTITIONED_COOKIES) |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| OriginAPIEnabled: |
| type: bool |
| status: stable |
| category: dom |
| humanReadableName: "Origin API" |
| humanReadableDescription: "Enable the Origin API" |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| OriginAgentClusterEnabled: |
| type: bool |
| status: stable |
| category: security |
| humanReadableName: "Origin-Agent-Cluster header" |
| humanReadableDescription: "Support for the Origin-Agent-Cluster HTTP response header and window.originAgentCluster getter" |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| OverlayRegionsEnabled: |
| type: bool |
| status: testable |
| category: dom |
| humanReadableName: "Overlay Regions" |
| humanReadableDescription: "Generate and visualize overlay regions" |
| condition: ENABLE(OVERLAY_REGIONS_IN_EVENT_REGION) |
| webcoreBinding: none |
| exposed: [ WebKit ] |
| defaultValue: |
| WebKit: |
| default: false |
| |
| OverscrollBehaviorEnabled: |
| type: bool |
| status: stable |
| category: css |
| humanReadableName: "CSS Overscroll Behavior" |
| humanReadableDescription: "Enable CSS overscroll-behavior" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "PLATFORM(WIN)": false |
| default: true |
| WebCore: |
| "PLATFORM(WIN)": false |
| default: true |
| |
| PDFJSViewerEnabled: |
| type: bool |
| status: testable |
| category: html |
| humanReadableName: "Enable PDF.js viewer" |
| humanReadableDescription: "Enable PDF.js viewer" |
| condition: ENABLE(PDFJS) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "PLATFORM(GTK) || PLATFORM(WPE)": true |
| default: false |
| WebCore: |
| default: false |
| disableInLockdownMode: true |
| |
| PDFPluginEnabled: |
| type: bool |
| status: embedder |
| condition: PLATFORM(COCOA) |
| exposed: [ WebKit ] |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "PLATFORM(IOS_FAMILY)": false |
| default: true |
| WebCore: |
| default: false |
| |
| PDFPluginHUDEnabled: |
| type: bool |
| status: embedder |
| condition: PLATFORM(COCOA) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "PLATFORM(IOS_FAMILY)": false |
| default: true |
| WebCore: |
| default: false |
| |
| PDFPluginPageNumberIndicatorEnabled: |
| type: bool |
| status: embedder |
| condition: ENABLE(PDF_PAGE_NUMBER_INDICATOR) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: true |
| WebCore: |
| default: false |
| |
| PageVisibilityBasedProcessSuppressionEnabled: |
| type: bool |
| status: internal |
| category: dom |
| humanReadableName: "Page visibility-based process suppression" |
| humanReadableDescription: "Enable page visibility-based process suppression" |
| webcoreBinding: none |
| exposed: [ WebKit ] |
| defaultValue: |
| WebKit: |
| default: true |
| |
| PassiveTouchListenersAsDefaultOnDocument: |
| type: bool |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| "PLATFORM(IOS_FAMILY)": WebKit::defaultPassiveTouchListenersAsDefaultOnDocument() |
| default: true |
| WebKit: |
| "PLATFORM(IOS_FAMILY)": WebKit::defaultPassiveTouchListenersAsDefaultOnDocument() |
| default: true |
| WebCore: |
| default: true |
| |
| PassiveWheelListenersAsDefaultOnDocument: |
| type: bool |
| status: embedder |
| humanReadableName: "Wheel Event listeners on the root made passive" |
| humanReadableDescription: "Force wheel event listeners registered on the window, document or body to be passive" |
| defaultValue: |
| WebKitLegacy: |
| "PLATFORM(MAC)": WebKit::defaultPassiveWheelListenersAsDefaultOnDocument() |
| default: true |
| WebKit: |
| "PLATFORM(MAC)": WebKit::defaultPassiveWheelListenersAsDefaultOnDocument() |
| default: true |
| WebCore: |
| default: true |
| |
| PasswordEchoDuration: |
| type: double |
| status: embedder |
| webKitLegacyPreferenceKey: WebKitPasswordEchoDurationPreferenceKey |
| webcoreName: passwordEchoDurationInSeconds |
| defaultValue: |
| WebKitLegacy: |
| "PLATFORM(IOS_FAMILY)": 2 |
| default: 1 |
| WebKit: |
| default: 2 |
| WebCore: |
| default: 1 |
| |
| PasswordEchoEnabled: |
| type: bool |
| status: embedder |
| 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 |
| status: embedder |
| humanReadableName: "WebRTC Peer Connection" |
| humanReadableDescription: "Enable RTCPeerConnection" |
| condition: ENABLE(WEB_RTC) |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| "USE(LIBWEBRTC)": WebKit::defaultPeerConnectionEnabledAvailable() |
| default: false |
| WebCore: |
| default: true |
| disableInLockdownMode: true |
| sharedPreferenceForWebProcess: true |
| richJavaScript: true |
| mediaPlaybackRelated: true |
| |
| PeerConnectionVideoScalingAdaptationDisabled: |
| type: bool |
| status: embedder |
| humanReadableName: "WebRTC Peer Connection Video Scaling Adaptation" |
| humanReadableDescription: "Disable RTCPeerConnection Video Scaling Adaptation" |
| condition: ENABLE(WEB_RTC) |
| 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. |
| PerElementSpeakerSelectionEnabled: |
| type: bool |
| status: internal |
| category: media |
| humanReadableName: "Allow per media element speaker device selection" |
| humanReadableDescription: "Allow per media element speaker device selection" |
| condition: ENABLE(MEDIA_STREAM) |
| defaultValue: |
| WebKit: |
| "PLATFORM(COCOA)": true |
| "PLATFORM(WPE)": true |
| "PLATFORM(GTK)": true |
| default: false |
| WebCore: |
| "PLATFORM(WPE)": true |
| "PLATFORM(GTK)": true |
| default: false |
| |
| PermissionsAPIEnabled: |
| type: bool |
| status: stable |
| category: dom |
| humanReadableName: "Permissions API" |
| humanReadableDescription: "Enable Permissions API" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "PLATFORM(COCOA) || PLATFORM(GTK) || PLATFORM(WPE) || PLATFORM(WIN)" : true |
| default: false |
| WebCore: |
| default: false |
| sharedPreferenceForWebProcess: true |
| richJavaScript: true |
| |
| PhotoPickerPrefersOriginalImageFormat: |
| type: bool |
| status: internal |
| humanReadableName: "Photo Picker Prefers Original Image Format" |
| humanReadableDescription: "Prefer the original image format when selecting photos for file upload" |
| webcoreBinding: none |
| condition: HAVE(PHOTOS_UI) |
| exposed: [ WebKit ] |
| defaultValue: |
| WebKit: |
| default: false |
| |
| PictographFontFamily: |
| type: String |
| status: embedder |
| webKitLegacyPreferenceKey: WebKitPictographFont |
| webcoreImplementation: custom |
| defaultValue: |
| WebKitLegacy: |
| "PLATFORM(IOS_FAMILY)": '"AppleColorEmoji"_str' |
| default: '"Apple Color Emoji"_str' |
| WebKit: |
| "PLATFORM(COCOA) && PLATFORM(IOS_FAMILY)": '"AppleColorEmoji"_str' |
| "PLATFORM(COCOA) && !PLATFORM(IOS_FAMILY)": '"Apple Color Emoji"_str' |
| default: '"Times"_str' |
| WebCore: |
| default: '""_str' |
| |
| PictureInPictureAPIEnabled: |
| type: bool |
| status: embedder |
| condition: ENABLE(PICTURE_IN_PICTURE_API) |
| defaultValue: |
| WebKitLegacy: |
| "PLATFORM(VISION)": false |
| default: false |
| WebKit: |
| "PLATFORM(VISION)": false |
| default: true |
| WebCore: |
| "PLATFORM(VISION)": false |
| default: true |
| disableInLockdownMode: true |
| |
| PictureInPicturePlaybackStateEnabled: |
| type: bool |
| status: internal |
| humanReadableName: "Picture-in-Picture Playback State Enabled" |
| humanReadableDescription: "Picture-in-Picture Playback State Enabled" |
| condition: HAVE(PIP_SKIP_PREROLL) |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: false |
| disableInLockdownMode: true |
| |
| PitchCorrectionAlgorithm: |
| type: uint32_t |
| refinedType: WebCore::MediaPlayerEnums::PitchCorrectionAlgorithm |
| status: embedder |
| 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) |
| WebCore: |
| default: MediaPlayerEnums::PitchCorrectionAlgorithm::BestAllAround |
| |
| PointerLockEnabled: |
| type: bool |
| status: internal |
| category: dom |
| condition: ENABLE(POINTER_LOCK) |
| humanReadableName: "Pointer Lock API" |
| humanReadableDescription: "Enable the Pointer Lock API" |
| inspectorOverride: true |
| defaultValue: |
| WebKitLegacy: |
| "PLATFORM(IOS_FAMILY)": false |
| default: true |
| WebKit: |
| "PLATFORM(IOS_FAMILY)": false |
| default: true |
| WebCore: |
| default: false |
| |
| PopoverAttributeEnabled: |
| type: bool |
| status: stable |
| category: html |
| humanReadableName: "HTML popover attribute" |
| humanReadableDescription: "Enable HTML popover attribute support" |
| defaultValue: |
| WebKitLegacy: |
| default: WebKit::defaultPopoverAttributeEnabled() |
| WebKit: |
| default: WebKit::defaultPopoverAttributeEnabled() |
| WebCore: |
| default: true |
| |
| PopoverHintEnabled: |
| type: bool |
| status: stable |
| category: html |
| humanReadableName: "HTML popover hint type" |
| humanReadableDescription: "Enable popover='hint' type support" |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| PreferFasterClickOverDoubleTap: |
| type: bool |
| status: internal |
| category: dom |
| humanReadableName: "Fast clicks beat DTTZ" |
| humanReadableDescription: "Prefer a faster click over a double tap" |
| webcoreBinding: none |
| condition: PLATFORM(IOS_FAMILY) |
| exposed: [ WebKit ] |
| defaultValue: |
| WebKit: |
| "PLATFORM(IOS_FAMILY) && !PLATFORM(WATCHOS)": true |
| default: false |
| |
| PreferPageRenderingUpdatesNear60FPSEnabled: |
| type: bool |
| status: stable |
| category: dom |
| humanReadableName: "Prefer Page Rendering Updates near 60fps" |
| humanReadableDescription: "Prefer page rendering updates near 60 frames per second rather than using the display's refresh rate" |
| defaultValue: |
| WebKitLegacy: |
| "PLATFORM(VISION)": false |
| default: true |
| WebKit: |
| "PLATFORM(VISION)": false |
| default: true |
| WebCore: |
| "PLATFORM(VISION)": false |
| default: true |
| |
| PreferSpatialAudioExperience: |
| type: bool |
| status: internal |
| category: media |
| condition: HAVE(SPATIAL_AUDIO_EXPERIENCE) |
| humanReadableName: "Prefer Spatial Audio Experience over Spatial Tracking Labels" |
| humanReadableDescription: "Prefer Spatial Audio Experience over Spatial Tracking Labels" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: WebKit::defaultPreferSpatialAudioExperience() |
| WebCore: |
| default: false |
| defaultsOverridable: true |
| sharedPreferenceForWebProcess: true |
| |
| PrivateClickMeasurementDebugModeEnabled: |
| type: bool |
| status: developer |
| category: privacy |
| humanReadableName: "Private Click Measurement Debug Mode" |
| humanReadableDescription: "Enable Private Click Measurement Debug Mode" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| PrivateClickMeasurementEnabled: |
| type: bool |
| status: embedder |
| humanReadableName: "Private Click Measurement" |
| humanReadableDescription: "Enable Private Click Measurement for Cross-Site Link Navigations" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| PrivateClickMeasurementFraudPreventionEnabled: |
| type: bool |
| status: stable |
| category: privacy |
| humanReadableName: "Private Click Measurement Fraud Prevention" |
| humanReadableDescription: "Enable Private Click Measurement Fraud Prevention" |
| defaultValue: |
| WebKit: |
| "HAVE(RSA_BSSA)": true |
| default: false |
| WebCore: |
| "HAVE(RSA_BSSA)": true |
| default: false |
| |
| PrivateTokenUsageByThirdPartyEnabled: |
| type: bool |
| status: stable |
| category: privacy |
| humanReadableName: "Private Token usage by third party" |
| humanReadableDescription: "Enable private token usage by third party" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| ProcessSwapOnCrossSiteNavigationEnabled: |
| type: bool |
| status: stable |
| category: networking |
| humanReadableName: "Swap Processes on Cross-Site Navigation" |
| humanReadableDescription: "Swap WebContent Processes on cross-site navigations" |
| webcoreBinding: none |
| exposed: [ WebKit ] |
| defaultValue: |
| WebKit: |
| "PLATFORM(PLAYSTATION)": false |
| default: true |
| |
| PromiseIsPromiseEnabled: |
| type: bool |
| status: testable |
| category: javascript |
| humanReadableName: "Promise.isPromise" |
| humanReadableDescription: "Expose the Promise.isPromise method." |
| webcoreBinding: none |
| jscOptionName: usePromiseIsPromise |
| sharedPreferenceForWebProcess: true |
| defaultValue: |
| WebKit: |
| default: false |
| |
| PropagateDamagingInformation: |
| type: bool |
| status: testable |
| category: dom |
| humanReadableName: "Propagate Damaging Information" |
| humanReadableDescription: "Propagate Damaging Information" |
| condition: ENABLE(DAMAGE_TRACKING) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "PLATFORM(GTK) || PLATFORM(WPE)": true |
| default: false |
| WebCore: |
| default: false |
| |
| PunchOutWhiteBackgroundsInDarkMode: |
| type: bool |
| status: embedder |
| webcoreOnChange: setNeedsRecalcStyleInAllFrames |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| PushAPIEnabled: |
| type: bool |
| status: embedder |
| category: dom |
| humanReadableName: "Push API" |
| humanReadableDescription: "Enable Push API" |
| inspectorOverride: true |
| defaultValue: |
| WebCore: |
| default: false |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| disableInLockdownMode: true |
| sharedPreferenceForWebProcess: true |
| richJavaScript: true |
| |
| RTCEncodedStreamsQuirkEnabled: |
| type: bool |
| status: internal |
| humanReadableName: "RTC Encoded Streams Quirk" |
| humanReadableDescription: "Enable RTC Encoded Streams Quirk" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: WebKit::defaultRTCEncodedStreamsQuirkEnabled() |
| WebCore: |
| default: false |
| |
| ReadableByteStreamAPIEnabled: |
| type: bool |
| status: stable |
| category: dom |
| humanReadableName: "ReadableByteStream" |
| humanReadableDescription: "Enable Readable Byte Streams" |
| defaultValue: |
| WebCore: |
| default: true |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| |
| ReadableByteStreamFetchSourceEnabled: |
| type: bool |
| status: stable |
| category: dom |
| humanReadableName: "ReadableByteStream for fetch API" |
| humanReadableDescription: "Enable Readable Byte Streams for fetch API" |
| defaultValue: |
| WebCore: |
| default: true |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| |
| ReadableStreamFromEnabled: |
| type: bool |
| status: stable |
| category: dom |
| humanReadableName: "ReadableStream.from" |
| humanReadableDescription: "Enable ReadableStream.from" |
| defaultValue: |
| WebCore: |
| default: true |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| |
| ReadableStreamIterableEnabled: |
| type: bool |
| status: stable |
| category: dom |
| humanReadableName: "ReadableStream async iterable" |
| humanReadableDescription: "Enable ReadableStream async iterable" |
| defaultValue: |
| WebCore: |
| default: true |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| |
| ReadableStreamTransferEnabled: |
| type: bool |
| status: stable |
| category: dom |
| humanReadableName: "ReadableStream/WritableStream/TransformStream transfer" |
| humanReadableDescription: "Enable ReadableStream/WritableStream/TransformStream transfer" |
| defaultValue: |
| WebCore: |
| default: true |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| |
| RegExpBufferBoundariesEnabled: |
| type: bool |
| status: testable |
| category: javascript |
| humanReadableName: "RegExp Buffer Boundaries" |
| humanReadableDescription: "Allow the use in regular expressions of \\\\A, \\\\z and \\\\Z from the RegExp Buffer Boundaries proposal" |
| webcoreBinding: none |
| jscOptionName: useRegExpBufferBoundaries |
| sharedPreferenceForWebProcess: true |
| defaultValue: |
| WebKit: |
| default: false |
| |
| RemoteMediaSessionManagerEnabled: |
| type: bool |
| status: unstable |
| category: media |
| humanReadableName: "Remote MediaSessionManager" |
| humanReadableDescription: "Enable MediaSessionManager in the UI process" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| disableInLockdownMode: true |
| sharedPreferenceForWebProcess: true |
| |
| # FIXME: This is on by default in WebKit2. Perhaps we should consider turning it on for WebKitLegacy as well. |
| RemotePlaybackEnabled: |
| type: bool |
| status: mature |
| humanReadableName: "Remote Playback API" |
| humanReadableDescription: "Enable Remote Playback API" |
| condition: ENABLE(WIRELESS_PLAYBACK_TARGET) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "PLATFORM(VISION)" : false |
| default: true |
| WebCore: |
| "PLATFORM(VISION)" : false |
| default: true |
| disableInLockdownMode: true |
| |
| RemoteSnapshottingEnabled: |
| type: bool |
| status: testable |
| category: media |
| humanReadableName: "Remote Snapshotting" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| sharedPreferenceForWebProcess: true |
| |
| RemoveBackgroundEnabled: |
| type: bool |
| # FIXME: Change to "embedder" when there is a way to enable/disable embedder features from API tests. |
| status: internal |
| category: dom |
| humanReadableName: "Remove Background" |
| humanReadableDescription: "Enable Remove Background" |
| condition: ENABLE(IMAGE_ANALYSIS) |
| exposed: [ WebKit ] |
| defaultValue: |
| WebCore: |
| default: false |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: defaultRemoveBackgroundEnabled() |
| |
| ReplayCGDisplayListsIntoBackingStore: |
| type: bool |
| status: internal |
| humanReadableName: "Dynamic Content Scaling: Replay for Testing" |
| humanReadableDescription: "Replay Dynamic Content Scaling Display Lists into layer contents for testing" |
| webcoreBinding: none |
| condition: ENABLE(RE_DYNAMIC_CONTENT_SCALING) |
| exposed: [ WebKit ] |
| defaultValue: |
| WebKit: |
| default: false |
| |
| RequestIdleCallbackEnabled: |
| type: bool |
| status: testable |
| category: dom |
| humanReadableName: "requestIdleCallback" |
| humanReadableDescription: "Enable requestIdleCallback support" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| RequestStorageAccessThrowsExceptionUntilReload: |
| type: bool |
| status: unstable |
| category: dom |
| humanReadableName: "requestStorageAccess throws execption until reload" |
| humanReadableDescription: "requestStorageAccess throws execption until reload" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| RequestVideoFrameCallbackEnabled: |
| type: bool |
| status: mature |
| category: media |
| humanReadableName: "RequestVideoFrameCallback" |
| humanReadableDescription: "Enable RequestVideoFrameCallback API" |
| defaultValue: |
| WebKitLegacy: |
| "PLATFORM(COCOA) && HAVE(AVSAMPLEBUFFERVIDEOOUTPUT)" : true |
| default: false |
| WebKit: |
| "PLATFORM(COCOA) && HAVE(AVSAMPLEBUFFERVIDEOOUTPUT)" : true |
| "USE(GSTREAMER)": true |
| default: false |
| WebCore: |
| "PLATFORM(COCOA) && HAVE(AVSAMPLEBUFFERVIDEOOUTPUT)" : true |
| "USE(GSTREAMER)": true |
| default: false |
| |
| RequiresPageVisibilityForVideoToBeNowPlaying: |
| type: bool |
| status: embedder |
| condition: ENABLE(REQUIRES_PAGE_VISIBILITY_FOR_NOW_PLAYING) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: defaultRequiresPageVisibilityForVideoToBeNowPlaying() |
| WebCore: |
| default: false |
| |
| RequiresPageVisibilityToPlayAudio: |
| type: bool |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| RequiresUserGestureForAudioPlayback: |
| type: bool |
| status: embedder |
| webKitLegacyPreferenceKey: WebKitAudioPlaybackRequiresUserGesture |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "PLATFORM(IOS_FAMILY)": true |
| default: false |
| WebCore: |
| PLATFORM(IOS_FAMILY): true |
| default: false |
| |
| RequiresUserGestureForMediaPlayback: |
| type: bool |
| status: embedder |
| webKitLegacyPreferenceKey: WebKitMediaPlaybackRequiresUserGesture |
| webcoreBinding: none |
| defaultValue: |
| WebKitLegacy: |
| "PLATFORM(IOS_FAMILY)": true |
| default: false |
| WebKit: |
| default: false |
| |
| RequiresUserGestureForVideoPlayback: |
| type: bool |
| status: embedder |
| webKitLegacyPreferenceKey: WebKitVideoPlaybackRequiresUserGesture |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| RequiresUserGestureToLoadVideo: |
| type: bool |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| "PLATFORM(IOS_FAMILY)": WebKit::defaultRequiresUserGestureToLoadVideo() |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| "PLATFORM(IOS_FAMILY)": true |
| default: false |
| |
| ResourceLoadSchedulingEnabled: |
| type: bool |
| status: internal |
| category: networking |
| humanReadableName: "Resource Load Scheduling" |
| humanReadableDescription: "Network process side priority and visibility based resource load scheduling" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| ResourceUsageOverlayVisible: |
| type: bool |
| status: internal |
| category: networking |
| defaultsOverridable: true |
| humanReadableName: "Resource usage overlay" |
| humanReadableDescription: "Make resource usage overlay visible" |
| condition: ENABLE(RESOURCE_USAGE) |
| webcoreOnChange: resourceUsageOverlayVisibleChanged |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| RespondToThermalPressureAggressively: |
| type: bool |
| status: internal |
| defaultsOverridable: true |
| humanReadableName: "Respond to thermal pressure aggressively" |
| humanReadableDescription: "Enable responding to thermal pressure aggressively" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| RubberBandingForSubScrollableRegionsEnabled: |
| type: bool |
| status: embedder |
| condition: HAVE(RUBBER_BANDING) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| SKAttributionEnabled: |
| type: bool |
| status: embedder |
| humanReadableName: "SKAttribution" |
| humanReadableDescription: "SKAttribution" |
| defaultValue: |
| WebCore: |
| default: true |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| |
| SVGExternalResourcesEnabled: |
| type: bool |
| status: preview |
| category: css |
| humanReadableName: "SVG external resources" |
| humanReadableDescription: "Enable referencing SVG resources (paint servers, etc.) via external or data: URLs" |
| defaultValue: |
| WebCore: |
| default: false |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| |
| SWVPDecodersAlwaysEnabled: |
| type: bool |
| status: internal |
| category: media |
| humanReadableName: "Always enable VPx software decoders" |
| humanReadableDescription: "Always enable VPx software decoders" |
| webcoreBinding: none |
| condition: ENABLE(VP9) |
| defaultValue: |
| WebKitLegacy: |
| "PLATFORM(IOS_FAMILY_SIMULATOR)": true |
| default: false |
| WebKit: |
| "PLATFORM(IOS_FAMILY_SIMULATOR)": true |
| default: false |
| WebCore: |
| default: false |
| |
| SafeBrowsingEnabled: |
| type: bool |
| status: embedder |
| humanReadableName: "Safe Browsing" |
| humanReadableDescription: "Enable Safe Browsing" |
| webcoreBinding: none |
| exposed: [ WebKit ] |
| defaultValue: |
| WebKit: |
| default: true |
| |
| SampledPageTopColorMaxDifference: |
| type: double |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| default: 0 |
| WebKit: |
| default: 0 |
| WebCore: |
| default: 0 |
| |
| SampledPageTopColorMinHeight: |
| type: double |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| default: 0 |
| WebKit: |
| default: 0 |
| WebCore: |
| default: 0 |
| |
| SansSerifFontFamily: |
| type: String |
| status: embedder |
| webKitLegacyPreferenceKey: WebKitSansSerifFont |
| webcoreImplementation: custom |
| defaultValue: |
| WebKitLegacy: |
| default: '"Helvetica"_str' |
| WebKit: |
| default: '"Helvetica"_str' |
| WebCore: |
| default: '""_str' |
| |
| ScopedCustomElementRegistryEnabled: |
| type: bool |
| status: stable |
| category: dom |
| humanReadableName: "Scoped custom element registry" |
| humanReadableDescription: "Enable scoped custom element registry" |
| defaultValue: |
| WebKitLegacy: |
| "PLATFORM(COCOA)": true |
| default: false |
| WebKit: |
| "PLATFORM(COCOA)": true |
| default: false |
| WebCore: |
| "PLATFORM(COCOA)": true |
| default: false |
| |
| # FIXME: Is this implemented for WebKitLegacy? If not, this should be excluded from WebKitLegacy entirely. |
| # FIXME: This should have it's own ENABLE. |
| ScreenCaptureEnabled: |
| type: bool |
| status: mature |
| category: media |
| condition: ENABLE(MEDIA_STREAM) |
| humanReadableName: "ScreenCapture" |
| humanReadableDescription: "Enable ScreenCapture" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: WebKit::defaultShouldEnableScreenCapture() |
| WebCore: |
| default: false |
| |
| ScreenOrientationAPIEnabled: |
| type: bool |
| status: stable |
| category: dom |
| humanReadableName: "Screen Orientation API" |
| humanReadableDescription: "Enable Screen Orientation API" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: WebKit::defaultShouldEnableScreenOrientationAPI() |
| WebCore: |
| default: false |
| sharedPreferenceForWebProcess: true |
| richJavaScript: true |
| |
| ScreenOrientationLockingAPIEnabled: |
| type: bool |
| status: testable |
| category: dom |
| humanReadableName: "Screen Orientation API (Locking / Unlocking)" |
| humanReadableDescription: "Enable Screen Orientation API (Locking / Unlocking)" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| ScreenTimeEnabled: |
| type: bool |
| status: internal |
| condition: ENABLE(SCREEN_TIME) |
| humanReadableName: "Screen Time" |
| humanReadableDescription: "Enable Screen Time" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: defaultScreenTimeEnabled() |
| WebCore: |
| default: false |
| |
| ScreenWakeLockAPIEnabled: |
| type: bool |
| status: stable |
| category: dom |
| humanReadableName: "Screen Wake Lock API" |
| humanReadableDescription: "Enable Screen Wake Lock API" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: true |
| WebCore: |
| default: false |
| |
| ScriptTrackingPrivacyLoggingEnabled: |
| type: bool |
| status: internal |
| humanReadableName: "Script Tracking Privacy Logging" |
| humanReadableDescription: "Script tracking privacy logging enabled" |
| exposed: [ WebKit ] |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| ScriptTrackingPrivacyNetworkRequestBlockingEnabled: |
| type: bool |
| status: internal |
| humanReadableName: "Script Tracking Privacy Network Requests Blocking" |
| humanReadableDescription: "Block network requests to known tracking domains" |
| exposed: [ WebKit ] |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| ScriptTrackingPrivacyProtectionsEnabled: |
| type: bool |
| status: internal |
| humanReadableName: "Script Tracking Privacy Protections" |
| humanReadableDescription: "Script tracking privacy protections enabled" |
| exposed: [ WebKit ] |
| webcoreBinding: none |
| defaultValue: |
| WebKit: |
| default: true |
| |
| ScrollAnimatorEnabled: |
| type: bool |
| status: embedder |
| humanReadableName: "Scroll animator" |
| humanReadableDescription: "Enable scroll animator" |
| defaultValue: |
| WebKitLegacy: |
| "PLATFORM(MAC)": WebKit::defaultScrollAnimatorEnabled() |
| "PLATFORM(GTK) || PLATFORM(WPE)": true |
| default: false |
| WebKit: |
| "PLATFORM(MAC)": WebKit::defaultScrollAnimatorEnabled() |
| "PLATFORM(GTK) || PLATFORM(WPE)": true |
| default: false |
| WebCore: |
| default: false |
| |
| ScrollToTextFragmentEnabled: |
| type: bool |
| status: stable |
| category: dom |
| humanReadableName: "Scroll To Text Fragment" |
| humanReadableDescription: "Enable Scroll To Text Fragment" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| ScrollToTextFragmentFeatureDetectionEnabled: |
| type: bool |
| status: stable |
| category: dom |
| humanReadableName: "Scroll To Text Fragment Feature Detection" |
| humanReadableDescription: "Enable Scroll To Text Fragment Feature Detection" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| ScrollToTextFragmentGenerationEnabled: |
| type: bool |
| status: stable |
| category: dom |
| humanReadableName: "Scroll To Text Fragment Generation" |
| humanReadableDescription: "Enable Scroll To Text Fragment Generation Menu" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| ScrollToTextFragmentIndicatorEnabled: |
| type: bool |
| status: embedder |
| humanReadableName: "Scroll To Text Fragment Indicator" |
| humanReadableDescription: "Enable Scroll To Text Fragment Indicator" |
| defaultValue: |
| WebKit: |
| default: true |
| WebKitLegacy: |
| default: true |
| WebCore: |
| default: true |
| |
| ScrollToTextFragmentMarkingEnabled: |
| type: bool |
| status: embedder |
| humanReadableName: "Scroll To Text Fragment Marking" |
| humanReadableDescription: "Enable Scroll To Text Fragment Marking" |
| defaultValue: |
| WebKit: |
| default: true |
| WebKitLegacy: |
| default: true |
| WebCore: |
| default: true |
| |
| ScrollViewAdaptiveDecelerationTrackingEnabled: |
| type: bool |
| status: internal |
| humanReadableName: "Adaptive Deceleration Tracking" |
| humanReadableDescription: "Use adaptive deceleration tracking behavior for scroll views" |
| webcoreBinding: none |
| exposed: [ WebKit ] |
| condition: HAVE(UISCROLLVIEW_DECELERATION_TRACKING_BEHAVIOR) |
| defaultValue: |
| WebKit: |
| default: false |
| |
| ScrollendEventEnabled: |
| type: bool |
| status: stable |
| category: dom |
| humanReadableName: "scrollend event" |
| humanReadableDescription: "Enable scrollend event" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| ScrollingPerformanceTestingEnabled: |
| type: bool |
| status: internal |
| defaultsOverridable: true |
| humanReadableName: "Scroll Performance Testing Enabled" |
| humanReadableDescription: "Enable behaviors used by scrolling performance tests" |
| webcoreOnChange: scrollingPerformanceTestingEnabledChanged |
| exposed: [ WebKit ] |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| SearchInputResultsAttributeEnabled: |
| type: bool |
| status: embedder |
| humanReadableName: "<input type=search> results=N attribute" |
| humanReadableDescription: "Enable the legacy WebKit-only ::-webkit-search-results-button saved-searches dropdown opt-in" |
| defaultValue: |
| WebKitLegacy: |
| "PLATFORM(COCOA)" : WebKit::defaultSearchInputResultsAttributeEnabled() |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| SecureContextChecksEnabled: |
| type: bool |
| status: internal |
| category: security |
| humanReadableName: "Secure Context Checks" |
| humanReadableDescription: "Allow access to HTTPS-only Web APIs over HTTP" |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| SelectShowPickerEnabled: |
| type: bool |
| status: testable |
| category: dom |
| humanReadableName: "<select> showPicker() method" |
| humanReadableDescription: "Enable showPicker() method on <select>" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| 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. |
| SelectTrailingWhitespaceEnabled: |
| type: bool |
| status: embedder |
| webKitLegacyBinding: custom |
| defaultValue: |
| WebKit: |
| default: false |
| WebKitLegacy: |
| default: false |
| WebCore: |
| default: false |
| |
| SelectionFlippingEnabled: |
| type: bool |
| status: embedder |
| humanReadableName: "Selection Flipping" |
| humanReadableDescription: "Enable Selection Flipping" |
| webcoreBinding: none |
| defaultValue: |
| WebKit: |
| "PLATFORM(VISION)" : false |
| default: true |
| |
| SelectionHonorsOverflowScrolling: |
| type: bool |
| status: internal |
| humanReadableName: "Selection Honors Overflow Scrolling" |
| humanReadableDescription: "Selection honors overflow scrolling" |
| condition: PLATFORM(IOS_FAMILY) |
| exposed: [ WebKit ] |
| defaultValue: |
| WebKit: |
| "ENABLE(SELECTION_HONORS_OVERFLOW_SCROLLING_BY_DEFAULT)" : true |
| default: false |
| WebKitLegacy: |
| default: false |
| WebCore: |
| default: false |
| |
| SerifFontFamily: |
| type: String |
| status: embedder |
| webKitLegacyPreferenceKey: WebKitSerifFont |
| webcoreImplementation: custom |
| defaultValue: |
| WebKitLegacy: |
| default: '"Times"_str' |
| WebKit: |
| default: '"Times"_str' |
| WebCore: |
| default: '""_str' |
| |
| ServiceControlsEnabled: |
| type: bool |
| status: embedder |
| condition: ENABLE(SERVICE_CONTROLS) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| ServiceWorkerEntitlementDisabledForTesting: |
| type: bool |
| status: embedder |
| webcoreBinding: none |
| exposed: [ WebKit ] |
| defaultValue: |
| WebKit: |
| default: false |
| |
| ServiceWorkerInstallEventEnabled: |
| type: bool |
| status: stable |
| category: networking |
| humanReadableName: "Service Worker Install Event" |
| humanReadableDescription: "Enable Service Worker Install Event API" |
| defaultValue: |
| WebKit: |
| "PLATFORM(COCOA)" : true |
| default: false |
| WebKitLegacy: |
| default: false |
| WebCore: |
| "PLATFORM(COCOA)" : true |
| default: false |
| disableInLockdownMode: true |
| |
| ServiceWorkerNavigationPreloadEnabled: |
| type: bool |
| status: stable |
| category: networking |
| humanReadableName: "Service Worker Navigation Preload" |
| humanReadableDescription: "Enable Service Worker Navigation Preload API" |
| defaultValue: |
| WebCore: |
| default: true |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: true |
| sharedPreferenceForWebProcess: true |
| richJavaScript: true |
| disableInLockdownMode: true |
| |
| ServiceWorkersEnabled: |
| type: bool |
| status: stable |
| category: dom |
| humanReadableName: "Service Workers" |
| humanReadableDescription: "Enable Service Workers" |
| exposed: [ WebKit ] |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: true |
| WebCore: |
| default: false |
| sharedPreferenceForWebProcess: true |
| richJavaScript: true |
| disableInLockdownMode: true |
| |
| ServiceWorkersUserGestureEnabled: |
| type: bool |
| status: internal |
| category: dom |
| humanReadableName: "Validate UserGesture requirements in Service Workers" |
| humanReadableDescription: "Validate UserGesture requirements in Service Workers" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| SessionStorageEnabled: |
| type: bool |
| status: mature |
| humanReadableName: "Session Storage" |
| humanReadableDescription: "Enable Session Storage" |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: false |
| sharedPreferenceForWebProcess: true |
| |
| ShadowRealmEnabled: |
| type: bool |
| status: testable |
| category: javascript |
| humanReadableName: "ShadowRealm" |
| humanReadableDescription: "Expose the ShadowRealm object." |
| webcoreBinding: none |
| jscOptionName: useShadowRealm |
| sharedPreferenceForWebProcess: true |
| defaultValue: |
| WebKit: |
| default: false |
| |
| ShadowRootReferenceTargetEnabled: |
| type: bool |
| status: testable |
| category: dom |
| humanReadableName: "referenceTarget" |
| humanReadableDescription: "Enable setting a referenceTarget on shadow roots" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| sharedPreferenceForWebProcess: true |
| |
| ShadowRootReferenceTargetEnabledForAriaOwns: |
| type: bool |
| status: testable |
| category: dom |
| humanReadableName: "referenceTarget support for aria-owns" |
| humanReadableDescription: "Enable referenceTarget support for aria-owns and ariaOwnsElements" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| sharedPreferenceForWebProcess: true |
| |
| # When enabling this, don't enable on watchOS or the macOS base system (which don't have Vision.framework). |
| # You can detect these by running isVisionFrameworkAvailable(). |
| ShapeDetection: |
| type: bool |
| category: media |
| status: testable |
| humanReadableName: "Shape Detection API" |
| humanReadableDescription: "Enable the Shape Detection API" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| sharedPreferenceForWebProcess: true |
| richJavaScript: true |
| |
| SharedWorkerEnabled: |
| type: bool |
| status: stable |
| category: dom |
| humanReadableName: "SharedWorker" |
| humanReadableDescription: "Enabled SharedWorker API" |
| defaultValue: |
| WebCore: |
| default: false |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: true |
| sharedPreferenceForWebProcess: true |
| richJavaScript: true |
| |
| ShouldAllowUserInstalledFonts: |
| type: bool |
| status: embedder |
| webcoreOnChange: setNeedsRecalcStyleInAllFrames |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| ShouldConvertInvalidURLsToBlank: |
| type: bool |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| default: WebKit::defaultShouldConvertInvalidURLsToBlank() |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| ShouldConvertPositionStyleOnCopy: |
| type: bool |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| ShouldDecidePolicyBeforeLoadingQuickLookPreview: |
| type: bool |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| ShouldDisplayCaptions: |
| type: bool |
| status: embedder |
| condition: ENABLE(VIDEO) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| ShouldDisplaySubtitles: |
| type: bool |
| status: embedder |
| condition: ENABLE(VIDEO) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| ShouldDisplayTextDescriptions: |
| type: bool |
| status: embedder |
| condition: ENABLE(VIDEO) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| ShouldDropNearSuspendedAssertionAfterDelay: |
| type: bool |
| status: internal |
| humanReadableName: "Drop Near-Suspended Assertion After Delay" |
| humanReadableDescription: "Causes processes to fully suspend after a delay" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: WebKit::defaultShouldDropNearSuspendedAssertionAfterDelay() |
| WebCore: |
| default: false |
| |
| ShouldEnableTextAutosizingBoost: |
| type: bool |
| status: embedder |
| 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 |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| ShouldPrintBackgrounds: |
| type: bool |
| status: embedder |
| webKitLegacyPreferenceKey: WebKitShouldPrintBackgroundsPreferenceKey |
| defaultValue: |
| WebKitLegacy: |
| "PLATFORM(IOS_FAMILY)": true |
| default: false |
| WebKit: |
| "PLATFORM(IOS_FAMILY)": WebKit::defaultShouldPrintBackgrounds() |
| "PLATFORM(GTK) || PLATFORM(WPE)": true |
| default: false |
| WebCore: |
| default: false |
| |
| ShouldRespectImageOrientation: |
| type: bool |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| "PLATFORM(IOS_FAMILY)": true |
| default: false |
| WebKit: |
| "PLATFORM(IOS_FAMILY) || PLATFORM(GTK) || PLATFORM(WPE)": true |
| default: false |
| WebCore: |
| "PLATFORM(IOS_FAMILY) || PLATFORM(GTK) || PLATFORM(WPE)": true |
| default: false |
| |
| ShouldRestrictBaseURLSchemes: |
| type: bool |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| default: WebKit::defaultShouldRestrictBaseURLSchemes() |
| WebKit: |
| default: false |
| WebCore: |
| default: true |
| |
| ShouldSuppressTextInputFromEditingDuringProvisionalNavigation: |
| type: bool |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| ShouldTakeNearSuspendedAssertions: |
| type: bool |
| status: internal |
| category: dom |
| humanReadableName: "Take WebKit:NearSuspended assertions on background web content processes" |
| humanReadableDescription: "Take WebKit:NearSuspended assertions on background web content processes" |
| exposed: [ WebKit ] |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: defaultShouldTakeNearSuspendedAssertion() |
| WebCore: |
| default: true |
| |
| # FIXME: This is not relevant for WebKitLegacy, so it 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 |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| ShowFrameProcessBordersEnabled: |
| type: bool |
| status: internal |
| defaultsOverridable: true |
| humanReadableName: "Show frame process borders" |
| webcoreName: showFrameProcessBorders |
| webcoreOnChange: setNeedsRecalcStyleInAllFrames |
| inspectorOverride: true |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| ShowMediaStatsContextMenuItemEnabled: |
| type: bool |
| status: developer |
| category: media |
| humanReadableName: "Show Media Stats" |
| humanReadableDescription: "Adds a 'Media Stats' context menu item to <video> when the Develop menu is enabled" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| ShowModalDialogEnabled: |
| type: bool |
| status: developer |
| category: dom |
| humanReadableName: "Legacy showModalDialog() API" |
| humanReadableDescription: "Legacy showModalDialog() API" |
| defaultValue: |
| WebKitLegacy: |
| "PLATFORM(IOS_FAMILY)": WebKit::defaultShowModalDialogEnabled() |
| default: false |
| WebKit: |
| default: WebKit::defaultShowModalDialogEnabled() |
| WebCore: |
| default: false |
| |
| ShowsToolTipOverTruncatedText: |
| type: bool |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| ShowsURLsInToolTipsEnabled: |
| type: bool |
| status: embedder |
| webKitLegacyPreferenceKey: WebKitShowsURLsInToolTips |
| webcoreName: showsURLsInToolTips |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| ShrinksStandaloneImagesToFit: |
| type: bool |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| SiteIsolationEnabled: |
| type: bool |
| status: unstable |
| defaultsOverridable: true |
| category: security |
| humanReadableName: "Site Isolation" |
| humanReadableDescription: "Put cross-origin iframes in a different process" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| sharedPreferenceForWebProcess: true |
| |
| SiteIsolationSharedProcessEnabled: |
| type: bool |
| status: unstable |
| category: security |
| humanReadableName: "Shared process for Site Isolation" |
| humanReadableDescription: "Put cross-site frames in a shared Web process" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| sharedPreferenceForWebProcess: true |
| |
| SlowFrameIndicatorVisible: |
| type: bool |
| status: internal |
| defaultsOverridable: true |
| humanReadableName: "Slow frame indicator" |
| humanReadableDescription: "Make slow frame indicator visible" |
| webcoreName: showSlowFrameIndicator |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| 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. |
| SmartInsertDeleteEnabled: |
| type: bool |
| status: embedder |
| webKitLegacyBinding: custom |
| defaultValue: |
| WebKit: |
| default: true |
| WebKitLegacy: |
| default: true |
| WebCore: |
| default: true |
| |
| SmartListsAvailable: |
| type: bool |
| status: embedder |
| category: dom |
| humanReadableName: "Smart Lists" |
| humanReadableDescription: "Allow Smart Lists to be enabled" |
| defaultValue: |
| WebKit: |
| default: false |
| WebKitLegacy: |
| default: false |
| WebCore: |
| default: false |
| |
| SourceBufferChangeTypeEnabled: |
| type: bool |
| status: embedder |
| condition: ENABLE(MEDIA_SOURCE) |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| "USE(GSTREAMER)": false |
| default: true |
| WebCore: |
| "USE(GSTREAMER)": false |
| default: true |
| |
| SpatialImageControlsEnabled: |
| type: bool |
| status: preview |
| category: media |
| condition: ENABLE(SPATIAL_IMAGE_CONTROLS) |
| humanReadableName: "Spatial image controls API" |
| humanReadableDescription: "Spatial image controls API" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "ENABLE(PANORAMA_IMAGE_CONTROLS)": true |
| default: false |
| WebCore: |
| "ENABLE(PANORAMA_IMAGE_CONTROLS)": true |
| default: false |
| |
| SpatialNavigationEnabled: |
| type: bool |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| SpatialPortalEnabled: |
| type: bool |
| status: testable |
| category: css |
| condition: ENABLE(SPATIAL_PORTAL) |
| humanReadableName: "Spatial CSS Portals" |
| humanReadableDescription: "Enable the spatial: portal CSS property" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| sharedPreferenceForWebProcess: true |
| |
| SpatialVideoRenderingEnabled: |
| type: bool |
| status: testable |
| category: media |
| humanReadableName: "Spatial Video Rendering" |
| humanReadableDescription: "Render projected/spatial (APMP) video onto a draggable projection in the media controls" |
| 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. |
| SpeakerSelectionRequiresUserGesture: |
| type: bool |
| status: internal |
| category: media |
| humanReadableName: "Require a user gesture for speaker selection" |
| humanReadableDescription: "Require a user gesture for speaker selection" |
| condition: ENABLE(MEDIA_STREAM) |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| SpeculationRulesPrefetchEnabled: |
| type: bool |
| status: stable |
| category: html |
| humanReadableName: "SpeculationRules prefetch" |
| humanReadableDescription: "SpeculationRules prefetch" |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| disableInLockdownMode: true |
| sharedPreferenceForWebProcess: true |
| richJavaScript: true |
| |
| SpeechRecognitionEnabled: |
| type: bool |
| status: mature |
| humanReadableName: "SpeechRecognition API" |
| humanReadableDescription: "Enable SpeechRecognition of WebSpeech API" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "HAVE(SPEECHRECOGNIZER) && ENABLE(MEDIA_STREAM)": true |
| default: false |
| WebCore: |
| default: false |
| disableInLockdownMode: true |
| sharedPreferenceForWebProcess: true |
| richJavaScript: true |
| |
| SpeechSynthesisAPIEnabled: |
| type: bool |
| status: embedder |
| humanReadableName: "SpeechSynthesis API" |
| humanReadableDescription: "SpeechSynthesis API" |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| disableInLockdownMode: true |
| sharedPreferenceForWebProcess: true |
| richJavaScript: true |
| |
| SpringTimingFunctionEnabled: |
| type: bool |
| status: unstable |
| category: css |
| humanReadableName: "CSS Spring Animations" |
| humanReadableDescription: "CSS Spring Animation prototype" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "ENABLE(EXPERIMENTAL_FEATURES)" : true |
| default: false |
| WebCore: |
| default: false |
| |
| Standalone: |
| type: bool |
| status: embedder |
| webKitLegacyPreferenceKey: WebKitStandalonePreferenceKey |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| StandardFontFamily: |
| type: String |
| status: embedder |
| webKitLegacyPreferenceKey: WebKitStandardFont |
| webcoreImplementation: custom |
| defaultValue: |
| WebKitLegacy: |
| default: '"Times"_str' |
| WebKit: |
| "PLATFORM(WATCHOS)": '"system-ui"_str' |
| default: '"Times"_str' |
| WebCore: |
| default: '""_str' |
| |
| StorageAPIEnabled: |
| type: bool |
| status: stable |
| category: dom |
| humanReadableName: "Storage API" |
| humanReadableDescription: "Enable Storage API" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "PLATFORM(COCOA)" : true |
| "PLATFORM(GTK) || PLATFORM(WPE)": true |
| default: false |
| WebCore: |
| "PLATFORM(COCOA)" : true |
| "PLATFORM(GTK) || PLATFORM(WPE)": true |
| default: false |
| |
| StorageAPIEstimateEnabled: |
| type: bool |
| status: stable |
| category: dom |
| humanReadableName: "Storage API Estimate" |
| humanReadableDescription: "Enable Storage API Estimate" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "PLATFORM(COCOA)" : true |
| "PLATFORM(GTK) || PLATFORM(WPE)": true |
| default: false |
| WebCore: |
| "PLATFORM(COCOA)" : true |
| "PLATFORM(GTK) || PLATFORM(WPE)": true |
| default: false |
| |
| StorageAccessAPIEnabled: |
| type: bool |
| status: embedder |
| humanReadableName: "Storage Access API" |
| humanReadableDescription: "Enable the Storage Access API for cross-site cookie access" |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| sharedPreferenceForWebProcess: true |
| |
| StorageAccessAPIPerPageScopeEnabled: |
| type: bool |
| status: unstable |
| category: dom |
| humanReadableName: "Storage Access API Per-Page Scope" |
| humanReadableDescription: "When enabled, storage access granted to one frame is shared with all same-origin frames on the page" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| sharedPreferenceForWebProcess: true |
| |
| StorageBlockingPolicy: |
| type: uint32_t |
| humanReadableName: "Storage Blocking Policy" |
| refinedType: WebCore::StorageBlockingPolicy |
| status: embedder |
| webcoreOnChange: storageBlockingPolicyChanged |
| defaultValue: |
| WebKitLegacy: |
| default: WebAllowAllStorage |
| WebKit: |
| default: WebCore::StorageBlockingPolicy::BlockThirdParty |
| WebCore: |
| default: StorageBlockingPolicy::AllowAll |
| sharedPreferenceForWebProcess: true |
| |
| SupportHDRCompositorTonemappingEnabled: |
| type: bool |
| status: testable |
| category: media |
| webcoreOnChange: updateDisplayEDRHeadroom |
| humanReadableName: "Support HDR Compositor tonemapping" |
| humanReadableDescription: "Support HDR tonemapping during compositing" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| SupportHDRDisplayEnabled: |
| type: bool |
| status: Supporthdrdisplay_feature_status |
| category: media |
| webcoreOnChange: setNeedsRelayoutAllFrames |
| humanReadableName: "Support HDR Display" |
| humanReadableDescription: "Support HDR Display" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "ENABLE(SUPPORT_HDR_DISPLAY_BY_DEFAULT)": true |
| default: false |
| WebCore: |
| "ENABLE(SUPPORT_HDR_DISPLAY_BY_DEFAULT)": true |
| default: false |
| |
| SuppressesIncrementalRendering: |
| type: bool |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| SwitchControlEnabled: |
| type: bool |
| status: stable |
| category: html |
| humanReadableName: "HTML switch control" |
| humanReadableDescription: "Enable HTML switch control" |
| defaultValue: |
| WebKitLegacy: |
| "PLATFORM(COCOA)": true |
| default: false |
| WebKit: |
| "PLATFORM(COCOA)": true |
| default: false |
| WebCore: |
| "PLATFORM(COCOA)": true |
| default: false |
| |
| # FIXME: There is no custom binding implemented for WebKitLegacy. |
| SystemLayoutDirection: |
| type: uint32_t |
| refinedType: WebCore::TextDirection |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| default: TextDirection::LTR |
| WebKit: |
| default: TextDirection::LTR |
| WebCore: |
| default: TextDirection::LTR |
| |
| # 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 |
| status: embedder |
| condition: USE(SYSTEM_PREVIEW) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| disableInLockdownMode: true |
| sharedPreferenceForWebProcess: true |
| |
| SystemTextExtractionEnabled: |
| type: bool |
| status: internal |
| humanReadableName: "System Text Extraction" |
| humanReadableDescription: "Enable System Text Extraction" |
| condition: ENABLE(SYSTEM_TEXT_EXTRACTION) |
| webcoreBinding: none |
| exposed: [ WebKit ] |
| defaultValue: |
| WebKit: |
| default: false |
| |
| TabsToLinks: |
| type: bool |
| status: embedder |
| webKitLegacyPreferenceKey: WebKitTabToLinksPreferenceKey |
| webcoreBinding: none |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "PLATFORM(GTK) || PLATFORM(WPE)": true |
| default: false |
| |
| TargetTextPseudoElementEnabled: |
| type: bool |
| status: stable |
| category: css |
| humanReadableName: "::target-text pseudo-element" |
| humanReadableDescription: "Enable the ::target-text CSS pseudo-element" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| TelephoneNumberParsingEnabled: |
| type: bool |
| status: embedder |
| webKitLegacyPreferenceKey: WebKitTelephoneParsingEnabledPreferenceKey |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| TemporalEnabled: |
| type: bool |
| status: stable |
| category: javascript |
| humanReadableName: "Temporal" |
| humanReadableDescription: "Expose the Temporal object." |
| webcoreBinding: none |
| jscOptionName: useTemporal |
| sharedPreferenceForWebProcess: true |
| defaultValue: |
| WebKit: |
| default: true |
| |
| TemporaryTileCohortRetentionEnabled: |
| type: bool |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| "PLATFORM(IOS_FAMILY)": false |
| default: true |
| WebCore: |
| default: true |
| |
| TextAnimationsEnabled: |
| type: bool |
| status: internal |
| humanReadableName: "Text Animations" |
| humanReadableDescription: "Text Animations" |
| condition: ENABLE(WRITING_TOOLS) |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| TextAreasAreResizable: |
| type: bool |
| status: embedder |
| webcoreOnChange: setNeedsRecalcStyleInAllFrames |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "PLATFORM(IOS_FAMILY)": false |
| default: true |
| WebCore: |
| default: false |
| |
| TextAutosizingEnabled: |
| type: bool |
| status: embedder |
| 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 |
| |
| TextAutosizingEnabledAtLargeInitialScale: |
| type: bool |
| status: embedder |
| webcoreOnChange: setNeedsRecalcStyleInAllFrames |
| humanReadableName: "Enable Text Autosizing at Large Initial Scale" |
| humanReadableDescription: "Enable Text Autosizing at Large Initial Scale" |
| condition: ENABLE(TEXT_AUTOSIZING) |
| defaultValue: |
| WebCore: |
| "ENABLE(TEXT_AUTOSIZING_BASED_ON_INITIAL_SCALE)": false |
| default: true |
| |
| # FIXME: Is this implemented for WebKitLegacy? If not, this should be excluded from WebKitLegacy entirely. |
| TextAutosizingUsesIdempotentMode: |
| type: bool |
| status: embedder |
| webcoreOnChange: textAutosizingUsesIdempotentModeChanged |
| humanReadableName: "Idempotent Text Autosizing" |
| humanReadableDescription: "Use idempotent text autosizing mode" |
| condition: ENABLE(TEXT_AUTOSIZING) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "PLATFORM(IOS_FAMILY) && !PLATFORM(VISION)": defaultTextAutosizingUsesIdempotentMode() |
| default: false |
| WebCore: |
| default: false |
| |
| TextEffectsEnabled: |
| type: bool |
| status: internal |
| humanReadableName: "Text Effects" |
| humanReadableDescription: "Text Effects" |
| condition: ENABLE(WRITING_TOOLS_TEXT_EFFECTS) |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| TextExtractionDebugUIEnabled: |
| type: bool |
| status: internal |
| humanReadableName: "Text Extraction Debug UI" |
| humanReadableDescription: "Enable Text Extraction Debug UI" |
| exposed: [ WebKit ] |
| defaultValue: |
| WebCore: |
| default: false |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| |
| TextExtractionEnabled: |
| type: bool |
| status: embedder |
| webcoreBinding: none |
| exposed: [ WebKit ] |
| defaultValue: |
| WebKit: |
| "HAVE(UIINTELLIGENCESUPPORT_FRAMEWORK)": true |
| default: false |
| |
| TextExtractionFilterEnabled: |
| type: bool |
| status: internal |
| humanReadableName: "Text Extraction Filter" |
| humanReadableDescription: "Enable Text Extraction Filter" |
| webcoreBinding: none |
| exposed: [ WebKit ] |
| defaultValue: |
| WebKit: |
| "ENABLE(TEXT_EXTRACTION_FILTER)": true |
| default: false |
| |
| TextInputClientSelectionUpdatesEnabled: |
| type: bool |
| status: embedder |
| webcoreBinding: none |
| condition: PLATFORM(MAC) |
| exposed: [ WebKit ] |
| defaultValue: |
| WebKit: |
| default: WebKit::defaultTextInputClientSelectionUpdatesEnabled() |
| |
| TextInteractionEnabled: |
| type: bool |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| "PLATFORM(WATCHOS)": false |
| default: true |
| WebKit: |
| "PLATFORM(WATCHOS)": false |
| default: true |
| WebCore: |
| "PLATFORM(WATCHOS)": false |
| default: true |
| |
| TextRecognitionInVideosEnabled: |
| type: bool |
| # FIXME: Change to "embedder" when there is a way to enable/disable embedder features from API tests. |
| status: internal |
| category: media |
| humanReadableName: "Text Recognition in Videos" |
| humanReadableDescription: "Enable Text Recognition in Videos" |
| condition: ENABLE(IMAGE_ANALYSIS) && ENABLE(VIDEO) |
| exposed: [ WebKit ] |
| defaultValue: |
| WebCore: |
| default: false |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: defaultTextRecognitionInVideosEnabled() |
| sharedPreferenceForWebProcess: true |
| mediaPlaybackRelated: true |
| |
| TextShapingAcrossInlineBoxes: |
| type: bool |
| status: stable |
| category: css |
| humanReadableName: "Text Shaping Across Inline Boxes" |
| humanReadableDescription: "Enable Text Shaping Across Inline Boxes" |
| defaultValue: |
| WebCore: |
| default: true |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| |
| TextTracksInMSEEnabled: |
| type: bool |
| status: testable |
| category: media |
| humanReadableName: "Text Tracks in MSE" |
| humanReadableDescription: "Enable Text Tracks in Media Source Extension" |
| condition: ENABLE(MEDIA_SOURCE) |
| defaultValue: |
| WebCore: |
| default: false |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| |
| ThreadedScrollDrivenAnimationsEnabled: |
| type: bool |
| status: stable |
| category: animation |
| humanReadableName: "Threaded Scroll-driven Animations" |
| humanReadableDescription: "Run qualifying scroll-driven animations on a separate thread" |
| condition: ENABLE(THREADED_ANIMATIONS) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| ThreadedScrollingEnabled: |
| type: bool |
| status: embedder |
| webcoreBinding: none |
| exposed: [ WebKit ] |
| defaultValue: |
| WebKit: |
| default: true |
| |
| ThreadedTimeBasedAnimationsAtHighFrameRateEnabled: |
| type: bool |
| status: unstable |
| category: animation |
| humanReadableName: "Threaded Time-based Animations at High Frame Rate" |
| humanReadableDescription: "Run qualifying time-based animations on a separate thread at a high frame rate" |
| condition: ENABLE(THREADED_ANIMATIONS) && PLATFORM(IOS_FAMILY) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| ThreadedTimeBasedAnimationsEnabled: |
| type: bool |
| status: stable |
| category: animation |
| humanReadableName: "Threaded Time-based Animations" |
| humanReadableDescription: "Run qualifying time-based animations on a separate thread" |
| condition: ENABLE(THREADED_ANIMATIONS) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| # FIXME: This is not relevant for WebKitLegacy, so it should be excluded from WebKitLegacy entirely. |
| TiledScrollingIndicatorVisible: |
| type: bool |
| status: internal |
| defaultsOverridable: true |
| humanReadableName: "Tiled scrolling indicator" |
| humanReadableDescription: "Make tiled scrolling indicator visible" |
| webcoreName: showTiledScrollingIndicator |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| TopContentInsetBackgroundCanChangeAfterScrolling: |
| type: bool |
| status: internal |
| humanReadableName: "Top Content Inset Background Can Change After Scrolling" |
| humanReadableDescription: "Top content inset background can change after scrolling" |
| defaultValue: |
| WebKit: |
| default: WebKit::defaultTopContentInsetBackgroundCanChangeAfterScrolling() |
| WebKitLegacy: |
| default: false |
| WebCore: |
| default: false |
| |
| TouchEventDOMAttributesEnabled: |
| type: bool |
| status: embedder |
| humanReadableName: "Touch Event DOM Attributes" |
| humanReadableDescription: "Enable Touch Event DOM Attributes" |
| condition: ENABLE(TOUCH_EVENTS) |
| defaultValue: |
| WebCore: |
| default: WebCore::screenHasTouchDevice() |
| |
| TouchInputCompatibilityEnabled: |
| type: bool |
| status: testable |
| category: dom |
| humanReadableName: "Touch Input Compatibility" |
| humanReadableDescription: "Touch Input Compatibility" |
| condition: ENABLE(WEBXR) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| TrackConfigurationEnabled: |
| type: bool |
| status: testable |
| category: media |
| humanReadableName: "Track Configuration API" |
| humanReadableDescription: "Track Configuration API" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| TreatsAnyTextCSSLinkAsStylesheet: |
| type: bool |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| PLATFORM(MAC): WebKit::defaultTreatsAnyTextCSSLinkAsStylesheet() |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| TrustedTypesEnabled: |
| type: bool |
| status: stable |
| category: dom |
| humanReadableName: "Trusted Types" |
| humanReadableDescription: "Enable Trusted Types" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: WebKit::defaultTrustedTypesEnabled() |
| WebCore: |
| default: true |
| |
| TwoUpPDFDisplayModeSupportEnabled: |
| type: bool |
| status: internal |
| humanReadableName: "Two-Up PDF Display Mode Support" |
| humanReadableDescription: "Enable support for two-up PDF display on iOS" |
| condition: ENABLE(UNIFIED_PDF) && PLATFORM(IOS_FAMILY) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| TwoUpPDFTrailingPageLeftAlignmentEnabled: |
| type: bool |
| status: internal |
| humanReadableName: "Two-Up PDF Trailing Page Left Alignment" |
| humanReadableDescription: "In two-up PDF display mode, align the trailing odd page to the same column as the first page instead of centering it" |
| condition: ENABLE(UNIFIED_PDF) |
| 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. |
| UndoManagerAPIEnabled: |
| type: bool |
| status: unstable |
| category: dom |
| humanReadableName: "UndoManager DOM API" |
| humanReadableDescription: "Enable the UndoManager DOM API" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| UnifiedPDFEnabled: |
| type: bool |
| status: mature |
| category: security |
| humanReadableName: "Unified PDF Viewer" |
| humanReadableDescription: "Enable Unified PDF Viewer" |
| condition: ENABLE(UNIFIED_PDF) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: WebKit::defaultUnifiedPDFEnabled() |
| WebCore: |
| default: false |
| |
| UnifyDamagedRegions: |
| type: bool |
| status: unstable |
| category: dom |
| humanReadableName: "Unify Damaged Regions" |
| humanReadableDescription: "Unify Damaged Regions" |
| condition: ENABLE(DAMAGE_TRACKING) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "PLATFORM(GTK) || PLATFORM(WPE)": true |
| default: false |
| WebCore: |
| default: false |
| |
| UpdateSceneGeometryEnabled: |
| type: bool |
| status: internal |
| condition: ENABLE(SCENE_GEOMETRY_UPDATE) |
| humanReadableName: "Enable Update Scene Geometry" |
| humanReadableDescription: "Allows for changes to scene geometry" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: true |
| WebCore: |
| default: false |
| sharedPreferenceForWebProcess: true |
| |
| UpgradeKnownHostsToHTTPSEnabled: |
| type: bool |
| status: internal |
| category: networking |
| humanReadableName: "Upgrade known hosts to HTTPS" |
| humanReadableDescription: "Upgrade known hosts to HTTPS" |
| webcoreBinding: none |
| exposed: [ WebKit ] |
| defaultValue: |
| WebKit: |
| default: true |
| |
| UseAVCaptureDeviceRotationCoordinatorAPI: |
| type: bool |
| status: internal |
| humanReadableName: "Use AVCaptureDeviceRotationCoordinator API" |
| humanReadableDescription: "Use AVCaptureDeviceRotationCoordinator API" |
| webcoreBinding: none |
| exposed: [ WebKit ] |
| condition: HAVE(AVCAPTUREDEVICEROTATIONCOORDINATOR) |
| defaultValue: |
| WebKit: |
| "PLATFORM(APPLETV)": true |
| default: false |
| sharedPreferenceForWebProcess: true |
| |
| UseAlternatePDFHUD: |
| type: bool |
| status: mature |
| category: html |
| humanReadableName: "Alternate PDF HUD" |
| humanReadableDescription: "Use the alternate PDF HUD" |
| webcoreBinding: none |
| exposed: [ WebKit ] |
| condition: ENABLE(PDF_HUD) |
| defaultValue: |
| WebKit: |
| default: true |
| |
| UseAppKitGestures: |
| type: bool |
| status: internal |
| defaultsOverridable: true |
| humanReadableName: "AppKit Gestures" |
| humanReadableDescription: "Use AppKit Gestures" |
| condition: PLATFORM(MAC) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: defaultUseAppKitGestures() |
| WebCore: |
| default: false |
| |
| UseAppKitGesturesForGestureEvents: |
| type: bool |
| status: internal |
| humanReadableName: "AppKit gestures for gesture events" |
| humanReadableDescription: "Use AppKit gestures to drive gesture event synthesis" |
| condition: PLATFORM(MAC) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| UseAsyncUIKitInteractions: |
| type: bool |
| status: internal |
| humanReadableName: "Async UIKit Interactions" |
| humanReadableDescription: "Use Async UIKit Interactions" |
| condition: PLATFORM(IOS_FAMILY) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: WebKit::defaultUseAsyncUIKitInteractions() |
| WebCore: |
| default: false |
| |
| UseCGDisplayListsForDOMRendering: |
| type: bool |
| status: internal |
| humanReadableName: "Dynamic Content Scaling: DOM Rendering" |
| humanReadableDescription: "Use Dynamic Content Scaling for DOM rendering" |
| condition: ENABLE(RE_DYNAMIC_CONTENT_SCALING) |
| exposed: [ WebCore, WebKit ] |
| defaultValue: |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| sharedPreferenceForWebProcess: true |
| |
| UseDamagingInformationForCompositing: |
| type: bool |
| status: testable |
| category: dom |
| humanReadableName: "Use the Damaging Information to optimize compositing" |
| humanReadableDescription: "Use the Damaging Information to optimize compositing" |
| condition: ENABLE(DAMAGE_TRACKING) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "PLATFORM(GTK) || PLATFORM(WPE)": true |
| default: false |
| WebCore: |
| default: false |
| |
| UseGPUProcessForCanvasRenderingEnabled: |
| type: bool |
| status: stable |
| category: dom |
| humanReadableName: "GPU Process: Canvas Rendering" |
| humanReadableDescription: "Enable canvas rendering in GPU Process" |
| webcoreBinding: none |
| condition: ENABLE(GPU_PROCESS) && !(PLATFORM(GTK) || PLATFORM(WPE)) |
| exposed: [ WebKit ] |
| defaultValue: |
| WebKit: |
| "ENABLE(GPU_PROCESS_BY_DEFAULT)": true |
| "USE(GRAPHICS_LAYER_WC)": true |
| default: false |
| |
| UseGPUProcessForDOMRenderingEnabled: |
| type: bool |
| status: stable |
| category: dom |
| humanReadableName: "GPU Process: DOM Rendering" |
| humanReadableDescription: "Enable DOM rendering in GPU Process" |
| webcoreBinding: none |
| condition: ENABLE(GPU_PROCESS) |
| exposed: [ WebKit ] |
| defaultValue: |
| WebKit: |
| default: defaultUseGPUProcessForDOMRenderingEnabled() |
| sharedPreferenceForWebProcess: true |
| |
| UseGPUProcessForDisplayCapture: |
| type: bool |
| status: mature |
| category: media |
| humanReadableName: "GPU Process: Screen and Window capture" |
| humanReadableDescription: "Display capture in GPU Process" |
| webcoreBinding: none |
| condition: HAVE(SCREEN_CAPTURE_KIT) |
| exposed: [ WebKit ] |
| defaultValue: |
| WebKit: |
| default: true |
| |
| UseGPUProcessForMediaEnabled: |
| type: bool |
| status: embedder |
| humanReadableName: "GPU Process: Media" |
| humanReadableDescription: "Do all media loading and playback in the GPU Process" |
| webcoreBinding: none |
| condition: ENABLE(GPU_PROCESS) |
| exposed: [ WebKit ] |
| defaultValue: |
| WebKit: |
| "ENABLE(GPU_PROCESS_BY_DEFAULT) && !USE(GSTREAMER)": true |
| default: false |
| sharedPreferenceForWebProcess: true |
| mediaPlaybackRelated: true |
| |
| UseGPUProcessForWebGLEnabled: |
| type: bool |
| status: internal |
| humanReadableName: "GPU Process: WebGL" |
| humanReadableDescription: "Process all WebGL operations in GPU Process" |
| webcoreBinding: none |
| condition: ENABLE(GPU_PROCESS) && ENABLE(WEBGL) |
| exposed: [ WebKit ] |
| defaultValue: |
| WebKit: |
| "ENABLE(GPU_PROCESS_BY_DEFAULT) && ENABLE(GPU_PROCESS_WEBGL_BY_DEFAULT)": true |
| "USE(GRAPHICS_LAYER_WC)": true |
| default: false |
| sharedPreferenceForWebProcess: true |
| |
| UseGiantTiles: |
| type: bool |
| status: embedder |
| humanReadableName: "Use giant tiles" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| UseIFCForSVGText: |
| type: bool |
| status: internal |
| humanReadableName: "Use IFC for SVG text" |
| humanReadableDescription: "Use IFC for SVG text rendering" |
| defaultValue: |
| WebCore: |
| default: false |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| |
| UseImageDocumentForSubframePDF: |
| type: bool |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| PLATFORM(IOS_FAMILY): true |
| default: false |
| WebKit: |
| PLATFORM(IOS_FAMILY): true |
| default: false |
| WebCore: |
| PLATFORM(IOS_FAMILY): true |
| default: false |
| |
| UseMicrophoneMuteStatusAPI: |
| type: bool |
| status: testable |
| category: media |
| humanReadableName: "Use Microphone Mute Status API" |
| humanReadableDescription: "Use Microphone Mute Status API" |
| condition: ENABLE(MEDIA_STREAM) |
| defaultValue: |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| UsePreHTML5ParserQuirks: |
| type: bool |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| PLATFORM(MAC): WebKit::defaultUsePreHTML5ParserQuirks() |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| UseSkiaForComposition: |
| type: bool |
| status: internal |
| humanReadableName: "Use Skia for composition" |
| humanReadableDescription: "Use Skia instead of TextureMapper for layer composition" |
| condition: PLATFORM(GTK) || PLATFORM(WPE) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: true |
| WebCore: |
| default: false |
| |
| UseSystemAppearance: |
| type: bool |
| status: embedder |
| webcoreOnChange: useSystemAppearanceChanged |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| UseUIProcessForBackForwardItemLoading: |
| type: bool |
| status: unstable |
| exposed: [ WebKit ] |
| humanReadableName: "Use UIProcess for Back/Forward Item Loading" |
| humanReadableDescription: "Enable UIProcess-side BackForwardListFrameItem lookup for child frames during Back/Forward navigation" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| UserActivationAPIEnabled: |
| type: bool |
| status: stable |
| category: dom |
| humanReadableName: "User Activation API" |
| humanReadableDescription: "Enable User Activation API" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: true |
| WebCore: |
| default: false |
| |
| UserGesturePromisePropagationEnabled: |
| type: bool |
| status: internal |
| category: dom |
| humanReadableName: "UserGesture Promise Propagation" |
| humanReadableDescription: "UserGesture Promise Propagation" |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| # FIXME: There is no custom binding implemented for WebKitLegacy. |
| UserInterfaceDirectionPolicy: |
| type: uint32_t |
| refinedType: WebCore::UserInterfaceDirectionPolicy |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| default: UserInterfaceDirectionPolicy::Content |
| WebKit: |
| default: UserInterfaceDirectionPolicy::Content |
| WebCore: |
| default: UserInterfaceDirectionPolicy::Content |
| |
| UsesBackForwardCache: |
| type: bool |
| status: embedder |
| defaultsOverridable: true |
| webcoreOnChange: usesBackForwardCacheChanged |
| webcoreExcludeFromInternalSettings: true |
| webKitLegacyPreferenceKey: WebKitUsesPageCachePreferenceKey |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| UsesEncodingDetector: |
| type: bool |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| UsesSingleWebProcess: |
| type: bool |
| status: embedder |
| exposed: [ WebKit ] |
| webcoreBinding: none |
| defaultValue: |
| WebKit: |
| default: false |
| sharedPreferenceForWebProcess: true |
| |
| VP9DecoderEnabled: |
| type: bool |
| status: embedder |
| condition: ENABLE(VP9) |
| defaultValue: |
| WebCore: |
| default: false |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: true |
| |
| VerifyWindowOpenUserGestureFromUIProcess: |
| type: bool |
| status: testable |
| category: security |
| humanReadableName: "Verify window.open user gesture" |
| humanReadableDescription: "Verifies that the user gesture for window.open came from the UI process" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| VerticalFormControlsEnabled: |
| type: bool |
| status: stable |
| category: html |
| humanReadableName: "Vertical form control support" |
| humanReadableDescription: "Enable support for form controls in vertical writing mode" |
| defaultValue: |
| WebKitLegacy: |
| "PLATFORM(COCOA) || USE(THEME_ADWAITA)": true |
| default: false |
| WebKit: |
| "PLATFORM(COCOA) || USE(THEME_ADWAITA)": true |
| default: false |
| WebCore: |
| "PLATFORM(COCOA) || USE(THEME_ADWAITA)": true |
| default: false |
| |
| VideoFullsceenPrefersMostVisibleHeuristic: |
| type: bool |
| status: stable |
| category: media |
| humanReadableName: "Prefers most visible video in element fullscreen." |
| humanReadableDescription: "Prefers most visible video in element fullscreen." |
| condition: ENABLE(FULLSCREEN_API) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| VideoFullscreenRequiresElementFullscreen: |
| type: bool |
| status: embedder |
| condition: ENABLE(FULLSCREEN_API) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: defaultVideoFullscreenRequiresElementFullscreen() |
| WebCore: |
| default: false |
| sharedPreferenceForWebProcess: true |
| |
| VideoPresentationManagerEnabled: |
| type: bool |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| "PLATFORM(VISION)" : true |
| default: false |
| WebKit: |
| "PLATFORM(VISION)" : true |
| default: false |
| WebCore: |
| "PLATFORM(VISION)" : true |
| default: false |
| sharedPreferenceForWebProcess: true |
| |
| VideoPresentationModeAPIEnabled: |
| type: bool |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| "PLATFORM(VISION)" : false |
| default: true |
| WebKit: |
| "PLATFORM(VISION)" : false |
| default: true |
| WebCore: |
| "PLATFORM(VISION)" : false |
| default: true |
| sharedPreferenceForWebProcess: true |
| |
| VideoQualityIncludesDisplayCompositingEnabled: |
| type: bool |
| status: embedder |
| condition: ENABLE(VIDEO) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| VideoRendererProtectedFallbackDisabled: |
| type: bool |
| status: stable |
| category: media |
| humanReadableName: "VideoMediaSampleRenderer fallback to AVSBDL for protected content disabled" |
| humanReadableDescription: "VideoMediaSampleRenderer fallback to AVSBDL for protected content disabled" |
| condition: USE(MODERN_AVCONTENTKEYSESSION_WITH_VTDECOMPRESSIONSESSION) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| sharedPreferenceForWebProcess: true |
| |
| VideoRendererUseDecompressionSessionForProtected: |
| type: bool |
| status: preview |
| category: media |
| humanReadableName: "VideoMediaSampleRenderer use DecompressionSession for protected content" |
| humanReadableDescription: "VideoMediaSampleRenderer use DecompressionSession for protected content" |
| condition: USE(MODERN_AVCONTENTKEYSESSION_WITH_VTDECOMPRESSIONSESSION) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "PLATFORM(VISION)" : true |
| default: false |
| WebCore: |
| "PLATFORM(VISION)" : true |
| default: false |
| sharedPreferenceForWebProcess: true |
| |
| ViewGestureDebuggingEnabled: |
| type: bool |
| status: embedder |
| humanReadableName: "View gesture debugging" |
| humanReadableDescription: "Enable view gesture debugging" |
| webcoreBinding: none |
| exposed: [ WebKit ] |
| defaultValue: |
| WebKit: |
| default: false |
| |
| VisibleDebugOverlayRegions: |
| type: uint32_t |
| status: embedder |
| defaultsOverridable: true |
| webcoreType: DebugOverlayRegions |
| defaultValue: |
| WebKitLegacy: |
| default: 0 |
| WebKit: |
| default: 0 |
| WebCore: |
| default: 0 |
| |
| VisualTranslationEnabled: |
| type: bool |
| # FIXME: Change to "embedder" when there is a way to enable/disable embedder features from API tests. |
| status: internal |
| category: dom |
| humanReadableName: "Visual Translation" |
| humanReadableDescription: "Enable Visual Translation" |
| condition: ENABLE(IMAGE_ANALYSIS) |
| exposed: [ WebKit ] |
| defaultValue: |
| WebCore: |
| default: false |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: defaultVisualTranslationEnabled() |
| |
| VisualViewportAPIEnabled: |
| type: bool |
| status: mature |
| humanReadableName: "Visual Viewport API" |
| humanReadableDescription: "Enable Visual Viewport API" |
| defaultValue: |
| WebKitLegacy: |
| "PLATFORM(IOS_FAMILY)" : false |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: false |
| |
| VisualViewportEnabled: |
| type: bool |
| status: embedder |
| webcoreOnChange: setNeedsRecalcStyleInAllFrames |
| defaultValue: |
| WebKitLegacy: |
| PLATFORM(IOS_FAMILY): false |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| VisuallyContiguousBidiTextSelectionEnabled: |
| type: bool |
| status: internal |
| humanReadableName: "Visually Contiguous Bidi Selection" |
| humanReadableDescription: "Visually contiguous bidi selection" |
| condition: PLATFORM(IOS_FAMILY) |
| defaultValue: |
| WebKit: |
| default: WebKit::defaultVisuallyContiguousBidiTextSelectionEnabled() |
| WebKitLegacy: |
| default: false |
| WebCore: |
| default: false |
| |
| WantsBalancedSetDefersLoadingBehavior: |
| type: bool |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| WasmJSStringBuiltinsEnabled: |
| type: bool |
| status: stable |
| category: javascript |
| humanReadableName: "WebAssembly JS String Builtins" |
| humanReadableDescription: "Enable the implementation of the JS String Builtins proposal." |
| webcoreBinding: none |
| jscOptionName: useWasmJSStringBuiltins |
| sharedPreferenceForWebProcess: true |
| defaultValue: |
| WebKit: |
| default: true |
| |
| WasmJSTypesEnabled: |
| type: bool |
| status: testable |
| category: javascript |
| humanReadableName: "WebAssembly JS Types" |
| humanReadableDescription: "Enable the js-types proposal type() methods on WebAssembly.Memory/Table/Global/Tag prototypes." |
| webcoreBinding: none |
| jscOptionName: useWasmJSTypes |
| sharedPreferenceForWebProcess: true |
| defaultValue: |
| WebKit: |
| default: false |
| |
| WasmMemory64Enabled: |
| type: bool |
| status: stable |
| category: javascript |
| humanReadableName: "WebAssembly Memory64" |
| humanReadableDescription: "Allow the Memory64 proposal for WebAssembly." |
| webcoreBinding: none |
| jscOptionName: useWasmMemory64 |
| sharedPreferenceForWebProcess: true |
| defaultValue: |
| WebKit: |
| default: true |
| |
| WasmMemoryToBufferAPIsEnabled: |
| type: bool |
| status: stable |
| category: javascript |
| humanReadableName: "WebAssembly Memory to Buffer APIs" |
| humanReadableDescription: "Enable the toFixedLengthBuffer() and toResizableBuffer() Wasm Memory.prototype functions." |
| webcoreBinding: none |
| jscOptionName: useWasmMemoryToBufferAPIs |
| sharedPreferenceForWebProcess: true |
| defaultValue: |
| WebKit: |
| default: true |
| |
| WasmMultiMemoryEnabled: |
| type: bool |
| status: stable |
| category: javascript |
| humanReadableName: "WebAssembly Multi-Memory" |
| humanReadableDescription: "Allow wasm code to access multiple linear memories" |
| webcoreBinding: none |
| jscOptionName: useWasmMultiMemory |
| sharedPreferenceForWebProcess: true |
| defaultValue: |
| WebKit: |
| default: true |
| |
| WasmRelaxedSIMDEnabled: |
| type: bool |
| status: stable |
| category: javascript |
| humanReadableName: "WebAssembly Relaxed SIMD" |
| humanReadableDescription: "Allow the relaxed simd instructions and types from the wasm relaxed simd spec." |
| webcoreBinding: none |
| jscOptionName: useWasmRelaxedSIMD |
| sharedPreferenceForWebProcess: true |
| defaultValue: |
| WebKit: |
| default: true |
| |
| WasmSIMDEnabled: |
| type: bool |
| status: stable |
| category: javascript |
| humanReadableName: "WebAssembly SIMD" |
| humanReadableDescription: "Allow the new simd instructions and types from the wasm simd spec." |
| webcoreBinding: none |
| jscOptionName: useWasmSIMD |
| sharedPreferenceForWebProcess: true |
| defaultValue: |
| WebKit: |
| default: true |
| |
| WasmTailCallsEnabled: |
| type: bool |
| status: stable |
| category: javascript |
| humanReadableName: "WebAssembly Tail Calls" |
| humanReadableDescription: "Allow the new instructions from the wasm tail calls spec." |
| webcoreBinding: none |
| jscOptionName: useWasmTailCalls |
| sharedPreferenceForWebProcess: true |
| defaultValue: |
| WebKit: |
| default: true |
| |
| WasmWideArithmeticEnabled: |
| type: bool |
| status: testable |
| category: javascript |
| humanReadableName: "WebAssembly Wide Arithmetic" |
| humanReadableDescription: "Allow the wide arithmetic instructions from the wasm wide-arithmetic spec." |
| webcoreBinding: none |
| jscOptionName: useWasmWideArithmetic |
| sharedPreferenceForWebProcess: true |
| defaultValue: |
| WebKit: |
| default: false |
| |
| WebAPIStatisticsEnabled: |
| type: bool |
| status: unstable |
| category: dom |
| humanReadableName: "Web API Statistics" |
| humanReadableDescription: "Enable Web API Statistics" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| WebAPIsInShadowRealmEnabled: |
| type: bool |
| status: unstable |
| category: dom |
| humanReadableName: "Web APIs in ShadowRealm" |
| humanReadableDescription: "Enable Web APIs to be exposed in ShadowRealm" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| WebAnimationsCustomEffectsEnabled: |
| type: bool |
| status: testable |
| category: animation |
| humanReadableName: "Web Animations custom effects" |
| humanReadableDescription: "Support for the CustomEffect interface" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| WebAnimationsCustomFrameRateEnabled: |
| type: bool |
| status: testable |
| category: animation |
| humanReadableName: "Web Animations custom frame rate" |
| humanReadableDescription: "Support for specifying a custom frame rate for Web Animations" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| WebArchiveDebugModeEnabled: |
| type: bool |
| status: embedder |
| humanReadableName: "Web Archive debug mode" |
| humanReadableDescription: "Enable web archive debug mode" |
| webKitLegacyPreferenceKey: WebKitWebArchiveDebugModeEnabledPreferenceKey |
| condition: ENABLE(WEB_ARCHIVE) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| WebArchiveTestingModeEnabled: |
| type: bool |
| status: internal |
| category: dom |
| humanReadableName: "Web Archive testing mode" |
| humanReadableDescription: "Enable web archive testing mode" |
| condition: ENABLE(WEB_ARCHIVE) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| WebAssemblyDebuggerEnabled: |
| type: bool |
| status: developer |
| category: javascript |
| humanReadableName: "Experimental WebAssembly Debugger (Disables JIT)" |
| humanReadableDescription: "Enable LLDB debugging support for WebAssembly (requires new tab)" |
| condition: ENABLE(WEBASSEMBLY_DEBUGGER) && ENABLE(REMOTE_INSPECTOR) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| WebAssemblyESMIntegrationEnabled: |
| type: bool |
| status: testable |
| category: javascript |
| humanReadableName: "WebAssembly ES module integration support" |
| humanReadableDescription: "Support for allowing WebAssembly modules to integrate as ES modules" |
| condition: ENABLE(WEBASSEMBLY) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| WebAudioEnabled: |
| type: bool |
| status: embedder |
| condition: ENABLE(WEB_AUDIO) |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: false |
| sharedPreferenceForWebProcess: true |
| disableInLockdownMode: true |
| richJavaScript: true |
| mediaPlaybackRelated: true |
| |
| WebAuthenticationASEnabled: |
| type: bool |
| status: embedder |
| humanReadableName: "Web Authentication AuthenticationServices" |
| humanReadableDescription: "Enable Modern Web Authentication support though AuthenticationServices" |
| condition: HAVE(WEB_AUTHN_AS_MODERN) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| # FIXME: Is this implemented for WebKitLegacy? If not, this should be excluded from WebKitLegacy entirely. |
| WebAuthenticationEnabled: |
| type: bool |
| status: embedder |
| humanReadableName: "Web Authentication" |
| humanReadableDescription: "Enable Web Authentication support" |
| condition: ENABLE(WEB_AUTHN) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| sharedPreferenceForWebProcess: true |
| richJavaScript: true |
| |
| WebCodecsAV1Enabled: |
| type: bool |
| status: preview |
| category: media |
| humanReadableName: "WebCodecs AV1 codec" |
| humanReadableDescription: "Enable WebCodecs AV1 codec" |
| condition: ENABLE(WEB_CODECS) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "USE(GSTREAMER)": true |
| default: false |
| WebCore: |
| "USE(GSTREAMER)": true |
| default: false |
| disableInLockdownMode: true |
| |
| WebCodecsAudioEnabled: |
| type: bool |
| status: stable |
| category: media |
| humanReadableName: "WebCodecs Audio API" |
| humanReadableDescription: "Enable WebCodecs Audio API" |
| condition: ENABLE(WEB_CODECS) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| WebCodecsHEVCEnabled: |
| type: bool |
| status: mature |
| category: media |
| humanReadableName: "WebCodecs HEVC codec" |
| humanReadableDescription: "Enable WebCodecs HEVC codec" |
| condition: ENABLE(WEB_CODECS) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "USE(GSTREAMER)": true |
| "PLATFORM(COCOA)": true |
| default: false |
| WebCore: |
| "USE(GSTREAMER)": true |
| "PLATFORM(COCOA)": true |
| default: false |
| |
| WebCodecsImageEnabled: |
| type: bool |
| status: stable |
| category: media |
| humanReadableName: "WebCodecs Image API" |
| humanReadableDescription: "Enable WebCodecs Image API" |
| condition: ENABLE(WEB_CODECS) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| WebCodecsVideoEnabled: |
| type: bool |
| status: mature |
| category: media |
| humanReadableName: "WebCodecs Video API" |
| humanReadableDescription: "Enable WebCodecs Video API" |
| condition: ENABLE(WEB_CODECS) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "USE(LIBWEBRTC) && PLATFORM(COCOA)": WebKit::defaultPeerConnectionEnabledAvailable() |
| "USE(GSTREAMER)": true |
| default: false |
| WebCore: |
| "PLATFORM(COCOA)": true |
| "USE(GSTREAMER)": true |
| default: false |
| disableInLockdownMode: true |
| sharedPreferenceForWebProcess: true |
| richJavaScript: true |
| mediaPlaybackRelated: true |
| |
| WebContentRestrictionsAskToEnabled: |
| type: bool |
| status: unstable |
| defaultsOverridable: true |
| humanReadableName: "Web Content Restrictions Ask To" |
| humanReadableDescription: "Enable Ask To for WebContentRestrictions" |
| condition: HAVE(WEBCONTENTRESTRICTIONS_ASK_TO) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: defaultWebContentRestrictionsAskToEnabled() |
| WebCore: |
| default: false |
| sharedPreferenceForWebProcess: true |
| |
| WebContentRestrictionsTransitiveTrustEnabled: |
| type: bool |
| status: stable |
| category: security |
| defaultsOverridable: true |
| humanReadableName: "Web Content Restrictions Transitive Trust" |
| humanReadableDescription: "Enable Transitive Trust for WebContentRestrictions" |
| webcoreBinding: DeprecatedGlobalSettings |
| condition: HAVE(WEBCONTENTRESTRICTIONS_TRANSITIVE_TRUST) |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| sharedPreferenceForWebProcess: true |
| |
| WebExtensionBookmarksEnabled: |
| type: bool |
| status: testable |
| category: extensions |
| humanReadableName: "WebExtension Bookmarks API" |
| humanReadableDescription: "Enable support for WebExtensions using the Bookmarks API" |
| condition: ENABLE(WK_WEB_EXTENSIONS_BOOKMARKS) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| WebExtensionOffscreenEnabled: |
| type: bool |
| status: testable |
| category: extensions |
| humanReadableName: "WebExtension Offscreen API" |
| humanReadableDescription: "Enable support for WebExtensions using the Offscreen API" |
| condition: ENABLE(WK_WEB_EXTENSIONS_OFFSCREEN) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| WebExtensionSidebarEnabled: |
| type: bool |
| status: testable |
| category: extensions |
| humanReadableName: "WebExtension sidebarAction and sidePanel APIs" |
| humanReadableDescription: "Enable support for WebExtensions using the sidebarAction / sidePanel family of APIs" |
| condition: ENABLE(WK_WEB_EXTENSIONS_SIDEBAR) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| WebGLDraftExtensionsEnabled: |
| type: bool |
| status: testable |
| category: dom |
| humanReadableName: "WebGL Draft Extensions" |
| humanReadableDescription: "Enable WebGL extensions that are still in draft status" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| sharedPreferenceForWebProcess: true |
| |
| WebGLEnabled: |
| type: bool |
| status: mature |
| humanReadableName: "WebGL" |
| humanReadableDescription: "Enable WebGL" |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: false |
| disableInLockdownMode: true |
| sharedPreferenceForWebProcess: true |
| richJavaScript: true |
| |
| WebGLTimerQueriesEnabled: |
| type: bool |
| status: developer |
| category: dom |
| humanReadableName: "WebGL Timer Queries" |
| humanReadableDescription: "Enable WebGL extensions that provide GPU timer queries" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| WebGPUEnabled: |
| type: bool |
| status: Webgpu_feature_status |
| category: dom |
| humanReadableName: "WebGPU" |
| humanReadableDescription: "Enable WebGPU" |
| defaultValue: |
| WebKitLegacy: |
| "ENABLE(WEBGPU_BY_DEFAULT)": true |
| default: false |
| WebKit: |
| "ENABLE(WEBGPU_BY_DEFAULT)": true |
| default: false |
| WebCore: |
| "ENABLE(WEBGPU_BY_DEFAULT)": true |
| default: false |
| disableInLockdownMode: true |
| sharedPreferenceForWebProcess: true |
| richJavaScript: true |
| |
| WebGPUHDREnabled: |
| type: bool |
| status: Webgpuhdr_feature_status |
| category: dom |
| humanReadableName: "WebGPU support for HDR" |
| humanReadableDescription: "WebGPU High Dynamic Range through canvas configuration tone mapping mode" |
| defaultValue: |
| WebKitLegacy: |
| "ENABLE(WEBGPU_BY_DEFAULT) && HAVE(SUPPORT_HDR_DISPLAY)": true |
| default: false |
| WebKit: |
| "ENABLE(WEBGPU_BY_DEFAULT) && HAVE(SUPPORT_HDR_DISPLAY)": true |
| default: false |
| WebCore: |
| "ENABLE(WEBGPU_BY_DEFAULT) && HAVE(SUPPORT_HDR_DISPLAY)": true |
| default: false |
| disableInLockdownMode: true |
| sharedPreferenceForWebProcess: true |
| |
| WebInspectorEngineeringSettingsAllowed: |
| type: bool |
| status: internal |
| category: dom |
| defaultsOverridable: true |
| humanReadableName: "WebInspector engineering settings allowed" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| WebLocksAPIEnabled: |
| type: bool |
| status: stable |
| category: dom |
| humanReadableName: "Web Locks API" |
| humanReadableDescription: "Web Locks API" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| disableInLockdownMode: true |
| sharedPreferenceForWebProcess: true |
| richJavaScript: true |
| |
| WebRTCAV1CodecEnabled: |
| type: bool |
| status: stable |
| category: media |
| humanReadableName: "WebRTC AV1 codec" |
| humanReadableDescription: "Enable WebRTC AV1 codec" |
| condition: ENABLE(WEB_RTC) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "USE(GSTREAMER) || PLATFORM(COCOA)": true |
| default: false |
| WebCore: |
| "USE(GSTREAMER) || PLATFORM(COCOA)": true |
| default: false |
| |
| WebRTCAudioLatencyAdaptationEnabled: |
| type: bool |
| status: internal |
| category: media |
| humanReadableName: "WebRTC Audio Latency Adaptation" |
| humanReadableDescription: "Enable WebRTC Audio Latency Adaptation" |
| webcoreBinding: DeprecatedGlobalSettings |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| |
| # FIXME: Is this implemented for WebKitLegacy? If not, this should be excluded from WebKitLegacy entirely. |
| WebRTCDTMFEnabled: |
| type: bool |
| status: internal |
| category: media |
| humanReadableName: "WebRTC DTMF" |
| humanReadableDescription: "Enable WebRTC DTMF" |
| condition: ENABLE(WEB_RTC) |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| WebRTCEncodedTransformEnabled: |
| type: bool |
| status: mature |
| category: media |
| condition: ENABLE(WEB_RTC) |
| humanReadableName: "WebRTC Encoded Transform API" |
| humanReadableDescription: "Enable WebRTC Encoded Transform API" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "USE(LIBWEBRTC) && PLATFORM(COCOA)": WebKit::defaultPeerConnectionEnabledAvailable() |
| default: false |
| WebCore: |
| "USE(LIBWEBRTC)": true |
| default: false |
| disableInLockdownMode: true |
| |
| # FIXME: Is this implemented for WebKitLegacy? If not, this should be excluded from WebKitLegacy entirely. |
| WebRTCH264HardwareEncoderEnabled: |
| type: bool |
| status: internal |
| category: media |
| humanReadableName: "WebRTC H264 Hardware encoder" |
| humanReadableDescription: "Enable H264 Hardware encoder" |
| webcoreBinding: none |
| condition: ENABLE(WEB_RTC) |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| |
| # FIXME: Is this implemented for WebKitLegacy? If not, this should be excluded from WebKitLegacy entirely. |
| WebRTCH265CodecEnabled: |
| type: bool |
| status: mature |
| category: media |
| condition: ENABLE(WEB_RTC) |
| humanReadableName: "WebRTC HEVC codec" |
| humanReadableDescription: "Enable WebRTC HEVC codec" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "PLATFORM(COCOA)": true |
| default: false |
| WebCore: |
| "PLATFORM(COCOA)": true |
| default: false |
| |
| WebRTCInterfaceMonitoringViaNWEnabled: |
| type: bool |
| status: internal |
| category: media |
| condition: ENABLE(WEB_RTC) && PLATFORM(COCOA) |
| humanReadableName: "WebRTC interface monitoring via NW" |
| humanReadableDescription: "Enable WebRTC interface monitoring via NW" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| sharedPreferenceForWebProcess: true |
| |
| WebRTCL4SEnabled: |
| type: bool |
| status: testable |
| category: media |
| condition: ENABLE(WEB_RTC) |
| humanReadableName: "WebRTC L4S support" |
| humanReadableDescription: "Enable WebRTC L4S support" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| WebRTCMediaPipelineAdditionalLoggingEnabled: |
| type: bool |
| status: internal |
| category: media |
| humanReadableName: "WebRTC Media Pipeline Additional Logging" |
| humanReadableDescription: "Enable WebRTC Media Pipeline Additional Logging" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| # FIXME: This is not relevant for WebKitLegacy, so it should be excluded from WebKitLegacy entirely. |
| WebRTCPlatformCodecsInGPUProcessEnabled: |
| type: bool |
| status: embedder |
| humanReadableName: "GPU Process: WebRTC Platform Codecs" |
| humanReadableDescription: "Enable WebRTC Platform Codecs in GPU Process" |
| condition: ENABLE(WEB_RTC) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "ENABLE(GPU_PROCESS_BY_DEFAULT)": true |
| default: false |
| WebCore: |
| default: false |
| |
| WebRTCRemoteVideoFrameEnabled: |
| type: bool |
| status: internal |
| category: media |
| humanReadableName: "WebRTC Remote Video Frame" |
| humanReadableDescription: "Enable WebRTC Remote Video Frame" |
| condition: ENABLE(WEB_RTC) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "PLATFORM(COCOA)": true |
| default: false |
| WebCore: |
| default: false |
| |
| WebRTCSFrameTransformEnabled: |
| type: bool |
| status: testable |
| category: media |
| condition: ENABLE(WEB_RTC) |
| humanReadableName: "WebRTC SFrame Transform API" |
| humanReadableDescription: "Enable WebRTC SFrame Transform API" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| WebRTCSocketsProxyingEnabled: |
| type: bool |
| status: internal |
| category: media |
| humanReadableName: "WebRTC Sockets Proxying" |
| humanReadableDescription: "Enable WebRTC Sockets Proxying" |
| condition: ENABLE(WEB_RTC) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: true |
| WebCore: |
| default: false |
| |
| WebRTCSocketsServiceClassEnabled: |
| type: bool |
| status: internal |
| category: media |
| humanReadableName: "WebRTC Sockets Service Class" |
| humanReadableDescription: "Enable setting WebRTC Sockets Service Class" |
| condition: ENABLE(WEB_RTC) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: WebKit::defaultWebRTCSocketsServiceClassEnabled() |
| WebCore: |
| default: false |
| |
| WebRTCUDPPortRange: |
| type: String |
| status: embedder |
| category: media |
| humanReadableName: "WebRTC UDP Port Range" |
| humanReadableDescription: "Set a UDP port range for WebRTC. If set to 0:0, the port range is determined by the OS" |
| condition: ENABLE(WEB_RTC) |
| defaultValue: |
| WebKitLegacy: |
| default: '"0:0"_str' |
| WebKit: |
| default: '"0:0"_str' |
| WebCore: |
| default: '"0:0"_str' |
| |
| WebRTCVP9Profile0CodecEnabled: |
| type: bool |
| status: internal |
| category: media |
| humanReadableName: "WebRTC VP9 profile 0 codec" |
| humanReadableDescription: "Enable WebRTC VP9 profile 0 codec" |
| condition: ENABLE(WEB_RTC) |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| WebRTCVP9Profile2CodecEnabled: |
| type: bool |
| status: mature |
| category: media |
| humanReadableName: "WebRTC VP9 profile 2 codec" |
| humanReadableDescription: "Enable WebRTC VP9 profile 2 codec" |
| condition: ENABLE(WEB_RTC) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "PLATFORM(COCOA)": true |
| default: false |
| WebCore: |
| "PLATFORM(COCOA)": true |
| default: false |
| |
| WebSQLEnabled: |
| type: bool |
| status: embedder |
| humanReadableName: "Enable WebSQL" |
| humanReadableDescription: "Enable WebSQL" |
| webcoreBinding: custom |
| exposed: [ WebKitLegacy ] |
| defaultValue: |
| WebKitLegacy: |
| "PLATFORM(IOS_FAMILY)": WebKit::defaultWebSQLEnabled() |
| default: true |
| |
| WebSecurityEnabled: |
| type: bool |
| status: embedder |
| 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 |
| status: embedder |
| 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 |
| sharedPreferenceForWebProcess: true |
| richJavaScript: true |
| disableInLockdownMode: true |
| |
| WebShareFileAPIEnabled: |
| type: bool |
| status: stable |
| category: dom |
| humanReadableName: "Web Share API Level 2" |
| humanReadableDescription: "Enable level 2 of Web Share API" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "PLATFORM(COCOA) && !PLATFORM(WATCHOS) && !PLATFORM(APPLETV)": true |
| default: false |
| WebCore: |
| default: false |
| |
| WebSocketEnabled: |
| type: bool |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| "PLATFORM(WATCHOS)": false |
| default: true |
| WebKit: |
| "PLATFORM(WATCHOS)": false |
| default: true |
| WebCore: |
| "PLATFORM(WATCHOS)": false |
| default: true |
| sharedPreferenceForWebProcess: true |
| richJavaScript: true |
| |
| |
| WebTransportEnabled: |
| type: bool |
| status: developer |
| category: networking |
| humanReadableName: "WebTransport" |
| humanReadableDescription: "Enable WebTransport" |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: WebKit::defaultWebTransportEnabled() |
| WebCore: |
| default: false |
| sharedPreferenceForWebProcess: true |
| richJavaScript: true |
| disableInLockdownMode: true |
| |
| WebXRAugmentedRealityModuleEnabled: |
| type: bool |
| status: testable |
| category: dom |
| humanReadableName: "WebXR Augmented Reality Module" |
| humanReadableDescription: "Adds support for the WebXR Augmented Reality Module" |
| condition: ENABLE(WEBXR_AR) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| disableInLockdownMode: true |
| |
| WebXREnabled: |
| type: bool |
| status: stable |
| category: dom |
| humanReadableName: "WebXR Device API" |
| humanReadableDescription: "Adds support for accessing virtual reality (VR) and augmented reality (AR) devices, including sensors and head-mounted displays, on the Web" |
| condition: ENABLE(WEBXR) |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| disableInLockdownMode: true |
| sharedPreferenceForWebProcess: true |
| richJavaScript: true |
| |
| WebXRGamepadsModuleEnabled: |
| type: bool |
| status: stable |
| category: dom |
| humanReadableName: "WebXR Gamepads Module" |
| humanReadableDescription: "Adds support for the WebXR Gamepads Module" |
| condition: ENABLE(WEBXR) |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| WebXRHandInputModuleEnabled: |
| type: bool |
| status: stable |
| category: dom |
| humanReadableName: "WebXR Hand Input Module" |
| humanReadableDescription: "Adds support for the Hands Input Module for WebXR" |
| condition: ENABLE(WEBXR_HANDS) |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| WebXRHitTestModuleEnabled: |
| type: bool |
| status: testable |
| category: dom |
| humanReadableName: "WebXR Hit Test Module" |
| humanReadableDescription: "Adds support for the Hit Test Module for WebXR" |
| condition: ENABLE(WEBXR_HIT_TEST) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| default: false |
| WebCore: |
| default: false |
| |
| WebXRLayersAPIEnabled: |
| type: bool |
| status: Webxr_layers_feature_status |
| category: dom |
| humanReadableName: "WebXR Layers API" |
| humanReadableDescription: "Adds support for the WebXR Layers API" |
| condition: ENABLE(WEBXR_LAYERS) |
| defaultValue: |
| WebKitLegacy: |
| default: false |
| WebKit: |
| "ENABLE(WEBXR_LAYERS) && USE(OPENXR)": true |
| default: false |
| WebCore: |
| "ENABLE(WEBXR_LAYERS) && USE(OPENXR)": true |
| default: false |
| |
| WebXRWebGPUBindingsEnabled: |
| type: bool |
| status: Webgpu_webxr_feature_status |
| category: dom |
| humanReadableName: "WebGPU support for WebXR" |
| humanReadableDescription: "Adds WebGPU support for WebXR" |
| defaultValue: |
| WebKitLegacy: |
| "PLATFORM(VISION) && ENABLE(WEBXR_WEBGPU)": true |
| default: false |
| WebKit: |
| "PLATFORM(VISION) && ENABLE(WEBXR_WEBGPU)": true |
| default: false |
| WebCore: |
| "PLATFORM(VISION) && ENABLE(WEBXR_WEBGPU)": true |
| default: false |
| disableInLockdownMode: true |
| sharedPreferenceForWebProcess: true |
| |
| WheelEventGesturesBecomeNonBlocking: |
| type: bool |
| status: mature |
| humanReadableName: "Wheel Event gestures become non-blocking" |
| humanReadableDescription: "preventDefault() is only allowed on the first wheel event in a gesture" |
| defaultValue: |
| WebKitLegacy: |
| "PLATFORM(MAC)": WebKit::defaultWheelEventGesturesBecomeNonBlocking() |
| default: true |
| WebKit: |
| "PLATFORM(MAC)": WebKit::defaultWheelEventGesturesBecomeNonBlocking() |
| default: true |
| WebCore: |
| default: true |
| |
| 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 |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| PLATFORM(MAC): WebKit::defaultWindowFocusRestricted() |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| |
| WirelessPlaybackMediaPlayerEnabled: |
| type: bool |
| status: internal |
| category: media |
| humanReadableName: "Wireless Playback Media Player" |
| humanReadableDescription: "Enable wireless playback via MediaPlayerPrivateWirelessPlayback" |
| condition: ENABLE(WIRELESS_PLAYBACK_MEDIA_PLAYER) |
| defaultValue: |
| WebCore: |
| default: false |
| WebKit: |
| default: true |
| WebKitLegacy: |
| default: false |
| disableInLockdownMode: true |
| |
| WirelessPlaybackTargetAPIEnabled: |
| type: bool |
| status: embedder |
| defaultValue: |
| WebKitLegacy: |
| "PLATFORM(VISION)" : false |
| default: true |
| WebKit: |
| "PLATFORM(VISION)" : false |
| default: true |
| WebCore: |
| "PLATFORM(VISION)" : false |
| default: true |
| |
| WorkerInSharedWorkerEnabled: |
| type: bool |
| status: stable |
| category: dom |
| humanReadableName: "Worker in SharedWorker" |
| humanReadableDescription: "Allow creating dedicated workers from shared workers" |
| defaultValue: |
| WebCore: |
| default: true |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| |
| WorkerParseErrorReportingEnabled: |
| type: bool |
| status: stable |
| category: dom |
| humanReadableName: "Worker parse error reporting" |
| humanReadableDescription: "Report worker script parse errors on the Worker object" |
| defaultValue: |
| WebCore: |
| default: true |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| |
| WriteRichTextDataWhenCopyingOrDragging: |
| type: bool |
| status: internal |
| humanReadableName: "Write RTF on Copy" |
| humanReadableDescription: "Write RTF, RTFD and attributed strings to the pasteboard when copying or dragging" |
| condition: PLATFORM(COCOA) |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| "PLATFORM(IOS_FAMILY)": WebKit::defaultWriteRichTextDataWhenCopyingOrDragging() |
| default: true |
| WebCore: |
| default: true |
| |
| XSLTEnabled: |
| type: bool |
| status: internal |
| webcoreName: "xsltEnabled" |
| webcoreGetter: "isXSLTEnabled" |
| condition: ENABLE(XSLT) |
| humanReadableName: "XSLT Support Enabled" |
| humanReadableDescription: "Enables support for XSLT" |
| defaultValue: |
| WebKitLegacy: |
| default: true |
| WebKit: |
| default: true |
| WebCore: |
| default: true |
| disableInLockdownMode: true |
| |
| ZoomOnDoubleTapWhenRoot: |
| type: bool |
| status: internal |
| condition: PLATFORM(IOS_FAMILY) |
| humanReadableName: "DTTZ also when root" |
| humanReadableDescription: "Double taps zoom, even if we dispatched a click on the root nodes" |
| webcoreBinding: none |
| exposed: [ WebKit ] |
| defaultValue: |
| WebKit: |
| default: false |