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

Side by Side Diff: third_party/WebKit/LayoutTests/editing/execCommand/script-tests/enabling-and-selection-2.js

Issue 2886983002: Make EnabledVisibleSelection return false for user-triggered command and unfocused selection (Closed)
Patch Set: Tue May 16 19:43:47 PDT 2017 Created 3 years, 7 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 unified diff | Download patch
« no previous file with comments | « no previous file | third_party/WebKit/LayoutTests/editing/selection/modify_extend/extend_with_unfocused_selection.html » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 description("This tests enabling of non-execCommand commands based on whether th e selection is a caret or range or in editable content."); 1 description("This tests enabling of non-execCommand commands based on whether th e selection is a caret or range or in editable content.");
2 2
3 var nonEditableParagraph = document.createElement("p"); 3 var nonEditableParagraph = document.createElement("p");
4 nonEditableParagraph.appendChild(document.createTextNode("x")); 4 nonEditableParagraph.appendChild(document.createTextNode("x"));
5 document.body.appendChild(nonEditableParagraph); 5 document.body.appendChild(nonEditableParagraph);
6 6
7 var editableParagraph = document.createElement("p"); 7 var editableParagraph = document.createElement("p");
8 editableParagraph.appendChild(document.createTextNode("x")); 8 editableParagraph.appendChild(document.createTextNode("x"));
9 editableParagraph.setAttribute("contentEditable", "true"); 9 editableParagraph.setAttribute("contentEditable", "true");
10 document.body.appendChild(editableParagraph); 10 document.body.appendChild(editableParagraph);
11 11
12 var editablePlainTextParagraph = document.createElement("p"); 12 var editablePlainTextParagraph = document.createElement("p");
13 editablePlainTextParagraph.appendChild(document.createTextNode("x")); 13 editablePlainTextParagraph.appendChild(document.createTextNode("x"));
14 editablePlainTextParagraph.setAttribute("contentEditable", "plaintext-only"); 14 editablePlainTextParagraph.setAttribute("contentEditable", "plaintext-only");
15 document.body.appendChild(editablePlainTextParagraph); 15 document.body.appendChild(editablePlainTextParagraph);
16 16
17 function enabled(command, element, selectionStart, selectionEnd) 17 function enabled(command, element, selectionStart, selectionEnd)
18 { 18 {
19 var selection = document.getSelection(); 19 var selection = document.getSelection();
20 selection.removeAllRanges(); 20 selection.removeAllRanges();
21 if (document.activeElement)
22 document.activeElement.blur();
21 if (element) { 23 if (element) {
22 var range = document.createRange(); 24 var range = document.createRange();
23 range.setStart(element.firstChild, selectionStart); 25 range.setStart(element.firstChild, selectionStart);
24 range.setEnd(element.firstChild, selectionEnd); 26 range.setEnd(element.firstChild, selectionEnd);
25 selection.addRange(range); 27 selection.addRange(range);
26 } 28 }
27 var result = testRunner.isCommandEnabled(command); 29 var result = testRunner.isCommandEnabled(command);
28 selection.removeAllRanges(); 30 selection.removeAllRanges();
29 return result; 31 return result;
30 } 32 }
(...skipping 135 matching lines...) Expand 10 before | Expand all | Expand 10 after
166 shouldBe("whenEnabled('SelectWord')", "'visible'"); 168 shouldBe("whenEnabled('SelectWord')", "'visible'");
167 shouldBe("whenEnabled('SetMark')", "'visible'"); 169 shouldBe("whenEnabled('SetMark')", "'visible'");
168 170
169 shouldBe("whenEnabled('OverWrite')", "'richly editable'"); 171 shouldBe("whenEnabled('OverWrite')", "'richly editable'");
170 172
171 document.body.removeChild(nonEditableParagraph); 173 document.body.removeChild(nonEditableParagraph);
172 document.body.removeChild(editableParagraph); 174 document.body.removeChild(editableParagraph);
173 document.body.removeChild(editablePlainTextParagraph); 175 document.body.removeChild(editablePlainTextParagraph);
174 176
175 var successfullyParsed = true; 177 var successfullyParsed = true;
OLDNEW
« no previous file with comments | « no previous file | third_party/WebKit/LayoutTests/editing/selection/modify_extend/extend_with_unfocused_selection.html » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698