Web Inspector: Unchecking Enable Preview Features on Engineering and Preview builds does not affect WI.arePreviewFeaturesEnabled()
https://bugs.webkit.org/show_bug.cgi?id=204026

Reviewed by Brian Burg.

Make `WI.arePreviewFeaturesEnabled()` return false when Enable Preview Features is unchecked.

* UserInterface/Base/Setting.js:
(WI.canShowPreviewFeatures):
(WI.arePreviewFeaturesEnabled):
(WI.isTechnologyPreviewBuild): Deleted.
(WI.canShowPreviewFeatures): Added.
* UserInterface/Views/SettingsTabContentView.js:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@254773 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/Source/WebInspectorUI/ChangeLog b/Source/WebInspectorUI/ChangeLog
index 4454ec2..f07d6c7 100644
--- a/Source/WebInspectorUI/ChangeLog
+++ b/Source/WebInspectorUI/ChangeLog
@@ -1,3 +1,19 @@
+2020-01-17  Nikita Vasilyev  <nvasilyev@apple.com>
+
+        Web Inspector: Unchecking Enable Preview Features on Engineering and Preview builds does not affect WI.arePreviewFeaturesEnabled()
+        https://bugs.webkit.org/show_bug.cgi?id=204026
+
+        Reviewed by Brian Burg.
+
+        Make `WI.arePreviewFeaturesEnabled()` return false when Enable Preview Features is unchecked.
+
+        * UserInterface/Base/Setting.js:
+        (WI.canShowPreviewFeatures):
+        (WI.arePreviewFeaturesEnabled):
+        (WI.isTechnologyPreviewBuild): Deleted.
+        (WI.canShowPreviewFeatures): Added.
+        * UserInterface/Views/SettingsTabContentView.js:
+
 2020-01-16  Devin Rousso  <drousso@apple.com>
 
         Web Inspector: add links to reference pages
diff --git a/Source/WebInspectorUI/UserInterface/Base/Setting.js b/Source/WebInspectorUI/UserInterface/Base/Setting.js
index aa20f7c..1a53cb9 100644
--- a/Source/WebInspectorUI/UserInterface/Base/Setting.js
+++ b/Source/WebInspectorUI/UserInterface/Base/Setting.js
@@ -216,7 +216,7 @@
     zoomFactor: new WI.Setting("zoom-factor", 1),
 
     // Experimental
-    experimentalEnablePreviewFeatures: new WI.Setting("experimental-enable-preview-features", false),
+    experimentalEnablePreviewFeatures: new WI.Setting("experimental-enable-preview-features", true),
     experimentalEnableNewTabBar: new WI.Setting("experimental-enable-new-tab-bar", false),
     experimentalEnableStylesJumpToEffective: new WI.Setting("experimental-styles-jump-to-effective", false),
 
@@ -245,18 +245,15 @@
 
 WI.previewFeatures = [];
 
-WI.isTechnologyPreviewBuild = function()
+// WebKit may by default enable certain features in a Technology Preview that are not enabled in trunk.
+// Provide a switch that will make non-preview builds behave like an experimental build, for those preview features.
+WI.canShowPreviewFeatures = function()
 {
-    return WI.isExperimentalBuild && !WI.isEngineeringBuild;
+    let hasPreviewFeatures = WI.previewFeatures.length > 0;
+    return hasPreviewFeatures && WI.isExperimentalBuild;
 };
 
 WI.arePreviewFeaturesEnabled = function()
 {
-    if (WI.isExperimentalBuild)
-        return true;
-
-    if (WI.settings.experimentalEnablePreviewFeatures.value)
-        return true;
-
-    return false;
+    return WI.canShowPreviewFeatures() && WI.settings.experimentalEnablePreviewFeatures.value;
 };
diff --git a/Source/WebInspectorUI/UserInterface/Views/SettingsTabContentView.js b/Source/WebInspectorUI/UserInterface/Views/SettingsTabContentView.js
index 03e5452..ccd9024 100644
--- a/Source/WebInspectorUI/UserInterface/Views/SettingsTabContentView.js
+++ b/Source/WebInspectorUI/UserInterface/Views/SettingsTabContentView.js
@@ -355,10 +355,7 @@
 
         let initialValues = new Map;
 
-        // WebKit may by default enable certain features in a Technology Preview that are not enabled in trunk.
-        // Provide a switch that will make non-preview builds behave like an experimental build, for those preview features.
-        let hasPreviewFeatures = WI.previewFeatures.length > 0;
-        if (hasPreviewFeatures && (WI.isTechnologyPreviewBuild() || WI.isEngineeringBuild)) {
+        if (WI.canShowPreviewFeatures()) {
             experimentalSettingsView.addSetting(WI.UIString("Staging:"), WI.settings.experimentalEnablePreviewFeatures, WI.UIString("Enable Preview Features"));
             experimentalSettingsView.addSeparator();
         }