| Differences between
and this patch
- Source/WebKit/ChangeLog +70 lines
Lines 1-3 Source/WebKit/ChangeLog_sec1
1
2017-10-25  Sam Weinig  <sam@webkit.org>
2
3
        [Settings] Generate the bulk of WebPage::updatePreferences(...)
4
        https://bugs.webkit.org/show_bug.cgi?id=178823
5
6
        Reviewed by NOBODY (OOPS!).
7
8
        * CMakeLists.txt:
9
        * DerivedSources.make:
10
        * WebKit.xcodeproj/project.pbxproj:
11
12
            Add new file generation.
13
14
        * Scripts/GeneratePreferences.rb:
15
        
16
            Replace 'webkitOnly' boolean option with a new 'webcoreBinding' option.
17
            'webcoreBinding' supports the following values:
18
                - none (same as webkit only)
19
                - custom (means that you do bind to a webcore concept, but currently it must
20
                  be done in a custom manner)
21
                - DeprecatedGlobalSettings (binds to a DeprecatedGlobalSettings setting)
22
                - RuntimeEnabledFeatures (binds to a RuntimeEnabledFeatures setting)
23
            If 'webcoreBinding' is not provided, the preference binds to WebCore Setting
24
            of either the same name or the override name provided by the new 'webcoreName'
25
            option (we should try to remove the need for 'webcoreName' by unifying with 
26
            WebCore on preference/setting naming).
27
            
28
            A 'condition' option was also added to indicate that the preference is only available
29
            when that macro condition is true.
30
            
31
            Since we are generating most of WebPage::updatePreferences, we can simplify the
32
            macros in WebPreferencesDefinitions.h to only have normal/debug/experimental variants
33
            and remove the need for per-type macros, which were only used in WebPage::updatePreferences.
34
        
35
        * Scripts/PreferencesTemplates/WebPageUpdatePreferences.cpp.erb: Added.
36
        
37
            Generates bindings from WebPreferences to WebCore::Settings/DeprecatedGlobalSettings/RuntimeEnabledFeatures.
38
            Does not generate a binding if the 'webcoreBinding' option is set to either 'none' or 'custom'.
39
        
40
        * Scripts/PreferencesTemplates/WebPreferencesDefinitions.h.erb:
41
    
42
            Simplify down to just normal/debug/experimental macros.
43
        
44
        * Shared/WebPreferences.yaml:
45
        
46
            Annotate perferences with new optional 'webcoreBinding', 'webcoreName', and 'condition'
47
            options.
48
        
49
        * WebProcess/WebPage/WebPage.cpp:
50
        (WebKit::WebPage::updatePreferences):
51
        
52
            Replace a ton of hand written preference to settings bindings with a call to updatePreferencesGenerated().
53
        
54
        * WebProcess/WebPage/WebPage.h:
55
        
56
            Add declaration of updatePreferencesGenerated, remove platformPreferencesDidChange.
57
58
        * WebProcess/WebPage/gtk/WebPageGtk.cpp:
59
        (WebKit::WebPage::platformPreferencesDidChange): Deleted.
60
        * WebProcess/WebPage/ios/WebPageIOS.mm:
61
        (WebKit::WebPage::platformPreferencesDidChange): Deleted.
62
        * WebProcess/WebPage/mac/WebPageMac.mm:
63
        (WebKit::WebPage::platformPreferencesDidChange): Deleted.
64
        * WebProcess/WebPage/win/WebPageWin.cpp:
65
        (WebKit::WebPage::platformPreferencesDidChange): Deleted.
66
        * WebProcess/WebPage/wpe/WebPageWPE.cpp:
67
        (WebKit::WebPage::platformPreferencesDidChange): Deleted.
68
        
69
            Remove all the empty platformPreferencesDidChange functions.
70
1
2017-10-25  Per Arne Vollan  <pvollan@apple.com>
71
2017-10-25  Per Arne Vollan  <pvollan@apple.com>
2
72
3
        Network process crash under WebKit::AuthenticationManager::rejectProtectionSpaceAndContinueForSingleChallenge.
73
        Network process crash under WebKit::AuthenticationManager::rejectProtectionSpaceAndContinueForSingleChallenge.
- Source/WebKit/CMakeLists.txt -1 / +7 lines
Lines 907-917 list(APPEND WebKit_HEADERS Source/WebKit/CMakeLists.txt_sec1
907
)
907
)
908
908
909
set(WebKit_WEB_PREFERENCES_TEMPLATES
909
set(WebKit_WEB_PREFERENCES_TEMPLATES
910
    ${WEBKIT_DIR}/Scripts/PreferencesTemplates/WebPageUpdatePreferences.cpp.erb
910
    ${WEBKIT_DIR}/Scripts/PreferencesTemplates/WebPreferencesDefinitions.h.erb
911
    ${WEBKIT_DIR}/Scripts/PreferencesTemplates/WebPreferencesDefinitions.h.erb
911
)
912
)
912
913
913
add_custom_command(
914
add_custom_command(
914
    OUTPUT ${DERIVED_SOURCES_WEBKIT_DIR}/WebPreferencesDefinitions.h
915
    OUTPUT ${DERIVED_SOURCES_WEBKIT_DIR}/WebPageUpdatePreferences.cpp ${DERIVED_SOURCES_WEBKIT_DIR}/WebPreferencesDefinitions.h
915
    MAIN_DEPENDENCY ${WEBKIT_DIR}/Shared/WebPreferences.yaml
916
    MAIN_DEPENDENCY ${WEBKIT_DIR}/Shared/WebPreferences.yaml
916
    DEPENDS ${WebKit_WEB_PREFERENCES_TEMPLATES}
917
    DEPENDS ${WebKit_WEB_PREFERENCES_TEMPLATES}
917
    COMMAND ${RUBY_EXECUTABLE} ${WEBKIT_DIR}/Scripts/GeneratePreferences.rb --input ${WEBKIT_DIR}/Shared/WebPreferences.yaml --outputDir "${DERIVED_SOURCES_WEBKIT_DIR}"
918
    COMMAND ${RUBY_EXECUTABLE} ${WEBKIT_DIR}/Scripts/GeneratePreferences.rb --input ${WEBKIT_DIR}/Shared/WebPreferences.yaml --outputDir "${DERIVED_SOURCES_WEBKIT_DIR}"
Lines 921-926 list(APPEND WebKit_HEADERS Source/WebKit/CMakeLists.txt_sec2
921
    ${DERIVED_SOURCES_WEBKIT_DIR}/WebPreferencesDefinitions.h
922
    ${DERIVED_SOURCES_WEBKIT_DIR}/WebPreferencesDefinitions.h
922
)
923
)
923
924
925
list(APPEND WebKit_SOURCES
926
    ${DERIVED_SOURCES_WEBKIT_DIR}/WebPageUpdatePreferences.cpp
927
)
928
929
924
list(APPEND WebKit_SOURCES ${WebKit_DERIVED_SOURCES})
930
list(APPEND WebKit_SOURCES ${WebKit_DERIVED_SOURCES})
925
931
926
WEBKIT_FRAMEWORK(WebKit)
932
WEBKIT_FRAMEWORK(WebKit)
- Source/WebKit/DerivedSources.make -2 / +3 lines
Lines 288-298 all : WebAutomationSessionProxyScriptSou Source/WebKit/DerivedSources.make_sec1
288
# WebPreferences generation
288
# WebPreferences generation
289
289
290
WEB_PREFERENCES_TEMPLATES = \
290
WEB_PREFERENCES_TEMPLATES = \
291
    $(WebKit2)/Scripts/PreferencesTemplates/WebPageUpdatePreferences.cpp.erb \
291
    $(WebKit2)/Scripts/PreferencesTemplates/WebPreferencesDefinitions.h.erb \
292
    $(WebKit2)/Scripts/PreferencesTemplates/WebPreferencesDefinitions.h.erb \
292
#
293
#
293
294
294
all : WebPreferencesDefinitions.h
295
all : WebPreferencesDefinitions.h WebPageUpdatePreferences.cpp
295
296
296
WebPreferencesDefinitions%h : $(WebKit2)/Scripts/GeneratePreferences.rb $(WEB_PREFERENCES_TEMPLATES) $(WebKit2)/Shared/WebPreferences.yaml
297
WebPreferencesDefinitions%h WebPageUpdatePreferences%cpp: $(WebKit2)/Scripts/GeneratePreferences.rb $(WEB_PREFERENCES_TEMPLATES) $(WebKit2)/Shared/WebPreferences.yaml
297
	$(RUBY) $< --input $(WebKit2)/Shared/WebPreferences.yaml
298
	$(RUBY) $< --input $(WebKit2)/Shared/WebPreferences.yaml
298
299
- Source/WebKit/Scripts/GeneratePreferences.rb -12 / +30 lines
Lines 67-74 class Preference Source/WebKit/Scripts/GeneratePreferences.rb_sec1
67
  attr_accessor :defaultValue
67
  attr_accessor :defaultValue
68
  attr_accessor :humanReadableName
68
  attr_accessor :humanReadableName
69
  attr_accessor :humanReadableDescription
69
  attr_accessor :humanReadableDescription
70
  attr_accessor :webkitOnly
71
  attr_accessor :category
70
  attr_accessor :category
71
  attr_accessor :webcoreBinding
72
  attr_accessor :condition
72
73
73
  def initialize(name, opts)
74
  def initialize(name, opts)
74
    @name = name
75
    @name = name
Lines 76-84 class Preference Source/WebKit/Scripts/GeneratePreferences.rb_sec2
76
    @defaultValue = opts["defaultValue"]
77
    @defaultValue = opts["defaultValue"]
77
    @humanReadableName = '"' + (opts["humanReadableName"] || "") + '"'
78
    @humanReadableName = '"' + (opts["humanReadableName"] || "") + '"'
78
    @humanReadableDescription = '"' + (opts["humanReadableDescription"] || "") + '"'
79
    @humanReadableDescription = '"' + (opts["humanReadableDescription"] || "") + '"'
79
    @webkitOnly = opts["webkitOnly"]
80
    @category = opts["category"]
80
    @category = opts["category"]
81
    @getter = opts["getter"]
81
    @getter = opts["getter"]
82
    @webcoreBinding = opts["webcoreBinding"]
83
    @webcoreName = opts["webcoreName"]
84
    @condition = opts["condition"]
82
  end
85
  end
83
86
84
  def nameLower
87
  def nameLower
Lines 92-97 class Preference Source/WebKit/Scripts/GeneratePreferences.rb_sec3
92
      @name[0].downcase + @name[1..@name.length]
95
      @name[0].downcase + @name[1..@name.length]
93
    end
96
    end
94
  end
97
  end
98
99
  def webcoreNameUpper
100
    if @webcoreName
101
      @webcoreName[0].upcase + @webcoreName[1..@webcoreName.length]
102
    else
103
      @name
104
    end
105
  end
106
107
  def typeUpper
108
    if @type == "uint32_t"
109
      "UInt32"
110
    else
111
      @type.capitalize
112
    end
113
  end
114
95
end
115
end
96
116
97
class Conditional
117
class Conditional
Lines 114-129 class Preferences Source/WebKit/Scripts/GeneratePreferences.rb_sec4
114
    end
134
    end
115
    @preferences.sort! { |x, y| x.name <=> y.name }
135
    @preferences.sort! { |x, y| x.name <=> y.name }
116
    
136
    
117
    @boolPreferencesNotDebug = @preferences.select { |p| !p.category && !p.webkitOnly && p.type == "bool" }
137
    @preferencesNotDebug = @preferences.select { |p| !p.category }
118
    @doublePreferencesNotDebug = @preferences.select { |p| !p.category && !p.webkitOnly && p.type == "double" }
138
    @preferencesDebug = @preferences.select { |p| p.category == "debug" }
119
    @intPreferencesNotDebug = @preferences.select { |p| !p.category && !p.webkitOnly && p.type == "uint32_t" }
139
    @experimentalFeatures = @preferences.select { |p| p.category == "experimental" }
120
    @stringPreferencesNotDebug = @preferences.select { |p| !p.category && !p.webkitOnly && p.type == "String" }
140
121
    @stringPreferencesNotDebugNotInWebKit = @preferences.select { |p| !p.category && p.webkitOnly && p.type == "String" }
141
    @preferencesBoundToSetting = @preferences.select { |p| !p.webcoreBinding }
122
142
    @preferencesBoundToDeprecatedGlobalSettings = @preferences.select { |p| p.webcoreBinding == "DeprecatedGlobalSettings" }
123
    @boolPreferencesDebug = @preferences.select { |p| p.category == "debug" && !p.webkitOnly && p.type == "bool" }
143
    @preferencesBoundToRuntimeEnabledFeatures = @preferences.select { |p| p.webcoreBinding == "RuntimeEnabledFeatures" }
124
    @intPreferencesDebug = @preferences.select { |p| p.category == "debug" && !p.webkitOnly && p.type == "uint32_t" }
125
126
    @experimentalFeature = @preferences.select { |p| p.category == "experimental" && !p.webkitOnly }
127
  end
144
  end
128
145
129
  def renderToFile(template, file)
146
  def renderToFile(template, file)
Lines 138-140 end Source/WebKit/Scripts/GeneratePreferences.rb_sec5
138
155
139
preferences = Preferences.new(parsedPreferences)
156
preferences = Preferences.new(parsedPreferences)
140
preferences.renderToFile("PreferencesTemplates/WebPreferencesDefinitions.h.erb", File.join(options[:outputDirectory], "WebPreferencesDefinitions.h"))
157
preferences.renderToFile("PreferencesTemplates/WebPreferencesDefinitions.h.erb", File.join(options[:outputDirectory], "WebPreferencesDefinitions.h"))
158
preferences.renderToFile("PreferencesTemplates/WebPageUpdatePreferences.cpp.erb", File.join(options[:outputDirectory], "WebPageUpdatePreferences.cpp"))
- Source/WebKit/Scripts/PreferencesTemplates/WebPageUpdatePreferences.cpp.erb +75 lines
Line 0 Source/WebKit/Scripts/PreferencesTemplates/WebPageUpdatePreferences.cpp.erb_sec1
1
/*
2
 * THIS FILE WAS AUTOMATICALLY GENERATED, DO NOT EDIT.
3
 *
4
 * Copyright (C) 2017 Apple Inc. All rights reserved.
5
 *
6
 * Redistribution and use in source and binary forms, with or without
7
 * modification, are permitted provided that the following conditions
8
 * are met:
9
 * 1. Redistributions of source code must retain the above copyright
10
 *    notice, this list of conditions and the following disclaimer.
11
 * 2. Redistributions in binary form must reproduce the above copyright
12
 *    notice, this list of conditions and the following disclaimer in the
13
 *    documentation and/or other materials provided with the distribution.
14
 *
15
 * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
16
 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
17
 * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
18
 * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
19
 * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
20
 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
21
 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
22
 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
23
 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
24
 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
25
 * THE POSSIBILITY OF SUCH DAMAGE.
26
 */
27
28
#include "config.h"
29
#include "WebPage.h"
30
31
#include "WebPreferencesKeys.h"
32
#include "WebPreferencesStore.h"
33
#include <WebCore/DeprecatedGlobalSettings.h>
34
#include <WebCore/Page.h>
35
#include <WebCore/RuntimeEnabledFeatures.h>
36
#include <WebCore/Settings.h>
37
38
namespace WebKit {
39
40
void WebPage::updatePreferencesGenerated(const WebPreferencesStore& store)
41
{
42
    WebCore::Settings& settings = m_page->settings();
43
44
<%- for @pref in @preferencesBoundToSetting do -%>
45
<%- if @pref.condition -%>
46
#if <%= @pref.condition %>
47
<%- end -%>
48
    settings.set<%= @pref.webcoreNameUpper %>(store.get<%= @pref.typeUpper %>ValueForKey(WebPreferencesKey::<%= @pref.nameLower %>Key()));
49
<%- if @pref.condition -%>
50
#endif
51
<%- end -%>
52
<%- end -%>
53
54
<%- for @pref in @preferencesBoundToDeprecatedGlobalSettings do -%>
55
<%- if @pref.condition -%>
56
#if <%= @pref.condition %>
57
<%- end -%>
58
    WebCore::DeprecatedGlobalSettings::set<%= @pref.webcoreNameUpper %>(store.get<%= @pref.typeUpper %>ValueForKey(WebPreferencesKey::<%= @pref.nameLower %>Key()));
59
<%- if @pref.condition -%>
60
#endif
61
<%- end -%>
62
<%- end -%>
63
64
<%- for @pref in @preferencesBoundToRuntimeEnabledFeatures do -%>
65
<%- if @pref.condition -%>
66
#if <%= @pref.condition %>
67
<%- end -%>
68
    WebCore::RuntimeEnabledFeatures::sharedFeatures().set<%= @pref.webcoreNameUpper %>(store.get<%= @pref.typeUpper %>ValueForKey(WebPreferencesKey::<%= @pref.nameLower %>Key()));
69
<%- if @pref.condition -%>
70
#endif
71
<%- end -%>
72
<%- end -%>
73
}
74
75
}
- Source/WebKit/Scripts/PreferencesTemplates/WebPreferencesDefinitions.h.erb -53 / +7 lines
Lines 31-78 Source/WebKit/Scripts/PreferencesTemplates/WebPreferencesDefinitions.h.erb_sec1
31
31
32
// macro(KeyUpper, KeyLower, TypeNameUpper, TypeName, DefaultValue, HumanReadableName, HumanReadableDescription)
32
// macro(KeyUpper, KeyLower, TypeNameUpper, TypeName, DefaultValue, HumanReadableName, HumanReadableDescription)
33
33
34
#define FOR_EACH_WEBKIT_BOOL_PREFERENCE(macro) \
34
#define FOR_EACH_WEBKIT_PREFERENCE(macro) \
35
<%- for @pref in @boolPreferencesNotDebug do -%>
35
<%- for @pref in @preferencesNotDebug do -%>
36
    macro(<%= @pref.name %>, <%= @pref.nameLower %>, Bool, bool, <%= @pref.defaultValue %>, <%= @pref.humanReadableName %>, <%= @pref.humanReadableDescription %>) \
36
    macro(<%= @pref.name %>, <%= @pref.nameLower %>, <%= @pref.typeUpper %>, <%= @pref.type %>, <%= @pref.defaultValue %>, <%= @pref.humanReadableName %>, <%= @pref.humanReadableDescription %>) \
37
<%- end -%>
38
    \
39
40
#define FOR_EACH_WEBKIT_DOUBLE_PREFERENCE(macro) \
41
<%- for @pref in @doublePreferencesNotDebug do -%>
42
    macro(<%= @pref.name %>, <%= @pref.nameLower %>, Double, double, <%= @pref.defaultValue %>, <%= @pref.humanReadableName %>, <%= @pref.humanReadableDescription %>) \
43
<%- end -%>
44
    \
45
46
#define FOR_EACH_WEBKIT_UINT32_PREFERENCE(macro) \
47
<%- for @pref in @intPreferencesNotDebug do -%>
48
    macro(<%= @pref.name %>, <%= @pref.nameLower %>, UInt32, uint32_t, <%= @pref.defaultValue %>, <%= @pref.humanReadableName %>, <%= @pref.humanReadableDescription %>) \
49
<%- end -%>
50
    \
51
52
#define FOR_EACH_WEBKIT_STRING_PREFERENCE(macro) \
53
<%- for @pref in @stringPreferencesNotDebug do -%>
54
    macro(<%= @pref.name %>, <%= @pref.nameLower %>, String, String, <%= @pref.defaultValue %>, <%= @pref.humanReadableName %>, <%= @pref.humanReadableDescription %>) \
55
<%- end -%>
56
    \
57
58
#define FOR_EACH_WEBKIT_STRING_PREFERENCE_NOT_IN_WEBCORE(macro) \
59
<%- for @pref in @stringPreferencesNotDebugNotInWebKit do -%>
60
    macro(<%= @pref.name %>, <%= @pref.nameLower %>, String, String, <%= @pref.defaultValue %>, <%= @pref.humanReadableName %>, <%= @pref.humanReadableDescription %>) \
61
<%- end -%>
37
<%- end -%>
62
    \
38
    \
63
39
64
40
65
// Debug Preferences
41
// Debug Preferences
66
42
67
#define FOR_EACH_WEBKIT_DEBUG_BOOL_PREFERENCE(macro) \
43
#define FOR_EACH_WEBKIT_DEBUG_PREFERENCE(macro) \
68
<%- for @pref in @boolPreferencesDebug do -%>
44
<%- for @pref in @preferencesDebug do -%>
69
    macro(<%= @pref.name %>, <%= @pref.nameLower %>, Bool, bool, <%= @pref.defaultValue %>, <%= @pref.humanReadableName %>, <%= @pref.humanReadableDescription %>) \
45
    macro(<%= @pref.name %>, <%= @pref.nameLower %>, <%= @pref.typeUpper %>, <%= @pref.type %>, <%= @pref.defaultValue %>, <%= @pref.humanReadableName %>, <%= @pref.humanReadableDescription %>) \
70
<%- end -%>
71
    \
72
73
#define FOR_EACH_WEBKIT_DEBUG_UINT32_PREFERENCE(macro) \
74
<%- for @pref in @intPreferencesDebug do -%>
75
    macro(<%= @pref.name %>, <%= @pref.nameLower %>, UInt32, uint32_t, <%= @pref.defaultValue %>, <%= @pref.humanReadableName %>, <%= @pref.humanReadableDescription %>) \
76
<%- end -%>
46
<%- end -%>
77
    \
47
    \
78
48
Lines 80-102 Source/WebKit/Scripts/PreferencesTemplates/WebPreferencesDefinitions.h.erb_sec2
80
// Experimental Features
50
// Experimental Features
81
51
82
#define FOR_EACH_WEBKIT_EXPERIMENTAL_FEATURE_PREFERENCE(macro) \
52
#define FOR_EACH_WEBKIT_EXPERIMENTAL_FEATURE_PREFERENCE(macro) \
83
<%- for @pref in @experimentalFeature do -%>
53
<%- for @pref in @experimentalFeatures do -%>
84
    macro(<%= @pref.name %>, <%= @pref.nameLower %>, Bool, bool, <%= @pref.defaultValue %>, <%= @pref.humanReadableName %>, <%= @pref.humanReadableDescription %>) \
54
    macro(<%= @pref.name %>, <%= @pref.nameLower %>, Bool, bool, <%= @pref.defaultValue %>, <%= @pref.humanReadableName %>, <%= @pref.humanReadableDescription %>) \
85
<%- end -%>
55
<%- end -%>
86
    \
56
    \
87
88
89
90
#define FOR_EACH_WEBKIT_DEBUG_PREFERENCE(macro) \
91
    FOR_EACH_WEBKIT_DEBUG_BOOL_PREFERENCE(macro) \
92
    FOR_EACH_WEBKIT_DEBUG_UINT32_PREFERENCE(macro) \
93
    \
94
95
#define FOR_EACH_WEBKIT_PREFERENCE(macro) \
96
    FOR_EACH_WEBKIT_BOOL_PREFERENCE(macro) \
97
    FOR_EACH_WEBKIT_DOUBLE_PREFERENCE(macro) \
98
    FOR_EACH_WEBKIT_UINT32_PREFERENCE(macro) \
99
    FOR_EACH_WEBKIT_STRING_PREFERENCE(macro) \
100
    FOR_EACH_WEBKIT_STRING_PREFERENCE_NOT_IN_WEBCORE(macro) \
101
    \
102
- Source/WebKit/Shared/WebPreferences.yaml -6 / +145 lines
Lines 2-11 Source/WebKit/Shared/WebPreferences.yaml_sec1
2
JavaScriptEnabled:
2
JavaScriptEnabled:
3
  type: bool
3
  type: bool
4
  defaultValue: true
4
  defaultValue: true
5
  webcoreName: scriptEnabled
5
6
6
JavaScriptMarkupEnabled:
7
JavaScriptMarkupEnabled:
7
  type: bool
8
  type: bool
8
  defaultValue: true
9
  defaultValue: true
10
  webcoreName: scriptMarkupEnabled
9
11
10
LoadsImagesAutomatically:
12
LoadsImagesAutomatically:
11
  type: bool
13
  type: bool
Lines 14-19 LoadsImagesAutomatically: Source/WebKit/Shared/WebPreferences.yaml_sec2
14
LoadsSiteIconsIgnoringImageLoadingPreference:
16
LoadsSiteIconsIgnoringImageLoadingPreference:
15
  type: bool
17
  type: bool
16
  defaultValue: false
18
  defaultValue: false
19
  webcoreName: loadsSiteIconsIgnoringImageLoadingSetting
17
20
18
PluginsEnabled:
21
PluginsEnabled:
19
  type: bool
22
  type: bool
Lines 38-43 LocalStorageEnabled: Source/WebKit/Shared/WebPreferences.yaml_sec3
38
DatabasesEnabled:
41
DatabasesEnabled:
39
  type: bool
42
  type: bool
40
  defaultValue: true
43
  defaultValue: true
44
  webcoreBinding: custom
41
45
42
XSSAuditorEnabled:
46
XSSAuditorEnabled:
43
  type: bool
47
  type: bool
Lines 46-51 XSSAuditorEnabled: Source/WebKit/Shared/WebPreferences.yaml_sec4
46
PrivateBrowsingEnabled:
50
PrivateBrowsingEnabled:
47
  type: bool
51
  type: bool
48
  defaultValue: false
52
  defaultValue: false
53
  webcoreBinding: none
49
54
50
TextAreasAreResizable:
55
TextAreasAreResizable:
51
  type: bool
56
  type: bool
Lines 90-95 Accelerated2dCanvasEnabled: Source/WebKit/Shared/WebPreferences.yaml_sec5
90
CSSAnimationTriggersEnabled:
95
CSSAnimationTriggersEnabled:
91
  type: bool
96
  type: bool
92
  defaultValue: true
97
  defaultValue: true
98
  webcoreBinding: RuntimeEnabledFeatures
99
  webcoreName: animationTriggersEnabled
100
  condition: ENABLE(CSS_ANIMATIONS_LEVEL_2)
93
101
94
ForceFTPDirectoryListings:
102
ForceFTPDirectoryListings:
95
  type: bool
103
  type: bool
Lines 98-103 ForceFTPDirectoryListings: Source/WebKit/Shared/WebPreferences.yaml_sec6
98
TabsToLinks:
106
TabsToLinks:
99
  type: bool
107
  type: bool
100
  defaultValue: DEFAULT_WEBKIT_TABSTOLINKS_ENABLED
108
  defaultValue: DEFAULT_WEBKIT_TABSTOLINKS_ENABLED
109
  webcoreBinding: none
101
110
102
DNSPrefetchingEnabled:
111
DNSPrefetchingEnabled:
103
  type: bool
112
  type: bool
Lines 110-115 DOMTimersThrottlingEnabled: Source/WebKit/Shared/WebPreferences.yaml_sec7
110
WebArchiveDebugModeEnabled:
119
WebArchiveDebugModeEnabled:
111
  type: bool
120
  type: bool
112
  defaultValue: false
121
  defaultValue: false
122
  condition: ENABLE(WEB_ARCHIVE)
113
123
114
LocalFileContentSniffingEnabled:
124
LocalFileContentSniffingEnabled:
115
  type: bool
125
  type: bool
Lines 146-155 ShouldPrintBackgrounds: Source/WebKit/Shared/WebPreferences.yaml_sec8
146
LinkPreconnect:
156
LinkPreconnect:
147
  type: bool
157
  type: bool
148
  defaultValue: DEFAULT_LINK_PRECONNECT_ENABLED
158
  defaultValue: DEFAULT_LINK_PRECONNECT_ENABLED
159
  webcoreName: linkPreconnectEnabled
149
160
150
FullScreenEnabled:
161
FullScreenEnabled:
151
  type: bool
162
  type: bool
152
  defaultValue: false
163
  defaultValue: false
164
  condition: ENABLE(FULLSCREEN_API)
153
165
154
AsynchronousSpellCheckingEnabled:
166
AsynchronousSpellCheckingEnabled:
155
  type: bool
167
  type: bool
Lines 171-198 AVFoundationEnabled: Source/WebKit/Shared/WebPreferences.yaml_sec9
171
  type: bool
183
  type: bool
172
  defaultValue: true
184
  defaultValue: true
173
  getter: isAVFoundationEnabled
185
  getter: isAVFoundationEnabled
186
  webcoreBinding: DeprecatedGlobalSettings
187
  condition: USE(AVFOUNDATION)
174
188
175
AVFoundationNSURLSessionEnabled:
189
AVFoundationNSURLSessionEnabled:
176
  type: bool
190
  type: bool
177
  defaultValue: true
191
  defaultValue: true
178
  getter: isAVFoundationNSURLSessionEnabled
192
  getter: isAVFoundationNSURLSessionEnabled
193
  webcoreBinding: DeprecatedGlobalSettings
194
  condition: USE(AVFOUNDATION)
179
195
180
GStreamerEnabled:
196
GStreamerEnabled:
181
  type: bool
197
  type: bool
182
  defaultValue: true
198
  defaultValue: true
183
  getter: isGStreamerEnabled
199
  getter: isGStreamerEnabled
200
  webcoreBinding: DeprecatedGlobalSettings
201
  condition: USE(GSTREAMER)
184
202
185
RequiresUserGestureForMediaPlayback:
203
RequiresUserGestureForMediaPlayback:
186
  type: bool
204
  type: bool
187
  defaultValue: false
205
  defaultValue: false
206
  webcoreBinding: custom
188
207
189
RequiresUserGestureForVideoPlayback:
208
RequiresUserGestureForVideoPlayback:
190
  type: bool
209
  type: bool
191
  defaultValue: false
210
  defaultValue: false
211
  webcoreBinding: custom
192
212
193
RequiresUserGestureForAudioPlayback:
213
RequiresUserGestureForAudioPlayback:
194
  type: bool
214
  type: bool
195
  defaultValue: DEFAULT_REQUIRES_USER_GESTURE_FOR_AUDIO_PLAYBACK
215
  defaultValue: DEFAULT_REQUIRES_USER_GESTURE_FOR_AUDIO_PLAYBACK
216
  webcoreBinding: custom
196
217
197
RequiresUserGestureToLoadVideo:
218
RequiresUserGestureToLoadVideo:
198
  type: bool
219
  type: bool
Lines 233-238 AllowsPictureInPictureMediaPlayback: Source/WebKit/Shared/WebPreferences.yaml_sec10
233
AllowsAirPlayForMediaPlayback:
254
AllowsAirPlayForMediaPlayback:
234
  type: bool
255
  type: bool
235
  defaultValue: true
256
  defaultValue: true
257
  condition: ENABLE(WIRELESS_PLAYBACK_TARGET)
236
258
237
MediaControlsScaleWithPageZoom:
259
MediaControlsScaleWithPageZoom:
238
  type: bool
260
  type: bool
Lines 241-246 MediaControlsScaleWithPageZoom: Source/WebKit/Shared/WebPreferences.yaml_sec11
241
InspectorStartsAttached:
263
InspectorStartsAttached:
242
  type: bool
264
  type: bool
243
  defaultValue: true
265
  defaultValue: true
266
  webcoreBinding: none
244
267
245
ShowsToolTipOverTruncatedText:
268
ShowsToolTipOverTruncatedText:
246
  type: bool
269
  type: bool
Lines 249-262 ShowsToolTipOverTruncatedText: Source/WebKit/Shared/WebPreferences.yaml_sec12
249
MockScrollbarsEnabled:
272
MockScrollbarsEnabled:
250
  type: bool
273
  type: bool
251
  defaultValue: false
274
  defaultValue: false
275
  webcoreBinding: DeprecatedGlobalSettings
252
276
253
WebAudioEnabled:
277
WebAudioEnabled:
254
  type: bool
278
  type: bool
255
  defaultValue: true
279
  defaultValue: true
280
  condition: ENABLE(WEB_AUDIO)
256
281
257
AttachmentElementEnabled:
282
AttachmentElementEnabled:
258
  type: bool
283
  type: bool
259
  defaultValue: false
284
  defaultValue: false
285
  webcoreBinding: RuntimeEnabledFeatures
286
  condition: ENABLE(ATTACHMENT_ELEMENT)
260
287
261
SuppressesIncrementalRendering:
288
SuppressesIncrementalRendering:
262
  type: bool
289
  type: bool
Lines 273-290 CaretBrowsingEnabled: Source/WebKit/Shared/WebPreferences.yaml_sec13
273
ShouldDisplaySubtitles:
300
ShouldDisplaySubtitles:
274
  type: bool
301
  type: bool
275
  defaultValue: false
302
  defaultValue: false
303
  condition: ENABLE(VIDEO_TRACK)
276
304
277
ShouldDisplayCaptions:
305
ShouldDisplayCaptions:
278
  type: bool
306
  type: bool
279
  defaultValue: false
307
  defaultValue: false
308
  condition: ENABLE(VIDEO_TRACK)
280
309
281
ShouldDisplayTextDescriptions:
310
ShouldDisplayTextDescriptions:
282
  type: bool
311
  type: bool
283
  defaultValue: false
312
  defaultValue: false
313
  condition: ENABLE(VIDEO_TRACK)
284
314
285
NotificationsEnabled:
315
NotificationsEnabled:
286
  type: bool
316
  type: bool
287
  defaultValue: true
317
  defaultValue: true
318
  condition: ENABLE(NOTIFICATIONS)
288
319
289
ShouldRespectImageOrientation:
320
ShouldRespectImageOrientation:
290
  type: bool
321
  type: bool
Lines 305-330 DiagnosticLoggingEnabled: Source/WebKit/Shared/WebPreferences.yaml_sec14
305
AsynchronousPluginInitializationEnabled:
336
AsynchronousPluginInitializationEnabled:
306
  type: bool
337
  type: bool
307
  defaultValue: false
338
  defaultValue: false
339
  webcoreBinding: none
308
340
309
AsynchronousPluginInitializationEnabledForAllPlugins:
341
AsynchronousPluginInitializationEnabledForAllPlugins:
310
  type: bool
342
  type: bool
311
  defaultValue: false
343
  defaultValue: false
344
  webcoreBinding: none
312
345
313
ArtificialPluginInitializationDelayEnabled:
346
ArtificialPluginInitializationDelayEnabled:
314
  type: bool
347
  type: bool
315
  defaultValue: false
348
  defaultValue: false
349
  webcoreBinding: none
316
350
351
# FIXME: What is this?
317
TabToLinksEnabled:
352
TabToLinksEnabled:
318
  type: bool
353
  type: bool
319
  defaultValue: false
354
  defaultValue: false
355
  webcoreBinding: none
320
356
321
ScrollingPerformanceLoggingEnabled:
357
ScrollingPerformanceLoggingEnabled:
322
  type: bool
358
  type: bool
323
  defaultValue: false
359
  defaultValue: false
360
  webcoreBinding: none
324
361
325
ScrollAnimatorEnabled:
362
ScrollAnimatorEnabled:
326
  type: bool
363
  type: bool
327
  defaultValue: DEFAULT_WEBKIT_SCROLL_ANIMATOR_ENABLED
364
  defaultValue: DEFAULT_WEBKIT_SCROLL_ANIMATOR_ENABLED
365
  condition: ENABLE(SMOOTH_SCROLLING)
328
366
329
ForceUpdateScrollbarsOnMainThreadForPerformanceTesting:
367
ForceUpdateScrollbarsOnMainThreadForPerformanceTesting:
330
  type: bool
368
  type: bool
Lines 353-358 PrimaryPlugInSnapshotDetectionEnabled: Source/WebKit/Shared/WebPreferences.yaml_sec15
353
PDFPluginEnabled:
391
PDFPluginEnabled:
354
  type: bool
392
  type: bool
355
  defaultValue: DEFAULT_PDFPLUGIN_ENABLED
393
  defaultValue: DEFAULT_PDFPLUGIN_ENABLED
394
  webcoreBinding: none
395
  condition: PLATFORM(COCOA)
356
396
357
UsesEncodingDetector:
397
UsesEncodingDetector:
358
  type: bool
398
  type: bool
Lines 361-366 UsesEncodingDetector: Source/WebKit/Shared/WebPreferences.yaml_sec16
361
TextAutosizingEnabled:
401
TextAutosizingEnabled:
362
  type: bool
402
  type: bool
363
  defaultValue: WebCore::Settings::defaultTextAutosizingEnabled()
403
  defaultValue: WebCore::Settings::defaultTextAutosizingEnabled()
404
  condition: ENABLE(TEXT_AUTOSIZING)
364
405
365
AggressiveTileRetentionEnabled:
406
AggressiveTileRetentionEnabled:
366
  type: bool
407
  type: bool
Lines 374-383 QTKitEnabled: Source/WebKit/Shared/WebPreferences.yaml_sec17
374
  type: bool
415
  type: bool
375
  defaultValue: WebCore::DeprecatedGlobalSettings::isQTKitEnabled()
416
  defaultValue: WebCore::DeprecatedGlobalSettings::isQTKitEnabled()
376
  getter: isQTKitEnabled
417
  getter: isQTKitEnabled
418
  webcoreBinding: DeprecatedGlobalSettings
419
  condition: PLATFORM(COCOA)
377
420
378
PageVisibilityBasedProcessSuppressionEnabled:
421
PageVisibilityBasedProcessSuppressionEnabled:
379
  type: bool
422
  type: bool
380
  defaultValue: true
423
  defaultValue: true
424
  webcoreBinding: none
381
425
382
SmartInsertDeleteEnabled:
426
SmartInsertDeleteEnabled:
383
  type: bool
427
  type: bool
Lines 390-395 SelectTrailingWhitespaceEnabled: Source/WebKit/Shared/WebPreferences.yaml_sec18
390
ShowsURLsInToolTipsEnabled:
434
ShowsURLsInToolTipsEnabled:
391
  type: bool
435
  type: bool
392
  defaultValue: false
436
  defaultValue: false
437
  webcoreName: showsURLsInToolTips
393
438
394
AcceleratedCompositingForOverflowScrollEnabled:
439
AcceleratedCompositingForOverflowScrollEnabled:
395
  type: bool
440
  type: bool
Lines 410-419 HiddenPageCSSAnimationSuspensionEnabled: Source/WebKit/Shared/WebPreferences.yaml_sec19
410
LowPowerVideoAudioBufferSizeEnabled:
455
LowPowerVideoAudioBufferSizeEnabled:
411
  type: bool
456
  type: bool
412
  defaultValue: false
457
  defaultValue: false
458
  webcoreBinding: DeprecatedGlobalSettings
413
459
414
ThreadedScrollingEnabled:
460
ThreadedScrollingEnabled:
415
  type: bool
461
  type: bool
416
  defaultValue: true
462
  defaultValue: true
463
  webcoreBinding: none
417
464
418
SimpleLineLayoutEnabled:
465
SimpleLineLayoutEnabled:
419
  type: bool
466
  type: bool
Lines 430-443 UseGiantTiles: Source/WebKit/Shared/WebPreferences.yaml_sec20
430
MediaDevicesEnabled:
477
MediaDevicesEnabled:
431
  type: bool
478
  type: bool
432
  defaultValue: false
479
  defaultValue: false
480
  webcoreBinding: RuntimeEnabledFeatures
481
  condition: ENABLE(MEDIA_STREAM)
433
482
434
MediaStreamEnabled:
483
MediaStreamEnabled:
435
  type: bool
484
  type: bool
436
  defaultValue: true
485
  defaultValue: true
486
  webcoreBinding: RuntimeEnabledFeatures
487
  condition: ENABLE(MEDIA_STREAM)
437
488
438
PeerConnectionEnabled:
489
PeerConnectionEnabled:
439
  type: bool
490
  type: bool
440
  defaultValue: WebCore::LibWebRTCProvider::webRTCAvailable()
491
  defaultValue: WebCore::LibWebRTCProvider::webRTCAvailable()
492
  webcoreBinding: RuntimeEnabledFeatures
493
  condition: ENABLE(WEB_RTC)
441
494
442
UseLegacyTextAlignPositionedElementBehavior:
495
UseLegacyTextAlignPositionedElementBehavior:
443
  type: bool
496
  type: bool
Lines 450-459 SpatialNavigationEnabled: Source/WebKit/Shared/WebPreferences.yaml_sec21
450
MediaSourceEnabled:
503
MediaSourceEnabled:
451
  type: bool
504
  type: bool
452
  defaultValue: true
505
  defaultValue: true
506
  condition: ENABLE(MEDIA_SOURCE)
453
507
454
ViewGestureDebuggingEnabled:
508
ViewGestureDebuggingEnabled:
455
  type: bool
509
  type: bool
456
  defaultValue: false
510
  defaultValue: false
511
  webcoreBinding: none
457
512
458
ShouldConvertPositionStyleOnCopy:
513
ShouldConvertPositionStyleOnCopy:
459
  type: bool
514
  type: bool
Lines 482-487 PasswordEchoEnabled: Source/WebKit/Shared/WebPreferences.yaml_sec22
482
ImageControlsEnabled:
537
ImageControlsEnabled:
483
  type: bool
538
  type: bool
484
  defaultValue: false
539
  defaultValue: false
540
  condition: ENABLE(SERVICE_CONTROLS)
485
541
486
EnableInheritURIQueryComponent:
542
EnableInheritURIQueryComponent:
487
  type: bool
543
  type: bool
Lines 490-495 EnableInheritURIQueryComponent: Source/WebKit/Shared/WebPreferences.yaml_sec23
490
ServiceControlsEnabled:
546
ServiceControlsEnabled:
491
  type: bool
547
  type: bool
492
  defaultValue: false
548
  defaultValue: false
549
  condition: ENABLE(SERVICE_CONTROLS)
493
550
494
DeferredCSSParserEnabled:
551
DeferredCSSParserEnabled:
495
  type: bool
552
  type: bool
Lines 498-537 DeferredCSSParserEnabled: Source/WebKit/Shared/WebPreferences.yaml_sec24
498
HTTPEquivEnabled:
555
HTTPEquivEnabled:
499
  type: bool
556
  type: bool
500
  defaultValue: true
557
  defaultValue: true
558
  webcoreName: httpEquivEnabled
501
559
502
MockCaptureDevicesEnabled:
560
MockCaptureDevicesEnabled:
503
  type: bool
561
  type: bool
504
  defaultValue: false
562
  defaultValue: false
563
  webcoreBinding: DeprecatedGlobalSettings
564
  condition: ENABLE(MEDIA_STREAM)
505
565
506
MockCaptureDevicesPromptEnabled:
566
MockCaptureDevicesPromptEnabled:
507
  type: bool
567
  type: bool
508
  defaultValue: true
568
  defaultValue: true
569
  webcoreBinding: none
509
570
510
MediaCaptureRequiresSecureConnection:
571
MediaCaptureRequiresSecureConnection:
511
  type: bool
572
  type: bool
512
  defaultValue: true
573
  defaultValue: true
574
  webcoreBinding: DeprecatedGlobalSettings
575
  condition: ENABLE(MEDIA_STREAM)
513
576
577
# FIXME: What is this for?
514
EnumeratingAllNetworkInterfacesEnabled:
578
EnumeratingAllNetworkInterfacesEnabled:
515
  type: bool
579
  type: bool
516
  defaultValue: false
580
  defaultValue: false
581
  webcoreBinding: none
517
582
583
# FIXME: What is this for?
518
ICECandidateFilteringEnabled:
584
ICECandidateFilteringEnabled:
519
  type: bool
585
  type: bool
520
  defaultValue: true
586
  defaultValue: true
587
  webcoreBinding: none
521
588
522
ShadowDOMEnabled:
589
ShadowDOMEnabled:
523
  type: bool
590
  type: bool
524
  defaultValue: true
591
  defaultValue: true
525
  humanReadableName: "Shadow DOM"
592
  humanReadableName: "Shadow DOM"
526
  humanReadableDescription: "HTML Shadow DOM prototype"
593
  humanReadableDescription: "HTML Shadow DOM prototype"
594
  webcoreBinding: RuntimeEnabledFeatures
527
595
528
FetchAPIEnabled:
596
FetchAPIEnabled:
529
  type: bool
597
  type: bool
530
  defaultValue: true
598
  defaultValue: true
599
  webcoreBinding: RuntimeEnabledFeatures
531
600
532
DownloadAttributeEnabled:
601
DownloadAttributeEnabled:
533
  type: bool
602
  type: bool
534
  defaultValue: true
603
  defaultValue: true
604
  webcoreBinding: RuntimeEnabledFeatures
605
  condition: ENABLE(DOWNLOAD_ATTRIBUTE)
535
606
536
SelectionPaintingWithoutSelectionGapsEnabled:
607
SelectionPaintingWithoutSelectionGapsEnabled:
537
  type: bool
608
  type: bool
Lines 540-549 SelectionPaintingWithoutSelectionGapsEna Source/WebKit/Shared/WebPreferences.yaml_sec25
540
ApplePayEnabled:
611
ApplePayEnabled:
541
  type: bool
612
  type: bool
542
  defaultValue: false
613
  defaultValue: false
614
  condition: ENABLE(APPLE_PAY)
543
615
544
ApplePayCapabilityDisclosureAllowed:
616
ApplePayCapabilityDisclosureAllowed:
545
  type: bool
617
  type: bool
546
  defaultValue: true
618
  defaultValue: true
619
  condition: ENABLE(APPLE_PAY)
547
620
548
VisualViewportEnabled:
621
VisualViewportEnabled:
549
  type: bool
622
  type: bool
Lines 564-589 AnimatedImageAsyncDecodingEnabled: Source/WebKit/Shared/WebPreferences.yaml_sec26
564
CustomElementsEnabled:
637
CustomElementsEnabled:
565
  type: bool
638
  type: bool
566
  defaultValue: true
639
  defaultValue: true
640
  webcoreBinding: RuntimeEnabledFeatures
567
641
568
EncryptedMediaAPIEnabled:
642
EncryptedMediaAPIEnabled:
569
  type: bool
643
  type: bool
570
  defaultValue: false
644
  defaultValue: false
645
  webcoreBinding: RuntimeEnabledFeatures
646
  condition: ENABLE(ENCRYPTED_MEDIA)
571
647
572
MediaPreloadingEnabled:
648
MediaPreloadingEnabled:
573
  type: bool
649
  type: bool
574
  defaultValue: false
650
  defaultValue: false
651
  webcoreBinding: RuntimeEnabledFeatures
575
652
576
IntersectionObserverEnabled:
653
IntersectionObserverEnabled:
577
  type: bool
654
  type: bool
578
  defaultValue: false
655
  defaultValue: false
579
  humanReadableName: "Intersection Observer"
656
  humanReadableName: "Intersection Observer"
580
  humanReadableDescription: "Enable Intersection Observer support"
657
  humanReadableDescription: "Enable Intersection Observer support"
658
  webcoreBinding: RuntimeEnabledFeatures
659
  condition: ENABLE(INTERSECTION_OBSERVER)
581
660
582
InteractiveFormValidationEnabled:
661
InteractiveFormValidationEnabled:
583
  type: bool
662
  type: bool
584
  defaultValue: true
663
  defaultValue: true
585
  humanReadableName: "HTML Interactive Form Validation"
664
  humanReadableName: "HTML Interactive Form Validation"
586
  humanReadableDescription: "HTML interactive form validation"
665
  humanReadableDescription: "HTML interactive form validation"
666
  webcoreBinding: RuntimeEnabledFeatures
587
667
588
ShouldSuppressTextInputFromEditingDuringProvisionalNavigation:
668
ShouldSuppressTextInputFromEditingDuringProvisionalNavigation:
589
  type: bool
669
  type: bool
Lines 594-647 CSSGridLayoutEnabled: Source/WebKit/Shared/WebPreferences.yaml_sec27
594
  defaultValue: true
674
  defaultValue: true
595
  humanReadableName: "CSS Grid"
675
  humanReadableName: "CSS Grid"
596
  humanReadableDescription: "CSS Grid Layout Module support"
676
  humanReadableDescription: "CSS Grid Layout Module support"
677
  binding: RuntimeEnabledFeatures
678
  webcoreBinding: RuntimeEnabledFeatures
597
679
598
GamepadsEnabled:
680
GamepadsEnabled:
599
  type: bool
681
  type: bool
600
  defaultValue: true
682
  defaultValue: true
601
  humanReadableName: "Gamepads"
683
  humanReadableName: "Gamepads"
602
  humanReadableDescription: "Web Gamepad API support"
684
  humanReadableDescription: "Web Gamepad API support"
685
  webcoreBinding: RuntimeEnabledFeatures
686
  condition: ENABLE(GAMEPAD)
603
687
604
InputEventsEnabled:
688
InputEventsEnabled:
605
  type: bool
689
  type: bool
606
  defaultValue: true
690
  defaultValue: true
607
  humanReadableName: "Input Events"
691
  humanReadableName: "Input Events"
608
  humanReadableDescription: "Enable InputEvents support"
692
  humanReadableDescription: "Enable InputEvents support"
693
  webcoreBinding: RuntimeEnabledFeatures
609
694
610
CredentialManagementEnabled:
695
CredentialManagementEnabled:
611
  type: bool
696
  type: bool
612
  defaultValue: false
697
  defaultValue: false
613
  humanReadableName: "Credential Management"
698
  humanReadableName: "Credential Management"
614
  humanReadableDescription: "Enable Credential Management support"
699
  humanReadableDescription: "Enable Credential Management support"
700
  webcoreBinding: RuntimeEnabledFeatures
615
701
616
ModernMediaControlsEnabled:
702
ModernMediaControlsEnabled:
617
  type: bool
703
  type: bool
618
  defaultValue: DEFAULT_MODERN_MEDIA_CONTROLS_ENABLED
704
  defaultValue: DEFAULT_MODERN_MEDIA_CONTROLS_ENABLED
619
  humanReadableName: "Modern Media Controls"
705
  humanReadableName: "Modern Media Controls"
620
  humanReadableDescription: "Use modern media controls look"
706
  humanReadableDescription: "Use modern media controls look"
707
  webcoreBinding: RuntimeEnabledFeatures
621
708
622
ResourceTimingEnabled:
709
ResourceTimingEnabled:
623
  type: bool
710
  type: bool
624
  defaultValue: DEFAULT_RESOURCE_TIMING_ENABLED
711
  defaultValue: DEFAULT_RESOURCE_TIMING_ENABLED
625
  humanReadableName: "Resource Timing"
712
  humanReadableName: "Resource Timing"
626
  humanReadableDescription: "Enable ResourceTiming API"
713
  humanReadableDescription: "Enable ResourceTiming API"
714
  webcoreBinding: RuntimeEnabledFeatures
627
715
628
UserTimingEnabled:
716
UserTimingEnabled:
629
  type: bool
717
  type: bool
630
  defaultValue: true
718
  defaultValue: true
631
  humanReadableName: "User Timing"
719
  humanReadableName: "User Timing"
632
  humanReadableDescription: "Enable UserTiming API"
720
  humanReadableDescription: "Enable UserTiming API"
721
  webcoreBinding: RuntimeEnabledFeatures
633
722
634
BeaconAPIEnabled:
723
BeaconAPIEnabled:
635
  type: bool
724
  type: bool
636
  defaultValue: true
725
  defaultValue: true
637
  humanReadableName: "Beacon API"
726
  humanReadableName: "Beacon API"
638
  humanReadableDescription: "Beacon API"
727
  humanReadableDescription: "Beacon API"
728
  condition: ENABLE(BEACON_API)
639
729
640
LegacyEncryptedMediaAPIEnabled:
730
LegacyEncryptedMediaAPIEnabled:
641
  type: bool
731
  type: bool
642
  defaultValue: DEFAULT_LEGACY_ENCRYPTED_MEDIA_API_ENABLED
732
  defaultValue: DEFAULT_LEGACY_ENCRYPTED_MEDIA_API_ENABLED
643
  humanReadableName: "Enable Legacy EME API"
733
  humanReadableName: "Enable Legacy EME API"
644
  humanReadableDescription: "Enable legacy EME API"
734
  humanReadableDescription: "Enable legacy EME API"
735
  webcoreBinding: RuntimeEnabledFeatures
736
  condition: ENABLE(LEGACY_ENCRYPTED_MEDIA)
645
737
646
AllowMediaContentTypesRequiringHardwareSupportAsFallback:
738
AllowMediaContentTypesRequiringHardwareSupportAsFallback:
647
  type: bool
739
  type: bool
Lines 654-683 InspectorAdditionsEnabled: Source/WebKit/Shared/WebPreferences.yaml_sec28
654
  defaultValue: false
746
  defaultValue: false
655
  humanReadableName: "Web Inspector Additions"
747
  humanReadableName: "Web Inspector Additions"
656
  humanReadableDescription: "Enable additional page APIs used by the Web Inspector frontend page"
748
  humanReadableDescription: "Enable additional page APIs used by the Web Inspector frontend page"
749
  webcoreBinding: RuntimeEnabledFeatures
657
750
658
DirectoryUploadEnabled:
751
DirectoryUploadEnabled:
659
  type: bool
752
  type: bool
660
  defaultValue: DEFAULT_DIRECTORY_UPLOAD_ENABLED
753
  defaultValue: DEFAULT_DIRECTORY_UPLOAD_ENABLED
661
  humanReadableName: "Directory Upload"
754
  humanReadableName: "Directory Upload"
662
  humanReadableDescription: "input.webkitdirectory / dataTransferItem.webkitGetAsEntry()"
755
  humanReadableDescription: "input.webkitdirectory / dataTransferItem.webkitGetAsEntry()"
756
  webcoreBinding: RuntimeEnabledFeatures
663
757
664
DataTransferItemsEnabled:
758
DataTransferItemsEnabled:
665
  type: bool
759
  type: bool
666
  defaultValue: DEFAULT_DATA_TRANSFER_ITEMS_ENABLED
760
  defaultValue: DEFAULT_DATA_TRANSFER_ITEMS_ENABLED
667
  humanReadableName: "Data Transfer Items"
761
  humanReadableName: "Data Transfer Items"
668
  humanReadableDescription: "Enables DataTransferItem in the clipboard API"
762
  humanReadableDescription: "Enables DataTransferItem in the clipboard API"
763
  webcoreBinding: RuntimeEnabledFeatures
669
764
670
CustomPasteboardDataEnabled:
765
CustomPasteboardDataEnabled:
671
  type: bool
766
  type: bool
672
  defaultValue: WebCore::DeprecatedGlobalSettings::defaultCustomPasteboardDataEnabled()
767
  defaultValue: WebCore::DeprecatedGlobalSettings::defaultCustomPasteboardDataEnabled()
673
  humanReadableName: "Custom pateboard data"
768
  humanReadableName: "Custom pateboard data"
674
  humanReadableDescription: "Enable custom clipboard types and better security model for clipboard API."
769
  humanReadableDescription: "Enable custom clipboard types and better security model for clipboard API."
770
  webcoreBinding: DeprecatedGlobalSettings
675
771
676
WebVREnabled:
772
WebVREnabled:
677
  type: bool
773
  type: bool
678
  defaultValue: false
774
  defaultValue: false
679
  humanReadableName: "WebVR"
775
  humanReadableName: "WebVR"
680
  humanReadableDescription: "WebVR Module support"
776
  humanReadableDescription: "WebVR Module support"
777
  webcoreBinding: RuntimeEnabledFeatures
681
778
682
ViewportFitEnabled:
779
ViewportFitEnabled:
683
  type: bool
780
  type: bool
Lines 688-693 ViewportFitEnabled: Source/WebKit/Shared/WebPreferences.yaml_sec29
688
IncrementalRenderingSuppressionTimeout:
785
IncrementalRenderingSuppressionTimeout:
689
  type: double
786
  type: double
690
  defaultValue: 5
787
  defaultValue: 5
788
  webcoreName: incrementalRenderingSuppressionTimeoutInSeconds
691
789
692
MinimumFontSize:
790
MinimumFontSize:
693
  type: double
791
  type: double
Lines 700-705 MinimumLogicalFontSize: Source/WebKit/Shared/WebPreferences.yaml_sec30
700
MinimumZoomFontSize:
798
MinimumZoomFontSize:
701
  type: double
799
  type: double
702
  defaultValue: WebCore::Settings::defaultMinimumZoomFontSize()
800
  defaultValue: WebCore::Settings::defaultMinimumZoomFontSize()
801
  condition: ENABLE(TEXT_AUTOSIZING)
703
802
704
DefaultFontSize:
803
DefaultFontSize:
705
  type: double
804
  type: double
Lines 712-717 DefaultFixedFontSize: Source/WebKit/Shared/WebPreferences.yaml_sec31
712
LayoutInterval:
811
LayoutInterval:
713
  type: double
812
  type: double
714
  defaultValue: -1
813
  defaultValue: -1
814
  webcoreBinding: custom
715
815
716
MaxParseDuration:
816
MaxParseDuration:
717
  type: double
817
  type: double
Lines 720-729 MaxParseDuration: Source/WebKit/Shared/WebPreferences.yaml_sec32
720
PasswordEchoDuration:
820
PasswordEchoDuration:
721
  type: double
821
  type: double
722
  defaultValue: 2
822
  defaultValue: 2
823
  webcoreName: passwordEchoDurationInSeconds
723
824
825
# FIXME: 
724
FontSmoothingLevel:
826
FontSmoothingLevel:
725
  type: uint32_t
827
  type: uint32_t
726
  defaultValue: FontSmoothingLevelMedium
828
  defaultValue: FontSmoothingLevelMedium
829
  webcoreBinding: none
727
830
728
LayoutFallbackWidth:
831
LayoutFallbackWidth:
729
  type: uint32_t
832
  type: uint32_t
Lines 740-781 DeviceHeight: Source/WebKit/Shared/WebPreferences.yaml_sec33
740
EditableLinkBehavior:
843
EditableLinkBehavior:
741
  type: uint32_t
844
  type: uint32_t
742
  defaultValue: WebCore::EditableLinkNeverLive
845
  defaultValue: WebCore::EditableLinkNeverLive
846
  webcoreBinding: custom
743
847
744
InspectorAttachedHeight:
848
InspectorAttachedHeight:
745
  type: uint32_t
849
  type: uint32_t
746
  defaultValue: 300
850
  defaultValue: 300
851
  webcoreBinding: none
747
852
748
InspectorAttachedWidth:
853
InspectorAttachedWidth:
749
  type: uint32_t
854
  type: uint32_t
750
  defaultValue: 750
855
  defaultValue: 750
856
  webcoreBinding: none
751
857
752
InspectorAttachmentSide:
858
InspectorAttachmentSide:
753
  type: uint32_t
859
  type: uint32_t
754
  defaultValue: 0
860
  defaultValue: 0
861
  webcoreBinding: none
755
862
756
StorageBlockingPolicy:
863
StorageBlockingPolicy:
757
  type: uint32_t
864
  type: uint32_t
758
  defaultValue: WebCore::SecurityOrigin::BlockThirdPartyStorage
865
  defaultValue: WebCore::SecurityOrigin::BlockThirdPartyStorage
866
  webcoreBinding: custom
759
867
760
JavaScriptRuntimeFlags:
868
JavaScriptRuntimeFlags:
761
  type: uint32_t
869
  type: uint32_t
762
  defaultValue: 0
870
  defaultValue: 0
871
  webcoreBinding: custom
763
872
764
DataDetectorTypes:
873
DataDetectorTypes:
765
  type: uint32_t
874
  type: uint32_t
766
  defaultValue: 0
875
  defaultValue: 0
876
  webcoreBinding: custom
877
  condition: ENABLE(DATA_DETECTION)
767
878
768
UserInterfaceDirectionPolicy:
879
UserInterfaceDirectionPolicy:
769
  type: uint32_t
880
  type: uint32_t
770
  defaultValue: 0
881
  defaultValue: 0
882
  webcoreBinding: custom
771
883
772
SystemLayoutDirection:
884
SystemLayoutDirection:
773
  type: uint32_t
885
  type: uint32_t
774
  defaultValue: 0
886
  defaultValue: 0
887
  webcoreBinding: custom
775
888
776
FrameFlattening:
889
FrameFlattening:
777
  type: uint32_t
890
  type: uint32_t
778
  defaultValue: DEFAULT_FRAME_FLATTENING
891
  defaultValue: DEFAULT_FRAME_FLATTENING
892
  webcoreBinding: custom
779
893
780
StandardFontFamily:
894
StandardFontFamily:
781
  type: String
895
  type: String
Lines 820-837 MediaContentTypesRequiringHardwareSuppor Source/WebKit/Shared/WebPreferences.yaml_sec34
820
InspectorWindowFrame:
934
InspectorWindowFrame:
821
  type: String
935
  type: String
822
  defaultValue: '""'
936
  defaultValue: '""'
823
  webkitOnly: true
937
  webcoreBinding: none
824
938
825
InactiveMediaCaptureSteamRepromptIntervalInMinutes:
939
InactiveMediaCaptureSteamRepromptIntervalInMinutes:
826
    type: double
940
  type: double
827
    defaultValue: DEFAULT_INTERACTIVE_MNEDIA_CAPTURE_STREAM_REPROMPT_INTERVAL_IN_MINUTES
941
  defaultValue: DEFAULT_INTERACTIVE_MNEDIA_CAPTURE_STREAM_REPROMPT_INTERVAL_IN_MINUTES
942
  webcoreBinding: none
828
943
829
LongRunningMediaCaptureStreamRepromptIntervalInHours:
944
LongRunningMediaCaptureStreamRepromptIntervalInHours:
830
    type: double
945
  type: double
831
    defaultValue: 24
946
  defaultValue: 24
947
  webcoreBinding: none
832
948
833
# Debug Preferences
834
949
950
# Debug Preferences
835
951
836
AcceleratedDrawingEnabled:
952
AcceleratedDrawingEnabled:
837
  type: bool
953
  type: bool
Lines 852-867 CompositingBordersVisible: Source/WebKit/Shared/WebPreferences.yaml_sec35
852
  type: bool
968
  type: bool
853
  defaultValue: false
969
  defaultValue: false
854
  category: debug
970
  category: debug
971
  webcoreName: showDebugBorders
855
972
856
CompositingRepaintCountersVisible:
973
CompositingRepaintCountersVisible:
857
  type: bool
974
  type: bool
858
  defaultValue: false
975
  defaultValue: false
859
  category: debug
976
  category: debug
977
  webcoreName: showRepaintCounter
860
978
861
TiledScrollingIndicatorVisible:
979
TiledScrollingIndicatorVisible:
862
  type: bool
980
  type: bool
863
  defaultValue: false
981
  defaultValue: false
864
  category: debug
982
  category: debug
983
  webcoreName: showTiledScrollingIndicator
865
984
866
SimpleLineLayoutDebugBordersEnabled:
985
SimpleLineLayoutDebugBordersEnabled:
867
  type: bool
986
  type: bool
Lines 882-897 IgnoreViewportScalingConstraints: Source/WebKit/Shared/WebPreferences.yaml_sec36
882
  type: bool
1001
  type: bool
883
  defaultValue: true
1002
  defaultValue: true
884
  category: debug
1003
  category: debug
1004
  webcoreBinding: none
1005
  condition: PLATFORM(IOS)
885
1006
886
ForceAlwaysUserScalable:
1007
ForceAlwaysUserScalable:
887
  type: bool
1008
  type: bool
888
  defaultValue: false
1009
  defaultValue: false
889
  category: debug
1010
  category: debug
1011
  webcoreBinding: none
1012
  condition: PLATFORM(IOS)
890
1013
891
ResourceUsageOverlayVisible:
1014
ResourceUsageOverlayVisible:
892
  type: bool
1015
  type: bool
893
  defaultValue: false
1016
  defaultValue: false
894
  category: debug
1017
  category: debug
1018
  condition: ENABLE(RESOURCE_USAGE)
895
1019
896
VisibleDebugOverlayRegions:
1020
VisibleDebugOverlayRegions:
897
  type: uint32_t
1021
  type: uint32_t
Lines 921-926 CacheAPIEnabled: Source/WebKit/Shared/WebPreferences.yaml_sec37
921
  humanReadableName: "Cache API"
1045
  humanReadableName: "Cache API"
922
  humanReadableDescription: "Enable Cache API"
1046
  humanReadableDescription: "Enable Cache API"
923
  category: experimental
1047
  category: experimental
1048
  webcoreBinding: RuntimeEnabledFeatures
924
1049
925
ConstantPropertiesEnabled:
1050
ConstantPropertiesEnabled:
926
  type: bool
1051
  type: bool
Lines 935-940 DisplayContentsEnabled: Source/WebKit/Shared/WebPreferences.yaml_sec38
935
  humanReadableName: "CSS display: contents"
1060
  humanReadableName: "CSS display: contents"
936
  humanReadableDescription: "Enable CSS display: contents support"
1061
  humanReadableDescription: "Enable CSS display: contents support"
937
  category: experimental
1062
  category: experimental
1063
  webcoreBinding: RuntimeEnabledFeatures
938
1064
939
SpringTimingFunctionEnabled:
1065
SpringTimingFunctionEnabled:
940
  type: bool
1066
  type: bool
Lines 949-954 LinkPreloadEnabled: Source/WebKit/Shared/WebPreferences.yaml_sec39
949
  humanReadableName: "Link Preload"
1075
  humanReadableName: "Link Preload"
950
  humanReadableDescription: "Link preload support"
1076
  humanReadableDescription: "Link preload support"
951
  category: experimental
1077
  category: experimental
1078
  webcoreBinding: RuntimeEnabledFeatures
952
1079
953
PaymentRequestEnabled:
1080
PaymentRequestEnabled:
954
  type: bool
1081
  type: bool
Lines 956-961 PaymentRequestEnabled: Source/WebKit/Shared/WebPreferences.yaml_sec40
956
  humanReadableName: "Payment Request"
1083
  humanReadableName: "Payment Request"
957
  humanReadableDescription: "W3C Payment Request API"
1084
  humanReadableDescription: "W3C Payment Request API"
958
  category: experimental
1085
  category: experimental
1086
  condition: ENABLE(PAYMENT_REQUEST)
959
1087
960
WebRTCLegacyAPIDisabled:
1088
WebRTCLegacyAPIDisabled:
961
  type: bool
1089
  type: bool
Lines 963-968 WebRTCLegacyAPIDisabled: Source/WebKit/Shared/WebPreferences.yaml_sec41
963
  humanReadableName: "Remove Legacy WebRTC API"
1091
  humanReadableName: "Remove Legacy WebRTC API"
964
  humanReadableDescription: "Remove Legacy WebRTC API"
1092
  humanReadableDescription: "Remove Legacy WebRTC API"
965
  category: experimental
1093
  category: experimental
1094
  webcoreBinding: custom
1095
  condition: ENABLE(WEB_RTC)
966
1096
967
IsSecureContextAttributeEnabled:
1097
IsSecureContextAttributeEnabled:
968
  type: bool
1098
  type: bool
Lines 970-975 IsSecureContextAttributeEnabled: Source/WebKit/Shared/WebPreferences.yaml_sec42
970
  humanReadableName: "Secure Contexts API"
1100
  humanReadableName: "Secure Contexts API"
971
  humanReadableDescription: "Enable Secure Contexts API"
1101
  humanReadableDescription: "Enable Secure Contexts API"
972
  category: experimental
1102
  category: experimental
1103
  webcoreBinding: RuntimeEnabledFeatures
973
1104
974
ServiceWorkersEnabled:
1105
ServiceWorkersEnabled:
975
  type: bool
1106
  type: bool
Lines 977-982 ServiceWorkersEnabled: Source/WebKit/Shared/WebPreferences.yaml_sec43
977
  humanReadableName: "ServiceWorkers"
1108
  humanReadableName: "ServiceWorkers"
978
  humanReadableDescription: "Enable ServiceWorkers"
1109
  humanReadableDescription: "Enable ServiceWorkers"
979
  category: experimental
1110
  category: experimental
1111
  webcoreBinding: RuntimeEnabledFeatures
1112
  webcoreName: serviceWorkerEnabled
1113
  condition: ENABLE(SERVICE_WORKER)
980
1114
981
StorageAccessAPIEnabled:
1115
StorageAccessAPIEnabled:
982
  type: bool
1116
  type: bool
Lines 998-1003 WebAnimationsEnabled: Source/WebKit/Shared/WebPreferences.yaml_sec44
998
  humanReadableName: "Web Animations"
1132
  humanReadableName: "Web Animations"
999
  humanReadableDescription: "Web Animations prototype"
1133
  humanReadableDescription: "Web Animations prototype"
1000
  category: experimental
1134
  category: experimental
1135
  webcoreBinding: RuntimeEnabledFeatures
1001
1136
1002
WebGL2Enabled:
1137
WebGL2Enabled:
1003
  type: bool
1138
  type: bool
Lines 1005-1010 WebGL2Enabled: Source/WebKit/Shared/WebPreferences.yaml_sec45
1005
  humanReadableName: "WebGL 2.0"
1140
  humanReadableName: "WebGL 2.0"
1006
  humanReadableDescription: "WebGL 2 prototype"
1141
  humanReadableDescription: "WebGL 2 prototype"
1007
  category: experimental
1142
  category: experimental
1143
  webcoreBinding: RuntimeEnabledFeatures
1144
  condition: ENABLE(WEBGL2)
1008
1145
1009
WebGPUEnabled:
1146
WebGPUEnabled:
1010
  type: bool
1147
  type: bool
Lines 1012-1014 WebGPUEnabled: Source/WebKit/Shared/WebPreferences.yaml_sec46
1012
  humanReadableName: "WebGPU"
1149
  humanReadableName: "WebGPU"
1013
  humanReadableDescription: "WebGPU prototype"
1150
  humanReadableDescription: "WebGPU prototype"
1014
  category: experimental
1151
  category: experimental
1152
  webcoreBinding: RuntimeEnabledFeatures
1153
  condition: ENABLE(WEBGPU)
- Source/WebKit/WebKit.xcodeproj/project.pbxproj +4 lines
Lines 1354-1359 Source/WebKit/WebKit.xcodeproj/project.pbxproj_sec1
1354
		7CE4D2201A4914CA00C7F152 /* APIProcessPoolConfiguration.h in Headers */ = {isa = PBXBuildFile; fileRef = 7CE4D21E1A4914CA00C7F152 /* APIProcessPoolConfiguration.h */; };
1354
		7CE4D2201A4914CA00C7F152 /* APIProcessPoolConfiguration.h in Headers */ = {isa = PBXBuildFile; fileRef = 7CE4D21E1A4914CA00C7F152 /* APIProcessPoolConfiguration.h */; };
1355
		7CE4D2271A4916C200C7F152 /* WebProcessPoolMessageReceiver.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7CE4D2251A4916C200C7F152 /* WebProcessPoolMessageReceiver.cpp */; };
