*** empty log message ***
authorkdecker <kdecker@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 14 Jul 2004 00:38:38 +0000 (00:38 +0000)
committerkdecker <kdecker@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 14 Jul 2004 00:38:38 +0000 (00:38 +0000)
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@7019 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 files changed:
LayoutTests/editing/editing.js
LayoutTests/editing/execCommand/boldCharacter-expected.txt [new file with mode: 0644]
LayoutTests/editing/execCommand/boldSelection-expected.txt [new file with mode: 0644]
LayoutTests/editing/execCommand/boldSelection.html [new file with mode: 0644]
LayoutTests/editing/execCommand/italicizeByCharacter-expected.txt [new file with mode: 0644]
LayoutTests/editing/execCommand/italicizeByCharacter.html [new file with mode: 0644]
LayoutTests/editing/execCommand/modifyForeColorByCharacter-expected.txt [new file with mode: 0644]
LayoutTests/editing/execCommand/modifyForeColorByCharacter.html [new file with mode: 0644]
LayoutTests/editing/execCommand/print-expected.txt [new file with mode: 0644]
LayoutTests/editing/execCommand/print.html [new file with mode: 0644]
LayoutTests/editing/execCommand/selectAll-expected.txt [new file with mode: 0644]
LayoutTests/editing/execCommand/selectAll.html [new file with mode: 0644]

index fab7510..324ae32 100644 (file)
@@ -39,6 +39,20 @@ function extendSelectionForwardByCharacterCommand() {
 
 //-------------------------------------------------------------------------------------------------------
 
+function execExtendSelectionForwardByLineCommand() {
+    selection.modify("extend", "forward", "line");
+}
+function extendSelectionForwardByCharacterCommand() {
+    if (commandDelay > 0) {
+        window.setTimeout(execExtendSelectionForwardByCharacterCommand, commandCount * commandDelay);
+        commandCount++;
+    }
+    else {
+        execExtendSelectionForwardByCharacterCommand();
+    }
+}
+//-------------------------------------------------------------------------------------------------------
+
 function execMoveSelectionBackwardByCharacterCommand() {
     selection.modify("move", "backward", "character");
 }
@@ -82,6 +96,7 @@ function boldCommand() {
     }
 }
 
