Title: [193234] branches/safari-601-branch/Source/WebInspectorUI

Diff

Modified: branches/safari-601-branch/Source/WebInspectorUI/ChangeLog (193233 => 193234)


--- branches/safari-601-branch/Source/WebInspectorUI/ChangeLog	2015-12-03 19:00:17 UTC (rev 193233)
+++ branches/safari-601-branch/Source/WebInspectorUI/ChangeLog	2015-12-03 19:00:23 UTC (rev 193234)
@@ -1,5 +1,27 @@
 2015-12-02  Timothy Hatcher  <[email protected]>
 
+        Merge r190342. rdar://problem/23221163
+
+    2015-09-29  Joseph Pecoraro  <[email protected]>
+
+            Web Inspector: Console completion suggestions should include properties on Object (hasOwnProperty, toString, etc)
+            https://bugs.webkit.org/show_bug.cgi?id=149649
+
+            Reviewed by Darin Adler.
+
+            * UserInterface/Base/Utilities.js:
+            (value):
+            Since keySets in this instance are often used as hash maps with the
+            `in` operator, create a blank object that won't have Object.prototype
+            functions that would be seen by `in`.
+
+            * UserInterface/Controllers/_javascript_RuntimeCompletionProvider.js:
+            (WebInspector._javascript_RuntimeCompletionProvider.prototype.completionControllerCompletionsNeeded.receivedPropertyNames.compare):
+            Sort __defineGetter__ and __lookupGetter__ and friends last, since they
+            are rarely used properties.
+
+2015-12-02  Timothy Hatcher  <[email protected]>
+
         Merge r190341. rdar://problem/23221163
 
     2015-09-29  Joseph Pecoraro  <[email protected]>

Modified: branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Base/Utilities.js (193233 => 193234)


--- branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Base/Utilities.js	2015-12-03 19:00:17 UTC (rev 193233)
+++ branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Base/Utilities.js	2015-12-03 19:00:23 UTC (rev 193234)
@@ -445,7 +445,7 @@
 {
     value: function()
     {
-        var keys = {};
+        var keys = Object.create(null);
         for (var i = 0; i < this.length; ++i)
             keys[this[i]] = true;
         return keys;

Modified: branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Controllers/_javascript_RuntimeCompletionProvider.js (193233 => 193234)


--- branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Controllers/_javascript_RuntimeCompletionProvider.js	2015-12-03 19:00:17 UTC (rev 193233)
+++ branches/safari-601-branch/Source/WebInspectorUI/UserInterface/Controllers/_javascript_RuntimeCompletionProvider.js	2015-12-03 19:00:23 UTC (rev 193234)
@@ -267,6 +267,14 @@
                 if (!isNaN(numericCompareResult))
                     return numericCompareResult;
 
+                // Sort __defineGetter__, __lookupGetter__, and friends last.
+                var aRareProperty = a.startsWith("__") && a.endsWith("__");
+                var bRareProperty = b.startsWith("__") && b.endsWith("__");
+                if (aRareProperty && !bRareProperty)
+                    return 1;
+                if (!aRareProperty && bRareProperty)
+                    return -1;
+
                 // Not numbers, sort as strings.
                 return a.localeCompare(b);
             }
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to