[Setting] Only expose experimental features that are compiled in
authorcommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 30 Oct 2017 19:45:49 +0000 (19:45 +0000)
committercommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 30 Oct 2017 19:45:49 +0000 (19:45 +0000)
https://bugs.webkit.org/show_bug.cgi?id=179023

Patch by Sam Weinig <sam@webkit.org> on 2017-10-30
Reviewed by Tim Horton.

* Scripts/PreferencesTemplates/WebPreferencesExperimentalFeatures.cpp.erb:

    Update template to conditionally expose experimental features based on their
    'condition' option in WebPreferences.yaml

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

Source/WebKit/ChangeLog
Source/WebKit/Scripts/PreferencesTemplates/WebPreferencesExperimentalFeatures.cpp.erb

index f67b059..f4c2337 100644 (file)
@@ -1,3 +1,15 @@
+2017-10-30  Sam Weinig  <sam@webkit.org>
+
+        [Setting] Only expose experimental features that are compiled in
+        https://bugs.webkit.org/show_bug.cgi?id=179023
+
+        Reviewed by Tim Horton.
+
+        * Scripts/PreferencesTemplates/WebPreferencesExperimentalFeatures.cpp.erb:
+        
+            Update template to conditionally expose experimental features based on their
+            'condition' option in WebPreferences.yaml
+
 2017-10-30  Michael Catanzaro  <mcatanzaro@igalia.com>
 
         [WPE] Fix build warnings
index b153274..ef1b493 100644 (file)
@@ -50,7 +50,13 @@ const Vector<RefPtr<API::Object>>& WebPreferences::experimentalFeatures()
 {
     static NeverDestroyed<Vector<RefPtr<API::Object>>> features(std::initializer_list<RefPtr<API::Object>> {
 <%- for @pref in @experimentalFeatures do -%>
+<%- if @pref.condition -%>
+#if <%= @pref.condition %>
+<%- end -%>
         API::ExperimentalFeature::create(<%= @pref.humanReadableName %>, "<%= @pref.name %>", <%= @pref.humanReadableDescription %>, <%= @pref.defaultValue %>),
+<%- if @pref.condition -%>
+#endif
+<%- end -%>
 <%- end -%>
     });
 
@@ -66,7 +72,13 @@ bool WebPreferences::isEnabledForFeature(const API::ExperimentalFeature& feature
 
     static FeatureGetterMapping getters[] = {
 <%- for @pref in @experimentalFeatures do -%>
+<%- if @pref.condition -%>
+#if <%= @pref.condition %>
+<%- end -%>
         { "<%= @pref.name %>", &WebPreferences::<%= @pref.nameLower %> },
+<%- if @pref.condition -%>
+#endif
+<%- end -%>
 <%- end -%>
     };
 
@@ -89,7 +101,13 @@ void WebPreferences::setEnabledForFeature(bool value, const API::ExperimentalFea
 
     static FeatureSetterMapping setters[] = {
 <%- for @pref in @experimentalFeatures do -%>
+<%- if @pref.condition -%>
+#if <%= @pref.condition %>
+<%- end -%>
         { "<%= @pref.name %>", &WebPreferences::set<%= @pref.name %> },
+<%- if @pref.condition -%>
+#endif
+<%- end -%>
 <%- end -%>
     };
 
@@ -106,7 +124,13 @@ void WebPreferences::setEnabledForFeature(bool value, const API::ExperimentalFea
 void WebPreferences::enableAllExperimentalFeatures()
 {
 <%- for @pref in @experimentalFeatures do -%>
+<%- if @pref.condition -%>
+#if <%= @pref.condition %>
+<%- end -%>
     set<%= @pref.name %>(true);
+<%- if @pref.condition -%>
+#endif
+<%- end -%>
 <%- end -%>
 }