| Index: LayoutTests/editing/spelling/spellcheck-editable-on-focus-multiframe.html
|
| diff --git a/LayoutTests/editing/spelling/spellcheck-editable-on-focus-multiframe.html b/LayoutTests/editing/spelling/spellcheck-editable-on-focus-multiframe.html
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..0676a38dbab67f587f180734969208084a3dd529
|
| --- /dev/null
|
| +++ b/LayoutTests/editing/spelling/spellcheck-editable-on-focus-multiframe.html
|
| @@ -0,0 +1,56 @@
|
| +<!DOCTYPE html>
|
| +<html>
|
| +<head>
|
| +<script src="resources/util.js"></script>
|
| +<script src="../../fast/js/resources/js-test-pre.js"></script>
|
| +</head>
|
| +<body>
|
| +<pre id="console"></pre>
|
| +<iframe id="frame1" src="data:text/html,<body></body>"></iframe>
|
| +<iframe id="frame2" src="data:text/html,<body></body>"></iframe>
|
| +
|
| +<script>
|
| +
|
| +description("Spell checking should be triggered on focus of an editable. " +
|
| +"Also after retarting spell checker. It applies to all frames." +
|
| +"To test manually type focus above editable. Misspellings in them " +
|
| +"should be marked on focus.Turn spell checker off and on again and again focus editables. " +
|
| +"Mispelling should be marked again");
|
| +
|
| +var frame1 = document.getElementById("frame1");
|
| +var testEditable1 = frame1.contentWindow.document.createElement("div");
|
| +testEditable1.setAttribute("contentEditable", "true");
|
| +frame1.contentWindow.document.body.appendChild(testEditable1);
|
| +var frame2 = document.getElementById("frame2");
|
| +var testEditable2 = frame1.contentWindow.document.createElement("div");
|
| +testEditable2.setAttribute("contentEditable", "true");
|
| +frame2.contentWindow.document.body.appendChild(testEditable2);
|
| +testEditable1.innerText = "zz zz zz.";
|
| +testEditable2.innerText = "zz zz zz.";
|
| +
|
| +if (window.internals) {
|
| + internals.settings.setUnifiedTextCheckerEnabled(true);
|
| + internals.settings.setAsynchronousSpellCheckingEnabled(false);
|
| + internals.setContinuousSpellCheckingEnabled(true);
|
| +
|
| + shouldBe('internals.markerCountForNode(testEditable1.childNodes[0], "spelling")', '0');
|
| + shouldBe('internals.markerCountForNode(testEditable2.childNodes[0], "spelling")', '0');
|
| + testEditable1.focus();
|
| + shouldBe('internals.markerCountForNode(testEditable1.childNodes[0], "spelling")', '3');
|
| + testEditable2.focus();
|
| + shouldBe('internals.markerCountForNode(testEditable1.childNodes[0], "spelling")', '3');
|
| + internals.setContinuousSpellCheckingEnabled(false);
|
| + shouldBe('internals.markerCountForNode(testEditable1.childNodes[0], "spelling")', '0');
|
| + shouldBe('internals.markerCountForNode(testEditable2.childNodes[0], "spelling")', '0');
|
| + internals.setContinuousSpellCheckingEnabled(true);
|
| + testEditable1.focus();
|
| + testEditable2.focus();
|
| + shouldBe('internals.markerCountForNode(testEditable1.childNodes[0], "spelling")', '3');
|
| + shouldBe('internals.markerCountForNode(testEditable2.childNodes[0], "spelling")', '3');
|
| +} else {
|
| + log("Automatic testing impossible. Test manually. See steps in the description.");
|
| +}
|
| +</script>
|
| +<script src="../../fast/js/resources/js-test-post.js"></script>
|
| +</body>
|
| +</html>
|
|
|