Title: [176325] trunk/Source/WebInspectorUI
- Revision
- 176325
- Author
- [email protected]
- Date
- 2014-11-19 10:34:19 -0800 (Wed, 19 Nov 2014)
Log Message
Web Inspector: Debugger should not mutate variable when hovering mouse over ++n _expression_
https://bugs.webkit.org/show_bug.cgi?id=138839
Patch by Joseph Pecoraro <[email protected]> on 2014-11-19
Reviewed by Timothy Hatcher.
* UserInterface/Controllers/CodeMirrorTokenTrackingController.js:
(WebInspector.CodeMirrorTokenTrackingController.prototype._processJavaScriptExpression):
Modified Paths
Diff
Modified: trunk/Source/WebInspectorUI/ChangeLog (176324 => 176325)
--- trunk/Source/WebInspectorUI/ChangeLog 2014-11-19 18:32:30 UTC (rev 176324)
+++ trunk/Source/WebInspectorUI/ChangeLog 2014-11-19 18:34:19 UTC (rev 176325)
@@ -1,5 +1,15 @@
2014-11-19 Joseph Pecoraro <[email protected]>
+ Web Inspector: Debugger should not mutate variable when hovering mouse over ++n _expression_
+ https://bugs.webkit.org/show_bug.cgi?id=138839
+
+ Reviewed by Timothy Hatcher.
+
+ * UserInterface/Controllers/CodeMirrorTokenTrackingController.js:
+ (WebInspector.CodeMirrorTokenTrackingController.prototype._processJavaScriptExpression):
+
+2014-11-19 Joseph Pecoraro <[email protected]>
+
Web Inspector: Improve basic _javascript_ completion in inline <script>s
https://bugs.webkit.org/show_bug.cgi?id=138845
Modified: trunk/Source/WebInspectorUI/UserInterface/Controllers/CodeMirrorTokenTrackingController.js (176324 => 176325)
--- trunk/Source/WebInspectorUI/UserInterface/Controllers/CodeMirrorTokenTrackingController.js 2014-11-19 18:32:30 UTC (rev 176324)
+++ trunk/Source/WebInspectorUI/UserInterface/Controllers/CodeMirrorTokenTrackingController.js 2014-11-19 18:34:19 UTC (rev 176325)
@@ -477,11 +477,20 @@
var _expression_ = this._hoveredTokenInfo.token.string;
var expressionStartPosition = {line: this._hoveredTokenInfo.position.line, ch: this._hoveredTokenInfo.token.start};
while (true) {
- var token = this._codeMirror.getTokenAt(expressionStartPosition);
- var isDot = token && !token.type && token.string === ".";
- var isExpression = token && token.type && token.type.indexOf("m-_javascript_") !== -1;
+ var token = this._codeMirror.getTokenAt(expressionStartPosition);
+ if (!token)
+ break;
+
+ var isDot = !token.type && token.string === ".";
+ var isExpression = token.type && token.type.contains("m-_javascript_");
if (!isDot && !isExpression)
break;
+
+ // Disallow operators. We want the hovered _expression_ to be just a single operand.
+ // Also, some operators can modify values, such as pre-increment and assignment operators.
+ if (isExpression && token.type.contains("operator"))
+ break;
+
_expression_ = token.string + _expression_;
expressionStartPosition.ch = token.start;
}
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes