<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>[179828] trunk/Source/WebKit2</title>
</head>
<body>

<style type="text/css"><!--
#msg dl.meta { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dl.meta dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer, #logmsg { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt;  }
#msg dl a { font-weight: bold}
#msg dl a:link    { color:#fc3; }
#msg dl a:active  { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre { overflow: auto; background: #ffc; border: 1px #fa0 solid; padding: 6px; }
#logmsg { background: #ffc; border: 1px #fa0 solid; padding: 1em 1em 0 1em; }
#logmsg p, #logmsg pre, #logmsg blockquote { margin: 0 0 1em 0; }
#logmsg p, #logmsg li, #logmsg dt, #logmsg dd { line-height: 14pt; }
#logmsg h1, #logmsg h2, #logmsg h3, #logmsg h4, #logmsg h5, #logmsg h6 { margin: .5em 0; }
#logmsg h1:first-child, #logmsg h2:first-child, #logmsg h3:first-child, #logmsg h4:first-child, #logmsg h5:first-child, #logmsg h6:first-child { margin-top: 0; }
#logmsg ul, #logmsg ol { padding: 0; list-style-position: inside; margin: 0 0 0 1em; }
#logmsg ul { text-indent: -1em; padding-left: 1em; }#logmsg ol { text-indent: -1.5em; padding-left: 1.5em; }
#logmsg > ul, #logmsg > ol { margin: 0 0 1em 0; }
#logmsg pre { background: #eee; padding: 1em; }
#logmsg blockquote { border: 1px solid #fa0; border-left-width: 10px; padding: 1em 1em 0 1em; background: white;}
#logmsg dl { margin: 0; }
#logmsg dt { font-weight: bold; }
#logmsg dd { margin: 0; padding: 0 0 0.5em 0; }
#logmsg dd:before { content:'\00bb';}
#logmsg table { border-spacing: 0px; border-collapse: collapse; border-top: 4px solid #fa0; border-bottom: 1px solid #fa0; background: #fff; }
#logmsg table th { text-align: left; font-weight: normal; padding: 0.2em 0.5em; border-top: 1px dotted #fa0; }
#logmsg table td { text-align: right; border-top: 1px dotted #fa0; padding: 0.2em 0.5em; }
#logmsg table thead th { text-align: center; border-bottom: 1px solid #fa0; }
#logmsg table th.Corner { text-align: left; }
#logmsg hr { border: none 0; border-top: 2px dashed #fa0; height: 1px; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff  {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<div id="msg">
<dl class="meta">
<dt>Revision</dt> <dd><a href="http://trac.webkit.org/projects/webkit/changeset/179828">179828</a></dd>
<dt>Author</dt> <dd>burg@cs.washington.edu</dd>
<dt>Date</dt> <dd>2015-02-09 08:37:41 -0800 (Mon, 09 Feb 2015)</dd>
</dl>

<h3>Log Message</h3>
<pre>REGRESSION(<a href="http://trac.webkit.org/projects/webkit/changeset/179705">r179705</a>): 2nd-level inspector availability no longer controlled by DeveloperExtrasEnabled user default
https://bugs.webkit.org/show_bug.cgi?id=141343

Reviewed by Timothy Hatcher.

The regression was caused by the switch to using WKWebViewConfiguration and
its default WebPreferences object, which is used to populate the inspector page's
Settings object. This WebPreferences is initialized with no identifier, so
only preferences in the FOR_EACH_WEBKIT_DEBUG_*_PREFERENCE macros are populated
from NSUserDefaults.

The simplest fix is to move DeveloperExtrasEnabled into the DEBUG group.

Previously, each inspector level had a unique identifier such as
__WebInspectorPageGroupLevelN__, and the n+1 level inspector was enabled
by toggling __WebInspectorPageGroupLevelN__.WebKit2DeveloperExrasEnabled.
With the move to the DEBUG group, the preference becomes simply
WebKitDeveloperExtrasEnabled, which enables any level of inspector.
(This does not clash with Safari's &quot;Show Develop Menu&quot; preference, which uses
the key &quot;WebKitDeveloperExtrasEnabledPreferenceKey&quot;)

