Title: [121211] trunk
- Revision
- 121211
- Author
- shin...@chromium.org
- Date
- 2012-06-25 18:49:11 -0700 (Mon, 25 Jun 2012)
Log Message
[Shadow] Deleting list distributed to Shadow DOM does not work correctly.
https://bugs.webkit.org/show_bug.cgi?id=89170
Reviewed by Ryosuke Niwa.
Source/WebCore:
When deleting several elements distributed to Shadow DOM, some renderers might be gone in
processing deletion. To fix them, we should call isContentEditable() instead of rendererIsEditable().
Test: editing/shadow/delete-list-in-shadow.html
* editing/DeleteFromTextNodeCommand.cpp:
(WebCore::DeleteFromTextNodeCommand::doApply):
LayoutTests:
* editing/shadow/delete-list-in-shadow-expected.txt: Added.
* editing/shadow/delete-list-in-shadow.html: Added.
Modified Paths
Added Paths
Diff
Modified: trunk/LayoutTests/ChangeLog (121210 => 121211)
--- trunk/LayoutTests/ChangeLog 2012-06-26 01:34:36 UTC (rev 121210)
+++ trunk/LayoutTests/ChangeLog 2012-06-26 01:49:11 UTC (rev 121211)
@@ -1,3 +1,13 @@
+2012-06-25 Shinya Kawanaka <shin...@chromium.org>
+
+ [Shadow] Deleting list distributed to Shadow DOM does not work correctly.
+ https://bugs.webkit.org/show_bug.cgi?id=89170
+
+ Reviewed by Ryosuke Niwa.
+
+ * editing/shadow/delete-list-in-shadow-expected.txt: Added.
+ * editing/shadow/delete-list-in-shadow.html: Added.
+
2012-06-25 Kent Tamura <tk...@chromium.org>
Unreviewed, rolling out r121145.
Added: trunk/LayoutTests/editing/shadow/delete-list-in-shadow-expected.txt (0 => 121211)
--- trunk/LayoutTests/editing/shadow/delete-list-in-shadow-expected.txt (rev 0)
+++ trunk/LayoutTests/editing/shadow/delete-list-in-shadow-expected.txt 2012-06-26 01:49:11 UTC (rev 121211)
@@ -0,0 +1,9 @@
+Elements distributed to Shadow DOM should be deleted correctly when pressing delete key.
+
+To test manually, select somewhere in ABCDE from somehwere in 12345, and press delete, and check the selected text is deleted correctly.
+
+PASS hostTextContent is 'AB345'
+PASS successfullyParsed is true
+
+TEST COMPLETE
+
Added: trunk/LayoutTests/editing/shadow/delete-list-in-shadow.html (0 => 121211)
--- trunk/LayoutTests/editing/shadow/delete-list-in-shadow.html (rev 0)
+++ trunk/LayoutTests/editing/shadow/delete-list-in-shadow.html 2012-06-26 01:49:11 UTC (rev 121211)
@@ -0,0 +1,45 @@
+<!DOCTYPE html>
+<html>
+<body>
+<script src=""
+<script src=""
+
+<p>Elements distributed to Shadow DOM should be deleted correctly when pressing delete key.</p>
+<p>To test manually, select somewhere in ABCDE from somehwere in 12345, and press delete, and check the selected text is deleted correctly.</p>
+
+<div id="container">
+ <ol id="host" contenteditable>
+ <li id="list1">ABCDE</li>
+ <li id="list2">abcde</li>
+ <li id="list3">12345</li>
+ </ol>
+</div>
+<pre id="console"></pre>
+
+<script>
+if (window.layoutTestController)
+ layoutTestController.dumpAsText();
+
+var shadowRoot = new WebKitShadowRoot(host);
+var li = document.createElement('li');
+li.innerHTML = 'hogehoge';
+shadowRoot.appendChild(li);
+shadowRoot.appendChild(document.createElement('shadow'));
+
+if (window.eventSender) {
+ eventSender.mouseMoveTo(list1.offsetLeft + 20, list1.offsetTop + list1.offsetHeight / 2);
+ eventSender.mouseDown();
+ eventSender.mouseMoveTo(list3.offsetLeft + 20, list3.offsetTop + list3.offsetHeight / 2);
+ eventSender.mouseUp();
+
+ eventSender.keyDown('delete');
+
+ var hostTextContent = host.textContent.replace(/^\s+|\s+$/g, '');
+ shouldBe("hostTextContent", "'AB345'");
+ container.innerHTML = "";
+}
+</script>
+
+<script src=""
+</body>
+</html>
Modified: trunk/Source/WebCore/ChangeLog (121210 => 121211)
--- trunk/Source/WebCore/ChangeLog 2012-06-26 01:34:36 UTC (rev 121210)
+++ trunk/Source/WebCore/ChangeLog 2012-06-26 01:49:11 UTC (rev 121211)
@@ -1,3 +1,18 @@
+2012-06-25 Shinya Kawanaka <shin...@chromium.org>
+
+ [Shadow] Deleting list distributed to Shadow DOM does not work correctly.
+ https://bugs.webkit.org/show_bug.cgi?id=89170
+
+ Reviewed by Ryosuke Niwa.
+
+ When deleting several elements distributed to Shadow DOM, some renderers might be gone in
+ processing deletion. To fix them, we should call isContentEditable() instead of rendererIsEditable().
+
+ Test: editing/shadow/delete-list-in-shadow.html
+
+ * editing/DeleteFromTextNodeCommand.cpp:
+ (WebCore::DeleteFromTextNodeCommand::doApply):
+
2012-06-25 Min Qin <qin...@chromium.org>
[Chromium] Fix the css stylesheet for android media controls after recent changes
Modified: trunk/Source/WebCore/editing/DeleteFromTextNodeCommand.cpp (121210 => 121211)
--- trunk/Source/WebCore/editing/DeleteFromTextNodeCommand.cpp 2012-06-26 01:34:36 UTC (rev 121210)
+++ trunk/Source/WebCore/editing/DeleteFromTextNodeCommand.cpp 2012-06-26 01:49:11 UTC (rev 121211)
@@ -47,7 +47,7 @@
{
ASSERT(m_node);
- if (!m_node->rendererIsEditable())
+ if (!m_node->isContentEditable())
return;
ExceptionCode ec = 0;
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes