4 <div contenteditable=
"true" id=
"editable">
5 <li id=
"li" style=
"border: 1px solid black;"><span><div id=
"contents" style=
"border: 1px solid red;">DropAboveMe
</div></span></li>
6 <div><span id=
"drag">DragMe
</span></div>
10 <script src=
"../../resources/dump-as-markup.js"></script>
13 var li
= document
.createElement("li");
14 li
.appendChild(document
.createTextNode(str
));
15 var console
= document
.getElementById("console");
16 console
.appendChild(li
);
20 if (!window
.testRunner
)
21 log("This can only be run automatically using the layout test engine. To run it manually, drag 'Dragme' and drop it above 'DropAboveMe'.");
23 var drag
= document
.getElementById("drag");
24 var dragx
= drag
.offsetParent
.offsetLeft
+ drag
.offsetLeft
+ drag
.offsetWidth
/ 2;
25 var dragy
= drag
.offsetParent
.offsetTop
+ drag
.offsetTop
+ drag
.offsetHeight
/ 2;
27 eventSender
.mouseMoveTo(dragx
, dragy
);
28 eventSender
.mouseDown();
29 eventSender
.mouseUp();
30 eventSender
.mouseDown();
31 eventSender
.mouseUp();
32 // Leap forward so that the next mouseDown doesn't trigger a triple click.
33 eventSender
.leapForward(1200);
35 eventSender
.mouseDown();
36 // Leap forward so that the mouse movement causes a drag instead of selection creation.
37 eventSender
.leapForward(500);
39 var li
= document
.getElementById("li");
41 var dropx
= li
.offsetLeft
+ li
.offsetWidth
/ 2;
42 var dropy
= li
.offsetTop
+ 15;
44 eventSender
.mouseMoveTo(dropx
, dropy
);
45 eventSender
.mouseUp();
47 Markup
.description("This tests dropping content onto a list items content when the content is wrapped in a span. You should see 'DropAboveMe DragMe'. "
48 + "See <rdar://4861080>, but note that the expected behavior is different than what's described there, since the rendering bug <rdar://4907469> has been fixed.");
49 Markup
.dump(editable
);