Changeset 90626 in webkit


Ignore:
Timestamp:
Jul 8, 2011 6:25:21 AM (13 years ago)
Author:
pfeldman@chromium.org
Message:

Web Inspector: add support for drag'n'drop of non-elements (comments, text, etc.)
https://bugs.webkit.org/show_bug.cgi?id=64163

Reviewed by Yury Semikhatsky.

  • inspector/Inspector.json:
  • inspector/InspectorDOMAgent.cpp:

(WebCore::InspectorDOMAgent::moveTo):

  • inspector/front-end/ElementsTreeOutline.js:

(WebInspector.ElementsTreeOutline.prototype._isValidDragSourceOrTarget):

Location:
trunk/Source/WebCore
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/ChangeLog

    r90625 r90626  
     12011-07-08  Pavel Feldman  <pfeldman@google.com>
     2
     3        Web Inspector: add support for drag'n'drop of non-elements (comments, text, etc.)
     4        https://bugs.webkit.org/show_bug.cgi?id=64163
     5
     6        Reviewed by Yury Semikhatsky.
     7
     8        * inspector/Inspector.json:
     9        * inspector/InspectorDOMAgent.cpp:
     10        (WebCore::InspectorDOMAgent::moveTo):
     11        * inspector/front-end/ElementsTreeOutline.js:
     12        (WebInspector.ElementsTreeOutline.prototype._isValidDragSourceOrTarget):
     13
    1142011-07-08  Andrey Kosyakov  <caseq@chromium.org>
    215
  • trunk/Source/WebCore/inspector/Inspector.json

    r90553 r90626  
    10291029                "parameters": [
    10301030                    { "name": "nodeId", "type": "integer", "description": "Id of the node to drop." },
    1031                     { "name": "targetNodeId", "type": "integer", "description": "Id of the node to drop into." },
     1031                    { "name": "targetElementId", "type": "integer", "description": "Id of the element to drop into." },
    10321032                    { "name": "anchorNodeId", "type": "integer", "optional": true, "description": "Drop node before given one." }
    10331033                ],
  • trunk/Source/WebCore/inspector/InspectorDOMAgent.cpp

    r90460 r90626  
    10331033}
    10341034
    1035 void InspectorDOMAgent::moveTo(ErrorString* error, int nodeId, int targetNodeId, const int* const anchorNodeId, int* newNodeId)
    1036 {
    1037     Element* element = assertElement(error, nodeId);
    1038     if (!element)
    1039         return;
    1040 
    1041     Element* targetElement = assertElement(error, targetNodeId);
     1035void InspectorDOMAgent::moveTo(ErrorString* error, int nodeId, int targetElementId, const int* const anchorNodeId, int* newNodeId)
     1036{
     1037    Node* node = assertNode(error, nodeId);
     1038    if (!node)
     1039        return;
     1040
     1041    Element* targetElement = assertElement(error, targetElementId);
    10421042    if (!targetElement)
    10431043        return;
    10441044
    1045     Element* anchorElement = 0;
     1045    Node* anchorNode = 0;
    10461046    if (anchorNodeId && *anchorNodeId) {
    1047         anchorElement = assertElement(error, *anchorNodeId);
    1048         if (!anchorElement)
     1047        anchorNode = assertNode(error, *anchorNodeId);
     1048        if (!anchorNode)
    10491049            return;
    1050         if (anchorElement->parentNode() != targetElement) {
    1051             *error = "Anchor node must be child of the target node.";
     1050        if (anchorNode->parentNode() != targetElement) {
     1051            *error = "Anchor node must be child of the target element.";
    10521052            return;
    10531053        }
     
    10551055
    10561056    ExceptionCode ec = 0;
    1057     bool success = targetElement->insertBefore(element, anchorElement, ec);
     1057    bool success = targetElement->insertBefore(node, anchorNode, ec);
    10581058    if (ec || !success) {
    10591059        *error = "Could not drop node.";
    10601060        return;
    10611061    }
    1062     *newNodeId = pushNodePathToFrontend(element);
     1062    *newNodeId = pushNodePathToFrontend(node);
    10631063}
    10641064
  • trunk/Source/WebCore/inspector/front-end/ElementsTreeOutline.js

    r90617 r90626  
    325325            return false;
    326326
    327         if (node.nodeType() !== Node.ELEMENT_NODE)
    328             return false;
    329 
    330327        if (!node.parentNode || node.parentNode.nodeType() !== Node.ELEMENT_NODE)
    331328            return false;
Note: See TracChangeset for help on using the changeset viewer.