1355
		7CE4D2271A4916C200C7F152 /* WebProcessPoolMessageReceiver.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7CE4D2251A4916C200C7F152 /* WebProcessPoolMessageReceiver.cpp */; };
1356
		7CE4D2281A4916C200C7F152 /* WebProcessPoolMessages.h in Headers */ = {isa = PBXBuildFile; fileRef = 7CE4D2261A4916C200C7F152 /* WebProcessPoolMessages.h */; };
1356
		7CE4D2281A4916C200C7F152 /* WebProcessPoolMessages.h in Headers */ = {isa = PBXBuildFile; fileRef = 7CE4D2261A4916C200C7F152 /* WebProcessPoolMessages.h */; };
1357
		7CE9CE101FA0767A000177DE /* WebPageUpdatePreferences.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7CE9CE0F1FA0764D000177DE /* WebPageUpdatePreferences.cpp */; };
1357
		7CEFA9621AC0999300B910FD /* APIContentRuleListStoreCocoa.mm in Sources */ = {isa = PBXBuildFile; fileRef = 7CEFA9601AC0999300B910FD /* APIContentRuleListStoreCocoa.mm */; };
1358
		7CEFA9621AC0999300B910FD /* APIContentRuleListStoreCocoa.mm in Sources */ = {isa = PBXBuildFile; fileRef = 7CEFA9601AC0999300B910FD /* APIContentRuleListStoreCocoa.mm */; };
1358
		7CF47FF617275B71008ACB91 /* WKBundlePageBanner.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7CF47FF417275B71008ACB91 /* WKBundlePageBanner.cpp */; };
1359
		7CF47FF617275B71008ACB91 /* WKBundlePageBanner.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7CF47FF417275B71008ACB91 /* WKBundlePageBanner.cpp */; };
1359
		7CF47FF717275B71008ACB91 /* WKBundlePageBanner.h in Headers */ = {isa = PBXBuildFile; fileRef = 7CF47FF517275B71008ACB91 /* WKBundlePageBanner.h */; settings = {ATTRIBUTES = (Private, ); }; };
1360
		7CF47FF717275B71008ACB91 /* WKBundlePageBanner.h in Headers */ = {isa = PBXBuildFile; fileRef = 7CF47FF517275B71008ACB91 /* WKBundlePageBanner.h */; settings = {ATTRIBUTES = (Private, ); }; };
Lines 3740-3745 Source/WebKit/WebKit.xcodeproj/project.pbxproj_sec2
3740
		7CE4D21E1A4914CA00C7F152 /* APIProcessPoolConfiguration.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = APIProcessPoolConfiguration.h; path = UIProcess/API/APIProcessPoolConfiguration.h; sourceTree = SOURCE_ROOT; };
3741
		7CE4D21E1A4914CA00C7F152 /* APIProcessPoolConfiguration.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = APIProcessPoolConfiguration.h; path = UIProcess/API/APIProcessPoolConfiguration.h; sourceTree = SOURCE_ROOT; };
3741
		7CE4D2251A4916C200C7F152 /* WebProcessPoolMessageReceiver.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WebProcessPoolMessageReceiver.cpp; sourceTree = "<group>"; };
3742
		7CE4D2251A4916C200C7F152 /* WebProcessPoolMessageReceiver.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WebProcessPoolMessageReceiver.cpp; sourceTree = "<group>"; };
3742
		7CE4D2261A4916C200C7F152 /* WebProcessPoolMessages.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebProcessPoolMessages.h; sourceTree = "<group>"; };
3743
		7CE4D2261A4916C200C7F152 /* WebProcessPoolMessages.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebProcessPoolMessages.h; sourceTree = "<group>"; };
3744
		7CE9CE0F1FA0764D000177DE /* WebPageUpdatePreferences.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = WebPageUpdatePreferences.cpp; sourceTree = "<group>"; };
3743
		7CEFA9601AC0999300B910FD /* APIContentRuleListStoreCocoa.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = APIContentRuleListStoreCocoa.mm; sourceTree = "<group>"; };
3745
		7CEFA9601AC0999300B910FD /* APIContentRuleListStoreCocoa.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = APIContentRuleListStoreCocoa.mm; sourceTree = "<group>"; };
3744
		7CF47FF417275B71008ACB91 /* WKBundlePageBanner.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WKBundlePageBanner.cpp; sourceTree = "<group>"; };
3746
		7CF47FF417275B71008ACB91 /* WKBundlePageBanner.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WKBundlePageBanner.cpp; sourceTree = "<group>"; };
3745
		7CF47FF517275B71008ACB91 /* WKBundlePageBanner.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WKBundlePageBanner.h; sourceTree = "<group>"; };
3747
		7CF47FF517275B71008ACB91 /* WKBundlePageBanner.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WKBundlePageBanner.h; sourceTree = "<group>"; };
Lines 8138-8143 Source/WebKit/WebKit.xcodeproj/project.pbxproj_sec3
8138
				C0CE729F1247E71D00BC0EC4 /* WebPageMessages.h */,
