Title: [105488] trunk/Source/WebCore
Revision
105488
Author
[email protected]
Date
2012-01-20 00:26:49 -0800 (Fri, 20 Jan 2012)

Log Message

Web Inspector: problem with Ctrl - <arrows> shortcuts in Scripts panel
https://bugs.webkit.org/show_bug.cgi?id=76622

Reviewed by Yury Semikhatsky.

* inspector/front-end/InspectorView.js:
(WebInspector.InspectorView.prototype._keyDown):
* inspector/front-end/TextViewer.js:
(WebInspector.TextViewer.prototype.set readOnly):
(WebInspector.TextViewer.prototype._cancelEditing):
(WebInspector.TextViewer.prototype.wasShown):
(WebInspector.TextViewer.prototype.willHide):
* inspector/front-end/UIUtils.js:
(WebInspector.isInEditMode):
* inspector/front-end/inspector.js:
(WebInspector.documentKeyDown):

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (105487 => 105488)


--- trunk/Source/WebCore/ChangeLog	2012-01-20 08:04:44 UTC (rev 105487)
+++ trunk/Source/WebCore/ChangeLog	2012-01-20 08:26:49 UTC (rev 105488)
@@ -1,3 +1,22 @@
+2012-01-19  Pavel Feldman  <[email protected]>
+
+        Web Inspector: problem with Ctrl - <arrows> shortcuts in Scripts panel
+        https://bugs.webkit.org/show_bug.cgi?id=76622
+
+        Reviewed by Yury Semikhatsky.
+
+        * inspector/front-end/InspectorView.js:
+        (WebInspector.InspectorView.prototype._keyDown):
+        * inspector/front-end/TextViewer.js:
+        (WebInspector.TextViewer.prototype.set readOnly):
+        (WebInspector.TextViewer.prototype._cancelEditing):
+        (WebInspector.TextViewer.prototype.wasShown):
+        (WebInspector.TextViewer.prototype.willHide):
+        * inspector/front-end/UIUtils.js:
+        (WebInspector.isInEditMode):
+        * inspector/front-end/inspector.js:
+        (WebInspector.documentKeyDown):
+
 2012-01-19  Kaustubh Atrawalkar  <[email protected]> & Erik Arvidsson  <[email protected]>
 
         Migrate createObjectURL & revokeObjectURL to static (Class) methods.

Modified: trunk/Source/WebCore/inspector/front-end/InspectorView.js (105487 => 105488)


--- trunk/Source/WebCore/inspector/front-end/InspectorView.js	2012-01-20 08:04:44 UTC (rev 105487)
+++ trunk/Source/WebCore/inspector/front-end/InspectorView.js	2012-01-20 08:26:49 UTC (rev 105488)
@@ -87,11 +87,9 @@
 
     _keyDown: function(event)
     {
-        var isInEditMode = event.target.enclosingNodeOrSelfWithClass("text-prompt") || WebInspector.isEditingAnyField();
-
         switch (event.keyIdentifier) {
             case "Left":
-                var isBackKey = !isInEditMode && WebInspector.KeyboardShortcut.eventHasCtrlOrMeta(event);
+                var isBackKey = !event.shiftKey && WebInspector.KeyboardShortcut.eventHasCtrlOrMeta(event) && !WebInspector.isInEditMode(event);
                 if (isBackKey && this._canGoBackInHistory()) {
                     this._goBackInHistory();
                     event.preventDefault();
@@ -99,7 +97,7 @@
                 break;
 
             case "Right":
-                var isForwardKey = !isInEditMode && WebInspector.KeyboardShortcut.eventHasCtrlOrMeta(event);
+                var isForwardKey = !event.shiftKey && WebInspector.KeyboardShortcut.eventHasCtrlOrMeta(event) && !WebInspector.isInEditMode(event);
                 if (isForwardKey && this._canGoForwardInHistory()) {
                     this._goForwardInHistory();
                     event.preventDefault();

Modified: trunk/Source/WebCore/inspector/front-end/TextViewer.js (105487 => 105488)


--- trunk/Source/WebCore/inspector/front-end/TextViewer.js	2012-01-20 08:04:44 UTC (rev 105487)
+++ trunk/Source/WebCore/inspector/front-end/TextViewer.js	2012-01-20 08:26:49 UTC (rev 105488)
@@ -86,6 +86,7 @@
         if (this._mainPanel.readOnly === readOnly)
             return;
         this._mainPanel.readOnly = readOnly;
+        WebInspector.markBeingEdited(this.element, !readOnly);
     },
 
     get readOnly()
@@ -330,6 +331,18 @@
             return false;
 
         return this._delegate.cancelEditing();
+    },
+
+    wasShown: function()
+    {
+        if (!this.readOnly)
+            WebInspector.markBeingEdited(this.element, true);
+    },
+
+    willHide: function()
+    {
+        if (!this.readOnly)
+            WebInspector.markBeingEdited(this.element, false);
     }
 }
 

Modified: trunk/Source/WebCore/inspector/front-end/UIUtils.js (105487 => 105488)


--- trunk/Source/WebCore/inspector/front-end/UIUtils.js	2012-01-20 08:04:44 UTC (rev 105487)
+++ trunk/Source/WebCore/inspector/front-end/UIUtils.js	2012-01-20 08:26:49 UTC (rev 105488)
@@ -202,9 +202,15 @@
     return true;
 }
 
-WebInspector.isEditingAnyField = function()
+WebInspector.isInEditMode = function(event)
 {
-    return !!WebInspector.__editingCount;
+    if (WebInspector.__editingCount > 0)
+        return true;
+    if (event.target.nodeName === "INPUT")
+        return true;
+    if (event.target.enclosingNodeOrSelfWithClass("text-prompt"))
+        return true;
+    return false;
 }
 
 /**

Modified: trunk/Source/WebCore/inspector/front-end/inspector.js (105487 => 105488)


--- trunk/Source/WebCore/inspector/front-end/inspector.js	2012-01-20 08:04:44 UTC (rev 105487)
+++ trunk/Source/WebCore/inspector/front-end/inspector.js	2012-01-20 08:26:49 UTC (rev 105488)
@@ -624,12 +624,10 @@
 
 WebInspector.documentKeyDown = function(event)
 {
-    var isInputElement = event.target.nodeName === "INPUT";
-    var isInEditMode = event.target.enclosingNodeOrSelfWithClass("text-prompt") || WebInspector.isEditingAnyField();
     const helpKey = WebInspector.isMac() ? "U+003F" : "U+00BF"; // "?" for both platforms
 
     if (event.keyIdentifier === "F1" ||
-        (event.keyIdentifier === helpKey && event.shiftKey && (!isInEditMode && !isInputElement || event.metaKey))) {
+        (event.keyIdentifier === helpKey && event.shiftKey && (!WebInspector.isInEditMode(event) || event.metaKey))) {
         WebInspector.shortcutsScreen.show();
         event.stopPropagation();
         event.preventDefault();
@@ -659,23 +657,24 @@
         return;
     }
 
-    if (WebInspector.isEditingAnyField())
-        return;
-
     var isMac = WebInspector.isMac();
     switch (event.keyIdentifier) {
         case "U+001B": // Escape key
-            event.preventDefault();
-            this._escPressed();
+            if (event.target.hasStyleClass("text-prompt") || !WebInspector.isInEditMode(event)) {
+                event.preventDefault();
+                this._escPressed();
+            }
             break;
         case "U+0052": // R key
+            if (WebInspector.isInEditMode(event))
+                return;
             if ((event.metaKey && isMac) || (event.ctrlKey && !isMac)) {
                 PageAgent.reload(event.shiftKey);
                 event.preventDefault();
             }
             break;
         case "F5":
-            if (!isMac) {
+            if (!isMac && !WebInspector.isInEditMode(event)) {
                 PageAgent.reload(event.ctrlKey || event.shiftKey);
                 event.preventDefault();
             }
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to