[Settings] Generate more of the WebKit preferences code
authorweinig@apple.com <weinig@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sat, 28 Oct 2017 18:24:39 +0000 (18:24 +0000)
committerweinig@apple.com <weinig@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sat, 28 Oct 2017 18:24:39 +0000 (18:24 +0000)
https://bugs.webkit.org/show_bug.cgi?id=178945

Reviewed by Chris Dumez.

Generate WebPreferencesKeys.{h,cpp} and WebPreferencesStoreDefaultsMap.cpp

* CMakeLists.txt:
* DerivedSources.make:
* WebKit.xcodeproj/project.pbxproj:
* Scripts/GeneratePreferences.rb:

    Generate new files.

* Scripts/PreferencesTemplates/WebPreferencesDefinitions.h.erb:

    Update include.

* Scripts/PreferencesTemplates/WebPreferencesKeys.cpp.erb: Added.
* Scripts/PreferencesTemplates/WebPreferencesKeys.h.erb: Added.
* Scripts/PreferencesTemplates/WebPreferencesStoreDefaultsMap.cpp.erb: Added.

    Add template files for new generated files.

* Shared/WebPreferencesDefaultValues.h: Copied from Source/WebKit/Shared/WebPreferencesDefinitionsBase.h.
* Shared/WebPreferencesDefinitionsBase.h:

    Renamed WebPreferencesDefinitionsBase.h to WebPreferencesDefaultValues.h to better indicate what it is.

* Shared/WebPreferencesKeys.cpp: Removed.
* Shared/WebPreferencesKeys.h: Removed.

    Replaced with generated versions.

* Shared/WebPreferencesStore.cpp:
(WebKit::defaults): Deleted.
* Shared/WebPreferencesStore.h:

    Replace macro driven defaults map with generated WebPreferencesStoreDefaultsMap.cpp.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@224154 268f45cc-cd09-0410-ab3c-d52691b4dbfc

13 files changed:
Source/WebKit/CMakeLists.txt
Source/WebKit/ChangeLog
Source/WebKit/DerivedSources.make
Source/WebKit/Scripts/GeneratePreferences.rb
Source/WebKit/Scripts/PreferencesTemplates/WebPreferencesDefinitions.h.erb
Source/WebKit/Scripts/PreferencesTemplates/WebPreferencesKeys.cpp.erb [moved from Source/WebKit/Shared/WebPreferencesKeys.cpp with 73% similarity]
Source/WebKit/Scripts/PreferencesTemplates/WebPreferencesKeys.h.erb [moved from Source/WebKit/Shared/WebPreferencesKeys.h with 72% similarity]
Source/WebKit/Scripts/PreferencesTemplates/WebPreferencesStoreDefaultsMap.cpp.erb [new file with mode: 0644]
Source/WebKit/Shared/WebPreferences.yaml
Source/WebKit/Shared/WebPreferencesDefaultValues.h [moved from Source/WebKit/Shared/WebPreferencesDefinitionsBase.h with 100% similarity]
Source/WebKit/Shared/WebPreferencesStore.cpp
Source/WebKit/Shared/WebPreferencesStore.h
Source/WebKit/WebKit.xcodeproj/project.pbxproj

