Changeset 106638 in webkit


Ignore:
Timestamp:
Feb 3, 2012 1:28:00 AM (12 years ago)
Author:
pfeldman@chromium.org
Message:

Web Inspector: preserve elements panel selection upon node drag'n'drop
https://bugs.webkit.org/show_bug.cgi?id=77722

Reviewed by Vsevolod Vlasov.

Source/WebCore:

Test: inspector/elements/move-node.html

  • inspector/front-end/DOMAgent.js:

(WebInspector.DOMAgent.prototype._markRevision):

  • inspector/front-end/ElementsTreeOutline.js:

(WebInspector.ElementsTreeOutline.prototype._ondrop):
(WebInspector.ElementsTreeOutline.prototype._doMove.callback):
(WebInspector.ElementsTreeOutline.prototype._doMove):

LayoutTests:

  • inspector/elements/move-node-expected.txt: Added.
  • inspector/elements/move-node.html: Added.
Location:
trunk
Files:
2 added
5 edited

Legend:

Unmodified
Added
Removed
  • trunk/LayoutTests/ChangeLog

    r106637 r106638  
     12012-02-03  Pavel Feldman  <pfeldman@google.com>
     2
     3        Web Inspector: preserve elements panel selection upon node drag'n'drop
     4        https://bugs.webkit.org/show_bug.cgi?id=77722
     5
     6        Reviewed by Vsevolod Vlasov.
     7
     8        * inspector/elements/move-node-expected.txt: Added.
     9        * inspector/elements/move-node.html: Added.
     10
    1112012-02-03  Shinya Kawanaka  <shinyak@google.com>
    212
  • trunk/LayoutTests/inspector/elements/edit-dom-actions-expected.txt

    r105262 r106638  
    2424==== after ====
    2525- <div id="testSetNodeName">
    26       <span id="node-to-set-name"></span>
     26      <span id="node-to-set-name" ></span>
    2727  </div>
    2828
     
    3434==== after ====
    3535- <div id="testSetNodeNameInput">
    36       <input id="node-to-set-name-input">
     36      <input id="node-to-set-name-input" >
    3737  </div>
    3838
  • trunk/Source/WebCore/ChangeLog

    r106637 r106638  
     12012-02-03  Pavel Feldman  <pfeldman@google.com>
     2
     3        Web Inspector: preserve elements panel selection upon node drag'n'drop
     4        https://bugs.webkit.org/show_bug.cgi?id=77722
     5
     6        Reviewed by Vsevolod Vlasov.
     7
     8        Test: inspector/elements/move-node.html
     9
     10        * inspector/front-end/DOMAgent.js:
     11        (WebInspector.DOMAgent.prototype._markRevision):
     12        * inspector/front-end/ElementsTreeOutline.js:
     13        (WebInspector.ElementsTreeOutline.prototype._ondrop):
     14        (WebInspector.ElementsTreeOutline.prototype._doMove.callback):
     15        (WebInspector.ElementsTreeOutline.prototype._doMove):
     16
    1172012-02-03  Shinya Kawanaka  <shinyak@google.com>
    218
  • trunk/Source/WebCore/inspector/front-end/DOMAgent.js

    r105679 r106638  
    979979        {
    980980            if (callback)
    981                 callback(error);
     981                callback.apply(this, arguments);
    982982            if (error || !WebInspector.experimentsSettings.freeFlowDOMEditing.isEnabled())
    983983                return;
  • trunk/Source/WebCore/inspector/front-end/ElementsTreeOutline.js

    r106552 r106638  
    387387        event.preventDefault();
    388388        var treeElement = this._treeElementFromEvent(event);
    389         if (this._nodeBeingDragged && treeElement) {
    390             var parentNode;
    391             var anchorNode;
    392 
    393             if (treeElement._elementCloseTag) {
    394                 // Drop onto closing tag -> insert as last child.
    395                 parentNode = treeElement.representedObject;
    396             } else {
    397                 var dragTargetNode = treeElement.representedObject;
    398                 parentNode = dragTargetNode.parentNode;
    399                 anchorNode = dragTargetNode;
    400             }
    401 
    402             function callback(error, newNodeId)
    403             {
    404                 if (error)
    405                     return;
    406 
    407                 this._updateModifiedNodes();
    408                 var newNode = WebInspector.domAgent.nodeForId(newNodeId);
    409                 if (newNode)
    410                     this.selectDOMNode(newNode, true);
    411             }
    412             this._nodeBeingDragged.moveTo(parentNode, anchorNode, callback.bind(this));
    413         }
     389        if (treeElement)
     390            this._doMove(treeElement);
     391    },
     392
     393    _doMove: function(treeElement)
     394    {
     395        if (!this._nodeBeingDragged)
     396            return;
     397
     398        var parentNode;
     399        var anchorNode;
     400
     401        if (treeElement._elementCloseTag) {
     402            // Drop onto closing tag -> insert as last child.
     403            parentNode = treeElement.representedObject;
     404        } else {
     405            var dragTargetNode = treeElement.representedObject;
     406            parentNode = dragTargetNode.parentNode;
     407            anchorNode = dragTargetNode;
     408        }
     409
     410        function callback(error, newNodeId)
     411        {
     412            if (error)
     413                return;
     414
     415            this._updateModifiedNodes();
     416            var newNode = WebInspector.domAgent.nodeForId(newNodeId);
     417            if (newNode)
     418                this.selectDOMNode(newNode, true);
     419        }
     420
     421        this._nodeBeingDragged.moveTo(parentNode, anchorNode, callback.bind(this));
    414422
    415423        delete this._nodeBeingDragged;
Note: See TracChangeset for help on using the changeset viewer.