* Shared/WebPreferencesDefinitions.h:</pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkSourceWebKit2ChangeLog">trunk/Source/WebKit2/ChangeLog</a></li>
<li><a href="#trunkSourceWebKit2SharedWebPreferencesDefinitionsh">trunk/Source/WebKit2/Shared/WebPreferencesDefinitions.h</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkSourceWebKit2ChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/ChangeLog (179827 => 179828)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/ChangeLog        2015-02-09 16:22:53 UTC (rev 179827)
+++ trunk/Source/WebKit2/ChangeLog        2015-02-09 16:37:41 UTC (rev 179828)
</span><span class="lines">@@ -1,3 +1,28 @@
</span><ins>+2015-02-09  Brian J. Burg  &lt;burg@cs.washington.edu&gt;
+
+        REGRESSION(r179705): 2nd-level inspector availability no longer controlled by DeveloperExtrasEnabled user default
+        https://bugs.webkit.org/show_bug.cgi?id=141343
+
+        Reviewed by Timothy Hatcher.
+
+        The regression was caused by the switch to using WKWebViewConfiguration and
+        its default WebPreferences object, which is used to populate the inspector page's
+        Settings object. This WebPreferences is initialized with no identifier, so
+        only preferences in the FOR_EACH_WEBKIT_DEBUG_*_PREFERENCE macros are populated
+        from NSUserDefaults.
+
+        The simplest fix is to move DeveloperExtrasEnabled into the DEBUG group.
+
+        Previously, each inspector level had a unique identifier such as
+        __WebInspectorPageGroupLevelN__, and the n+1 level inspector was enabled
+        by toggling __WebInspectorPageGroupLevelN__.WebKit2DeveloperExrasEnabled.
+        With the move to the DEBUG group, the preference becomes simply
+        WebKitDeveloperExtrasEnabled, which enables any level of inspector.
+        (This does not clash with Safari's &quot;Show Develop Menu&quot; preference, which uses
+        the key &quot;WebKitDeveloperExtrasEnabledPreferenceKey&quot;)
+
+        * Shared/WebPreferencesDefinitions.h:
+
</ins><span class="cx"> 2015-02-08  Antti Koivisto  &lt;antti@apple.com&gt;
</span><span class="cx"> 
</span><span class="cx">         Measure cache size more accurately
</span></span></pre></div>
<a id="trunkSourceWebKit2SharedWebPreferencesDefinitionsh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/Shared/WebPreferencesDefinitions.h (179827 => 179828)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/Shared/WebPreferencesDefinitions.h        2015-02-09 16:22:53 UTC (rev 179827)
+++ trunk/Source/WebKit2/Shared/WebPreferencesDefinitions.h        2015-02-09 16:37:41 UTC (rev 179828)
</span><span class="lines">@@ -95,7 +95,6 @@
</span><span class="cx">     macro(DatabasesEnabled, databasesEnabled, Bool, bool, true) \
</span><span class="cx">     macro(XSSAuditorEnabled, xssAuditorEnabled, Bool, bool, true) \
</span><span class="cx">     macro(FrameFlatteningEnabled, frameFlatteningEnabled, Bool, bool, DEFAULT_FRAME_FLATTENING_ENABLED) \
</span><del>-    macro(DeveloperExtrasEnabled, developerExtrasEnabled, Bool, bool, false) \
</del><span class="cx">     macro(JavaScriptExperimentsEnabled, javaScriptExperimentsEnabled, Bool, bool, false) \
</span><span class="cx">     macro(PrivateBrowsingEnabled, privateBrowsingEnabled, Bool, bool, false) \
</span><span class="cx">     macro(TextAreasAreResizable, textAreasAreResizable, Bool, bool, DEFAULT_TEXT_AREAS_ARE_RESIZABLE) \
</span><span class="lines">@@ -226,6 +225,7 @@
</span><span class="cx">     macro(CompositingRepaintCountersVisible, compositingRepaintCountersVisible, Bool, bool, false) \
</span><span class="cx">     macro(TiledScrollingIndicatorVisible, tiledScrollingIndicatorVisible, Bool, bool, false) \
</span><span class="cx">     macro(SimpleLineLayoutDebugBordersEnabled, simpleLineLayoutDebugBordersEnabled, Bool, bool, false) \
</span><ins>+    macro(DeveloperExtrasEnabled, developerExtrasEnabled, Bool, bool, false) \
</ins><span class="cx">     macro(LogsPageMessagesToSystemConsoleEnabled, logsPageMessagesToSystemConsoleEnabled, Bool, bool, false) \
</span><span class="cx">     macro(IgnoreViewportScalingConstraints, ignoreViewportScalingConstraints, Bool, bool, false) \
</span><span class="cx">     \
</span></span></pre>
</div>
</div>

</body>
</html>