index 1604068..9238d51 100644 (file)
@@ -209,7 +209,6 @@ set(WebKit_SOURCES
     Shared/WebPageGroupData.cpp
     Shared/WebPlatformTouchPoint.cpp
     Shared/WebPopupItem.cpp
-    Shared/WebPreferencesKeys.cpp
     Shared/WebPreferencesStore.cpp
     Shared/WebProcessCreationParameters.cpp
     Shared/WebRenderLayer.cpp
@@ -909,10 +908,13 @@ list(APPEND WebKit_HEADERS
 set(WebKit_WEB_PREFERENCES_TEMPLATES
     ${WEBKIT_DIR}/Scripts/PreferencesTemplates/WebPageUpdatePreferences.cpp.erb
     ${WEBKIT_DIR}/Scripts/PreferencesTemplates/WebPreferencesDefinitions.h.erb
+    ${WEBKIT_DIR}/Scripts/PreferencesTemplates/WebPreferencesKeys.cpp.erb
+    ${WEBKIT_DIR}/Scripts/PreferencesTemplates/WebPreferencesKeys.h.erb
+    ${WEBKIT_DIR}/Scripts/PreferencesTemplates/WebPreferencesStoreDefaultsMap.cpp.erb
 )
 
 add_custom_command(
-    OUTPUT ${DERIVED_SOURCES_WEBKIT_DIR}/WebPageUpdatePreferences.cpp ${DERIVED_SOURCES_WEBKIT_DIR}/WebPreferencesDefinitions.h
+    OUTPUT ${DERIVED_SOURCES_WEBKIT_DIR}/WebPageUpdatePreferences.cpp ${DERIVED_SOURCES_WEBKIT_DIR}/WebPreferencesDefinitions.h ${DERIVED_SOURCES_WEBKIT_DIR}/WebPreferencesKeys.cpp ${DERIVED_SOURCES_WEBKIT_DIR}/WebPreferencesKeys.h ${DERIVED_SOURCES_WEBKIT_DIR}/WebPreferencesStoreDefaultsMap.cpp
     MAIN_DEPENDENCY ${WEBKIT_DIR}/Shared/WebPreferences.yaml
     DEPENDS ${WebKit_WEB_PREFERENCES_TEMPLATES}
     COMMAND ${RUBY_EXECUTABLE} ${WEBKIT_DIR}/Scripts/GeneratePreferences.rb --input ${WEBKIT_DIR}/Shared/WebPreferences.yaml --outputDir "${DERIVED_SOURCES_WEBKIT_DIR}"
@@ -920,10 +922,13 @@ add_custom_command(
 
 list(APPEND WebKit_HEADERS
     ${DERIVED_SOURCES_WEBKIT_DIR}/WebPreferencesDefinitions.h
+    ${DERIVED_SOURCES_WEBKIT_DIR}/WebPreferencesKeys.h
 )
 
 list(APPEND WebKit_SOURCES
     ${DERIVED_SOURCES_WEBKIT_DIR}/WebPageUpdatePreferences.cpp
+    ${DERIVED_SOURCES_WEBKIT_DIR}/WebPreferencesKeys.cpp
+    ${DERIVED_SOURCES_WEBKIT_DIR}/WebPreferencesStoreDefaultsMap.cpp
 )
 
 
index 38b315c..b41fd45 100644 (file)
@@ -1,3 +1,45 @@
+2017-10-27  Sam Weinig  <sam@webkit.org>
+
+        [Settings] Generate more of the WebKit preferences code
+        https://bugs.webkit.org/show_bug.cgi?id=178945
+
+        Reviewed by Chris Dumez.
+
+        Generate WebPreferencesKeys.{h,cpp} and WebPreferencesStoreDefaultsMap.cpp
+
+        * CMakeLists.txt:
+        * DerivedSources.make:
+        * WebKit.xcodeproj/project.pbxproj:
+        * Scripts/GeneratePreferences.rb:
+        
+            Generate new files.
+        
+        * Scripts/PreferencesTemplates/WebPreferencesDefinitions.h.erb:
+        
+            Update include.
+        
+        * Scripts/PreferencesTemplates/WebPreferencesKeys.cpp.erb: Added.
+        * Scripts/PreferencesTemplates/WebPreferencesKeys.h.erb: Added.
+        * Scripts/PreferencesTemplates/WebPreferencesStoreDefaultsMap.cpp.erb: Added.
+
+            Add template files for new generated files.
+
+        * Shared/WebPreferencesDefaultValues.h: Copied from Source/WebKit/Shared/WebPreferencesDefinitionsBase.h.
+        * Shared/WebPreferencesDefinitionsBase.h:
+        
+            Renamed WebPreferencesDefinitionsBase.h to WebPreferencesDefaultValues.h to better indicate what it is.
+        
+        * Shared/WebPreferencesKeys.cpp: Removed.
+        * Shared/WebPreferencesKeys.h: Removed.
+        
+            Replaced with generated versions.
+
+        * Shared/WebPreferencesStore.cpp:
+        (WebKit::defaults): Deleted.
+        * Shared/WebPreferencesStore.h:
+        
+            Replace macro driven defaults map with generated WebPreferencesStoreDefaultsMap.cpp.
+
 2017-10-28  Chris Dumez  <cdumez@apple.com>
 
         self.ExtendableEvent / Client / Clients / WindowClient do not exist in a Service Worker
index 763f89a..9abdfab 100644 (file)
@@ -290,10 +290,14 @@ all : WebAutomationSessionProxyScriptSource.h
 WEB_PREFERENCES_TEMPLATES = \
     $(WebKit2)/Scripts/PreferencesTemplates/WebPageUpdatePreferences.cpp.erb \
     $(WebKit2)/Scripts/PreferencesTemplates/WebPreferencesDefinitions.h.erb \
+    $(WebKit2)/Scripts/PreferencesTemplates/WebPreferencesKeys.h.erb \
+    $(WebKit2)/Scripts/PreferencesTemplates/WebPreferencesKeys.cpp.erb \
+    $(WebKit2)/Scripts/PreferencesTemplates/WebPreferencesStoreDefaultsMap.cpp.erb \
+
 #
 
-all : WebPreferencesDefinitions.h WebPageUpdatePreferences.cpp
+all : WebPreferencesDefinitions.h WebPageUpdatePreferences.cpp WebPreferencesKeys.h WebPreferencesKeys.cpp WebPreferencesStoreDefaultsMap.cpp
 
-WebPreferencesDefinitions%h WebPageUpdatePreferences%cpp: $(WebKit2)/Scripts/GeneratePreferences.rb $(WEB_PREFERENCES_TEMPLATES) $(WebKit2)/Shared/WebPreferences.yaml
+WebPreferencesDefinitions%h WebPageUpdatePreferences%cpp WebPreferencesKeys%h WebPreferencesKeys%cpp WebPreferencesStoreDefaultsMap%cpp : $(WebKit2)/Scripts/GeneratePreferences.rb $(WEB_PREFERENCES_TEMPLATES) $(WebKit2)/Shared/WebPreferences.yaml
        $(RUBY) $< --input $(WebKit2)/Shared/WebPreferences.yaml
 
index 1dad2f9..fe61fb8 100755 (executable)
@@ -156,3 +156,6 @@ end
 preferences = Preferences.new(parsedPreferences)
 preferences.renderToFile("PreferencesTemplates/WebPreferencesDefinitions.h.erb", File.join(options[:outputDirectory], "WebPreferencesDefinitions.h"))
 preferences.renderToFile("PreferencesTemplates/WebPageUpdatePreferences.cpp.erb", File.join(options[:outputDirectory], "WebPageUpdatePreferences.cpp"))
+preferences.renderToFile("PreferencesTemplates/WebPreferencesKeys.h.erb", File.join(options[:outputDirectory], "WebPreferencesKeys.h"))
+preferences.renderToFile("PreferencesTemplates/WebPreferencesKeys.cpp.erb", File.join(options[:outputDirectory], "WebPreferencesKeys.cpp"))
+preferences.renderToFile("PreferencesTemplates/WebPreferencesStoreDefaultsMap.cpp.erb", File.join(options[:outputDirectory], "WebPreferencesStoreDefaultsMap.cpp"))
index 80d8254..9cb732d 100644 (file)
@@ -27,7 +27,7 @@
 
 #pragma once
 
-#include "WebPreferencesDefinitionsBase.h"
+#include "WebPreferencesDefaultValues.h"
 
 // macro(KeyUpper, KeyLower, TypeNameUpper, TypeName, DefaultValue, HumanReadableName, HumanReadableDescription)
 
@@ -1,5 +1,7 @@
 /*
- * Copyright (C) 2010-2017 Apple Inc. All rights reserved.
+ * THIS FILE WAS AUTOMATICALLY GENERATED, DO NOT EDIT.
+ *
+ * Copyright (C) 2017 Apple Inc. All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
 namespace WebKit {
 namespace WebPreferencesKey {
 
-#define DEFINE_KEY_GETTERS(KeyUpper, KeyLower, TypeName, Type, DefaultValue, HumanReadableName, HumanReadableDescription) \
-        const String& KeyLower##Key() \
-        { \
-            static NeverDestroyed<String> key(MAKE_STATIC_STRING_IMPL(#KeyUpper)); \
-            return key; \
-        }
-
-FOR_EACH_WEBKIT_PREFERENCE(DEFINE_KEY_GETTERS)
-FOR_EACH_WEBKIT_DEBUG_PREFERENCE(DEFINE_KEY_GETTERS)
-FOR_EACH_WEBKIT_EXPERIMENTAL_FEATURE_PREFERENCE(DEFINE_KEY_GETTERS)
+<%- for @pref in @preferences do -%>
+const String& <%= @pref.nameLower %>Key()
+{
+    static NeverDestroyed<String> key(MAKE_STATIC_STRING_IMPL("<%= @pref.name %>"));
+    return key;
+}
 
-#undef DEFINE_KEY_GETTERS
+<%- end -%>
 
 } // namespace WebPreferencesKey
 } // namespace WebKit
@@ -1,5 +1,7 @@
 /*
- * Copyright (C) 2010, 2011, 2012 Apple Inc. All rights reserved.
+ * THIS FILE WAS AUTOMATICALLY GENERATED, DO NOT EDIT.
+ *
+ * Copyright (C) 2017 Apple Inc. All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
  * THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-#ifndef WebPreferencesKeys_h
-#define WebPreferencesKeys_h
+#pragma once
 
-#include "WebPreferencesDefinitions.h"
 #include <wtf/text/WTFString.h>
 
 namespace WebKit {
 namespace WebPreferencesKey {
 
-#define DECLARE_KEY_GETTERS(KeyUpper, KeyLower, TypeName, Type, DefaultValue, HumanReadableName, HumanReadableDescription) const String& KeyLower##Key();
-
-FOR_EACH_WEBKIT_PREFERENCE(DECLARE_KEY_GETTERS)
-FOR_EACH_WEBKIT_DEBUG_PREFERENCE(DECLARE_KEY_GETTERS)
-FOR_EACH_WEBKIT_EXPERIMENTAL_FEATURE_PREFERENCE(DECLARE_KEY_GETTERS)
-
-#undef DECLARE_KEY_GETTERS
+<%- for @pref in @preferences do -%>
+const String& <%= @pref.nameLower %>Key();
+<%- end -%>
 
 } // namespace WebPreferencesKey
 } // namespace WebKit
-
-#endif // WebPreferencesKeys_h
diff --git a/Source/WebKit/Scripts/PreferencesTemplates/WebPreferencesStoreDefaultsMap.cpp.erb b/Source/WebKit/Scripts/PreferencesTemplates/WebPreferencesStoreDefaultsMap.cpp.erb
new file mode 100644 (file)
index 0000000..a0e5250
--- /dev/null
@@ -0,0 +1,59 @@
+/*
+ * THIS FILE WAS AUTOMATICALLY GENERATED, DO NOT EDIT.
+ *
+ * Copyright (C) 2017 Apple Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+ * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
+ * THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include "config.h"
+#include "WebPreferencesStore.h"
+
+#include "WebPreferencesDefaultValues.h"
+#include "WebPreferencesKeys.h"
+#include <wtf/NeverDestroyed.h>
+
+// FIXME: These should added via options in WebPreferences.yaml, rather than hardcoded.
+#include "FontSmoothingLevel.h"
+#include <WebCore/DeprecatedGlobalSettings.h>
+#include <WebCore/LibWebRTCProvider.h>
+#include <WebCore/SecurityOrigin.h>
+#include <WebCore/Settings.h>
+#include <WebCore/TextEncodingRegistry.h>
+
+using namespace WebCore;
+
+namespace WebKit {
+
+WebPreferencesStore::ValueMap& WebPreferencesStore::defaults()
+{
+    static NeverDestroyed<ValueMap> defaults;
+    if (defaults.get().isEmpty()) {
+<%- for @pref in @preferences do -%>
+        defaults.get().set(WebPreferencesKey::<%= @pref.nameLower %>Key(), Value(<%= @pref.type %>(<%= @pref.defaultValue %>)));
+<%- end -%>
+    }
+
+    return defaults;
+}
+
+} // namespace WebKit
index 9560386..8c4428e 100644 (file)
@@ -1,4 +1,3 @@
-
 JavaScriptEnabled:
   type: bool
   defaultValue: true
index 1b6ea0f..6f28d77 100644 (file)
 #include "config.h"
 #include "WebPreferencesStore.h"
 
-#include "FontSmoothingLevel.h"
 #include "WebCoreArgumentCoders.h"
 #include "WebPreferencesKeys.h"
-#include <WebCore/DeprecatedGlobalSettings.h>
-#include <WebCore/LibWebRTCProvider.h>
-#include <WebCore/Settings.h>
-#include <WebCore/TextEncodingRegistry.h>
 #include <wtf/NeverDestroyed.h>
 
 using namespace WebCore;
@@ -158,20 +153,6 @@ template<> uint32_t as<uint32_t>(const WebPreferencesStore::Value& value) { retu
 template<> double as<double>(const WebPreferencesStore::Value& value) { return value.asDouble(); }
 
 
-static WebPreferencesStore::ValueMap& defaults()
-{
-    static NeverDestroyed<WebPreferencesStore::ValueMap> defaults;
-    if (defaults.get().isEmpty()) {
-#define DEFINE_DEFAULTS(KeyUpper, KeyLower, TypeName, Type, DefaultValue, HumanReadableName, HumanReadableDescription) defaults.get().set(WebPreferencesKey::KeyLower##Key(), WebPreferencesStore::Value((Type)DefaultValue));
-        FOR_EACH_WEBKIT_PREFERENCE(DEFINE_DEFAULTS)
-        FOR_EACH_WEBKIT_DEBUG_PREFERENCE(DEFINE_DEFAULTS)
-        FOR_EACH_WEBKIT_EXPERIMENTAL_FEATURE_PREFERENCE(DEFINE_DEFAULTS)
-#undef DEFINE_DEFAULTS
-    }
-
-    return defaults;
-}
-
 template<typename MappedType>
 static MappedType valueForKey(const WebPreferencesStore::ValueMap& values, const WebPreferencesStore::ValueMap& overridenDefaults, const String& key)
 {
@@ -183,7 +164,7 @@ static MappedType valueForKey(const WebPreferencesStore::ValueMap& values, const
     if (overridenDefaultsIt != overridenDefaults.end() && overridenDefaultsIt->value.type() == ToType<MappedType>::value)
         return as<MappedType>(overridenDefaultsIt->value);
 
-    auto& defaultsMap = defaults();
+    auto& defaultsMap = WebPreferencesStore::defaults();
     auto defaultsIt = defaultsMap.find(key);
     if (defaultsIt != defaultsMap.end() && defaultsIt->value.type() == ToType<MappedType>::value)
         return as<MappedType>(defaultsIt->value);
index 85958db..d6f19da 100644 (file)
@@ -179,6 +179,8 @@ struct WebPreferencesStore {
     typedef HashMap<String, Value> ValueMap;
     ValueMap m_values;
     ValueMap m_overridenDefaults;
+
+    static ValueMap& defaults();
 };
 
 } // namespace WebKit
index a9c621a..56c9c4a 100644 (file)
                7C4ABED51AA8FCB80088AA37 /* WebCompiledContentRuleListData.h in Headers */ = {isa = PBXBuildFile; fileRef = 7C4ABED31AA8FCB80088AA37 /* WebCompiledContentRuleListData.h */; };
                7C6D37FC172F555F009D2847 /* PageBannerMac.mm in Sources */ = {isa = PBXBuildFile; fileRef = 7C6D37FA172F555F009D2847 /* PageBannerMac.mm */; };
                7C6E70FB18B2DC7A00F24E2E /* WebProcessCocoa.mm in Sources */ = {isa = PBXBuildFile; fileRef = 7C6E70F918B2D4A000F24E2E /* WebProcessCocoa.mm */; };
-               7C85FD7F19341665000177C4 /* WebPreferencesKeys.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7C85FD7D19341665000177C4 /* WebPreferencesKeys.cpp */; };
-               7C85FD8019341665000177C4 /* WebPreferencesKeys.h in Headers */ = {isa = PBXBuildFile; fileRef = 7C85FD7E19341665000177C4 /* WebPreferencesKeys.h */; };
                7C882DF71C7E9965006BF731 /* _WKUserContentWorld.h in Headers */ = {isa = PBXBuildFile; fileRef = 7C882DF31C7E995E006BF731 /* _WKUserContentWorld.h */; settings = {ATTRIBUTES = (Private, ); }; };
                7C882DF81C7E996C006BF731 /* _WKUserContentWorld.mm in Sources */ = {isa = PBXBuildFile; fileRef = 7C882DF41C7E995E006BF731 /* _WKUserContentWorld.mm */; };
                7C882DF91C7E996F006BF731 /* _WKUserContentWorldInternal.h in Headers */ = {isa = PBXBuildFile; fileRef = 7C882DF51C7E995E006BF731 /* _WKUserContentWorldInternal.h */; };
                7CA254EB182993CE00FC8A41 /* WKBrowsingContextPolicyDelegate.h in Headers */ = {isa = PBXBuildFile; fileRef = 7CA254EA182993CE00FC8A41 /* WKBrowsingContextPolicyDelegate.h */; settings = {ATTRIBUTES = (Private, ); }; };
                7CA3793E1AC378B30079DC37 /* _WKUserContentExtensionStorePrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 7CA3793D1AC378B30079DC37 /* _WKUserContentExtensionStorePrivate.h */; settings = {ATTRIBUTES = (Private, ); }; };
                7CAB937A1D459E510070F540 /* NetworkCacheCodersCocoa.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7CAB93791D459E4B0070F540 /* NetworkCacheCodersCocoa.cpp */; };
+               7CB100F11FA3858A001729EE /* WebPreferencesKeys.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7CB100EE1FA2D74A001729EE /* WebPreferencesKeys.cpp */; };
+               7CB100F21FA3858E001729EE /* WebPreferencesDefinitions.h in Headers */ = {isa = PBXBuildFile; fileRef = 7CDE73A31F9DAB6500390312 /* WebPreferencesDefinitions.h */; };
+               7CB100F31FA3858E001729EE /* WebPreferencesKeys.h in Headers */ = {isa = PBXBuildFile; fileRef = 7CB100EF1FA2D74B001729EE /* WebPreferencesKeys.h */; };
+               7CB100F41FA38592001729EE /* WebPreferencesStoreDefaultsMap.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7CB100F01FA2D784001729EE /* WebPreferencesStoreDefaultsMap.cpp */; };
                7CB16FEF1724BA23007A0A95 /* com.apple.ist.ds.appleconnect.webplugin.sb in Copy Plug-in Sandbox Profiles */ = {isa = PBXBuildFile; fileRef = 7CB16FE21724B9B5007A0A95 /* com.apple.ist.ds.appleconnect.webplugin.sb */; };
                7CB16FF01724BA24007A0A95 /* com.apple.QuickTime Plugin.plugin.sb in Copy Plug-in Sandbox Profiles */ = {isa = PBXBuildFile; fileRef = 7CB16FE31724B9B5007A0A95 /* com.apple.QuickTime Plugin.plugin.sb */; };
                7CB16FF21724BA28007A0A95 /* com.macromedia.Flash Player.plugin.sb in Copy Plug-in Sandbox Profiles */ = {isa = PBXBuildFile; fileRef = 7CB16FE51724B9B5007A0A95 /* com.macromedia.Flash Player.plugin.sb */; };
                7C4ED3271A3119D90079BD49 /* InjectedBundleCSSStyleDeclarationHandle.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = InjectedBundleCSSStyleDeclarationHandle.h; sourceTree = "<group>"; };
                7C6D37FA172F555F009D2847 /* PageBannerMac.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = PageBannerMac.mm; sourceTree = "<group>"; };
                7C6E70F918B2D4A000F24E2E /* WebProcessCocoa.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WebProcessCocoa.mm; sourceTree = "<group>"; };
-               7C85FD7D19341665000177C4 /* WebPreferencesKeys.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WebPreferencesKeys.cpp; sourceTree = "<group>"; };
-               7C85FD7E19341665000177C4 /* WebPreferencesKeys.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebPreferencesKeys.h; sourceTree = "<group>"; };
                7C882DF31C7E995E006BF731 /* _WKUserContentWorld.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _WKUserContentWorld.h; sourceTree = "<group>"; };
                7C882DF41C7E995E006BF731 /* _WKUserContentWorld.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = _WKUserContentWorld.mm; sourceTree = "<group>"; };
                7C882DF51C7E995E006BF731 /* _WKUserContentWorldInternal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _WKUserContentWorldInternal.h; sourceTree = "<group>"; };
                7CA254EA182993CE00FC8A41 /* WKBrowsingContextPolicyDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WKBrowsingContextPolicyDelegate.h; sourceTree = "<group>"; };
                7CA3793D1AC378B30079DC37 /* _WKUserContentExtensionStorePrivate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = _WKUserContentExtensionStorePrivate.h; sourceTree = "<group>"; };
                7CAB93791D459E4B0070F540 /* NetworkCacheCodersCocoa.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = NetworkCacheCodersCocoa.cpp; sourceTree = "<group>"; };
+               7CB100EE1FA2D74A001729EE /* WebPreferencesKeys.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = WebPreferencesKeys.cpp; sourceTree = "<group>"; };
+               7CB100EF1FA2D74B001729EE /* WebPreferencesKeys.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = WebPreferencesKeys.h; sourceTree = "<group>"; };
+               7CB100F01FA2D784001729EE /* WebPreferencesStoreDefaultsMap.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = WebPreferencesStoreDefaultsMap.cpp; sourceTree = "<group>"; };
                7CB16FE21724B9B5007A0A95 /* com.apple.ist.ds.appleconnect.webplugin.sb */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = com.apple.ist.ds.appleconnect.webplugin.sb; sourceTree = "<group>"; };
                7CB16FE31724B9B5007A0A95 /* com.apple.QuickTime Plugin.plugin.sb */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "com.apple.QuickTime Plugin.plugin.sb"; sourceTree = "<group>"; };
                7CB16FE41724B9B5007A0A95 /* com.apple.WebKit.plugin-common.sb.in */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "com.apple.WebKit.plugin-common.sb.in"; sourceTree = "<group>"; };
                7CD622751739D863005BD7FF /* PluginSandboxProfile.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = PluginSandboxProfile.mm; sourceTree = "<group>"; };
                7CD622761739D863005BD7FF /* PluginSandboxProfile.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PluginSandboxProfile.h; sourceTree = "<group>"; };
                7CDE739F1F9DA37A00390312 /* WebPreferences.yaml */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = WebPreferences.yaml; sourceTree = "<group>"; };
