Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(133)

Unified Diff: LayoutTests/editing/selection/skip-over-uneditable-in-contenteditable.html

Issue 20572005: Allow selection to skip over contenteditable (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Work around minor platform differences in test Created 7 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: LayoutTests/editing/selection/skip-over-uneditable-in-contenteditable.html
diff --git a/LayoutTests/editing/selection/skip-over-uneditable-in-contenteditable.html b/LayoutTests/editing/selection/skip-over-uneditable-in-contenteditable.html
new file mode 100644
index 0000000000000000000000000000000000000000..b0fe8c085fb77d77bcca39f85e31bb042df511ff
--- /dev/null
+++ b/LayoutTests/editing/selection/skip-over-uneditable-in-contenteditable.html
@@ -0,0 +1,47 @@
+<!DOCTYPE HTML>
+<html>
+<body>
+<script src="../../fast/js/resources/js-test-pre.js"></script>
+
+<div contentEditable>
+<p id="before">Before</p>
+<p id="middle" contentEditable="false">Middle</p>
+<p id="after">After</p>
+</div>
+
+<div id="console"></div>
+<script>
+description("Ensure that extending a selection inside a contentEditable skips past an uneditable region.");
+
+var before = document.getElementById("before");
+var after = document.getElementById("after");
+
+var sel = window.getSelection();
+sel.setBaseAndExtent(before, 0, before, 6);
+sel.modify("extend", "forward", "character");
+shouldBe("sel.focusNode", "after");
+
+sel.setBaseAndExtent(after, 5, after, 0);
+sel.modify("extend", "backward", "character");
+shouldBe("sel.focusNode.parentElement", "before");
+
+sel.setBaseAndExtent(before, 0, before, 6);
+sel.modify("extend", "forward", "word");
+shouldBe("sel.focusNode", "after");
+
+sel.setBaseAndExtent(after, 5, after, 0);
+sel.modify("extend", "backward", "word");
+shouldBe("sel.focusNode.parentElement", "before");
+
+sel.setBaseAndExtent(before, 0, before, 6);
+sel.modify("extend", "forward", "line");
+shouldBe("sel.focusNode.parentElement", "after");
+
+sel.setBaseAndExtent(after, 5, after, 0);
+sel.modify("extend", "backward", "line");
+shouldBe("sel.focusNode.parentElement", "before");
+</script>
+
+<script src="../../fast/js/resources/js-test-post.js"></script>
+</body>
+</html>

Powered by Google App Engine
This is Rietveld 408576698