+
 //-------------------------------------------------------------------------------------------------------
 
 function execInsertNewlineCommand() {
@@ -243,6 +258,7 @@ function runEditingTest() {
 
 //-------------------------------------------------------------------------------------------------------
 
+
 function execBackColorCommand() {
     document.execCommand("BackColor", false, "Chartreuse");
 }
@@ -256,23 +272,10 @@ function backColorCommand() {
     }
 }
 
-//-------------------------------------------------------------------------------------------------------
-
-function execForeColorCommand() {
-    document.execCommand("ForeColor", false, "Purple");
-}
-function foreColorCommand() {
-    if (commandDelay > 0) {
-        window.setTimeout(execForeColorCommand, commandCount * commandDelay);
-        commandCount++;
-    }
-    else {
-        execForeColorCommand();
-    }
-}
 
 //-------------------------------------------------------------------------------------------------------
 
+
 function execFontNameCommand() {
     document.execCommand("FontName", false, "Courier");
 }
@@ -288,15 +291,18 @@ function fontNameCommand() {
 
 //-------------------------------------------------------------------------------------------------------
 
-function execFontSizeCommand() {
-    document.execCommand("FontSize", false, "48px");
+
+function runCommand(command, arg1, arg2) {
+    document.execCommand(command,arg1,arg2);
 }
-function fontSizeCommand() {
+
+function executeCommand(command,arg1,arg2) {
     if (commandDelay > 0) {
-        window.setTimeout(execFontSizeCommand, commandCount * commandDelay);
+        window.setTimeout(runCommand, commandCount * commandDelay);
         commandCount++;
     }
     else {
-        execFontSizeCommand();
+        runCommand(command,arg1,arg2);
     }
-}
\ No newline at end of file
+}
+
diff --git a/LayoutTests/editing/execCommand/boldCharacter-expected.txt b/LayoutTests/editing/execCommand/boldCharacter-expected.txt
new file mode 100644 (file)
index 0000000..8ad9e03
--- /dev/null
@@ -0,0 +1,107 @@
+layer at (0,0) size 800x600
+  RenderCanvas at (0,0) size 800x600
+layer at (0,0) size 800x600
+  RenderBlock {HTML} at (0,0) size 800x600
+    RenderBody {BODY} at (8,8) size 784x584
+      RenderBlock {DIV} at (0,0) size 784x356 [border: (2px solid #FF0000)]
+        RenderBlock (anonymous) at (14,14) size 756x56
+          RenderInline {SPAN} at (0,0) size 700x56
+            RenderInline {B} at (0,0) size 232x28
+              RenderInline {SPAN} at (0,0) size 232x28
+                RenderInline {B} at (0,0) size 232x28
+                  RenderInline {SPAN} at (0,0) size 232x28
+                    RenderInline {B} at (0,0) size 232x28
+                      RenderInline {SPAN} at (0,0) size 232x28
+                        RenderInline {B} at (0,0) size 232x28
+                          RenderInline {SPAN} at (0,0) size 232x28
+                            RenderInline {B} at (0,0) size 232x28
+                              RenderInline {SPAN} at (0,0) size 232x28
+                                RenderInline {B} at (0,0) size 232x28
+                                  RenderInline {SPAN} at (0,0) size 232x28
+                                    RenderInline {B} at (0,0) size 232x28
+                                      RenderInline {SPAN} at (0,0) size 232x28
+                                        RenderInline {B} at (0,0) size 232x28
+                                          RenderInline {SPAN} at (0,0) size 232x28
+                                            RenderInline {B} at (0,0) size 232x28
+                                              RenderInline {SPAN} at (0,0) size 232x28
+                                                RenderInline {B} at (0,0) size 232x28
+                                                  RenderInline {SPAN} at (0,0) size 232x28
+                                                    RenderInline {B} at (0,0) size 232x28
+                                                      RenderText {TEXT} at (0,0) size 13x28
+                                                        text run at (0,0) width 13: "\""
+                                                      RenderText {TEXT} at (13,0) size 16x28
+                                                        text run at (13,0) width 16: "T"
+                                                      RenderText {TEXT} at (29,0) size 13x28
+                                                        text run at (29,0) width 13: "h"
+                                                      RenderText {TEXT} at (42,0) size 11x28
+                                                        text run at (42,0) width 11: "e"
+                                                      RenderText {TEXT} at (53,0) size 6x28
+                                                        text run at (53,0) width 6: " "
+                                                      RenderText {TEXT} at (59,0) size 13x28
+                                                        text run at (59,0) width 13: "q"
+                                                      RenderText {TEXT} at (72,0) size 13x28
+                                                        text run at (72,0) width 13: "u"
+                                                      RenderText {TEXT} at (85,0) size 7x28
+                                                        text run at (85,0) width 7: "i"
+                                                      RenderText {TEXT} at (92,0) size 11x28
+                                                        text run at (92,0) width 11: "c"
+                                                      RenderText {TEXT} at (103,0) size 13x28
+                                                        text run at (103,0) width 13: "k"
+                                                      RenderText {TEXT} at (116,0) size 6x28
+                                                        text run at (116,0) width 6: " "
+                                                      RenderText {TEXT} at (122,0) size 13x28
+                                                        text run at (122,0) width 13: "b"
+                                                      RenderText {TEXT} at (135,0) size 11x28
+                                                        text run at (135,0) width 11: "r"
+                                                      RenderText {TEXT} at (146,0) size 12x28
+                                                        text run at (146,0) width 12: "o"
+                                                      RenderText {TEXT} at (158,0) size 17x28
+                                                        text run at (158,0) width 17: "w"
+                                                      RenderText {TEXT} at (175,0) size 13x28
+                                                        text run at (175,0) width 13: "n"
+                                                      RenderText {TEXT} at (188,0) size 6x28
+                                                        text run at (188,0) width 6: " "
+                                                      RenderText {TEXT} at (194,0) size 8x28
+                                                        text run at (194,0) width 8: "f"
+                                                      RenderText {TEXT} at (202,0) size 12x28
+                                                        text run at (202,0) width 12: "o"
+                                                      RenderText {TEXT} at (214,0) size 12x28
+                                                        text run at (214,0) width 12: "x"
+                                                      RenderText {TEXT} at (226,0) size 6x28
+                                                        text run at (226,0) width 6: " "
+            RenderText {TEXT} at (232,0) size 700x56
+              text run at (232,0) width 468: "jumps over the lazy dog\" uses every letter in the"
+              text run at (0,28) width 170: "english language."
+        RenderBlock (anonymous) at (14,94) size 756x224
+          RenderBlock {P} at (0,0) size 756x224
+            RenderText {TEXT} at (0,0) size 755x224
+              text run at (0,0) width 462: "Here's to the crazy ones, the misfits, the rebels, "
+              text run at (462,0) width 193: "the trouble makers, "
+              text run at (655,0) width 92: "the round"
+              text run at (0,28) width 243: "pegs in the square holes, "
+              text run at (243,28) width 350: "the ones who see things differently. "
+              text run at (593,28) width 144: "There not fond"
+              text run at (0,56) width 510: "of rules, and they have no respect for the status quo, "
+              text run at (510,56) width 190: "you can quote then,"
+              text run at (0,84) width 197: "disagree with them, "
+              text run at (197,84) width 218: "glorify or vilify them, "
+              text run at (415,84) width 340: "about the only thing you can't do is"
+              text run at (0,112) width 129: "ignore them. "
+              text run at (129,112) width 281: "Because they change things. "
+              text run at (410,112) width 344: "They push the human race forward."
+              text run at (0,140) width 481: "And while some may see them as the crazy ones, "
+              text run at (481,140) width 146: "we see genius. "
+              text run at (627,140) width 117: "Because the"
+              text run at (0,168) width 632: "people who are crazy enough to think they can change the world "
+              text run at (632,168) width 116: "are the ones"
+              text run at (0,196) width 77: "who do."
+        RenderBlock (anonymous) at (14,342) size 756x0
+          RenderInline {SPAN} at (0,0) size 0x0
+          RenderText {TEXT} at (0,0) size 0x0
+selection is RANGE:
+start:      position 0 of child 1 {TEXT} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 2 {SPAN} of root {DIV}
+upstream:   position 0 of child 1 {TEXT} of root {DIV}
+downstream: position 0 of child 1 {TEXT} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 2 {SPAN} of root {DIV}
+end:        position 1 of child 21 {TEXT} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 2 {SPAN} of root {DIV}
+upstream:   position 1 of child 21 {TEXT} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 2 {SPAN} of root {DIV}
+downstream: position 0 of child 2 {TEXT} of child 2 {SPAN} of root {DIV}
diff --git a/LayoutTests/editing/execCommand/boldSelection-expected.txt b/LayoutTests/editing/execCommand/boldSelection-expected.txt
new file mode 100644 (file)
index 0000000..8ad9e03
--- /dev/null
@@ -0,0 +1,107 @@
+layer at (0,0) size 800x600
+  RenderCanvas at (0,0) size 800x600
+layer at (0,0) size 800x600
+  RenderBlock {HTML} at (0,0) size 800x600
+    RenderBody {BODY} at (8,8) size 784x584
+      RenderBlock {DIV} at (0,0) size 784x356 [border: (2px solid #FF0000)]
+        RenderBlock (anonymous) at (14,14) size 756x56
+          RenderInline {SPAN} at (0,0) size 700x56
+            RenderInline {B} at (0,0) size 232x28
+              RenderInline {SPAN} at (0,0) size 232x28
+                RenderInline {B} at (0,0) size 232x28
+                  RenderInline {SPAN} at (0,0) size 232x28
+                    RenderInline {B} at (0,0) size 232x28
+                      RenderInline {SPAN} at (0,0) size 232x28
+                        RenderInline {B} at (0,0) size 232x28
+                          RenderInline {SPAN} at (0,0) size 232x28
+                            RenderInline {B} at (0,0) size 232x28
+                              RenderInline {SPAN} at (0,0) size 232x28
+                                RenderInline {B} at (0,0) size 232x28
+                                  RenderInline {SPAN} at (0,0) size 232x28
+                                    RenderInline {B} at (0,0) size 232x28
+                                      RenderInline {SPAN} at (0,0) size 232x28
+                                        RenderInline {B} at (0,0) size 232x28
+                                          RenderInline {SPAN} at (0,0) size 232x28
+                                            RenderInline {B} at (0,0) size 232x28
+                                              RenderInline {SPAN} at (0,0) size 232x28
+                                                RenderInline {B} at (0,0) size 232x28
+                                                  RenderInline {SPAN} at (0,0) size 232x28
+                                                    RenderInline {B} at (0,0) size 232x28
+                                                      RenderText {TEXT} at (0,0) size 13x28
+                                                        text run at (0,0) width 13: "\""
+                                                      RenderText {TEXT} at (13,0) size 16x28
+                                                        text run at (13,0) width 16: "T"
+                                                      RenderText {TEXT} at (29,0) size 13x28
+                                                        text run at (29,0) width 13: "h"
+                                                      RenderText {TEXT} at (42,0) size 11x28
+                                                        text run at (42,0) width 11: "e"
+                                                      RenderText {TEXT} at (53,0) size 6x28
+                                                        text run at (53,0) width 6: " "
+                                                      RenderText {TEXT} at (59,0) size 13x28
+                                                        text run at (59,0) width 13: "q"
+                                                      RenderText {TEXT} at (72,0) size 13x28
+                                                        text run at (72,0) width 13: "u"
+                                                      RenderText {TEXT} at (85,0) size 7x28
+                                                        text run at (85,0) width 7: "i"
+                                                      RenderText {TEXT} at (92,0) size 11x28
+                                                        text run at (92,0) width 11: "c"
+                                                      RenderText {TEXT} at (103,0) size 13x28
+                                                        text run at (103,0) width 13: "k"
+                                                      RenderText {TEXT} at (116,0) size 6x28
+                                                        text run at (116,0) width 6: " "
+                                                      RenderText {TEXT} at (122,0) size 13x28
+                                                        text run at (122,0) width 13: "b"
+                                                      RenderText {TEXT} at (135,0) size 11x28
+                                                        text run at (135,0) width 11: "r"
+                                                      RenderText {TEXT} at (146,0) size 12x28
+                                                        text run at (146,0) width 12: "o"
+                                                      RenderText {TEXT} at (158,0) size 17x28
+                                                        text run at (158,0) width 17: "w"
+                                                      RenderText {TEXT} at (175,0) size 13x28
+                                                        text run at (175,0) width 13: "n"
+                                                      RenderText {TEXT} at (188,0) size 6x28
+                                                        text run at (188,0) width 6: " "
+                                                      RenderText {TEXT} at (194,0) size 8x28
+                                                        text run at (194,0) width 8: "f"
+                                                      RenderText {TEXT} at (202,0) size 12x28
+                                                        text run at (202,0) width 12: "o"
+                                                      RenderText {TEXT} at (214,0) size 12x28
+                                                        text run at (214,0) width 12: "x"
+                                                      RenderText {TEXT} at (226,0) size 6x28
+                                                        text run at (226,0) width 6: " "
+            RenderText {TEXT} at (232,0) size 700x56
+              text run at (232,0) width 468: "jumps over the lazy dog\" uses every letter in the"
+              text run at (0,28) width 170: "english language."
+        RenderBlock (anonymous) at (14,94) size 756x224
+          RenderBlock {P} at (0,0) size 756x224
+            RenderText {TEXT} at (0,0) size 755x224
+              text run at (0,0) width 462: "Here's to the crazy ones, the misfits, the rebels, "
+              text run at (462,0) width 193: "the trouble makers, "
+              text run at (655,0) width 92: "the round"
+              text run at (0,28) width 243: "pegs in the square holes, "
+              text run at (243,28) width 350: "the ones who see things differently. "
+              text run at (593,28) width 144: "There not fond"
+              text run at (0,56) width 510: "of rules, and they have no respect for the status quo, "
+              text run at (510,56) width 190: "you can quote then,"
+              text run at (0,84) width 197: "disagree with them, "
+              text run at (197,84) width 218: "glorify or vilify them, "
+              text run at (415,84) width 340: "about the only thing you can't do is"
+              text run at (0,112) width 129: "ignore them. "
+              text run at (129,112) width 281: "Because they change things. "
+              text run at (410,112) width 344: "They push the human race forward."
+              text run at (0,140) width 481: "And while some may see them as the crazy ones, "
+              text run at (481,140) width 146: "we see genius. "
+              text run at (627,140) width 117: "Because the"
+              text run at (0,168) width 632: "people who are crazy enough to think they can change the world "
+              text run at (632,168) width 116: "are the ones"
+              text run at (0,196) width 77: "who do."
+        RenderBlock (anonymous) at (14,342) size 756x0
+          RenderInline {SPAN} at (0,0) size 0x0
+          RenderText {TEXT} at (0,0) size 0x0
+selection is RANGE:
+start:      position 0 of child 1 {TEXT} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 2 {SPAN} of root {DIV}
+upstream:   position 0 of child 1 {TEXT} of root {DIV}
+downstream: position 0 of child 1 {TEXT} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 2 {SPAN} of root {DIV}
+end:        position 1 of child 21 {TEXT} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 2 {SPAN} of root {DIV}
+upstream:   position 1 of child 21 {TEXT} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 1 {SPAN} of child 1 {B} of child 2 {SPAN} of root {DIV}
+downstream: position 0 of child 2 {TEXT} of child 2 {SPAN} of root {DIV}
diff --git a/LayoutTests/editing/execCommand/boldSelection.html b/LayoutTests/editing/execCommand/boldSelection.html
new file mode 100644 (file)
index 0000000..0e8375e
--- /dev/null
@@ -0,0 +1,57 @@
+<html> 
+<head>
+
+<style>
+.editing { 
+    border: 2px solid red; 
+    padding: 12px; 
+    font-size: 24px; 
+}
+</style>
+<script src=../editing.js language="JavaScript" type="text/JavaScript" ></script>
+
+<script>
+
+function editingTest() {
+
+    for (i = 0; i < 21; i++) {
+            execExtendSelectionForwardByCharacterCommand();
+            execBoldCommand();
+            
+    }
+ }
+
+</script>
+
+<title>Editing Test</title> 
+</head> 
+<body>
+<div contenteditable id="root" class="editing">
+<span id="test">"The quick brown fox jumps over the lazy dog" uses every
+letter in the english language.
+
+<p>Here's to the crazy ones, the misfits, the rebels,
+ the trouble makers,
+ the round pegs in the square holes,
+ the ones who see things differently.
+ There not fond of rules, and they have no respect for the status quo,
+ you can quote then,
+ disagree with them,
+ glorify or vilify them,
+ about the only thing you can't do is ignore them. 
+ Because they change things.
+ They push the human race forward.
+ And while some may see them as the crazy ones,
+ we see genius.
+ Because the people who are crazy enough to think they can change the world
+ are the ones who do.
+</p>
+</span>
+</div>
+
+<script>
+runEditingTest();
+</script>
+
+</body>
+</html>
diff --git a/LayoutTests/editing/execCommand/italicizeByCharacter-expected.txt b/LayoutTests/editing/execCommand/italicizeByCharacter-expected.txt
new file mode 100644 (file)
index 0000000..bc211b9
--- /dev/null
@@ -0,0 +1,47 @@
+layer at (0,0) size 800x600
+  RenderCanvas at (0,0) size 800x600
+layer at (0,0) size 800x600
+  RenderBlock {HTML} at (0,0) size 800x600
+    RenderBody {BODY} at (8,8) size 784x584
+      RenderBlock {DIV} at (0,0) size 784x356 [border: (2px solid #FF0000)]
+        RenderBlock (anonymous) at (14,14) size 756x56
+          RenderInline {SPAN} at (0,0) size 687x56
+            RenderInline {I} at (0,0) size 10x28
+              RenderText {TEXT} at (0,0) size 10x28
+                text run at (0,0) width 10: "\""
+            RenderText {TEXT} at (10,0) size 687x56
+              text run at (10,0) width 677: "The quick brown fox jumps over the lazy dog\" uses every letter in the"
+              text run at (0,28) width 170: "english language."
+        RenderBlock (anonymous) at (14,94) size 756x224
+          RenderBlock {P} at (0,0) size 756x224
+            RenderText {TEXT} at (0,0) size 755x224
+              text run at (0,0) width 462: "Here's to the crazy ones, the misfits, the rebels, "
+              text run at (462,0) width 193: "the trouble makers, "
+              text run at (655,0) width 92: "the round"
+              text run at (0,28) width 243: "pegs in the square holes, "
+              text run at (243,28) width 350: "the ones who see things differently. "
+              text run at (593,28) width 144: "There not fond"
+              text run at (0,56) width 510: "of rules, and they have no respect for the status quo, "
+              text run at (510,56) width 190: "you can quote then,"
+              text run at (0,84) width 197: "disagree with them, "
+              text run at (197,84) width 218: "glorify or vilify them, "
+              text run at (415,84) width 340: "about the only thing you can't do is"
+              text run at (0,112) width 129: "ignore them. "
+              text run at (129,112) width 281: "Because they change things. "
+              text run at (410,112) width 344: "They push the human race forward."
+              text run at (0,140) width 481: "And while some may see them as the crazy ones, "
+              text run at (481,140) width 146: "we see genius. "
+              text run at (627,140) width 117: "Because the"
+              text run at (0,168) width 632: "people who are crazy enough to think they can change the world "
+              text run at (632,168) width 116: "are the ones"
+              text run at (0,196) width 77: "who do."
+        RenderBlock (anonymous) at (14,342) size 756x0
+          RenderInline {SPAN} at (0,0) size 0x0
+          RenderText {TEXT} at (0,0) size 0x0
+selection is RANGE:
+start:      position 0 of child 1 {TEXT} of child 1 {I} of child 2 {SPAN} of root {DIV}
+upstream:   position 0 of child 1 {TEXT} of root {DIV}
+downstream: position 0 of child 1 {TEXT} of child 1 {I} of child 2 {SPAN} of root {DIV}
+end:        position 1 of child 1 {TEXT} of child 1 {I} of child 2 {SPAN} of root {DIV}
+upstream:   position 1 of child 1 {TEXT} of child 1 {I} of child 2 {SPAN} of root {DIV}
+downstream: position 0 of child 2 {TEXT} of child 2 {SPAN} of root {DIV}
diff --git a/LayoutTests/editing/execCommand/italicizeByCharacter.html b/LayoutTests/editing/execCommand/italicizeByCharacter.html
new file mode 100644 (file)
index 0000000..15f0c1f
--- /dev/null
@@ -0,0 +1,53 @@
+<html> 
+<head>
+
+<style>
+.editing { 
+    border: 2px solid red; 
+    padding: 12px; 
+    font-size: 24px; 
+}
+</style>
+<script src=../editing.js language="JavaScript" type="text/JavaScript" ></script>
+
+<script>
+
+function editingTest() {
+    execExtendSelectionForwardByCharacterCommand();
+    executeCommand("italic", "NO", "");
+}
+
+</script>
+
+<title>Editing Test</title> 
+</head> 
+<body>
+<div contenteditable id="root" class="editing">
+<span id="test">"The quick brown fox jumps over the lazy dog" uses every
+letter in the english language.
+
+<p>Here's to the crazy ones, the misfits, the rebels,
+ the trouble makers,
+ the round pegs in the square holes,
+ the ones who see things differently.
+ There not fond of rules, and they have no respect for the status quo,
+ you can quote then,
+ disagree with them,
+ glorify or vilify them,
+ about the only thing you can't do is ignore them. 
+ Because they change things.
+ They push the human race forward.
+ And while some may see them as the crazy ones,
+ we see genius.
+ Because the people who are crazy enough to think they can change the world
+ are the ones who do.
+</p>
+</span>
+</div>
+
+<script>
+runEditingTest();
+</script>
+
+</body>
+</html>
diff --git a/LayoutTests/editing/execCommand/modifyForeColorByCharacter-expected.txt b/LayoutTests/editing/execCommand/modifyForeColorByCharacter-expected.txt
new file mode 100644 (file)
index 0000000..5672ad2
--- /dev/null
@@ -0,0 +1,47 @@
+layer at (0,0) size 800x600
+  RenderCanvas at (0,0) size 800x600
+layer at (0,0) size 800x600
+  RenderBlock {HTML} at (0,0) size 800x600
+    RenderBody {BODY} at (8,8) size 784x584
+      RenderBlock {DIV} at (0,0) size 784x356 [border: (2px solid #FF0000)]
+        RenderBlock (anonymous) at (14,14) size 756x56
+          RenderInline {SPAN} at (0,0) size 687x56
+            RenderInline {SPAN} at (0,0) size 10x28 [color=#008000]
+              RenderText {TEXT} at (0,0) size 10x28
+                text run at (0,0) width 10: "\""
+            RenderText {TEXT} at (10,0) size 687x56
+              text run at (10,0) width 677: "The quick brown fox jumps over the lazy dog\" uses every letter in the"
+              text run at (0,28) width 170: "english language."
+        RenderBlock (anonymous) at (14,94) size 756x224
+          RenderBlock {P} at (0,0) size 756x224
+            RenderText {TEXT} at (0,0) size 755x224
+              text run at (0,0) width 462: "Here's to the crazy ones, the misfits, the rebels, "
+              text run at (462,0) width 193: "the trouble makers, "
+              text run at (655,0) width 92: "the round"
+              text run at (0,28) width 243: "pegs in the square holes, "
+              text run at (243,28) width 350: "the ones who see things differently. "
+              text run at (593,28) width 144: "There not fond"
+              text run at (0,56) width 510: "of rules, and they have no respect for the status quo, "
+              text run at (510,56) width 190: "you can quote then,"
+              text run at (0,84) width 197: "disagree with them, "
+              text run at (197,84) width 218: "glorify or vilify them, "
+              text run at (415,84) width 340: "about the only thing you can't do is"
+              text run at (0,112) width 129: "ignore them. "
+              text run at (129,112) width 281: "Because they change things. "
+              text run at (410,112) width 344: "They push the human race forward."
+              text run at (0,140) width 481: "And while some may see them as the crazy ones, "
+              text run at (481,140) width 146: "we see genius. "
+              text run at (627,140) width 117: "Because the"
+              text run at (0,168) width 632: "people who are crazy enough to think they can change the world "
+              text run at (632,168) width 116: "are the ones"
+              text run at (0,196) width 77: "who do."
+        RenderBlock (anonymous) at (14,342) size 756x0
+          RenderInline {SPAN} at (0,0) size 0x0
+          RenderText {TEXT} at (0,0) size 0x0
+selection is RANGE:
+start:      position 0 of child 1 {TEXT} of child 1 {SPAN} of child 2 {SPAN} of root {DIV}
+upstream:   position 0 of child 1 {TEXT} of root {DIV}
+downstream: position 0 of child 1 {TEXT} of child 1 {SPAN} of child 2 {SPAN} of root {DIV}
+end:        position 1 of child 1 {TEXT} of child 1 {SPAN} of child 2 {SPAN} of root {DIV}
+upstream:   position 1 of child 1 {TEXT} of child 1 {SPAN} of child 2 {SPAN} of root {DIV}
+downstream: position 0 of child 2 {TEXT} of child 2 {SPAN} of root {DIV}
diff --git a/LayoutTests/editing/execCommand/modifyForeColorByCharacter.html b/LayoutTests/editing/execCommand/modifyForeColorByCharacter.html
new file mode 100644 (file)
index 0000000..2155139
--- /dev/null
@@ -0,0 +1,53 @@
+<html> 
+<head>
+
+<style>
+.editing { 
+    border: 2px solid red; 
+    padding: 12px; 
+    font-size: 24px; 
+}
+</style>
+<script src=../editing.js language="JavaScript" type="text/JavaScript" ></script>
+
+<script>
+
+function editingTest() {
+    execExtendSelectionForwardByCharacterCommand();
+    executeCommand("foreColor", "NO", "green");
+}
+
+</script>
+
+<title>Editing Test</title> 
+</head> 
+<body>
+<div contenteditable id="root" class="editing">
+<span id="test">"The quick brown fox jumps over the lazy dog" uses every
+letter in the english language.
+
+<p>Here's to the crazy ones, the misfits, the rebels,
+ the trouble makers,
+ the round pegs in the square holes,
+ the ones who see things differently.
+ There not fond of rules, and they have no respect for the status quo,
+ you can quote then,
+ disagree with them,
+ glorify or vilify them,
+ about the only thing you can't do is ignore them. 
+ Because they change things.
+ They push the human race forward.
+ And while some may see them as the crazy ones,
+ we see genius.
+ Because the people who are crazy enough to think they can change the world
+ are the ones who do.
+</p>
+</span>
+</div>
+
+<script>
+runEditingTest();
+</script>
+
+</body>
+</html>
diff --git a/LayoutTests/editing/execCommand/print-expected.txt b/LayoutTests/editing/execCommand/print-expected.txt
new file mode 100644 (file)
index 0000000..a1fb704
--- /dev/null
@@ -0,0 +1,41 @@
+layer at (0,0) size 800x600
+  RenderCanvas at (0,0) size 800x600
+layer at (0,0) size 800x600
+  RenderBlock {HTML} at (0,0) size 800x600
+    RenderBody {BODY} at (8,8) size 784x584
+      RenderBlock {DIV} at (0,0) size 784x356 [border: (2px solid #FF0000)]
+        RenderBlock (anonymous) at (14,14) size 756x56
+          RenderInline {SPAN} at (0,0) size 687x56
+            RenderText {TEXT} at (0,0) size 687x56
+              text run at (0,0) width 687: "\"The quick brown fox jumps over the lazy dog\" uses every letter in the"
+              text run at (0,28) width 170: "english language."
+        RenderBlock (anonymous) at (14,94) size 756x224
+          RenderBlock {P} at (0,0) size 756x224
+            RenderText {TEXT} at (0,0) size 755x224
+              text run at (0,0) width 462: "Here's to the crazy ones, the misfits, the rebels, "
+              text run at (462,0) width 193: "the trouble makers, "
+              text run at (655,0) width 92: "the round"
+              text run at (0,28) width 243: "pegs in the square holes, "
+              text run at (243,28) width 350: "the ones who see things differently. "
+              text run at (593,28) width 144: "There not fond"
+              text run at (0,56) width 510: "of rules, and they have no respect for the status quo, "
+              text run at (510,56) width 190: "you can quote then,"
+              text run at (0,84) width 197: "disagree with them, "
+              text run at (197,84) width 218: "glorify or vilify them, "
+              text run at (415,84) width 340: "about the only thing you can't do is"
+              text run at (0,112) width 129: "ignore them. "
+              text run at (129,112) width 281: "Because they change things. "
+              text run at (410,112) width 344: "They push the human race forward."
+              text run at (0,140) width 481: "And while some may see them as the crazy ones, "
+              text run at (481,140) width 146: "we see genius. "
+              text run at (627,140) width 117: "Because the"
+              text run at (0,168) width 632: "people who are crazy enough to think they can change the world "
+              text run at (632,168) width 116: "are the ones"
+              text run at (0,196) width 77: "who do."
+        RenderBlock (anonymous) at (14,342) size 756x0
+          RenderInline {SPAN} at (0,0) size 0x0
+          RenderText {TEXT} at (0,0) size 0x0
+selection is CARET:
+start:      position 0 of child 1 {TEXT} of child 2 {SPAN} of root {DIV}
+upstream:   position 0 of child 1 {TEXT} of root {DIV}
+downstream: position 0 of child 1 {TEXT} of child 2 {SPAN} of root {DIV}
diff --git a/LayoutTests/editing/execCommand/print.html b/LayoutTests/editing/execCommand/print.html
new file mode 100644 (file)
index 0000000..5fd923c
--- /dev/null
@@ -0,0 +1,52 @@
+<html> 
+<head>
+
+<style>
+.editing { 
+    border: 2px solid red; 
+    padding: 12px; 
+    font-size: 24px; 
+}
+</style>
+<script src=../editing.js language="JavaScript" type="text/JavaScript" ></script>
+
+<script>
+
+function editingTest() {
+    executeCommand("print", "NO", "");
+ }
+
+</script>
+
+<title>Editing Test</title> 
+</head> 
+<body>
+<div contenteditable id="root" class="editing">
+<span id="test">"The quick brown fox jumps over the lazy dog" uses every
+letter in the english language.
+
+<p>Here's to the crazy ones, the misfits, the rebels,
+ the trouble makers,
+ the round pegs in the square holes,
+ the ones who see things differently.
+ There not fond of rules, and they have no respect for the status quo,
+ you can quote then,
+ disagree with them,
+ glorify or vilify them,
+ about the only thing you can't do is ignore them. 
+ Because they change things.
+ They push the human race forward.
+ And while some may see them as the crazy ones,
+ we see genius.
+ Because the people who are crazy enough to think they can change the world
+ are the ones who do.
+</p>
+</span>
+</div>
+
+<script>
+runEditingTest();
+</script>
+
+</body>
+</html>
diff --git a/LayoutTests/editing/execCommand/selectAll-expected.txt b/LayoutTests/editing/execCommand/selectAll-expected.txt
new file mode 100644 (file)
index 0000000..692724a
--- /dev/null
@@ -0,0 +1,44 @@
+layer at (0,0) size 800x600
+  RenderCanvas at (0,0) size 800x600
+layer at (0,0) size 800x600
+  RenderBlock {HTML} at (0,0) size 800x600
+    RenderBody {BODY} at (8,8) size 784x584
+      RenderBlock {DIV} at (0,0) size 784x356 [border: (2px solid #FF0000)]
+        RenderBlock (anonymous) at (14,14) size 756x56
+          RenderInline {SPAN} at (0,0) size 687x56
+            RenderText {TEXT} at (0,0) size 687x56
+              text run at (0,0) width 687: "\"The quick brown fox jumps over the lazy dog\" uses every letter in the"
+              text run at (0,28) width 170: "english language."
+        RenderBlock (anonymous) at (14,94) size 756x224
+          RenderBlock {P} at (0,0) size 756x224
+            RenderText {TEXT} at (0,0) size 755x224
+              text run at (0,0) width 462: "Here's to the crazy ones, the misfits, the rebels, "
+              text run at (462,0) width 193: "the trouble makers, "
+              text run at (655,0) width 92: "the round"
+              text run at (0,28) width 243: "pegs in the square holes, "
+              text run at (243,28) width 350: "the ones who see things differently. "
+              text run at (593,28) width 144: "There not fond"
+              text run at (0,56) width 510: "of rules, and they have no respect for the status quo, "
+              text run at (510,56) width 190: "you can quote then,"
+              text run at (0,84) width 197: "disagree with them, "
+              text run at (197,84) width 218: "glorify or vilify them, "
+              text run at (415,84) width 340: "about the only thing you can't do is"
+              text run at (0,112) width 129: "ignore them. "
+              text run at (129,112) width 281: "Because they change things. "
+              text run at (410,112) width 344: "They push the human race forward."
+              text run at (0,140) width 481: "And while some may see them as the crazy ones, "
+              text run at (481,140) width 146: "we see genius. "
+              text run at (627,140) width 117: "Because the"
+              text run at (0,168) width 632: "people who are crazy enough to think they can change the world "
+              text run at (632,168) width 116: "are the ones"
+              text run at (0,196) width 77: "who do."
+        RenderBlock (anonymous) at (14,342) size 756x0
+          RenderInline {SPAN} at (0,0) size 0x0
+          RenderText {TEXT} at (0,0) size 0x0
+selection is RANGE:
+start:      position 0 of child 1 {TEXT} of child 2 {SPAN} of root {DIV}
+upstream:   position 0 of child 1 {TEXT} of root {DIV}
+downstream: position 0 of child 1 {TEXT} of child 2 {SPAN} of root {DIV}
+end:        position 1 of child 3 {TEXT} of root {DIV}
+upstream:   position 0 of child 3 {TEXT} of child 2 {SPAN} of root {DIV}
+downstream: position 1 of child 3 {TEXT} of root {DIV}
diff --git a/LayoutTests/editing/execCommand/selectAll.html b/LayoutTests/editing/execCommand/selectAll.html
new file mode 100644 (file)
index 0000000..9ccff20
--- /dev/null
@@ -0,0 +1,58 @@
+<html> 
+<head>
+
+<style>
+.editing { 
+    border: 2px solid red; 
+    padding: 12px; 
+    font-size: 24px; 
+}
+</style>
+<script src=../editing.js language="JavaScript" type="text/JavaScript" ></script>
+
+<script>
+
+function editingTest() {
+
+    //for (i = 0; i < 21; i++) {
+      //      execExtendSelectionForwardByCharacterCommand();
+            
+    //}
+    //execBackColorCommand();
+    execSelectAllCommand();
+}
+
+</script>
+
+<title>Editing Test</title> 
+</head> 
+<body>
+<div contenteditable id="root" class="editing">
+<span id="test">"The quick brown fox jumps over the lazy dog" uses every
+letter in the english language.
+
+<p>Here's to the crazy ones, the misfits, the rebels,
+ the trouble makers,
+ the round pegs in the square holes,
+ the ones who see things differently.
+ There not fond of rules, and they have no respect for the status quo,
+ you can quote then,
+ disagree with them,
+ glorify or vilify them,
+ about the only thing you can't do is ignore them. 
+ Because they change things.
+ They push the human race forward.
+ And while some may see them as the crazy ones,
+ we see genius.
+ Because the people who are crazy enough to think they can change the world
+ are the ones who do.
+</p>
+</span>
+</div>
+
+<script>
+runEditingTest();
+</script>
+
+</body>
+</html>