-               7CDE73A01F9DA37B00390312 /* WebPreferencesDefinitionsBase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebPreferencesDefinitionsBase.h; sourceTree = "<group>"; };
+               7CDE73A01F9DA37B00390312 /* WebPreferencesDefaultValues.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebPreferencesDefaultValues.h; sourceTree = "<group>"; };
                7CDE73A11F9DA41400390312 /* GeneratePreferences.rb */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.script.ruby; path = GeneratePreferences.rb; sourceTree = "<group>"; };
                7CDE73A21F9DA59700390312 /* PreferencesTemplates */ = {isa = PBXFileReference; lastKnownFileType = folder; path = PreferencesTemplates; sourceTree = "<group>"; };
                7CDE73A31F9DAB6500390312 /* WebPreferencesDefinitions.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = WebPreferencesDefinitions.h; sourceTree = "<group>"; };
                                BC5744ED12638FB3006F0F12 /* WebPopupItem.cpp */,
                                BC5744EE12638FB3006F0F12 /* WebPopupItem.h */,
                                7CDE739F1F9DA37A00390312 /* WebPreferences.yaml */,
-                               7CDE73A01F9DA37B00390312 /* WebPreferencesDefinitionsBase.h */,
-                               7C85FD7D19341665000177C4 /* WebPreferencesKeys.cpp */,
-                               7C85FD7E19341665000177C4 /* WebPreferencesKeys.h */,
+                               7CDE73A01F9DA37B00390312 /* WebPreferencesDefaultValues.h */,
                                BCD598AB112B7FDF00EC8C23 /* WebPreferencesStore.cpp */,
                                BCD598AA112B7FDF00EC8C23 /* WebPreferencesStore.h */,
                                BC306823125A6B9400E71278 /* WebProcessCreationParameters.cpp */,
                                1AB1F7941D1B3613007C9BD1 /* WebPaymentCoordinatorProxyMessageReceiver.cpp */,
                                1AB1F7951D1B3613007C9BD1 /* WebPaymentCoordinatorProxyMessages.h */,
                                7CDE73A31F9DAB6500390312 /* WebPreferencesDefinitions.h */,