8140
				C0CE729F1247E71D00BC0EC4 /* WebPageMessages.h */,
8139
				BCBD3912125BB1A800D2C29F /* WebPageProxyMessageReceiver.cpp */,
8141
				BCBD3912125BB1A800D2C29F /* WebPageProxyMessageReceiver.cpp */,
8140
				BCBD3913125BB1A800D2C29F /* WebPageProxyMessages.h */,
8142
				BCBD3913125BB1A800D2C29F /* WebPageProxyMessages.h */,
8143
				7CE9CE0F1FA0764D000177DE /* WebPageUpdatePreferences.cpp */,
8141
				7C4694C71A4B4EA000AD5845 /* WebPasteboardProxyMessageReceiver.cpp */,
8144
				7C4694C71A4B4EA000AD5845 /* WebPasteboardProxyMessageReceiver.cpp */,
8142
				7C4694C81A4B4EA100AD5845 /* WebPasteboardProxyMessages.h */,
8145
				7C4694C81A4B4EA100AD5845 /* WebPasteboardProxyMessages.h */,
8143
				1AB1F7921D1B3613007C9BD1 /* WebPaymentCoordinatorMessageReceiver.cpp */,
8146
				1AB1F7921D1B3613007C9BD1 /* WebPaymentCoordinatorMessageReceiver.cpp */,
Lines 10666-10671 Source/WebKit/WebKit.xcodeproj/project.pbxproj_sec4
10666
				2DA944AF1884E9BA00ED86DB /* WebPageProxyIOS.mm in Sources */,
10669
				2DA944AF1884E9BA00ED86DB /* WebPageProxyIOS.mm in Sources */,
10667
				BC857E8712B71EBB00EDEB2E /* WebPageProxyMac.mm in Sources */,
10670
				BC857E8712B71EBB00EDEB2E /* WebPageProxyMac.mm in Sources */,
10668
				BCBD3914125BB1A800D2C29F /* WebPageProxyMessageReceiver.cpp in Sources */,
10671
				BCBD3914125BB1A800D2C29F /* WebPageProxyMessageReceiver.cpp in Sources */,
10672
				7CE9CE101FA0767A000177DE /* WebPageUpdatePreferences.cpp in Sources */,
10669
				512127C31908239A00DAF35C /* WebPasteboardOverrides.cpp in Sources */,
10673
				512127C31908239A00DAF35C /* WebPasteboardOverrides.cpp in Sources */,
10670
				7C4694D01A51E36800AD5845 /* WebPasteboardProxy.cpp in Sources */,
10674
				7C4694D01A51E36800AD5845 /* WebPasteboardProxy.cpp in Sources */,
10671
				7C4694CC1A4B510A00AD5845 /* WebPasteboardProxyCocoa.mm in Sources */,
10675
				7C4694CC1A4B510A00AD5845 /* WebPasteboardProxyCocoa.mm in Sources */,
