diff options
Diffstat (limited to 'layout/generic/test/test_bug438840.html')
-rw-r--r-- | layout/generic/test/test_bug438840.html | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/layout/generic/test/test_bug438840.html b/layout/generic/test/test_bug438840.html new file mode 100644 index 0000000000..0b5c1bef2e --- /dev/null +++ b/layout/generic/test/test_bug438840.html @@ -0,0 +1,52 @@ +<!DOCTYPE HTML> +<html> +<head> + <title>Test Character Movement (including nsTextFrame::PeekOffsetCharacter)</title> + <script src="/tests/SimpleTest/SimpleTest.js"></script> + <script src="/tests/SimpleTest/EventUtils.js"></script> + <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css" /> +</head> +<body> +<p id="display"></p> +<div>content before the editor</div> +<div contentEditable="true" id="editor" style="width:200px;height:150px;overflow-y:auto;overflow-x:hidden;"><p>paragraph1</p> +<p>paragraph2</p> +<p>paragraph3</p> +<p>paragraph4</p> +<p>paragraph5</p> +<p>paragraph6</p> +</div> +<div>content after the editor</div> +<pre id="test"> +<script class="testbody" type="text/javascript"> + +function test() { + var sel = window.getSelection(); + var editor = document.getElementById("editor"); + + var keymodifier={}; + //in windows/linux, pageup/pagedown will trigger movement of caret + //while in Mac, pageup/pagedown will just scroll. We need to press + //alt-pageup/pagedown in Mac to actually move caret + if(navigator.platform.includes("Mac")){ + keymodifier.altKey=true; + } + + sel.collapse(editor.firstChild.firstChild, 1); + synthesizeKey("VK_PAGE_UP", keymodifier); + is(sel.anchorNode, editor.firstChild.firstChild, 'after pageup caret should still be in the first paragraph'); + + synthesizeKey("VK_PAGE_DOWN", keymodifier); + is(sel.anchorNode.parentNode.parentNode, editor, 'pagedown should not move caret outside the editor'); + + SimpleTest.finish(); +} + +SimpleTest.waitForExplicitFinish(); +SimpleTest.waitForFocus(test); + + +</script> +</pre> +</body> +</html> |