<!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>[193148] branches/safari-601-branch/Source/WebInspectorUI</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/193148">193148</a></dd>
<dt>Author</dt> <dd>timothy@apple.com</dd>
<dt>Date</dt> <dd>2015-12-03 10:51:17 -0800 (Thu, 03 Dec 2015)</dd>
</dl>

<h3>Log Message</h3>
<pre>Merge <a href="http://trac.webkit.org/projects/webkit/changeset/188679">r188679</a>. rdar://problem/23221163</pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#branchessafari601branchSourceWebInspectorUIChangeLog">branches/safari-601-branch/Source/WebInspectorUI/ChangeLog</a></li>
<li><a href="#branchessafari601branchSourceWebInspectorUIUserInterfaceControllersCSSStyleManagerjs">branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Controllers/CSSStyleManager.js</a></li>
<li><a href="#branchessafari601branchSourceWebInspectorUIUserInterfaceControllersDOMTreeManagerjs">branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Controllers/DOMTreeManager.js</a></li>
<li><a href="#branchessafari601branchSourceWebInspectorUIUserInterfaceModelsCSSRulejs">branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Models/CSSRule.js</a></li>
<li><a href="#branchessafari601branchSourceWebInspectorUIUserInterfaceModelsCSSStyleDeclarationjs">branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Models/CSSStyleDeclaration.js</a></li>
<li><a href="#branchessafari601branchSourceWebInspectorUIUserInterfaceModelsDOMTreejs">branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Models/DOMTree.js</a></li>
<li><a href="#branchessafari601branchSourceWebInspectorUIUserInterfaceModelsFramejs">branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Models/Frame.js</a></li>
<li><a href="#branchessafari601branchSourceWebInspectorUIUserInterfaceProtocolInspectorBackendjs">branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Protocol/InspectorBackend.js</a></li>
<li><a href="#branchessafari601branchSourceWebInspectorUIUserInterfaceViewsCSSStyleDeclarationTextEditorjs">branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Views/CSSStyleDeclarationTextEditor.js</a></li>
<li><a href="#branchessafari601branchSourceWebInspectorUIUserInterfaceViewsChartDetailsSectionRowjs">branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Views/ChartDetailsSectionRow.js</a></li>
<li><a href="#branchessafari601branchSourceWebInspectorUIUserInterfaceViewsDOMTreeElementjs">branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Views/DOMTreeElement.js</a></li>
<li><a href="#branchessafari601branchSourceWebInspectorUIUserInterfaceViewsDOMTreeUpdaterjs">branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Views/DOMTreeUpdater.js</a></li>
<li><a href="#branchessafari601branchSourceWebInspectorUIUserInterfaceViewsScopeChainDetailsSidebarPaneljs">branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Views/ScopeChainDetailsSidebarPanel.js</a></li>
<li><a href="#branchessafari601branchSourceWebInspectorUIUserInterfaceViewsVisualStyleCommaSeparatedKeywordEditorjs">branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Views/VisualStyleCommaSeparatedKeywordEditor.js</a></li>
<li><a href="#branchessafari601branchSourceWebInspectorUIUserInterfaceViewsVisualStyleDetailsPaneljs">branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Views/VisualStyleDetailsPanel.js</a></li>
<li><a href="#branchessafari601branchSourceWebInspectorUIUserInterfaceViewsVisualStyleKeywordIconListjs">branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Views/VisualStyleKeywordIconList.js</a></li>
<li><a href="#branchessafari601branchSourceWebInspectorUIUserInterfaceViewsVisualStyleKeywordPickerjs">branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Views/VisualStyleKeywordPicker.js</a></li>
<li><a href="#branchessafari601branchSourceWebInspectorUIUserInterfaceViewsVisualStyleNumberInputBoxjs">branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Views/VisualStyleNumberInputBox.js</a></li>
<li><a href="#branchessafari601branchSourceWebInspectorUIUserInterfaceViewsVisualStylePropertyCombinerjs">branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Views/VisualStylePropertyCombiner.js</a></li>
<li><a href="#branchessafari601branchSourceWebInspectorUIUserInterfaceViewsVisualStylePropertyEditorjs">branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Views/VisualStylePropertyEditor.js</a></li>
<li><a href="#branchessafari601branchSourceWebInspectorUIUserInterfaceViewsVisualStylePropertyEditorLinkjs">branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Views/VisualStylePropertyEditorLink.js</a></li>
<li><a href="#branchessafari601branchSourceWebInspectorUIUserInterfaceViewsVisualStyleSelectorSectionjs">branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Views/VisualStyleSelectorSection.js</a></li>
<li><a href="#branchessafari601branchSourceWebInspectorUIUserInterfaceViewsVisualStyleTabbedPropertiesRowjs">branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Views/VisualStyleTabbedPropertiesRow.js</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="branchessafari601branchSourceWebInspectorUIChangeLog"></a>
<div class="modfile"><h4>Modified: branches/safari-601-branch/Source/WebInspectorUI/ChangeLog (193147 => 193148)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-601-branch/Source/WebInspectorUI/ChangeLog        2015-12-03 18:51:04 UTC (rev 193147)
+++ branches/safari-601-branch/Source/WebInspectorUI/ChangeLog        2015-12-03 18:51:17 UTC (rev 193148)
</span><span class="lines">@@ -1,5 +1,32 @@
</span><span class="cx"> 2015-12-02  Timothy Hatcher  &lt;timothy@apple.com&gt;
</span><span class="cx"> 
</span><ins>+        Merge r188679. rdar://problem/23221163
+
+    2015-08-19  Joseph Pecoraro  &lt;pecoraro@apple.com&gt;
+
+            Web Inspector: DOMTree leaks on main resource changes
+            https://bugs.webkit.org/show_bug.cgi?id=148158
+
+            Reviewed by Timothy Hatcher.
+
+            * UserInterface/Models/DOMTree.js:
+            (WebInspector.DOMTree.prototype.disconnect):
+            Add a way to disconnect the DOMTree and allow it to get garbage collected.
+
+            (WebInspector.DOMTree.prototype.invalidate.performInvalidate):
+            (WebInspector.DOMTree.prototype.invalidate):
+            (WebInspector.DOMTree.prototype._requestRootDOMNode):
+            (WebInspector.DOMTree.prototype._framePageExecutionContextChanged):
+            Remove some uses of the delete operator.
+
+            * UserInterface/Models/Frame.js:
+            (WebInspector.Frame.prototype.removeChildFrame):
+            (WebInspector.Frame.prototype.removeAllChildFrames):
+            (WebInspector.Frame.prototype._detachFromParentFrame):
+            When a frame gets removed from its parent, disconnect its DOMTree.
+
+2015-12-02  Timothy Hatcher  &lt;timothy@apple.com&gt;
+
</ins><span class="cx">         Merge r188678. rdar://problem/23221163
</span><span class="cx"> 
</span><span class="cx">     2015-08-19  Devin Rousso  &lt;drousso@apple.com&gt;
</span></span></pre></div>
<a id="branchessafari601branchSourceWebInspectorUIUserInterfaceControllersCSSStyleManagerjs"></a>
<div class="modfile"><h4>Modified: branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Controllers/CSSStyleManager.js (193147 => 193148)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Controllers/CSSStyleManager.js        2015-12-03 18:51:04 UTC (rev 193147)
+++ branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Controllers/CSSStyleManager.js        2015-12-03 18:51:17 UTC (rev 193148)
</span><span class="lines">@@ -268,7 +268,7 @@
</span><span class="cx">                 return;
</span><span class="cx">             }
</span><span class="cx"> 
</span><del>-            for (let styleSheetInfo of styleSheets) {
</del><ins>+            for (var styleSheetInfo of styleSheets) {
</ins><span class="cx">                 // COMPATIBILITY (iOS 6): The info did not have 'frameId', so make parentFrame null in that case.
</span><span class="cx">                 var parentFrame = &quot;frameId&quot; in styleSheetInfo ? WebInspector.frameResourceManager.frameForIdentifier(styleSheetInfo.frameId) : null;
</span><span class="cx"> 
</span></span></pre></div>
<a id="branchessafari601branchSourceWebInspectorUIUserInterfaceControllersDOMTreeManagerjs"></a>
<div class="modfile"><h4>Modified: branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Controllers/DOMTreeManager.js (193147 => 193148)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Controllers/DOMTreeManager.js        2015-12-03 18:51:04 UTC (rev 193147)
+++ branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Controllers/DOMTreeManager.js        2015-12-03 18:51:17 UTC (rev 193148)
</span><span class="lines">@@ -286,14 +286,14 @@
</span><span class="cx"> 
</span><span class="cx">         delete this._idToDOMNode[node.id];
</span><span class="cx"> 
</span><del>-        for (let i = 0; node.children &amp;&amp; i &lt; node.children.length; ++i)
</del><ins>+        for (var i = 0; node.children &amp;&amp; i &lt; node.children.length; ++i)
</ins><span class="cx">             this._unbind(node.children[i]);
</span><span class="cx"> 
</span><span class="cx">         var templateContent = node.templateContent();
</span><span class="cx">         if (templateContent)
</span><span class="cx">             this._unbind(templateContent);
</span><span class="cx"> 
</span><del>-        for (let pseudoElement of node.pseudoElements().values())
</del><ins>+        for (var pseudoElement of node.pseudoElements().values())
</ins><span class="cx">             this._unbind(pseudoElement);
</span><span class="cx"> 
</span><span class="cx">         // FIXME: Handle shadow roots.
</span></span></pre></div>
<a id="branchessafari601branchSourceWebInspectorUIUserInterfaceModelsCSSRulejs"></a>
<div class="modfile"><h4>Modified: branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Models/CSSRule.js (193147 => 193148)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Models/CSSRule.js        2015-12-03 18:51:04 UTC (rev 193147)
+++ branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Models/CSSRule.js        2015-12-03 18:51:17 UTC (rev 193148)
</span><span class="lines">@@ -183,7 +183,7 @@
</span><span class="cx">             return;
</span><span class="cx"> 
</span><span class="cx">         var mediaText = &quot;&quot;;
</span><del>-        for (let media of this._mediaList)
</del><ins>+        for (var media of this._mediaList)
</ins><span class="cx">             mediaText += media.text;
</span><span class="cx"> 
</span><span class="cx">         return mediaText;
</span></span></pre></div>
<a id="branchessafari601branchSourceWebInspectorUIUserInterfaceModelsCSSStyleDeclarationjs"></a>
<div class="modfile"><h4>Modified: branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Models/CSSStyleDeclaration.js (193147 => 193148)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Models/CSSStyleDeclaration.js        2015-12-03 18:51:04 UTC (rev 193147)
+++ branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Models/CSSStyleDeclaration.js        2015-12-03 18:51:17 UTC (rev 193148)
</span><span class="lines">@@ -290,13 +290,13 @@
</span><span class="cx">         if (mediaList.length) {
</span><span class="cx">             mediaQueriesCount = mediaList.length;
</span><span class="cx"> 
</span><del>-            for (let i = mediaQueriesCount - 1; i &gt;= 0; --i)
</del><ins>+            for (var i = mediaQueriesCount - 1; i &gt;= 0; --i)
</ins><span class="cx">                 styleText += &quot;    &quot;.repeat(mediaQueriesCount - i - 1) + &quot;@media &quot; + mediaList[i].text + &quot; {\n&quot;;
</span><span class="cx">         }
</span><span class="cx"> 
</span><span class="cx">         styleText += &quot;    &quot;.repeat(mediaQueriesCount) + this._ownerRule.selectorText + &quot; {\n&quot;;
</span><span class="cx"> 
</span><del>-        for (let property of this._properties) {
</del><ins>+        for (var property of this._properties) {
</ins><span class="cx">             if (property.anonymous)
</span><span class="cx">                 continue;
</span><span class="cx"> 
</span><span class="lines">@@ -308,7 +308,7 @@
</span><span class="cx">             styleText += &quot;\n&quot;;
</span><span class="cx">         }
</span><span class="cx"> 
</span><del>-        for (let i = mediaQueriesCount; i &gt; 0; --i)
</del><ins>+        for (var i = mediaQueriesCount; i &gt; 0; --i)
</ins><span class="cx">             styleText += &quot;    &quot;.repeat(i) + &quot;}\n&quot;;
</span><span class="cx"> 
</span><span class="cx">         styleText += &quot;}&quot;;
</span></span></pre></div>
<a id="branchessafari601branchSourceWebInspectorUIUserInterfaceModelsDOMTreejs"></a>
<div class="modfile"><h4>Modified: branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Models/DOMTree.js (193147 => 193148)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Models/DOMTree.js        2015-12-03 18:51:04 UTC (rev 193147)
+++ branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Models/DOMTree.js        2015-12-03 18:51:17 UTC (rev 193148)
</span><span class="lines">@@ -67,6 +67,12 @@
</span><span class="cx">         return Object.keys(this._flowMap).length;
</span><span class="cx">     }
</span><span class="cx"> 
</span><ins>+    disconnect()
+    {
+        WebInspector.domTreeManager.removeEventListener(null, null, this);
+        this._frame.removeEventListener(null, null, this);
+    }
+
</ins><span class="cx">     invalidate()
</span><span class="cx">     {
</span><span class="cx">         // Set to null so it is fetched again next time requestRootDOMNode is called.
</span><span class="lines">@@ -74,14 +80,14 @@
</span><span class="cx"> 
</span><span class="cx">         // Clear the pending callbacks. It is the responsibility of the client to listen for
</span><span class="cx">         // the RootDOMNodeInvalidated event and request the root DOM node again.
</span><del>-        delete this._pendingRootDOMNodeRequests;
</del><ins>+        this._pendingRootDOMNodeRequests = null;
</ins><span class="cx"> 
</span><span class="cx">         if (this._invalidateTimeoutIdentifier)
</span><span class="cx">             return;
</span><span class="cx"> 
</span><span class="cx">         function performInvalidate()
</span><span class="cx">         {
</span><del>-            delete this._invalidateTimeoutIdentifier;
</del><ins>+            this._invalidateTimeoutIdentifier = undefined;
</ins><span class="cx"> 
</span><span class="cx">             this.dispatchEventToListeners(WebInspector.DOMTree.Event.RootDOMNodeInvalidated);
</span><span class="cx">         }
</span><span class="lines">@@ -197,7 +203,7 @@
</span><span class="cx"> 
</span><span class="cx">             for (var i = 0; i &lt; this._pendingRootDOMNodeRequests.length; ++i)
</span><span class="cx">                 this._pendingRootDOMNodeRequests[i](this._rootDOMNode);
</span><del>-            delete this._pendingRootDOMNodeRequests;
</del><ins>+            this._pendingRootDOMNodeRequests = null;
</ins><span class="cx">         }
</span><span class="cx"> 
</span><span class="cx">         // For the main frame we can use the more straight forward requestDocument function. For
</span><span class="lines">@@ -242,7 +248,7 @@
</span><span class="cx">             console.assert(this._frame.pageExecutionContext);
</span><span class="cx">             console.assert(this._pendingRootDOMNodeRequests &amp;&amp; this._pendingRootDOMNodeRequests.length);
</span><span class="cx"> 
</span><del>-            delete this._rootDOMNodeRequestWaitingForExecutionContext;
</del><ins>+            this._rootDOMNodeRequestWaitingForExecutionContext = false;
</ins><span class="cx"> 
</span><span class="cx">             this._requestRootDOMNode();
</span><span class="cx">         }
</span></span></pre></div>
<a id="branchessafari601branchSourceWebInspectorUIUserInterfaceModelsFramejs"></a>
<div class="modfile"><h4>Modified: branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Models/Frame.js (193147 => 193148)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Models/Frame.js        2015-12-03 18:51:04 UTC (rev 193147)
+++ branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Models/Frame.js        2015-12-03 18:51:17 UTC (rev 193148)
</span><span class="lines">@@ -331,7 +331,7 @@
</span><span class="cx">         this._childFrames.remove(childFrame);
</span><span class="cx">         delete this._childFrameIdentifierMap[childFrame._id];
</span><span class="cx"> 
</span><del>-        childFrame._parentFrame = null;
</del><ins>+        childFrame._detachFromParentFrame();
</ins><span class="cx"> 
</span><span class="cx">         this.dispatchEventToListeners(WebInspector.Frame.Event.ChildFrameWasRemoved, {childFrame});
</span><span class="cx">     }
</span><span class="lines">@@ -341,8 +341,8 @@
</span><span class="cx">         if (!this._childFrames.length)
</span><span class="cx">             return;
</span><span class="cx"> 
</span><del>-        for (var i = 0; i &lt; this._childFrames.length; ++i)
-            this._childFrames[i]._parentFrame = null;
</del><ins>+        for (var childFrame of this._childFrames)
+            childFrame._detachFromParentFrame();
</ins><span class="cx"> 
</span><span class="cx">         this._childFrames = [];
</span><span class="cx">         this._childFrameIdentifierMap = {};
</span><span class="lines">@@ -446,6 +446,16 @@
</span><span class="cx"> 
</span><span class="cx">     // Private
</span><span class="cx"> 
</span><ins>+    _detachFromParentFrame()
+    {
+        if (this._domTree) {
+            this._domTree.disconnect();
+            this._domTree = null;
+        }
+
+        this._parentFrame = null;
+    }
+
</ins><span class="cx">     _isProvisionalResource(resource)
</span><span class="cx">     {
</span><span class="cx">         return (resource.loaderIdentifier &amp;&amp; this._provisionalLoaderIdentifier &amp;&amp; resource.loaderIdentifier === this._provisionalLoaderIdentifier);
</span></span></pre></div>
<a id="branchessafari601branchSourceWebInspectorUIUserInterfaceProtocolInspectorBackendjs"></a>
<div class="modfile"><h4>Modified: branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Protocol/InspectorBackend.js (193147 => 193148)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Protocol/InspectorBackend.js        2015-12-03 18:51:04 UTC (rev 193147)
+++ branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Protocol/InspectorBackend.js        2015-12-03 18:51:17 UTC (rev 193148)
</span><span class="lines">@@ -474,7 +474,7 @@
</span><span class="cx">         var callback = typeof commandArguments.lastValue === &quot;function&quot; ? commandArguments.pop() : null;
</span><span class="cx"> 
</span><span class="cx">         var parameters = {};
</span><del>-        for (let parameter of instance.callSignature) {
</del><ins>+        for (var parameter of instance.callSignature) {
</ins><span class="cx">             var parameterName = parameter[&quot;name&quot;];
</span><span class="cx">             var typeName = parameter[&quot;type&quot;];
</span><span class="cx">             var optionalFlag = parameter[&quot;optional&quot;];
</span></span></pre></div>
<a id="branchessafari601branchSourceWebInspectorUIUserInterfaceViewsCSSStyleDeclarationTextEditorjs"></a>
<div class="modfile"><h4>Modified: branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Views/CSSStyleDeclarationTextEditor.js (193147 => 193148)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Views/CSSStyleDeclarationTextEditor.js        2015-12-03 18:51:04 UTC (rev 193147)
+++ branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Views/CSSStyleDeclarationTextEditor.js        2015-12-03 18:51:17 UTC (rev 193148)
</span><span class="lines">@@ -1713,7 +1713,7 @@
</span><span class="cx">                     return;
</span><span class="cx">                 }
</span><span class="cx"> 
</span><del>-                for (let property of properties) {
</del><ins>+                for (var property of properties) {
</ins><span class="cx">                     if (property.__refreshedAfterBlur)
</span><span class="cx">                         continue;
</span><span class="cx"> 
</span></span></pre></div>
<a id="branchessafari601branchSourceWebInspectorUIUserInterfaceViewsChartDetailsSectionRowjs"></a>
<div class="modfile"><h4>Modified: branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Views/ChartDetailsSectionRow.js (193147 => 193148)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Views/ChartDetailsSectionRow.js        2015-12-03 18:51:04 UTC (rev 193147)
+++ branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Views/ChartDetailsSectionRow.js        2015-12-03 18:51:17 UTC (rev 193148)
</span><span class="lines">@@ -124,7 +124,7 @@
</span><span class="cx"> 
</span><span class="cx">     _addCheckboxColorFilter(id, r, g, b)
</span><span class="cx">     {
</span><del>-        for (let i = 0; i &lt; this._svgFiltersElement.childNodes.length; ++i) {
</del><ins>+        for (var i = 0; i &lt; this._svgFiltersElement.childNodes.length; ++i) {
</ins><span class="cx">             if (this._svgFiltersElement.childNodes[i].id === id)
</span><span class="cx">                 return;
</span><span class="cx">         }
</span><span class="lines">@@ -172,7 +172,7 @@
</span><span class="cx">     {
</span><span class="cx">         this._legendElement.removeChildren();
</span><span class="cx"> 
</span><del>-        for (let item of this._items) {
</del><ins>+        for (var item of this._items) {
</ins><span class="cx">             var labelElement = document.createElement(&quot;label&quot;);
</span><span class="cx">             var keyElement;
</span><span class="cx">             if (item.checkbox) {
</span></span></pre></div>
<a id="branchessafari601branchSourceWebInspectorUIUserInterfaceViewsDOMTreeElementjs"></a>
<div class="modfile"><h4>Modified: branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Views/DOMTreeElement.js (193147 => 193148)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Views/DOMTreeElement.js        2015-12-03 18:51:04 UTC (rev 193147)
+++ branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Views/DOMTreeElement.js        2015-12-03 18:51:17 UTC (rev 193148)
</span><span class="lines">@@ -1116,7 +1116,7 @@
</span><span class="cx">         if (hasText)
</span><span class="cx">             attrSpanElement.appendChild(document.createTextNode(&quot;\&quot;&quot;));
</span><span class="cx"> 
</span><del>-        for (let change of this._nodeStateChanges) {
</del><ins>+        for (var change of this._nodeStateChanges) {
</ins><span class="cx">             if (change.type === WebInspector.DOMTreeElement.ChangeType.Attribute &amp;&amp; change.attribute === name)
</span><span class="cx">                 change.element = hasText ? attrValueElement : attrNameElement;
</span><span class="cx">         }
</span><span class="lines">@@ -1466,7 +1466,7 @@
</span><span class="cx"> 
</span><span class="cx">     _markNodeChanged()
</span><span class="cx">     {
</span><del>-        for (let change of this._nodeStateChanges) {
</del><ins>+        for (var change of this._nodeStateChanges) {
</ins><span class="cx">             var element = change.element;
</span><span class="cx">             if (!element)
</span><span class="cx">                 continue;
</span><span class="lines">@@ -1483,7 +1483,7 @@
</span><span class="cx">         element.classList.remove(&quot;node-state-changed&quot;);
</span><span class="cx">         element.removeEventListener(&quot;animationend&quot;, this._boundNodeChangedAnimationEnd);
</span><span class="cx"> 
</span><del>-        for (let i = this._nodeStateChanges.length - 1; i &gt;= 0; --i) {
</del><ins>+        for (var i = this._nodeStateChanges.length - 1; i &gt;= 0; --i) {
</ins><span class="cx">             if (this._nodeStateChanges[i].element === element)
</span><span class="cx">                 this._nodeStateChanges.splice(i, 1);
</span><span class="cx">         }
</span></span></pre></div>
<a id="branchessafari601branchSourceWebInspectorUIUserInterfaceViewsDOMTreeUpdaterjs"></a>
<div class="modfile"><h4>Modified: branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Views/DOMTreeUpdater.js (193147 => 193148)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Views/DOMTreeUpdater.js        2015-12-03 18:51:04 UTC (rev 193147)
+++ branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Views/DOMTreeUpdater.js        2015-12-03 18:51:17 UTC (rev 193148)
</span><span class="lines">@@ -103,7 +103,7 @@
</span><span class="cx">         }
</span><span class="cx"> 
</span><span class="cx">         var updatedParentTreeElements = [];
</span><del>-        for (let recentlyModifiedNode of this._recentlyModifiedNodes) {
</del><ins>+        for (var recentlyModifiedNode of this._recentlyModifiedNodes) {
</ins><span class="cx">             var parent = recentlyModifiedNode.parent;
</span><span class="cx">             var node = recentlyModifiedNode.node;
</span><span class="cx">             var changeInfo = null;
</span><span class="lines">@@ -133,7 +133,7 @@
</span><span class="cx">             }
</span><span class="cx">         }
</span><span class="cx"> 
</span><del>-        for (let i = 0; i &lt; updatedParentTreeElements.length; ++i)
</del><ins>+        for (var i = 0; i &lt; updatedParentTreeElements.length; ++i)
</ins><span class="cx">             updatedParentTreeElements[i].alreadyUpdatedChildren = null;
</span><span class="cx"> 
</span><span class="cx">         this._recentlyModifiedNodes = [];
</span></span></pre></div>
<a id="branchessafari601branchSourceWebInspectorUIUserInterfaceViewsScopeChainDetailsSidebarPaneljs"></a>
<div class="modfile"><h4>Modified: branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Views/ScopeChainDetailsSidebarPanel.js (193147 => 193148)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Views/ScopeChainDetailsSidebarPanel.js        2015-12-03 18:51:04 UTC (rev 193147)
+++ branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Views/ScopeChainDetailsSidebarPanel.js        2015-12-03 18:51:17 UTC (rev 193148)
</span><span class="lines">@@ -135,7 +135,7 @@
</span><span class="cx">                 if (!callFrameSections)
</span><span class="cx">                     return;
</span><span class="cx"> 
</span><del>-                for (let callFrameSection of callFrameSections)
</del><ins>+                for (var callFrameSection of callFrameSections)
</ins><span class="cx">                     this.contentElement.appendChild(callFrameSection.element);
</span><span class="cx">             }
</span><span class="cx"> 
</span><span class="lines">@@ -165,7 +165,7 @@
</span><span class="cx">             sectionCountByType[WebInspector.ScopeChainNode.Type[type]] = 0;
</span><span class="cx"> 
</span><span class="cx">         var scopeChain = callFrame.scopeChain;
</span><del>-        for (let scope of scopeChain) {
</del><ins>+        for (var scope of scopeChain) {
</ins><span class="cx">             var title = null;
</span><span class="cx">             var extraPropertyDescriptor = null;
</span><span class="cx">             var collapsedByDefault = false;
</span><span class="lines">@@ -259,7 +259,7 @@
</span><span class="cx">         treeOutline.objectTreeElementAddContextMenuItems = this._objectTreeElementAddContextMenuItems.bind(this);
</span><span class="cx"> 
</span><span class="cx">         var promises = [];
</span><del>-        for (let expression of watchExpressions) {
</del><ins>+        for (var expression of watchExpressions) {
</ins><span class="cx">             promises.push(new Promise(function(resolve, reject) {
</span><span class="cx">                 WebInspector.runtimeManager.evaluateInInspectedWindow(expression, WebInspector.ScopeChainDetailsSidebarPanel.WatchExpressionsObjectGroupName, false, true, false, true, false, function(object, wasThrown) {
</span><span class="cx">                     var propertyDescriptor = new WebInspector.PropertyDescriptor({name: expression, value: object}, undefined, undefined, wasThrown);
</span></span></pre></div>
<a id="branchessafari601branchSourceWebInspectorUIUserInterfaceViewsVisualStyleCommaSeparatedKeywordEditorjs"></a>
<div class="modfile"><h4>Modified: branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Views/VisualStyleCommaSeparatedKeywordEditor.js (193147 => 193148)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Views/VisualStyleCommaSeparatedKeywordEditor.js        2015-12-03 18:51:04 UTC (rev 193147)
+++ branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Views/VisualStyleCommaSeparatedKeywordEditor.js        2015-12-03 18:51:17 UTC (rev 193148)
</span><span class="lines">@@ -73,7 +73,7 @@
</span><span class="cx">             return;
</span><span class="cx"> 
</span><span class="cx">         var value = &quot;&quot;;
</span><del>-        for (let treeItem of this._commaSeparatedKeywords.children) {
</del><ins>+        for (var treeItem of this._commaSeparatedKeywords.children) {
</ins><span class="cx">             if (this._treeElementIsEmpty(treeItem))
</span><span class="cx">                 continue;
</span><span class="cx"> 
</span><span class="lines">@@ -102,7 +102,7 @@
</span><span class="cx">         }
</span><span class="cx"> 
</span><span class="cx">         var values = commaSeparatedValue.split(/\s*,\s*(?![^\(]*\))/);
</span><del>-        for (let value of values)
</del><ins>+        for (var value of values)
</ins><span class="cx">             this._addCommaSeparatedKeyword(value);
</span><span class="cx"> 
</span><span class="cx">         this._commaSeparatedKeywords.children[0].select(true);
</span><span class="lines">@@ -159,7 +159,7 @@
</span><span class="cx"> 
</span><span class="cx">     _removeEmptyCommaSeparatedKeywords()
</span><span class="cx">     {
</span><del>-        for (let treeElement of this._commaSeparatedKeywords.children) {
</del><ins>+        for (var treeElement of this._commaSeparatedKeywords.children) {
</ins><span class="cx">             if (!this._treeElementIsEmpty(treeElement) || treeElement.selected)
</span><span class="cx">                 continue;
</span><span class="cx"> 
</span></span></pre></div>
<a id="branchessafari601branchSourceWebInspectorUIUserInterfaceViewsVisualStyleDetailsPaneljs"></a>
<div class="modfile"><h4>Modified: branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Views/VisualStyleDetailsPanel.js (193147 => 193148)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Views/VisualStyleDetailsPanel.js        2015-12-03 18:51:04 UTC (rev 193147)
+++ branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Views/VisualStyleDetailsPanel.js        2015-12-03 18:51:17 UTC (rev 193148)
</span><span class="lines">@@ -159,13 +159,13 @@
</span><span class="cx">         if (disabled)
</span><span class="cx">             return;
</span><span class="cx"> 
</span><del>-        for (let key in this._groups)
</del><ins>+        for (var key in this._groups)
</ins><span class="cx">             this._updateProperties(this._groups[key], !!event);
</span><span class="cx"> 
</span><del>-        for (let key in this._sections) {
</del><ins>+        for (var key in this._sections) {
</ins><span class="cx">             var section = this._sections[key];
</span><span class="cx">             var oneSectionExpanded = false;
</span><del>-            for (let group of section.groups) {
</del><ins>+            for (var group of section.groups) {
</ins><span class="cx">                 if (!group.collapsed) {
</span><span class="cx">                     oneSectionExpanded = true;
</span><span class="cx">                     break;
</span><span class="lines">@@ -182,7 +182,7 @@
</span><span class="cx">             return;
</span><span class="cx"> 
</span><span class="cx">         if (group.links) {
</span><del>-            for (let key in group.links)
</del><ins>+            for (var key in group.links)
</ins><span class="cx">                 group.links[key].linked = false;
</span><span class="cx">         }
</span><span class="cx"> 
</span><span class="lines">@@ -192,7 +192,7 @@
</span><span class="cx"> 
</span><span class="cx">         var initialPropertyText = {};
</span><span class="cx">         var initialPropertyTextMissing = !initialTextList.has(group);
</span><del>-        for (let key in group.properties) {
</del><ins>+        for (var key in group.properties) {
</ins><span class="cx">             var propertyEditor = group.properties[key];
</span><span class="cx">             propertyEditor.update(!propertyEditor.style || forceStyleUpdate ? this._currentStyle : null);
</span><span class="cx"> 
</span><span class="lines">@@ -213,7 +213,7 @@
</span><span class="cx">         if (!autocompleteCompatibleProperties || !autocompleteCompatibleProperties.length)
</span><span class="cx">             return;
</span><span class="cx"> 
</span><del>-        for (let editor of autocompleteCompatibleProperties)
</del><ins>+        for (var editor of autocompleteCompatibleProperties)
</ins><span class="cx">             this._updateAutocompleteCompatiblePropertyEditor(editor, forceStyleUpdate);
</span><span class="cx">     }
</span><span class="cx"> 
</span><span class="lines">@@ -240,7 +240,7 @@
</span><span class="cx">             return;
</span><span class="cx"> 
</span><span class="cx">         var newStyleText = this._currentStyle.text;
</span><del>-        for (let key in group.properties) {
</del><ins>+        for (var key in group.properties) {
</ins><span class="cx">             var propertyEditor = group.properties[key];
</span><span class="cx">             var initialValue = initialPropertyTextList[key] || null;
</span><span class="cx">             newStyleText = propertyEditor.modifyPropertyText(newStyleText, initialValue);
</span><span class="lines">@@ -265,7 +265,7 @@
</span><span class="cx">         if (!initialPropertyTextList)
</span><span class="cx">             return false;
</span><span class="cx"> 
</span><del>-        for (let key in group.properties) {
</del><ins>+        for (var key in group.properties) {
</ins><span class="cx">             var propertyEditor = group.properties[key];
</span><span class="cx">             if (propertyEditor.propertyMissing)
</span><span class="cx">                 continue;
</span><span class="lines">@@ -280,7 +280,7 @@
</span><span class="cx"> 
</span><span class="cx">     _groupHasSetProperty(group)
</span><span class="cx">     {
</span><del>-        for (let key in group.properties) {
</del><ins>+        for (var key in group.properties) {
</ins><span class="cx">             var propertyEditor = group.properties[key];
</span><span class="cx">             var value = propertyEditor.synthesizedValue;
</span><span class="cx">             if (value &amp;&amp; !propertyEditor.propertyMissing)
</span><span class="lines">@@ -295,7 +295,7 @@
</span><span class="cx">             return;
</span><span class="cx"> 
</span><span class="cx">         group.section.groups = groups;
</span><del>-        for (let key in group.properties)
</del><ins>+        for (var key in group.properties)
</ins><span class="cx">             group.properties[key].addEventListener(WebInspector.VisualStylePropertyEditor.Event.ValueDidChange, this._sectionModified.bind(this, group));
</span><span class="cx">     }
</span><span class="cx"> 
</span></span></pre></div>
<a id="branchessafari601branchSourceWebInspectorUIUserInterfaceViewsVisualStyleKeywordIconListjs"></a>
<div class="modfile"><h4>Modified: branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Views/VisualStyleKeywordIconList.js (193147 => 193148)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Views/VisualStyleKeywordIconList.js        2015-12-03 18:51:04 UTC (rev 193147)
+++ branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Views/VisualStyleKeywordIconList.js        2015-12-03 18:51:17 UTC (rev 193148)
</span><span class="lines">@@ -57,7 +57,7 @@
</span><span class="cx">             return iconButtonElement;
</span><span class="cx">         }
</span><span class="cx"> 
</span><del>-        for (let key in this._possibleValues.basic) {
</del><ins>+        for (var key in this._possibleValues.basic) {
</ins><span class="cx">             var iconElement = createListItem.call(this, key, this._possibleValues.basic[key]);
</span><span class="cx">             this._iconListContainer.appendChild(iconElement);
</span><span class="cx">             this._iconElements.push(iconElement);
</span><span class="lines">@@ -80,7 +80,7 @@
</span><span class="cx">     {
</span><span class="cx">         this._computedIcon = null;
</span><span class="cx">         this._selectedIcon = null;
</span><del>-        for (let icon of this._iconElements) {
</del><ins>+        for (var icon of this._iconElements) {
</ins><span class="cx">             if (icon.id === this._updatedValues.placeholder)
</span><span class="cx">                 this._computedIcon = icon;
</span><span class="cx"> 
</span></span></pre></div>
<a id="branchessafari601branchSourceWebInspectorUIUserInterfaceViewsVisualStyleKeywordPickerjs"></a>
<div class="modfile"><h4>Modified: branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Views/VisualStyleKeywordPicker.js (193147 => 193148)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Views/VisualStyleKeywordPicker.js        2015-12-03 18:51:04 UTC (rev 193147)
+++ branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Views/VisualStyleKeywordPicker.js        2015-12-03 18:51:17 UTC (rev 193148)
</span><span class="lines">@@ -136,7 +136,7 @@
</span><span class="cx">     _createValueOptions(values)
</span><span class="cx">     {
</span><span class="cx">         var addedElements = [];
</span><del>-        for (let key in values) {
</del><ins>+        for (var key in values) {
</ins><span class="cx">             var option = document.createElement(&quot;option&quot;);
</span><span class="cx">             option.value = key;
</span><span class="cx">             option.text = values[key];
</span><span class="lines">@@ -161,7 +161,7 @@
</span><span class="cx">             return;
</span><span class="cx"> 
</span><span class="cx">         this._keywordSelectElement.removeChild(this._advancedValuesElements[0].previousSibling);
</span><del>-        for (let element of this._advancedValuesElements)
</del><ins>+        for (var element of this._advancedValuesElements)
</ins><span class="cx">             this._keywordSelectElement.removeChild(element);
</span><span class="cx"> 
</span><span class="cx">         this._advancedValuesElements = null;
</span></span></pre></div>
<a id="branchessafari601branchSourceWebInspectorUIUserInterfaceViewsVisualStyleNumberInputBoxjs"></a>
<div class="modfile"><h4>Modified: branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Views/VisualStyleNumberInputBox.js (193147 => 193148)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Views/VisualStyleNumberInputBox.js        2015-12-03 18:51:04 UTC (rev 193147)
+++ branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Views/VisualStyleNumberInputBox.js        2015-12-03 18:51:17 UTC (rev 193148)
</span><span class="lines">@@ -319,7 +319,7 @@
</span><span class="cx">     _createValueOptions(values)
</span><span class="cx">     {
</span><span class="cx">         var addedElements = [];
</span><del>-        for (let key in values) {
</del><ins>+        for (var key in values) {
</ins><span class="cx">             var option = document.createElement(&quot;option&quot;);
</span><span class="cx">             option.value = key;
</span><span class="cx">             option.text = values[key];
</span><span class="lines">@@ -333,7 +333,7 @@
</span><span class="cx">     _createUnitOptions(units)
</span><span class="cx">     {
</span><span class="cx">         var addedElements = [];
</span><del>-        for (let unit of units) {
</del><ins>+        for (var unit of units) {
</ins><span class="cx">             var option = document.createElement(&quot;option&quot;);
</span><span class="cx">             option.text = unit;
</span><span class="cx">             this._keywordSelectElement.appendChild(option);
</span><span class="lines">@@ -358,7 +358,7 @@
</span><span class="cx">             return;
</span><span class="cx"> 
</span><span class="cx">         this._keywordSelectElement.removeChild(this._advancedUnitsElements[0].previousSibling);
</span><del>-        for (let element of this._advancedUnitsElements)
</del><ins>+        for (var element of this._advancedUnitsElements)
</ins><span class="cx">             this._keywordSelectElement.removeChild(element);
</span><span class="cx"> 
</span><span class="cx">         this._advancedUnitsElements = null;
</span></span></pre></div>
<a id="branchessafari601branchSourceWebInspectorUIUserInterfaceViewsVisualStylePropertyCombinerjs"></a>
<div class="modfile"><h4>Modified: branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Views/VisualStylePropertyCombiner.js (193147 => 193148)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Views/VisualStylePropertyCombiner.js        2015-12-03 18:51:04 UTC (rev 193147)
+++ branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Views/VisualStylePropertyCombiner.js        2015-12-03 18:51:17 UTC (rev 193148)
</span><span class="lines">@@ -34,7 +34,7 @@
</span><span class="cx">         this._propertyMissing = false;
</span><span class="cx">         this._propertyEditors = propertyEditors || [];
</span><span class="cx"> 
</span><del>-        for (let editor of this._propertyEditors) {
</del><ins>+        for (var editor of this._propertyEditors) {
</ins><span class="cx">             editor.addEventListener(WebInspector.VisualStylePropertyEditor.Event.ValueDidChange, this._handlePropertyEditorValueChanged, this);
</span><span class="cx">             editor.suppressStyleTextUpdate = true;
</span><span class="cx">         }
</span><span class="lines">@@ -53,7 +53,7 @@
</span><span class="cx">     {
</span><span class="cx">         var value = &quot;&quot;;
</span><span class="cx">         var oneEditorHasValue = false;
</span><del>-        for (let editor of this._propertyEditors) {
</del><ins>+        for (var editor of this._propertyEditors) {
</ins><span class="cx">             var editorValue = editor.synthesizedValue;
</span><span class="cx">             if (editorValue &amp;&amp; editorValue.length)
</span><span class="cx">                 oneEditorHasValue = true;
</span><span class="lines">@@ -115,11 +115,11 @@
</span><span class="cx">         if (styleText === this.synthesizedValue)
</span><span class="cx">             return;
</span><span class="cx"> 
</span><del>-        for (let editor of this._propertyEditors)
</del><ins>+        for (var editor of this._propertyEditors)
</ins><span class="cx">             editor[WebInspector.VisualStylePropertyCombiner.EditorUpdatedSymbol] = false;
</span><span class="cx"> 
</span><span class="cx">         function updateCompatibleEditor(value) {
</span><del>-            for (let editor of this._propertyEditors) {
</del><ins>+            for (var editor of this._propertyEditors) {
</ins><span class="cx">                 if (value &amp;&amp; !editor.valueIsCompatible(value) || editor[WebInspector.VisualStylePropertyCombiner.EditorUpdatedSymbol])
</span><span class="cx">                     continue;
</span><span class="cx"> 
</span><span class="lines">@@ -136,7 +136,7 @@
</span><span class="cx">         }
</span><span class="cx"> 
</span><span class="cx">         var matches = styleText.match(this._valueRegExp);
</span><del>-        for (let i = 0; i &lt; this._propertyEditors.length; ++i)
</del><ins>+        for (var i = 0; i &lt; this._propertyEditors.length; ++i)
</ins><span class="cx">             updateCompatibleEditor.call(this, matches &amp;&amp; matches[i]);
</span><span class="cx">     }
</span><span class="cx"> 
</span><span class="lines">@@ -156,7 +156,7 @@
</span><span class="cx">     _markEditors(ignoredEditor, disabled)
</span><span class="cx">     {
</span><span class="cx">         this._currentValueIsKeyword = disabled || false;
</span><del>-        for (let editor of this._propertyEditors) {
</del><ins>+        for (var editor of this._propertyEditors) {
</ins><span class="cx">             if (ignoredEditor &amp;&amp; editor === ignoredEditor)
</span><span class="cx">                 continue;
</span><span class="cx"> 
</span></span></pre></div>
<a id="branchessafari601branchSourceWebInspectorUIUserInterfaceViewsVisualStylePropertyEditorjs"></a>
<div class="modfile"><h4>Modified: branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Views/VisualStylePropertyEditor.js (193147 => 193148)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Views/VisualStylePropertyEditor.js        2015-12-03 18:51:04 UTC (rev 193147)
+++ branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Views/VisualStylePropertyEditor.js        2015-12-03 18:51:17 UTC (rev 193148)
</span><span class="lines">@@ -38,7 +38,7 @@
</span><span class="cx">                 return;
</span><span class="cx"> 
</span><span class="cx">             var canonicalizedValues = {};
</span><del>-            for (let value of values)
</del><ins>+            for (var value of values)
</ins><span class="cx">                 canonicalizedValues[value.toLowerCase().replace(/\s/g, &quot;-&quot;)] = value;
</span><span class="cx"> 
</span><span class="cx">             return canonicalizedValues;
</span><span class="lines">@@ -103,7 +103,7 @@
</span><span class="cx">             this._element.classList.add(&quot;multiple&quot;);
</span><span class="cx">         }
</span><span class="cx"> 
</span><del>-        for (let name of propertyNames) {
</del><ins>+        for (var name of propertyNames) {
</ins><span class="cx">             this._element.classList.add(name);
</span><span class="cx">             this._propertyInfoList.push({
</span><span class="cx">                 name,
</span><span class="lines">@@ -274,7 +274,7 @@
</span><span class="cx">         this._updatedValues = {};
</span><span class="cx">         var propertyValuesConflict = false;
</span><span class="cx">         var propertyMissing = false;
</span><del>-        for (let propertyInfo of this._propertyInfoList) {
</del><ins>+        for (var propertyInfo of this._propertyInfoList) {
</ins><span class="cx">             var property = this._style.propertyForName(propertyInfo.name, true);
</span><span class="cx">             propertyMissing = !property;
</span><span class="cx">             if (propertyMissing &amp;&amp; this._style.nodeStyles)
</span><span class="lines">@@ -331,7 +331,7 @@
</span><span class="cx"> 
</span><span class="cx">     modifyPropertyText(text, value)
</span><span class="cx">     {
</span><del>-        for (let property of this._propertyInfoList) {
</del><ins>+        for (var property of this._propertyInfoList) {
</ins><span class="cx">             if (property.textContainsNameRegExp.test(text))
</span><span class="cx">                 text = text.replace(property.replacementRegExp, value !== null ? &quot;$1$2: &quot; + value + &quot;;&quot; : &quot;$1&quot;);
</span><span class="cx">             else if (value !== null)
</span><span class="lines">@@ -430,7 +430,7 @@
</span><span class="cx">         if (!keyword || !keyword.length || !this._possibleValues)
</span><span class="cx">             return null;
</span><span class="cx"> 
</span><del>-        for (let basicKey in this._possibleValues.basic) {
</del><ins>+        for (var basicKey in this._possibleValues.basic) {
</ins><span class="cx">             if (this._possibleValues.basic[basicKey] === keyword)
</span><span class="cx">                 return basicKey;
</span><span class="cx">         }
</span><span class="lines">@@ -438,7 +438,7 @@
</span><span class="cx">         if (!this._possibleValues.advanced)
</span><span class="cx">             return null;
</span><span class="cx"> 
</span><del>-        for (let advancedKey in this._possibleValues.advanced) {
</del><ins>+        for (var advancedKey in this._possibleValues.advanced) {
</ins><span class="cx">             if (this._possibleValues.advanced[advancedKey] === keyword)
</span><span class="cx">                 return advancedKey;
</span><span class="cx">         }
</span><span class="lines">@@ -480,7 +480,7 @@
</span><span class="cx">             return text;
</span><span class="cx"> 
</span><span class="cx">         var longhandText = &quot;&quot;;
</span><del>-        for (let longhandProperty of shorthand.relatedLonghandProperties) {
</del><ins>+        for (var longhandProperty of shorthand.relatedLonghandProperties) {
</ins><span class="cx">             if (longhandProperty.anonymous)
</span><span class="cx">                 longhandText += longhandProperty.synthesizedText;
</span><span class="cx">         }
</span></span></pre></div>
<a id="branchessafari601branchSourceWebInspectorUIUserInterfaceViewsVisualStylePropertyEditorLinkjs"></a>
<div class="modfile"><h4>Modified: branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Views/VisualStylePropertyEditorLink.js (193147 => 193148)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Views/VisualStylePropertyEditorLink.js        2015-12-03 18:51:04 UTC (rev 193147)
+++ branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Views/VisualStylePropertyEditorLink.js        2015-12-03 18:51:17 UTC (rev 193148)
</span><span class="lines">@@ -33,7 +33,7 @@
</span><span class="cx">         this._linksToHideWhenLinked = linksToHideWhenLinked || [];
</span><span class="cx">         this._lastPropertyEdited = null;
</span><span class="cx"> 
</span><del>-        for (let property of this._linkedProperties)
</del><ins>+        for (var property of this._linkedProperties)
</ins><span class="cx">             property.addEventListener(WebInspector.VisualStylePropertyEditor.Event.ValueDidChange, this._linkedPropertyValueChanged, this);
</span><span class="cx"> 
</span><span class="cx">         this._element = document.createElement(&quot;div&quot;);
</span><span class="lines">@@ -86,7 +86,7 @@
</span><span class="cx">         this._unlinkedIcon.hidden = this._linked;
</span><span class="cx">         this._iconElement.title = this._linked ? WebInspector.UIString(&quot;Click to remove link&quot;) : WebInspector.UIString(&quot;Click to link property values&quot;);
</span><span class="cx"> 
</span><del>-        for (let linkToHide of this._linksToHideWhenLinked)
</del><ins>+        for (var linkToHide of this._linksToHideWhenLinked)
</ins><span class="cx">             linkToHide.disabled = this._linked;
</span><span class="cx">     }
</span><span class="cx"> 
</span><span class="lines">@@ -120,7 +120,7 @@
</span><span class="cx">         var text = style.text;
</span><span class="cx">         var value = property.synthesizedValue || null;
</span><span class="cx"> 
</span><del>-        for (let linkedProperty of this._linkedProperties)
</del><ins>+        for (var linkedProperty of this._linkedProperties)
</ins><span class="cx">             text = linkedProperty.updateValueFromText(text, value);
</span><span class="cx"> 
</span><span class="cx">         style.text = text;
</span></span></pre></div>
<a id="branchessafari601branchSourceWebInspectorUIUserInterfaceViewsVisualStyleSelectorSectionjs"></a>
<div class="modfile"><h4>Modified: branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Views/VisualStyleSelectorSection.js (193147 => 193148)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Views/VisualStyleSelectorSection.js        2015-12-03 18:51:04 UTC (rev 193147)
+++ branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Views/VisualStyleSelectorSection.js        2015-12-03 18:51:17 UTC (rev 193148)
</span><span class="lines">@@ -87,7 +87,7 @@
</span><span class="cx">         // Pseudo Styles
</span><span class="cx">         var pseudoRules = [];
</span><span class="cx">         var pseudoElements = this._nodeStyles.pseudoElements;
</span><del>-        for (let pseudoIdentifier in pseudoElements)
</del><ins>+        for (var pseudoIdentifier in pseudoElements)
</ins><span class="cx">             pseudoRules = pseudoRules.concat(pseudoElements[pseudoIdentifier].matchedRules);
</span><span class="cx"> 
</span><span class="cx">         var orderedPseudoRules = uniqueOrderedRules(pseudoRules);
</span><span class="lines">@@ -121,7 +121,7 @@
</span><span class="cx">                 return new Array;
</span><span class="cx"> 
</span><span class="cx">             var uniqueRules = new Map;
</span><del>-            for (let rule of orderedRules) {
</del><ins>+            for (var rule of orderedRules) {
</ins><span class="cx">                 if (!uniqueRules.has(rule.id))
</span><span class="cx">                     uniqueRules.set(rule.id, rule);
</span><span class="cx">             }
</span><span class="lines">@@ -134,7 +134,7 @@
</span><span class="cx">                 return;
</span><span class="cx"> 
</span><span class="cx">             if (force) {
</span><del>-                for (let i = orderedPseudoRules.length - 1; i &gt;= 0; --i) {
</del><ins>+                for (var i = orderedPseudoRules.length - 1; i &gt;= 0; --i) {
</ins><span class="cx">                     var pseudoRule = orderedPseudoRules[i];
</span><span class="cx">                     createSelectorItem.call(this, pseudoRule.style, pseudoRule.selectorText, pseudoRule.mediaText);
</span><span class="cx">                 }
</span><span class="lines">@@ -144,7 +144,7 @@
</span><span class="cx">             if (!previousRule)
</span><span class="cx">                 return;
</span><span class="cx"> 
</span><del>-            for (let i = orderedPseudoRules.length - 1; i &gt;= 0; --i) {
</del><ins>+            for (var i = orderedPseudoRules.length - 1; i &gt;= 0; --i) {
</ins><span class="cx">                 var pseudoRule = orderedPseudoRules[i];
</span><span class="cx">                 if (!pseudoRule.selectorIsGreater(previousRule.mostSpecificSelector))
</span><span class="cx">                     continue;
</span><span class="lines">@@ -162,7 +162,7 @@
</span><span class="cx">         createSelectorItem.call(this, this._nodeStyles.inlineStyle, WebInspector.UIString(&quot;This Element&quot;));
</span><span class="cx"> 
</span><span class="cx">         // Matched Rules
</span><del>-        for (let rule of uniqueOrderedRules(this._nodeStyles.matchedRules)) {
</del><ins>+        for (var rule of uniqueOrderedRules(this._nodeStyles.matchedRules)) {
</ins><span class="cx">             if (rule.type === WebInspector.CSSRule.Type.UserAgent) {
</span><span class="cx">                 insertAllMatchingPseudoRules.call(this, true);
</span><span class="cx">                 continue;
</span><span class="lines">@@ -177,7 +177,7 @@
</span><span class="cx">         insertAllMatchingPseudoRules.call(this, true);
</span><span class="cx"> 
</span><span class="cx">         // Inherited Rules
</span><del>-        for (let inherited of this._nodeStyles.inheritedRules) {
</del><ins>+        for (var inherited of this._nodeStyles.inheritedRules) {
</ins><span class="cx">             if (!inherited.matchedRules || !inherited.matchedRules.length)
</span><span class="cx">                 continue;
</span><span class="cx"> 
</span><span class="lines">@@ -186,7 +186,7 @@
</span><span class="cx">             divider.selectable = false;
</span><span class="cx">             this._selectors.appendChild(divider);
</span><span class="cx"> 
</span><del>-            for (let rule of uniqueOrderedRules(inherited.matchedRules)) {
</del><ins>+            for (var rule of uniqueOrderedRules(inherited.matchedRules)) {
</ins><span class="cx">                 if (rule.type === WebInspector.CSSRule.Type.UserAgent)
</span><span class="cx">                     continue;
</span><span class="cx"> 
</span></span></pre></div>
<a id="branchessafari601branchSourceWebInspectorUIUserInterfaceViewsVisualStyleTabbedPropertiesRowjs"></a>
<div class="modfile"><h4>Modified: branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Views/VisualStyleTabbedPropertiesRow.js (193147 => 193148)</h4>
<pre class="diff"><span>
<span class="info">--- branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Views/VisualStyleTabbedPropertiesRow.js        2015-12-03 18:51:04 UTC (rev 193147)
+++ branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Views/VisualStyleTabbedPropertiesRow.js        2015-12-03 18:51:17 UTC (rev 193148)
</span><span class="lines">@@ -36,7 +36,7 @@
</span><span class="cx"> 
</span><span class="cx">         this._tabButtons = [];
</span><span class="cx">         this._tabMap = tabMap;
</span><del>-        for (let key in this._tabMap) {
</del><ins>+        for (var key in this._tabMap) {
</ins><span class="cx">             var button = document.createElement(&quot;button&quot;);
</span><span class="cx">             button.id = key;
</span><span class="cx">             button.textContent = this._tabMap[key].title;
</span><span class="lines">@@ -57,12 +57,12 @@
</span><span class="cx"> 
</span><span class="cx">     _handleButtonClicked(event)
</span><span class="cx">     {
</span><del>-        for (let item of this._tabButtons) {
</del><ins>+        for (var item of this._tabButtons) {
</ins><span class="cx">             var tab = this._tabMap[item.id];
</span><span class="cx">             var selected = item === event.target;
</span><span class="cx">             item.classList.toggle(&quot;selected&quot;, selected);
</span><span class="cx">             tab.element.classList.toggle(&quot;visible&quot;, selected);
</span><del>-            for (let propertyEditor of tab.properties)
</del><ins>+            for (var propertyEditor of tab.properties)
</ins><span class="cx">                 propertyEditor.update();
</span><span class="cx">         }
</span><span class="cx">     }
</span></span></pre>
</div>
</div>

</body>
</html>