- Source/WebKit/WebProcess/WebPage/WebPage.cpp -357 / +26 lines
Lines 3036-3384 void WebPage::updatePreferences(const We Source/WebKit/WebProcess/WebPage/WebPage.cpp_sec1
3036
{
3036
{
3037
    Settings& settings = m_page->settings();
3037
    Settings& settings = m_page->settings();
3038
3038
3039
    m_tabToLinks = store.getBoolValueForKey(WebPreferencesKey::tabsToLinksKey());
3040
    m_asynchronousPluginInitializationEnabled = store.getBoolValueForKey(WebPreferencesKey::asynchronousPluginInitializationEnabledKey());
3041
    m_asynchronousPluginInitializationEnabledForAllPlugins = store.getBoolValueForKey(WebPreferencesKey::asynchronousPluginInitializationEnabledForAllPluginsKey());
3042
    m_artificialPluginInitializationDelayEnabled = store.getBoolValueForKey(WebPreferencesKey::artificialPluginInitializationDelayEnabledKey());
3043
3044
    m_scrollingPerformanceLoggingEnabled = store.getBoolValueForKey(WebPreferencesKey::scrollingPerformanceLoggingEnabledKey());
3045
3046
#if PLATFORM(COCOA)
3047
    m_pdfPluginEnabled = store.getBoolValueForKey(WebPreferencesKey::pdfPluginEnabledKey());
3048
#endif
3049
3050
    // FIXME: This should be generated from macro expansion for all preferences,
3051
    // but we currently don't match the naming of WebCore exactly so we are
3052
    // handrolling the boolean and integer preferences until that is fixed.
3053
3054
#define INITIALIZE_SETTINGS(KeyUpper, KeyLower, TypeName, Type, DefaultValue, HumanReadableName, HumanReadableDescription) settings.set##KeyUpper(store.get##TypeName##ValueForKey(WebPreferencesKey::KeyLower##Key()));
3055
3056
    FOR_EACH_WEBKIT_STRING_PREFERENCE(INITIALIZE_SETTINGS)
3057
3058
#undef INITIALIZE_SETTINGS
3059
3060
    settings.setScriptEnabled(store.getBoolValueForKey(WebPreferencesKey::javaScriptEnabledKey()));
3061
    settings.setScriptMarkupEnabled(store.getBoolValueForKey(WebPreferencesKey::javaScriptMarkupEnabledKey()));
3062
    settings.setLoadsImagesAutomatically(store.getBoolValueForKey(WebPreferencesKey::loadsImagesAutomaticallyKey()));
3063
    settings.setLoadsSiteIconsIgnoringImageLoadingSetting(store.getBoolValueForKey(WebPreferencesKey::loadsSiteIconsIgnoringImageLoadingPreferenceKey()));
3064
    settings.setPluginsEnabled(store.getBoolValueForKey(WebPreferencesKey::pluginsEnabledKey()));
3065
    settings.setJavaEnabled(store.getBoolValueForKey(WebPreferencesKey::javaEnabledKey()));
3066
    settings.setJavaEnabledForLocalFiles(store.getBoolValueForKey(WebPreferencesKey::javaEnabledForLocalFilesKey()));    
3067
    settings.setOfflineWebApplicationCacheEnabled(store.getBoolValueForKey(WebPreferencesKey::offlineWebApplicationCacheEnabledKey()));
3068
    settings.setLocalStorageEnabled(store.getBoolValueForKey(WebPreferencesKey::localStorageEnabledKey()));
3069
    settings.setXSSAuditorEnabled(store.getBoolValueForKey(WebPreferencesKey::xssAuditorEnabledKey()));
3070
    settings.setFrameFlattening(static_cast<WebCore::FrameFlattening>(store.getUInt32ValueForKey(WebPreferencesKey::frameFlatteningKey())));
3071
    settings.setAsyncFrameScrollingEnabled(store.getBoolValueForKey(WebPreferencesKey::asyncFrameScrollingEnabledKey()));
3072
    if (store.getBoolValueForKey(WebPreferencesKey::privateBrowsingEnabledKey()) && !usesEphemeralSession())
3073
        setSessionID(PAL::SessionID::legacyPrivateSessionID());
3074
    else if (!store.getBoolValueForKey(WebPreferencesKey::privateBrowsingEnabledKey()) && sessionID() == PAL::SessionID::legacyPrivateSessionID())
3075
        setSessionID(PAL::SessionID::defaultSessionID());
3076
    settings.setDeveloperExtrasEnabled(store.getBoolValueForKey(WebPreferencesKey::developerExtrasEnabledKey()));
3077
    settings.setJavaScriptRuntimeFlags(RuntimeFlags(store.getUInt32ValueForKey(WebPreferencesKey::javaScriptRuntimeFlagsKey())));
3078
    settings.setTextAreasAreResizable(store.getBoolValueForKey(WebPreferencesKey::textAreasAreResizableKey()));
3079
    settings.setNeedsSiteSpecificQuirks(store.getBoolValueForKey(WebPreferencesKey::needsSiteSpecificQuirksKey()));
3080
    settings.setJavaScriptCanOpenWindowsAutomatically(store.getBoolValueForKey(WebPreferencesKey::javaScriptCanOpenWindowsAutomaticallyKey()));
3081
    settings.setForceFTPDirectoryListings(store.getBoolValueForKey(WebPreferencesKey::forceFTPDirectoryListingsKey()));
3082
    settings.setDNSPrefetchingEnabled(store.getBoolValueForKey(WebPreferencesKey::dnsPrefetchingEnabledKey()));
3083
    settings.setDOMTimersThrottlingEnabled(store.getBoolValueForKey(WebPreferencesKey::domTimersThrottlingEnabledKey()));
3084
#if ENABLE(WEB_ARCHIVE)
3085
    settings.setWebArchiveDebugModeEnabled(store.getBoolValueForKey(WebPreferencesKey::webArchiveDebugModeEnabledKey()));
3086
#endif
3087
    settings.setLocalFileContentSniffingEnabled(store.getBoolValueForKey(WebPreferencesKey::localFileContentSniffingEnabledKey()));
3088
    settings.setUsesPageCache(store.getBoolValueForKey(WebPreferencesKey::usesPageCacheKey()));
3089
    settings.setPageCacheSupportsPlugins(store.getBoolValueForKey(WebPreferencesKey::pageCacheSupportsPluginsKey()));
3090
    settings.setAuthorAndUserStylesEnabled(store.getBoolValueForKey(WebPreferencesKey::authorAndUserStylesEnabledKey()));
3091
    settings.setPaginateDuringLayoutEnabled(store.getBoolValueForKey(WebPreferencesKey::paginateDuringLayoutEnabledKey()));
3092
    settings.setDOMPasteAllowed(store.getBoolValueForKey(WebPreferencesKey::domPasteAllowedKey()));
3093
    settings.setJavaScriptCanAccessClipboard(store.getBoolValueForKey(WebPreferencesKey::javaScriptCanAccessClipboardKey()));
3094
    settings.setLinkPreconnectEnabled(store.getBoolValueForKey(WebPreferencesKey::linkPreconnectKey()));
3095
    settings.setShouldPrintBackgrounds(store.getBoolValueForKey(WebPreferencesKey::shouldPrintBackgroundsKey()));
3096
    settings.setWebSecurityEnabled(store.getBoolValueForKey(WebPreferencesKey::webSecurityEnabledKey()));
3097
    settings.setAllowUniversalAccessFromFileURLs(store.getBoolValueForKey(WebPreferencesKey::allowUniversalAccessFromFileURLsKey()));
3098
    settings.setAllowFileAccessFromFileURLs(store.getBoolValueForKey(WebPreferencesKey::allowFileAccessFromFileURLsKey()));
3099
    settings.setNeedsStorageAccessFromFileURLsQuirk(store.getBoolValueForKey(WebPreferencesKey::needsStorageAccessFromFileURLsQuirkKey()));
3100
3101
    settings.setMinimumFontSize(store.getDoubleValueForKey(WebPreferencesKey::minimumFontSizeKey()));
3102
    settings.setMinimumLogicalFontSize(store.getDoubleValueForKey(WebPreferencesKey::minimumLogicalFontSizeKey()));
3103
    settings.setDefaultFontSize(store.getDoubleValueForKey(WebPreferencesKey::defaultFontSizeKey()));
3104
    settings.setDefaultFixedFontSize(store.getDoubleValueForKey(WebPreferencesKey::defaultFixedFontSizeKey()));
3105
    settings.setLayoutFallbackWidth(store.getUInt32ValueForKey(WebPreferencesKey::layoutFallbackWidthKey()));
3106
    settings.setDeviceWidth(store.getUInt32ValueForKey(WebPreferencesKey::deviceWidthKey()));
3107
    settings.setDeviceHeight(store.getUInt32ValueForKey(WebPreferencesKey::deviceHeightKey()));
3108
    settings.setEditableLinkBehavior(static_cast<WebCore::EditableLinkBehavior>(store.getUInt32ValueForKey(WebPreferencesKey::editableLinkBehaviorKey())));
3109
    settings.setShowsToolTipOverTruncatedText(store.getBoolValueForKey(WebPreferencesKey::showsToolTipOverTruncatedTextKey()));
3110
3111
    settings.setAcceleratedCompositingForOverflowScrollEnabled(store.getBoolValueForKey(WebPreferencesKey::acceleratedCompositingForOverflowScrollEnabledKey()));
3112
    settings.setAcceleratedCompositingEnabled(store.getBoolValueForKey(WebPreferencesKey::acceleratedCompositingEnabledKey()));
3113
    settings.setAcceleratedDrawingEnabled(store.getBoolValueForKey(WebPreferencesKey::acceleratedDrawingEnabledKey()));
3114
    settings.setDisplayListDrawingEnabled(store.getBoolValueForKey(WebPreferencesKey::displayListDrawingEnabledKey()));
3115
    settings.setCanvasUsesAcceleratedDrawing(store.getBoolValueForKey(WebPreferencesKey::canvasUsesAcceleratedDrawingKey()));
3116
    settings.setShowDebugBorders(store.getBoolValueForKey(WebPreferencesKey::compositingBordersVisibleKey()));
3117
    settings.setShowRepaintCounter(store.getBoolValueForKey(WebPreferencesKey::compositingRepaintCountersVisibleKey()));
3118
    settings.setShowTiledScrollingIndicator(store.getBoolValueForKey(WebPreferencesKey::tiledScrollingIndicatorVisibleKey()));
3119
    settings.setVisibleDebugOverlayRegions(store.getUInt32ValueForKey(WebPreferencesKey::visibleDebugOverlayRegionsKey()));
3120
    settings.setUseGiantTiles(store.getBoolValueForKey(WebPreferencesKey::useGiantTilesKey()));
3121
    settings.setSubpixelAntialiasedLayerTextEnabled(store.getBoolValueForKey(WebPreferencesKey::subpixelAntialiasedLayerTextEnabledKey()));
3122
3123
    settings.setAggressiveTileRetentionEnabled(store.getBoolValueForKey(WebPreferencesKey::aggressiveTileRetentionEnabledKey()));
3124
    settings.setTemporaryTileCohortRetentionEnabled(store.getBoolValueForKey(WebPreferencesKey::temporaryTileCohortRetentionEnabledKey()));
3125
#if ENABLE(CSS_ANIMATIONS_LEVEL_2)
3126
    RuntimeEnabledFeatures::sharedFeatures().setAnimationTriggersEnabled(store.getBoolValueForKey(WebPreferencesKey::cssAnimationTriggersEnabledKey()));
3127
#endif
3128
    RuntimeEnabledFeatures::sharedFeatures().setWebAnimationsEnabled(store.getBoolValueForKey(WebPreferencesKey::webAnimationsEnabledKey()));
3129
    settings.setWebGLEnabled(store.getBoolValueForKey(WebPreferencesKey::webGLEnabledKey()));
3130
    settings.setForceSoftwareWebGLRendering(store.getBoolValueForKey(WebPreferencesKey::forceSoftwareWebGLRenderingKey()));
3131
    settings.setAccelerated2dCanvasEnabled(store.getBoolValueForKey(WebPreferencesKey::accelerated2dCanvasEnabledKey()));
3132
    bool requiresUserGestureForMedia = store.getBoolValueForKey(WebPreferencesKey::requiresUserGestureForMediaPlaybackKey());
3039
    bool requiresUserGestureForMedia = store.getBoolValueForKey(WebPreferencesKey::requiresUserGestureForMediaPlaybackKey());
3133
    settings.setVideoPlaybackRequiresUserGesture(requiresUserGestureForMedia || store.getBoolValueForKey(WebPreferencesKey::requiresUserGestureForVideoPlaybackKey()));
3040
    settings.setVideoPlaybackRequiresUserGesture(requiresUserGestureForMedia || store.getBoolValueForKey(WebPreferencesKey::requiresUserGestureForVideoPlaybackKey()));
3134
    settings.setAudioPlaybackRequiresUserGesture(requiresUserGestureForMedia || store.getBoolValueForKey(WebPreferencesKey::requiresUserGestureForAudioPlaybackKey()));
3041
    settings.setAudioPlaybackRequiresUserGesture(requiresUserGestureForMedia || store.getBoolValueForKey(WebPreferencesKey::requiresUserGestureForAudioPlaybackKey()));
3135
    settings.setRequiresUserGestureToLoadVideo(store.getBoolValueForKey(WebPreferencesKey::requiresUserGestureToLoadVideoKey()));
3136
    settings.setMainContentUserGestureOverrideEnabled(store.getBoolValueForKey(WebPreferencesKey::mainContentUserGestureOverrideEnabledKey()));
3137
    settings.setMediaUserGestureInheritsFromDocument(store.getBoolValueForKey(WebPreferencesKey::mediaUserGestureInheritsFromDocumentKey()));
3138
    settings.setAllowsInlineMediaPlayback(store.getBoolValueForKey(WebPreferencesKey::allowsInlineMediaPlaybackKey()));
3139
    settings.setAllowsInlineMediaPlaybackAfterFullscreen(store.getBoolValueForKey(WebPreferencesKey::allowsInlineMediaPlaybackAfterFullscreenKey()));
3140
    settings.setInlineMediaPlaybackRequiresPlaysInlineAttribute(store.getBoolValueForKey(WebPreferencesKey::inlineMediaPlaybackRequiresPlaysInlineAttributeKey()));
3141
    settings.setInvisibleAutoplayNotPermitted(store.getBoolValueForKey(WebPreferencesKey::invisibleAutoplayNotPermittedKey()));
3142
    settings.setMediaDataLoadsAutomatically(store.getBoolValueForKey(WebPreferencesKey::mediaDataLoadsAutomaticallyKey()));
3143
    settings.setAllowsPictureInPictureMediaPlayback(store.getBoolValueForKey(WebPreferencesKey::allowsPictureInPictureMediaPlaybackKey()));
3144
    settings.setMediaControlsScaleWithPageZoom(store.getBoolValueForKey(WebPreferencesKey::mediaControlsScaleWithPageZoomKey()));
3145
    DeprecatedGlobalSettings::setMockScrollbarsEnabled(store.getBoolValueForKey(WebPreferencesKey::mockScrollbarsEnabledKey()));
3146
    settings.setHyperlinkAuditingEnabled(store.getBoolValueForKey(WebPreferencesKey::hyperlinkAuditingEnabledKey()));
3147
    settings.setRequestAnimationFrameEnabled(store.getBoolValueForKey(WebPreferencesKey::requestAnimationFrameEnabledKey()));
3148
#if ENABLE(SMOOTH_SCROLLING)
3149
    settings.setScrollAnimatorEnabled(store.getBoolValueForKey(WebPreferencesKey::scrollAnimatorEnabledKey()));
3150
#endif
3151
    settings.setForceUpdateScrollbarsOnMainThreadForPerformanceTesting(store.getBoolValueForKey(WebPreferencesKey::forceUpdateScrollbarsOnMainThreadForPerformanceTestingKey()));
3152
    settings.setInteractiveFormValidationEnabled(store.getBoolValueForKey(WebPreferencesKey::interactiveFormValidationEnabledKey()));
3153
    settings.setSpatialNavigationEnabled(store.getBoolValueForKey(WebPreferencesKey::spatialNavigationEnabledKey()));
3154
3155
    settings.setHttpEquivEnabled(store.getBoolValueForKey(WebPreferencesKey::httpEquivEnabledKey()));
3156
3157
    settings.setSelectionPaintingWithoutSelectionGapsEnabled(store.getBoolValueForKey(WebPreferencesKey::selectionPaintingWithoutSelectionGapsEnabledKey()));
3158
3159
    DatabaseManager::singleton().setIsAvailable(store.getBoolValueForKey(WebPreferencesKey::databasesEnabledKey()));
3160
3161
#if ENABLE(FULLSCREEN_API)
3162
    settings.setFullScreenEnabled(store.getBoolValueForKey(WebPreferencesKey::fullScreenEnabledKey()));
3163
#endif
3164
3165
#if USE(AVFOUNDATION)
3166
    DeprecatedGlobalSettings::setAVFoundationEnabled(store.getBoolValueForKey(WebPreferencesKey::isAVFoundationEnabledKey()));
3167
    DeprecatedGlobalSettings::setAVFoundationNSURLSessionEnabled(store.getBoolValueForKey(WebPreferencesKey::isAVFoundationNSURLSessionEnabledKey()));
3168
#endif
3169
3170
#if USE(GSTREAMER)
3171
    DeprecatedGlobalSettings::setGStreamerEnabled(store.getBoolValueForKey(WebPreferencesKey::isGStreamerEnabledKey()));
3172
#endif
3173
3174
#if PLATFORM(COCOA)
3175
    DeprecatedGlobalSettings::setQTKitEnabled(store.getBoolValueForKey(WebPreferencesKey::isQTKitEnabledKey()));
3176
#endif
3177
3178
#if PLATFORM(IOS) && HAVE(AVKIT)
3179
    DeprecatedGlobalSettings::setAVKitEnabled(true);
3180
#endif
3181
3182
#if ENABLE(WEB_AUDIO)
3183
    settings.setWebAudioEnabled(store.getBoolValueForKey(WebPreferencesKey::webAudioEnabledKey()));
3184
#endif
3185
3186
#if ENABLE(MEDIA_STREAM)
3187
    RuntimeEnabledFeatures::sharedFeatures().setMediaDevicesEnabled(store.getBoolValueForKey(WebPreferencesKey::mediaDevicesEnabledKey()));
3188
    RuntimeEnabledFeatures::sharedFeatures().setMediaStreamEnabled(store.getBoolValueForKey(WebPreferencesKey::mediaStreamEnabledKey()));
3189
#endif
3190
3191
#if ENABLE(WEB_RTC)
3192
    RuntimeEnabledFeatures::sharedFeatures().setPeerConnectionEnabled(store.getBoolValueForKey(WebPreferencesKey::peerConnectionEnabledKey()));
3193
    RuntimeEnabledFeatures::sharedFeatures().setWebRTCLegacyAPIEnabled(!store.getBoolValueForKey(WebPreferencesKey::webRTCLegacyAPIDisabledKey()));
3194
#endif
3195
3196
#if ENABLE(SERVICE_CONTROLS)
3197
    settings.setImageControlsEnabled(store.getBoolValueForKey(WebPreferencesKey::imageControlsEnabledKey()));
3198
#endif
3199
3200
#if ENABLE(SERVICE_WORKER)
3201
    RuntimeEnabledFeatures::sharedFeatures().setServiceWorkerEnabled(store.getBoolValueForKey(WebPreferencesKey::serviceWorkersEnabledKey()));
3202
#endif
3203
3204
#if ENABLE(WIRELESS_PLAYBACK_TARGET)
3205
    settings.setAllowsAirPlayForMediaPlayback(store.getBoolValueForKey(WebPreferencesKey::allowsAirPlayForMediaPlaybackKey()));
3206
#endif
3207
3208
#if ENABLE(RESOURCE_USAGE)
3209
    settings.setResourceUsageOverlayVisible(store.getBoolValueForKey(WebPreferencesKey::resourceUsageOverlayVisibleKey()));
3210
#endif
3211
3212
    settings.setSuppressesIncrementalRendering(store.getBoolValueForKey(WebPreferencesKey::suppressesIncrementalRenderingKey()));
3213
    settings.setIncrementalRenderingSuppressionTimeoutInSeconds(store.getDoubleValueForKey(WebPreferencesKey::incrementalRenderingSuppressionTimeoutKey()));
3214
    settings.setBackspaceKeyNavigationEnabled(store.getBoolValueForKey(WebPreferencesKey::backspaceKeyNavigationEnabledKey()));
3215
    settings.setWantsBalancedSetDefersLoadingBehavior(store.getBoolValueForKey(WebPreferencesKey::wantsBalancedSetDefersLoadingBehaviorKey()));
3216
    settings.setCaretBrowsingEnabled(store.getBoolValueForKey(WebPreferencesKey::caretBrowsingEnabledKey()));
3217
3218
#if ENABLE(VIDEO_TRACK)
3219
    settings.setShouldDisplaySubtitles(store.getBoolValueForKey(WebPreferencesKey::shouldDisplaySubtitlesKey()));
3220
    settings.setShouldDisplayCaptions(store.getBoolValueForKey(WebPreferencesKey::shouldDisplayCaptionsKey()));
3221
    settings.setShouldDisplayTextDescriptions(store.getBoolValueForKey(WebPreferencesKey::shouldDisplayTextDescriptionsKey()));
3222
#endif
3223
3224
#if ENABLE(NOTIFICATIONS)
3225
    settings.setNotificationsEnabled(store.getBoolValueForKey(WebPreferencesKey::notificationsEnabledKey()));
3226
#endif
3227
3228
    settings.setShouldRespectImageOrientation(store.getBoolValueForKey(WebPreferencesKey::shouldRespectImageOrientationKey()));
3229
    settings.setStorageBlockingPolicy(static_cast<SecurityOrigin::StorageBlockingPolicy>(store.getUInt32ValueForKey(WebPreferencesKey::storageBlockingPolicyKey())));
3230
    settings.setCookieEnabled(store.getBoolValueForKey(WebPreferencesKey::cookieEnabledKey()));
3231
3232
    settings.setDiagnosticLoggingEnabled(store.getBoolValueForKey(WebPreferencesKey::diagnosticLoggingEnabledKey()));
3233
3234
    settings.setScrollingPerformanceLoggingEnabled(m_scrollingPerformanceLoggingEnabled);
3235
3236
    settings.setPlugInSnapshottingEnabled(store.getBoolValueForKey(WebPreferencesKey::plugInSnapshottingEnabledKey()));
3237
    settings.setSnapshotAllPlugIns(store.getBoolValueForKey(WebPreferencesKey::snapshotAllPlugInsKey()));
3238
    settings.setAutostartOriginPlugInSnapshottingEnabled(store.getBoolValueForKey(WebPreferencesKey::autostartOriginPlugInSnapshottingEnabledKey()));
3239
    settings.setPrimaryPlugInSnapshotDetectionEnabled(store.getBoolValueForKey(WebPreferencesKey::primaryPlugInSnapshotDetectionEnabledKey()));
3240
    settings.setUsesEncodingDetector(store.getBoolValueForKey(WebPreferencesKey::usesEncodingDetectorKey()));
3241
3242
#if ENABLE(TEXT_AUTOSIZING)
3243
    settings.setTextAutosizingEnabled(store.getBoolValueForKey(WebPreferencesKey::textAutosizingEnabledKey()));
3244
    settings.setMinimumZoomFontSize(store.getDoubleValueForKey(WebPreferencesKey::minimumZoomFontSizeKey()));
3245
#endif
3246
3247
    settings.setLogsPageMessagesToSystemConsoleEnabled(store.getBoolValueForKey(WebPreferencesKey::logsPageMessagesToSystemConsoleEnabledKey()));
3248
    settings.setAsynchronousSpellCheckingEnabled(store.getBoolValueForKey(WebPreferencesKey::asynchronousSpellCheckingEnabledKey()));
3249
3250
    settings.setSmartInsertDeleteEnabled(store.getBoolValueForKey(WebPreferencesKey::smartInsertDeleteEnabledKey()));
3251
    settings.setSelectTrailingWhitespaceEnabled(store.getBoolValueForKey(WebPreferencesKey::selectTrailingWhitespaceEnabledKey()));
3252
    settings.setShowsURLsInToolTips(store.getBoolValueForKey(WebPreferencesKey::showsURLsInToolTipsEnabledKey()));
3253
3254
    settings.setHiddenPageDOMTimerThrottlingEnabled(store.getBoolValueForKey(WebPreferencesKey::hiddenPageDOMTimerThrottlingEnabledKey()));
3255
    settings.setHiddenPageDOMTimerThrottlingAutoIncreases(store.getBoolValueForKey(WebPreferencesKey::hiddenPageDOMTimerThrottlingAutoIncreasesKey()));
3256
3257
    settings.setHiddenPageCSSAnimationSuspensionEnabled(store.getBoolValueForKey(WebPreferencesKey::hiddenPageCSSAnimationSuspensionEnabledKey()));
3258
    DeprecatedGlobalSettings::setLowPowerVideoAudioBufferSizeEnabled(store.getBoolValueForKey(WebPreferencesKey::lowPowerVideoAudioBufferSizeEnabledKey()));
3259
    settings.setSimpleLineLayoutEnabled(store.getBoolValueForKey(WebPreferencesKey::simpleLineLayoutEnabledKey()));
3260
    settings.setSimpleLineLayoutDebugBordersEnabled(store.getBoolValueForKey(WebPreferencesKey::simpleLineLayoutDebugBordersEnabledKey()));
3261
    
3262
    settings.setDeferredCSSParserEnabled(store.getBoolValueForKey(WebPreferencesKey::deferredCSSParserEnabledKey()));
3263
3264
    settings.setSubpixelCSSOMElementMetricsEnabled(store.getBoolValueForKey(WebPreferencesKey::subpixelCSSOMElementMetricsEnabledKey()));
3265
3266
    settings.setUseLegacyTextAlignPositionedElementBehavior(store.getBoolValueForKey(WebPreferencesKey::useLegacyTextAlignPositionedElementBehaviorKey()));
3267
3268
#if ENABLE(MEDIA_SOURCE)
3269
    settings.setMediaSourceEnabled(store.getBoolValueForKey(WebPreferencesKey::mediaSourceEnabledKey()));
3270
#endif
3271
3272
#if ENABLE(MEDIA_STREAM)
3273
    DeprecatedGlobalSettings::setMockCaptureDevicesEnabled(store.getBoolValueForKey(WebPreferencesKey::mockCaptureDevicesEnabledKey()));
3274
    DeprecatedGlobalSettings::setMediaCaptureRequiresSecureConnection(store.getBoolValueForKey(WebPreferencesKey::mediaCaptureRequiresSecureConnectionKey()));
3275
#endif
3276
3277
    settings.setShouldConvertPositionStyleOnCopy(store.getBoolValueForKey(WebPreferencesKey::shouldConvertPositionStyleOnCopyKey()));
3278
3279
    settings.setStandalone(store.getBoolValueForKey(WebPreferencesKey::standaloneKey()));
3280
    settings.setTelephoneNumberParsingEnabled(store.getBoolValueForKey(WebPreferencesKey::telephoneNumberParsingEnabledKey()));
3281
    settings.setAllowMultiElementImplicitSubmission(store.getBoolValueForKey(WebPreferencesKey::allowMultiElementImplicitSubmissionKey()));
3282
    settings.setAlwaysUseAcceleratedOverflowScroll(store.getBoolValueForKey(WebPreferencesKey::alwaysUseAcceleratedOverflowScrollKey()));
3283
3284
    settings.setPasswordEchoEnabled(store.getBoolValueForKey(WebPreferencesKey::passwordEchoEnabledKey()));
3285
    settings.setPasswordEchoDurationInSeconds(store.getDoubleValueForKey(WebPreferencesKey::passwordEchoDurationKey()));
3286
    
3287
    settings.setLayoutInterval(Seconds(store.getDoubleValueForKey(WebPreferencesKey::layoutIntervalKey())));
3042
    settings.setLayoutInterval(Seconds(store.getDoubleValueForKey(WebPreferencesKey::layoutIntervalKey())));
3288
    settings.setMaxParseDuration(store.getDoubleValueForKey(WebPreferencesKey::maxParseDurationKey()));
3043
    settings.setUserInterfaceDirectionPolicy(static_cast<WebCore::UserInterfaceDirectionPolicy>(store.getUInt32ValueForKey(WebPreferencesKey::userInterfaceDirectionPolicyKey())));
3289
3044
    settings.setSystemLayoutDirection(static_cast<TextDirection>(store.getUInt32ValueForKey(WebPreferencesKey::systemLayoutDirectionKey())));
3290
    settings.setEnableInheritURIQueryComponent(store.getBoolValueForKey(WebPreferencesKey::enableInheritURIQueryComponentKey()));
3045
    settings.setJavaScriptRuntimeFlags(static_cast<RuntimeFlags>(store.getUInt32ValueForKey(WebPreferencesKey::javaScriptRuntimeFlagsKey())));
3291
3046
    settings.setStorageBlockingPolicy(static_cast<SecurityOrigin::StorageBlockingPolicy>(store.getUInt32ValueForKey(WebPreferencesKey::storageBlockingPolicyKey())));
3292
    auto userInterfaceDirectionPolicyCandidate = static_cast<WebCore::UserInterfaceDirectionPolicy>(store.getUInt32ValueForKey(WebPreferencesKey::userInterfaceDirectionPolicyKey()));
3047
    settings.setFrameFlattening(static_cast<WebCore::FrameFlattening>(store.getUInt32ValueForKey(WebPreferencesKey::frameFlatteningKey())));
3293
    if (userInterfaceDirectionPolicyCandidate == WebCore::UserInterfaceDirectionPolicy::Content || userInterfaceDirectionPolicyCandidate == WebCore::UserInterfaceDirectionPolicy::System)
3048
    settings.setEditableLinkBehavior(static_cast<WebCore::EditableLinkBehavior>(store.getUInt32ValueForKey(WebPreferencesKey::editableLinkBehaviorKey())));
3294
        settings.setUserInterfaceDirectionPolicy(userInterfaceDirectionPolicyCandidate);
3295
    TextDirection systemLayoutDirectionCandidate = static_cast<TextDirection>(store.getUInt32ValueForKey(WebPreferencesKey::systemLayoutDirectionKey()));
3296
    if (systemLayoutDirectionCandidate == WebCore::LTR || systemLayoutDirectionCandidate == WebCore::RTL)
3297
        settings.setSystemLayoutDirection(systemLayoutDirectionCandidate);
3298
3299
#if ENABLE(APPLE_PAY)
3300
    settings.setApplePayEnabled(store.getBoolValueForKey(WebPreferencesKey::applePayEnabledKey()));
3301
    settings.setApplePayCapabilityDisclosureAllowed(store.getBoolValueForKey(WebPreferencesKey::applePayCapabilityDisclosureAllowedKey()));
3302
#endif
3303
3304
#if PLATFORM(IOS)
3305
    settings.setUseImageDocumentForSubframePDF(true);
3306
#endif
3307
3308
#if ENABLE(DATA_DETECTION)
3049
#if ENABLE(DATA_DETECTION)
3309
    settings.setDataDetectorTypes(static_cast<DataDetectorTypes>(store.getUInt32ValueForKey(WebPreferencesKey::dataDetectorTypesKey())));
3050
    settings.setDataDetectorTypes(static_cast<DataDetectorTypes>(store.getUInt32ValueForKey(WebPreferencesKey::dataDetectorTypesKey())));
3310
#endif
3051
#endif
3311
#if ENABLE(GAMEPAD)
3052
#if ENABLE(WEB_RTC)
3312
    RuntimeEnabledFeatures::sharedFeatures().setGamepadsEnabled(store.getBoolValueForKey(WebPreferencesKey::gamepadsEnabledKey()));
3053
    RuntimeEnabledFeatures::sharedFeatures().setWebRTCLegacyAPIEnabled(!store.getBoolValueForKey(WebPreferencesKey::webRTCLegacyAPIDisabledKey()));
3313
#endif
3314
3315
#if ENABLE(SERVICE_CONTROLS)
3316
    settings.setServiceControlsEnabled(store.getBoolValueForKey(WebPreferencesKey::serviceControlsEnabledKey()));
3317
#endif
3318
3319
    RuntimeEnabledFeatures::sharedFeatures().setCacheAPIEnabled(store.getBoolValueForKey(WebPreferencesKey::cacheAPIEnabledKey()));
3320
    RuntimeEnabledFeatures::sharedFeatures().setFetchAPIEnabled(store.getBoolValueForKey(WebPreferencesKey::fetchAPIEnabledKey()));
3321
3322
#if ENABLE(DOWNLOAD_ATTRIBUTE)
3323
    RuntimeEnabledFeatures::sharedFeatures().setDownloadAttributeEnabled(store.getBoolValueForKey(WebPreferencesKey::downloadAttributeEnabledKey()));
3324
#endif
3325
3326
    RuntimeEnabledFeatures::sharedFeatures().setShadowDOMEnabled(store.getBoolValueForKey(WebPreferencesKey::shadowDOMEnabledKey()));
3327
3328
    RuntimeEnabledFeatures::sharedFeatures().setInteractiveFormValidationEnabled(store.getBoolValueForKey(WebPreferencesKey::interactiveFormValidationEnabledKey()));
3329
3330
    // Experimental Features.
3331
3332
    RuntimeEnabledFeatures::sharedFeatures().setCSSGridLayoutEnabled(store.getBoolValueForKey(WebPreferencesKey::cssGridLayoutEnabledKey()));
3333
    
3334
    RuntimeEnabledFeatures::sharedFeatures().setCustomElementsEnabled(store.getBoolValueForKey(WebPreferencesKey::customElementsEnabledKey()));
3335
3336
    RuntimeEnabledFeatures::sharedFeatures().setDataTransferItemsEnabled(store.getBoolValueForKey(WebPreferencesKey::dataTransferItemsEnabledKey()));
3337
3338
    DeprecatedGlobalSettings::setCustomPasteboardDataEnabled(store.getBoolValueForKey(WebPreferencesKey::customPasteboardDataEnabledKey()));
3339
3340
#if ENABLE(ATTACHMENT_ELEMENT)
3341
    RuntimeEnabledFeatures::sharedFeatures().setAttachmentElementEnabled(store.getBoolValueForKey(WebPreferencesKey::attachmentElementEnabledKey()));
3342
#endif
3343
3344
#if ENABLE(WEBGL2)
3345
    RuntimeEnabledFeatures::sharedFeatures().setWebGL2Enabled(store.getBoolValueForKey(WebPreferencesKey::webGL2EnabledKey()));
3346
#endif
3347
3348
#if ENABLE(WEBGPU)
3349
    RuntimeEnabledFeatures::sharedFeatures().setWebGPUEnabled(store.getBoolValueForKey(WebPreferencesKey::webGPUEnabledKey()));
3350
#endif
3054
#endif
3351
3055
3352
    settings.setSpringTimingFunctionEnabled(store.getBoolValueForKey(WebPreferencesKey::springTimingFunctionEnabledKey()));
3056
    DatabaseManager::singleton().setIsAvailable(store.getBoolValueForKey(WebPreferencesKey::databasesEnabledKey()));
3353
3354
    settings.setConstantPropertiesEnabled(store.getBoolValueForKey(WebPreferencesKey::constantPropertiesEnabledKey()));
3355
3356
    settings.setViewportFitEnabled(store.getBoolValueForKey(WebPreferencesKey::viewportFitEnabledKey()));
3357
3358
    settings.setVisualViewportEnabled(store.getBoolValueForKey(WebPreferencesKey::visualViewportEnabledKey()));
3359
3360
    settings.setInputEventsEnabled(store.getBoolValueForKey(WebPreferencesKey::inputEventsEnabledKey()));
3361
    RuntimeEnabledFeatures::sharedFeatures().setInputEventsEnabled(store.getBoolValueForKey(WebPreferencesKey::inputEventsEnabledKey()));
3362
3363
    RuntimeEnabledFeatures::sharedFeatures().setModernMediaControlsEnabled(store.getBoolValueForKey(WebPreferencesKey::modernMediaControlsEnabledKey()));
3364
3365
#if ENABLE(ENCRYPTED_MEDIA)
3366
    RuntimeEnabledFeatures::sharedFeatures().setEncryptedMediaAPIEnabled(store.getBoolValueForKey(WebPreferencesKey::encryptedMediaAPIEnabledKey()));
3367
#endif
3368
3057
3369
#if ENABLE(INTERSECTION_OBSERVER)
3058
    m_tabToLinks = store.getBoolValueForKey(WebPreferencesKey::tabsToLinksKey());
3370
    RuntimeEnabledFeatures::sharedFeatures().setIntersectionObserverEnabled(store.getBoolValueForKey(WebPreferencesKey::intersectionObserverEnabledKey()));
3059
    m_asynchronousPluginInitializationEnabled = store.getBoolValueForKey(WebPreferencesKey::asynchronousPluginInitializationEnabledKey());
3371
#endif
3060
    m_asynchronousPluginInitializationEnabledForAllPlugins = store.getBoolValueForKey(WebPreferencesKey::asynchronousPluginInitializationEnabledForAllPluginsKey());
3061
    m_artificialPluginInitializationDelayEnabled = store.getBoolValueForKey(WebPreferencesKey::artificialPluginInitializationDelayEnabledKey());
3062
    m_scrollingPerformanceLoggingEnabled = store.getBoolValueForKey(WebPreferencesKey::scrollingPerformanceLoggingEnabledKey());
3372
3063
3373
    RuntimeEnabledFeatures::sharedFeatures().setDisplayContentsEnabled(store.getBoolValueForKey(WebPreferencesKey::displayContentsEnabledKey()));
3064
    if (store.getBoolValueForKey(WebPreferencesKey::privateBrowsingEnabledKey()) && !usesEphemeralSession())
3374
    RuntimeEnabledFeatures::sharedFeatures().setUserTimingEnabled(store.getBoolValueForKey(WebPreferencesKey::userTimingEnabledKey()));
3065
        setSessionID(PAL::SessionID::legacyPrivateSessionID());
3375
    RuntimeEnabledFeatures::sharedFeatures().setResourceTimingEnabled(store.getBoolValueForKey(WebPreferencesKey::resourceTimingEnabledKey()));
3066
    else if (!store.getBoolValueForKey(WebPreferencesKey::privateBrowsingEnabledKey()) && sessionID() == PAL::SessionID::legacyPrivateSessionID())
3376
    RuntimeEnabledFeatures::sharedFeatures().setLinkPreloadEnabled(store.getBoolValueForKey(WebPreferencesKey::linkPreloadEnabledKey()));
3067
        setSessionID(PAL::SessionID::defaultSessionID());
3377
    RuntimeEnabledFeatures::sharedFeatures().setMediaPreloadingEnabled(store.getBoolValueForKey(WebPreferencesKey::mediaPreloadingEnabledKey()));
3378
    RuntimeEnabledFeatures::sharedFeatures().setCredentialManagementEnabled(store.getBoolValueForKey(WebPreferencesKey::credentialManagementEnabledKey()));
3379
    RuntimeEnabledFeatures::sharedFeatures().setIsSecureContextAttributeEnabled(store.getBoolValueForKey(WebPreferencesKey::isSecureContextAttributeEnabledKey()));
3380
    RuntimeEnabledFeatures::sharedFeatures().setDirectoryUploadEnabled(store.getBoolValueForKey(WebPreferencesKey::directoryUploadEnabledKey()));
3381
    RuntimeEnabledFeatures::sharedFeatures().setWebVREnabled(store.getBoolValueForKey(WebPreferencesKey::webVREnabledKey()));
3382
3068
3383
    bool processSuppressionEnabled = store.getBoolValueForKey(WebPreferencesKey::pageVisibilityBasedProcessSuppressionEnabledKey());
3069
    bool processSuppressionEnabled = store.getBoolValueForKey(WebPreferencesKey::pageVisibilityBasedProcessSuppressionEnabledKey());
3384
    if (m_processSuppressionEnabled != processSuppressionEnabled) {
3070
    if (m_processSuppressionEnabled != processSuppressionEnabled) {
Lines 3386-3424 void WebPage::updatePreferences(const We Source/WebKit/WebProcess/WebPage/WebPage.cpp_sec2
3386
        updateThrottleState();
3072
        updateThrottleState();
3387
    }
3073
    }
3388
3074
3389
    settings.setSubresourceIntegrityEnabled(store.getBoolValueForKey(WebPreferencesKey::subresourceIntegrityEnabledKey()));
3075
#if PLATFORM(COCOA)
3390
3076
    m_pdfPluginEnabled = store.getBoolValueForKey(WebPreferencesKey::pdfPluginEnabledKey());
3391
#if ENABLE(BEACON_API)
3392
    settings.setBeaconAPIEnabled(store.getBoolValueForKey(WebPreferencesKey::beaconAPIEnabledKey()));
3393
#endif
3394
3395
#if ENABLE(PAYMENT_REQUEST)
3396
    settings.setPaymentRequestEnabled(store.getBoolValueForKey(WebPreferencesKey::paymentRequestEnabledKey()));
3397
#endif
3077
#endif
3398
3399
    settings.setStorageAccessAPIEnabled(store.getBoolValueForKey(WebPreferencesKey::storageAccessAPIEnabledKey()));
3400
    
3401
    platformPreferencesDidChange(store);
3402
3403
    if (m_drawingArea)
3404
        m_drawingArea->updatePreferences(store);
3405
3406
#if PLATFORM(IOS)
3078
#if PLATFORM(IOS)
3407
    m_ignoreViewportScalingConstraints = store.getBoolValueForKey(WebPreferencesKey::ignoreViewportScalingConstraintsKey());
3079
    m_ignoreViewportScalingConstraints = store.getBoolValueForKey(WebPreferencesKey::ignoreViewportScalingConstraintsKey());
3408
    m_viewportConfiguration.setCanIgnoreScalingConstraints(m_ignoreViewportScalingConstraints);
3080
    m_viewportConfiguration.setCanIgnoreScalingConstraints(m_ignoreViewportScalingConstraints);
3409
    setForceAlwaysUserScalable(m_forceAlwaysUserScalable || store.getBoolValueForKey(WebPreferencesKey::forceAlwaysUserScalableKey()));
3081
    setForceAlwaysUserScalable(m_forceAlwaysUserScalable || store.getBoolValueForKey(WebPreferencesKey::forceAlwaysUserScalableKey()));
3410
#endif
3411
    settings.setLargeImageAsyncDecodingEnabled(store.getBoolValueForKey(WebPreferencesKey::largeImageAsyncDecodingEnabledKey()));
3412
    settings.setAnimatedImageAsyncDecodingEnabled(store.getBoolValueForKey(WebPreferencesKey::animatedImageAsyncDecodingEnabledKey()));
3413
    settings.setShouldSuppressTextInputFromEditingDuringProvisionalNavigation(store.getBoolValueForKey(WebPreferencesKey::shouldSuppressTextInputFromEditingDuringProvisionalNavigationKey()));
3414
    settings.setMediaContentTypesRequiringHardwareSupport(store.getStringValueForKey(WebPreferencesKey::mediaContentTypesRequiringHardwareSupportKey()));
3415
    settings.setAllowMediaContentTypesRequiringHardwareSupportAsFallback(store.getBoolValueForKey(WebPreferencesKey::allowMediaContentTypesRequiringHardwareSupportAsFallbackKey()));
3416
3082
3417
#if ENABLE(LEGACY_ENCRYPTED_MEDIA)
3083
    settings.setUseImageDocumentForSubframePDF(true);
3418
    RuntimeEnabledFeatures::sharedFeatures().setLegacyEncryptedMediaAPIEnabled(store.getBoolValueForKey(WebPreferencesKey::legacyEncryptedMediaAPIEnabledKey()));
3084
    DeprecatedGlobalSettings::setAVKitEnabled(true);
3419
#endif
3085
#endif
3420
3086
3421
    RuntimeEnabledFeatures::sharedFeatures().setInspectorAdditionsEnabled(store.getBoolValueForKey(WebPreferencesKey::inspectorAdditionsEnabledKey()));
3087
    updatePreferencesGenerated(store);
3088
3089
    if (m_drawingArea)
3090
        m_drawingArea->updatePreferences(store);
3422
}
3091
}
3423
3092
3424
#if ENABLE(DATA_DETECTION)
3093
#if ENABLE(DATA_DETECTION)
- Source/WebKit/WebProcess/WebPage/WebPage.h -1 / +1 lines
Lines 1140-1147 private: Source/WebKit/WebProcess/WebPage/WebPage.h_sec1
1140
    void takeSnapshot(WebCore::IntRect snapshotRect, WebCore::IntSize bitmapSize, uint32_t options, CallbackID);
1140
    void takeSnapshot(WebCore::IntRect snapshotRect, WebCore::IntSize bitmapSize, uint32_t options, CallbackID);
1141
1141
1142
    void preferencesDidChange(const WebPreferencesStore&);
1142
    void preferencesDidChange(const WebPreferencesStore&);
1143
    void platformPreferencesDidChange(const WebPreferencesStore&);
1144
    void updatePreferences(const WebPreferencesStore&);
1143
    void updatePreferences(const WebPreferencesStore&);
1144
    void updatePreferencesGenerated(const WebPreferencesStore&);
1145
1145
1146
    void didReceivePolicyDecision(uint64_t frameID, uint64_t listenerID, WebCore::PolicyAction, uint64_t navigationID, const DownloadID&, WebsitePolicies&&);
1146
    void didReceivePolicyDecision(uint64_t frameID, uint64_t listenerID, WebCore::PolicyAction, uint64_t navigationID, const DownloadID&, WebsitePolicies&&);
1147
    void continueWillSubmitForm(uint64_t frameID, uint64_t listenerID);
1147
    void continueWillSubmitForm(uint64_t frameID, uint64_t listenerID);
- Source/WebKit/WebProcess/WebPage/gtk/WebPageGtk.cpp -5 lines
Lines 118-128 void WebPage::updateAccessibilityTree() Source/WebKit/WebProcess/WebPage/gtk/WebPageGtk.cpp_sec1
118
}
118
}
119
#endif
119
#endif
120
120
121
void WebPage::platformPreferencesDidChange(const WebPreferencesStore&)
122
{
123
    notImplemented();
124
}
125
126
bool WebPage::performDefaultBehaviorForKeyEvent(const WebKeyboardEvent& keyboardEvent)
121
bool WebPage::performDefaultBehaviorForKeyEvent(const WebKeyboardEvent& keyboardEvent)
127
{
122
{
128
    if (keyboardEvent.type() != WebEvent::KeyDown && keyboardEvent.type() != WebEvent::RawKeyDown)
123
    if (keyboardEvent.type() != WebEvent::KeyDown && keyboardEvent.type() != WebEvent::RawKeyDown)
- Source/WebKit/WebProcess/WebPage/ios/WebPageIOS.mm -5 lines
Lines 147-157 void WebPage::platformInitializeAccessib Source/WebKit/WebProcess/WebPage/ios/WebPageIOS.mm_sec1
147
    IPC::DataReference dataToken = IPC::DataReference(reinterpret_cast<const uint8_t*>([remoteToken bytes]), [remoteToken length]);
147
    IPC::DataReference dataToken = IPC::DataReference(reinterpret_cast<const uint8_t*>([remoteToken bytes]), [remoteToken length]);
148
    send(Messages::WebPageProxy::RegisterWebProcessAccessibilityToken(dataToken));
148
    send(Messages::WebPageProxy::RegisterWebProcessAccessibilityToken(dataToken));
149
}
149
}
150
    
151
void WebPage::platformPreferencesDidChange(const WebPreferencesStore&)
152
{
153
    notImplemented();
154
}
155
150
156
static void computeEditableRootHasContentAndPlainText(const VisibleSelection& selection, EditorState::PostLayoutData& data)
151
static void computeEditableRootHasContentAndPlainText(const VisibleSelection& selection, EditorState::PostLayoutData& data)
157
{
152
{
- Source/WebKit/WebProcess/WebPage/mac/WebPageMac.mm -4 lines
Lines 182-191 NSObject *WebPage::accessibilityObjectFo Source/WebKit/WebProcess/WebPage/mac/WebPageMac.mm_sec1
182
    return 0;
182
    return 0;
183
}
183
}
184
184
185
void WebPage::platformPreferencesDidChange(const WebPreferencesStore& store)
186
{
187
}
188
189
bool WebPage::shouldUsePDFPlugin() const
185
bool WebPage::shouldUsePDFPlugin() const
190
{
186
{
191
    return pdfPluginEnabled() && classFromPDFKit(@"PDFLayerController");
187
    return pdfPluginEnabled() && classFromPDFKit(@"PDFLayerController");
- Source/WebKit/WebProcess/WebPage/win/WebPageWin.cpp -5 lines
Lines 63-73 void WebPage::platformEditorState(Frame& Source/WebKit/WebProcess/WebPage/win/WebPageWin.cpp_sec1
63
{
63
{
64
}
64
}
65
65
66
void WebPage::platformPreferencesDidChange(const WebPreferencesStore&)
67
{
68
    notImplemented();
69
}
70
71
bool WebPage::performDefaultBehaviorForKeyEvent(const WebKeyboardEvent& keyboardEvent)
66
bool WebPage::performDefaultBehaviorForKeyEvent(const WebKeyboardEvent& keyboardEvent)
72
{
67
{
73
    if (keyboardEvent.type() != WebEvent::KeyDown && keyboardEvent.type() != WebEvent::RawKeyDown)
68
    if (keyboardEvent.type() != WebEvent::KeyDown && keyboardEvent.type() != WebEvent::RawKeyDown)
- Source/WebKit/WebProcess/WebPage/wpe/WebPageWPE.cpp -5 lines
Lines 49-59 void WebPage::platformEditorState(Frame& Source/WebKit/WebProcess/WebPage/wpe/WebPageWPE.cpp_sec1
49
    notImplemented();
49
    notImplemented();
50
}
50
}
51
51
52
void WebPage::platformPreferencesDidChange(const WebPreferencesStore& store)
53
{
54
    notImplemented();
55
}
56
57
bool WebPage::performDefaultBehaviorForKeyEvent(const WebKeyboardEvent&)
52
bool WebPage::performDefaultBehaviorForKeyEvent(const WebKeyboardEvent&)
58
{
53
{
59
    notImplemented();
54
    notImplemented();

Return to Bug 178823