+                               7CB100EE1FA2D74A001729EE /* WebPreferencesKeys.cpp */,
+                               7CB100EF1FA2D74B001729EE /* WebPreferencesKeys.h */,
+                               7CB100F01FA2D784001729EE /* WebPreferencesStoreDefaultsMap.cpp */,
                                1A043F6712514D8B00FFBFB5 /* WebProcessConnectionMessageReceiver.cpp */,
                                1A043F6812514D8B00FFBFB5 /* WebProcessConnectionMessages.h */,
                                BC3066BC125A442100E71278 /* WebProcessMessageReceiver.cpp */,
                                BC574E631267D080006F0F12 /* WebPopupMenuProxy.h in Headers */,
                                BC5750971268F3C6006F0F12 /* WebPopupMenuProxyMac.h in Headers */,
                                BCD597FF112B57BE00EC8C23 /* WebPreferences.h in Headers */,
-                               7C85FD8019341665000177C4 /* WebPreferencesKeys.h in Headers */,
+                               7CB100F21FA3858E001729EE /* WebPreferencesDefinitions.h in Headers */,
+                               7CB100F31FA3858E001729EE /* WebPreferencesKeys.h in Headers */,
                                BCD598AC112B7FDF00EC8C23 /* WebPreferencesStore.h in Headers */,
                                A1C512C9190656E500448914 /* WebPreviewLoaderClient.h in Headers */,
                                BC032D9710F437AF0058C15A /* WebProcess.h in Headers */,
                                BCC43AC7127B99DE00317F16 /* WebPopupMenuMac.mm in Sources */,
                                BC5750981268F3C6006F0F12 /* WebPopupMenuProxyMac.mm in Sources */,
                                BCD59800112B57BE00EC8C23 /* WebPreferences.cpp in Sources */,
-                               7C85FD7F19341665000177C4 /* WebPreferencesKeys.cpp in Sources */,
+                               7CB100F11FA3858A001729EE /* WebPreferencesKeys.cpp in Sources */,
                                BC84EB1812A7100C0083F2DA /* WebPreferencesMac.mm in Sources */,
                                BCD598AD112B7FDF00EC8C23 /* WebPreferencesStore.cpp in Sources */,
+                               7CB100F41FA38592001729EE /* WebPreferencesStoreDefaultsMap.cpp in Sources */,
                                A1C512C8190656E500448914 /* WebPreviewLoaderClient.cpp in Sources */,
                                BC111AE4112F5C2600337BAB /* WebProcess.cpp in Sources */,
                                7C6E70FB18B2DC7A00F24E2E /* WebProcessCocoa.mm in Sources */,