corinthia-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From pmke...@apache.org
Subject [22/92] [abbrv] [partial] incubator-corinthia git commit: Add editing code from UX Write
Date Wed, 17 Dec 2014 13:28:32 GMT
http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/pushDownInlineProperties-structure11-input.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/pushDownInlineProperties-structure11-input.html b/Editor/tests/formatting/pushDownInlineProperties-structure11-input.html
new file mode 100644
index 0000000..05c8ea7
--- /dev/null
+++ b/Editor/tests/formatting/pushDownInlineProperties-structure11-input.html
@@ -0,0 +1,28 @@
+<!DOCTYPE html>
+<html>
+<head>
+<script>
+function performTest()
+{
+    Selection_preserveWhileExecuting(function() {
+        var range = Selection_get();
+        Range_ensureValidHierarchy(range);
+        Formatting_splitAroundSelection(range);
+        var outermost = Range_getOutermostNodes(range);
+        Formatting_pushDownInlineProperties(outermost);
+    });
+}
+</script>
+</head>
+<body>
+<div style="font-weight: bold; font-style: italic; text-decoration: underline">
+  <p style="color: red">First [line</p>
+  <p style="color: green">Second line</p>
+  <p style="color: blue">Third line</p>
+</div>
+<div style="font-weight: bold; font-style: italic; text-decoration: underline">
+  <p style="color: yellow">Fourth line</p>
+  <p style="color: fuchsia">Fifth] line</p>
+</div>
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/pushDownInlineProperties-structure12-expected.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/pushDownInlineProperties-structure12-expected.html b/Editor/tests/formatting/pushDownInlineProperties-structure12-expected.html
new file mode 100644
index 0000000..afbdbb8
--- /dev/null
+++ b/Editor/tests/formatting/pushDownInlineProperties-structure12-expected.html
@@ -0,0 +1,20 @@
+<html>
+  <head></head>
+  <body>
+    <ul>
+      <li>
+        <span style="color: red; font-size: 18pt">First</span>
+        <span style="color: red; font-size: 18pt">line</span>
+      </li>
+      <li style="color: green; font-size: 18pt">Second line</li>
+      <li style="color: blue; font-size: 18pt">Third line</li>
+    </ul>
+    <ul>
+      <li style="color: yellow; font-size: 24pt">Fourth line</li>
+      <li>
+        <span style="color: fuchsia; font-size: 24pt">Fifth</span>
+        <span style="color: fuchsia; font-size: 24pt">line</span>
+      </li>
+    </ul>
+  </body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/pushDownInlineProperties-structure12-input.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/pushDownInlineProperties-structure12-input.html b/Editor/tests/formatting/pushDownInlineProperties-structure12-input.html
new file mode 100644
index 0000000..fe1fa91
--- /dev/null
+++ b/Editor/tests/formatting/pushDownInlineProperties-structure12-input.html
@@ -0,0 +1,28 @@
+<!DOCTYPE html>
+<html>
+<head>
+<script>
+function performTest()
+{
+    Selection_preserveWhileExecuting(function() {
+        var range = Selection_get();
+        Range_ensureValidHierarchy(range);
+        Formatting_splitAroundSelection(range);
+        var outermost = Range_getOutermostNodes(range);
+        Formatting_pushDownInlineProperties(outermost);
+    });
+}
+</script>
+</head>
+<body>
+<ul style="font-size: 18pt">
+  <li style="color: red">First [line</li>
+  <li style="color: green">Second line</li>
+  <li style="color: blue">Third line</li>
+</ul>
+<ul style="font-size: 24pt">
+  <li style="color: yellow">Fourth line</li>
+  <li style="color: fuchsia">Fifth] line</li>
+</ul>
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/pushDownInlineProperties-structure13-expected.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/pushDownInlineProperties-structure13-expected.html b/Editor/tests/formatting/pushDownInlineProperties-structure13-expected.html
new file mode 100644
index 0000000..8099c5f
--- /dev/null
+++ b/Editor/tests/formatting/pushDownInlineProperties-structure13-expected.html
@@ -0,0 +1,14 @@
+<html>
+  <head></head>
+  <body>
+    <ul>
+      <li style="color: red; font-size: 18pt">First line</li>
+      <li style="color: green; font-size: 18pt">Second line</li>
+      <li style="color: blue; font-size: 18pt">Third line</li>
+    </ul>
+    <ul>
+      <li style="color: yellow; font-size: 24pt">Fourth line</li>
+      <li style="color: fuchsia; font-size: 24pt">Fifth line</li>
+    </ul>
+  </body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/pushDownInlineProperties-structure13-input.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/pushDownInlineProperties-structure13-input.html b/Editor/tests/formatting/pushDownInlineProperties-structure13-input.html
new file mode 100644
index 0000000..41fda14
--- /dev/null
+++ b/Editor/tests/formatting/pushDownInlineProperties-structure13-input.html
@@ -0,0 +1,28 @@
+<!DOCTYPE html>
+<html>
+<head>
+<script>
+function performTest()
+{
+    Selection_preserveWhileExecuting(function() {
+        var range = Selection_get();
+        Range_ensureValidHierarchy(range);
+        Formatting_splitAroundSelection(range);
+        var outermost = Range_getOutermostNodes(range);
+        Formatting_pushDownInlineProperties(outermost);
+    });
+}
+</script>
+</head>
+<body>
+<ul style="font-size: 18pt">
+  <li style="color: red">First line</li>
+  [<li style="color: green">Second line</li>
+  <li style="color: blue">Third line</li>
+</ul>
+<ul style="font-size: 24pt">
+  <li style="color: yellow">Fourth line</li>]
+  <li style="color: fuchsia">Fifth line</li>
+</ul>
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/pushDownInlineProperties-structure14-expected.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/pushDownInlineProperties-structure14-expected.html b/Editor/tests/formatting/pushDownInlineProperties-structure14-expected.html
new file mode 100644
index 0000000..8099c5f
--- /dev/null
+++ b/Editor/tests/formatting/pushDownInlineProperties-structure14-expected.html
@@ -0,0 +1,14 @@
+<html>
+  <head></head>
+  <body>
+    <ul>
+      <li style="color: red; font-size: 18pt">First line</li>
+      <li style="color: green; font-size: 18pt">Second line</li>
+      <li style="color: blue; font-size: 18pt">Third line</li>
+    </ul>
+    <ul>
+      <li style="color: yellow; font-size: 24pt">Fourth line</li>
+      <li style="color: fuchsia; font-size: 24pt">Fifth line</li>
+    </ul>
+  </body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/pushDownInlineProperties-structure14-input.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/pushDownInlineProperties-structure14-input.html b/Editor/tests/formatting/pushDownInlineProperties-structure14-input.html
new file mode 100644
index 0000000..32ec48b
--- /dev/null
+++ b/Editor/tests/formatting/pushDownInlineProperties-structure14-input.html
@@ -0,0 +1,28 @@
+<!DOCTYPE html>
+<html>
+<head>
+<script>
+function performTest()
+{
+    Selection_preserveWhileExecuting(function() {
+        var range = Selection_get();
+        Range_ensureValidHierarchy(range);
+        Formatting_splitAroundSelection(range);
+        var outermost = Range_getOutermostNodes(range);
+        Formatting_pushDownInlineProperties(outermost);
+    });
+}
+</script>
+</head>
+<body>
+<ul style="font-size: 18pt">
+  [<li style="color: red">First line</li>
+  <li style="color: green">Second line</li>
+  <li style="color: blue">Third line</li>
+</ul>
+<ul style="font-size: 24pt">
+  <li style="color: yellow">Fourth line</li>
+  <li style="color: fuchsia">Fifth line</li>]
+</ul>
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/pushDownInlineProperties-structure15-expected.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/pushDownInlineProperties-structure15-expected.html b/Editor/tests/formatting/pushDownInlineProperties-structure15-expected.html
new file mode 100644
index 0000000..f8756d3
--- /dev/null
+++ b/Editor/tests/formatting/pushDownInlineProperties-structure15-expected.html
@@ -0,0 +1,14 @@
+<html>
+  <head></head>
+  <body>
+    <ul style="font-size: 18pt">
+      <li style="color: red">First line</li>
+      <li style="color: green">Second line</li>
+      <li style="color: blue">Third line</li>
+    </ul>
+    <ul style="font-size: 24pt">
+      <li style="color: yellow">Fourth line</li>
+      <li style="color: fuchsia">Fifth line</li>
+    </ul>
+  </body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/pushDownInlineProperties-structure15-input.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/pushDownInlineProperties-structure15-input.html b/Editor/tests/formatting/pushDownInlineProperties-structure15-input.html
new file mode 100644
index 0000000..c587ef1
--- /dev/null
+++ b/Editor/tests/formatting/pushDownInlineProperties-structure15-input.html
@@ -0,0 +1,28 @@
+<!DOCTYPE html>
+<html>
+<head>
+<script>
+function performTest()
+{
+    Selection_preserveWhileExecuting(function() {
+        var range = Selection_get();
+        Range_ensureValidHierarchy(range);
+        Formatting_splitAroundSelection(range);
+        var outermost = Range_getOutermostNodes(range);
+        Formatting_pushDownInlineProperties(outermost);
+    });
+}
+</script>
+</head>
+<body>
+[<ul style="font-size: 18pt">
+  <li style="color: red">First line</li>
+  <li style="color: green">Second line</li>
+  <li style="color: blue">Third line</li>
+</ul>
+<ul style="font-size: 24pt">
+  <li style="color: yellow">Fourth line</li>
+  <li style="color: fuchsia">Fifth line</li>
+</ul>]
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/pushDownInlineProperties-structure16-expected.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/pushDownInlineProperties-structure16-expected.html b/Editor/tests/formatting/pushDownInlineProperties-structure16-expected.html
new file mode 100644
index 0000000..14820cc
--- /dev/null
+++ b/Editor/tests/formatting/pushDownInlineProperties-structure16-expected.html
@@ -0,0 +1,20 @@
+<html>
+  <head></head>
+  <body>
+    <ul>
+      <li>
+        <span style="color: red"><b>First</b></span>
+        <span style="color: red"><b>line</b></span>
+      </li>
+      <li style="color: green"><b>Second line</b></li>
+      <li style="color: blue"><b>Third line</b></li>
+    </ul>
+    <ul>
+      <li style="color: yellow"><i>Fourth line</i></li>
+      <li>
+        <span style="color: fuchsia"><i>Fifth</i></span>
+        <span style="color: fuchsia"><i>line</i></span>
+      </li>
+    </ul>
+  </body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/pushDownInlineProperties-structure16-input.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/pushDownInlineProperties-structure16-input.html b/Editor/tests/formatting/pushDownInlineProperties-structure16-input.html
new file mode 100644
index 0000000..ac105e0
--- /dev/null
+++ b/Editor/tests/formatting/pushDownInlineProperties-structure16-input.html
@@ -0,0 +1,28 @@
+<!DOCTYPE html>
+<html>
+<head>
+<script>
+function performTest()
+{
+    Selection_preserveWhileExecuting(function() {
+        var range = Selection_get();
+        Range_ensureValidHierarchy(range);
+        Formatting_splitAroundSelection(range);
+        var outermost = Range_getOutermostNodes(range);
+        Formatting_pushDownInlineProperties(outermost);
+    });
+}
+</script>
+</head>
+<body>
+<ul style="font-weight: bold">
+  <li style="color: red">First [line</li>
+  <li style="color: green">Second line</li>
+  <li style="color: blue">Third line</li>
+</ul>
+<ul style="font-style: italic">
+  <li style="color: yellow">Fourth line</li>
+  <li style="color: fuchsia">Fifth] line</li>
+</ul>
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/pushDownInlineProperties-structure17-expected.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/pushDownInlineProperties-structure17-expected.html b/Editor/tests/formatting/pushDownInlineProperties-structure17-expected.html
new file mode 100644
index 0000000..84c884a
--- /dev/null
+++ b/Editor/tests/formatting/pushDownInlineProperties-structure17-expected.html
@@ -0,0 +1,20 @@
+<html>
+  <head></head>
+  <body>
+    <ul>
+      <li>
+        <span style="color: red"><b><i><u>First</u></i></b></span>
+        <span style="color: red"><b><i><u>line</u></i></b></span>
+      </li>
+      <li style="color: green"><b><i><u>Second line</u></i></b></li>
+      <li style="color: blue"><b><i><u>Third line</u></i></b></li>
+    </ul>
+    <ul>
+      <li style="color: yellow"><b><i><u>Fourth line</u></i></b></li>
+      <li>
+        <span style="color: fuchsia"><b><i><u>Fifth</u></i></b></span>
+        <span style="color: fuchsia"><b><i><u>line</u></i></b></span>
+      </li>
+    </ul>
+  </body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/pushDownInlineProperties-structure17-input.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/pushDownInlineProperties-structure17-input.html b/Editor/tests/formatting/pushDownInlineProperties-structure17-input.html
new file mode 100644
index 0000000..90d444f
--- /dev/null
+++ b/Editor/tests/formatting/pushDownInlineProperties-structure17-input.html
@@ -0,0 +1,28 @@
+<!DOCTYPE html>
+<html>
+<head>
+<script>
+function performTest()
+{
+    Selection_preserveWhileExecuting(function() {
+        var range = Selection_get();
+        Range_ensureValidHierarchy(range);
+        Formatting_splitAroundSelection(range);
+        var outermost = Range_getOutermostNodes(range);
+        Formatting_pushDownInlineProperties(outermost);
+    });
+}
+</script>
+</head>
+<body>
+<ul style="font-weight: bold; font-style: italic; text-decoration: underline">
+  <li style="color: red">First [line</li>
+  <li style="color: green">Second line</li>
+  <li style="color: blue">Third line</li>
+</ul>
+<ul style="font-weight: bold; font-style: italic; text-decoration: underline">
+  <li style="color: yellow">Fourth line</li>
+  <li style="color: fuchsia">Fifth] line</li>
+</ul>
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/pushDownInlineProperties01-expected.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/pushDownInlineProperties01-expected.html b/Editor/tests/formatting/pushDownInlineProperties01-expected.html
new file mode 100644
index 0000000..8dd2a9f
--- /dev/null
+++ b/Editor/tests/formatting/pushDownInlineProperties01-expected.html
@@ -0,0 +1,9 @@
+<html>
+  <head></head>
+  <body>
+    <p>
+      <span style="color: blue">Here</span>
+      <span style="color: blue">is some text</span>
+    </p>
+  </body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/pushDownInlineProperties01-input.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/pushDownInlineProperties01-input.html b/Editor/tests/formatting/pushDownInlineProperties01-input.html
new file mode 100644
index 0000000..36fa73b
--- /dev/null
+++ b/Editor/tests/formatting/pushDownInlineProperties01-input.html
@@ -0,0 +1,19 @@
+<!DOCTYPE html>
+<html>
+<head>
+<script>
+function performTest()
+{
+    Selection_preserveWhileExecuting(function() {
+        var range = Selection_get();
+        Formatting_splitAroundSelection(range);
+        var outermost = Range_getOutermostNodes(range);
+        Formatting_pushDownInlineProperties(outermost);
+    });
+}
+</script>
+</head>
+<body>
+<p style="color: blue">[Here] is some text</p>
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/pushDownInlineProperties02-expected.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/pushDownInlineProperties02-expected.html b/Editor/tests/formatting/pushDownInlineProperties02-expected.html
new file mode 100644
index 0000000..7e36f7c
--- /dev/null
+++ b/Editor/tests/formatting/pushDownInlineProperties02-expected.html
@@ -0,0 +1,10 @@
+<html>
+  <head></head>
+  <body>
+    <p>
+      <span style="color: blue">Here</span>
+      <span style="color: blue">is some</span>
+      <span style="color: blue">text</span>
+    </p>
+  </body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/pushDownInlineProperties02-input.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/pushDownInlineProperties02-input.html b/Editor/tests/formatting/pushDownInlineProperties02-input.html
new file mode 100644
index 0000000..6dc2cb4
--- /dev/null
+++ b/Editor/tests/formatting/pushDownInlineProperties02-input.html
@@ -0,0 +1,19 @@
+<!DOCTYPE html>
+<html>
+<head>
+<script>
+function performTest()
+{
+    Selection_preserveWhileExecuting(function() {
+        var range = Selection_get();
+        Formatting_splitAroundSelection(range);
+        var outermost = Range_getOutermostNodes(range);
+        Formatting_pushDownInlineProperties(outermost);
+    });
+}
+</script>
+</head>
+<body>
+<p style="color: blue">Here [is some] text</p>
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/pushDownInlineProperties03-expected.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/pushDownInlineProperties03-expected.html b/Editor/tests/formatting/pushDownInlineProperties03-expected.html
new file mode 100644
index 0000000..5c00041
--- /dev/null
+++ b/Editor/tests/formatting/pushDownInlineProperties03-expected.html
@@ -0,0 +1,9 @@
+<html>
+  <head></head>
+  <body>
+    <p>
+      <span style="color: blue">Here is some</span>
+      <span style="color: blue">text</span>
+    </p>
+  </body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/pushDownInlineProperties03-input.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/pushDownInlineProperties03-input.html b/Editor/tests/formatting/pushDownInlineProperties03-input.html
new file mode 100644
index 0000000..4653aaa
--- /dev/null
+++ b/Editor/tests/formatting/pushDownInlineProperties03-input.html
@@ -0,0 +1,19 @@
+<!DOCTYPE html>
+<html>
+<head>
+<script>
+function performTest()
+{
+    Selection_preserveWhileExecuting(function() {
+        var range = Selection_get();
+        Formatting_splitAroundSelection(range);
+        var outermost = Range_getOutermostNodes(range);
+        Formatting_pushDownInlineProperties(outermost);
+    });
+}
+</script>
+</head>
+<body>
+<p style="color: blue">Here is some [text]</p>
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/pushDownInlineProperties04-expected.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/pushDownInlineProperties04-expected.html b/Editor/tests/formatting/pushDownInlineProperties04-expected.html
new file mode 100644
index 0000000..ac8ebee
--- /dev/null
+++ b/Editor/tests/formatting/pushDownInlineProperties04-expected.html
@@ -0,0 +1,10 @@
+<html>
+  <head></head>
+  <body>
+    <p>
+      <b>Here</b>
+      <b>is some</b>
+      <b>text</b>
+    </p>
+  </body>
+</html>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/pushDownInlineProperties04-input.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/pushDownInlineProperties04-input.html b/Editor/tests/formatting/pushDownInlineProperties04-input.html
new file mode 100644
index 0000000..86b8046
--- /dev/null
+++ b/Editor/tests/formatting/pushDownInlineProperties04-input.html
@@ -0,0 +1,19 @@
+<!DOCTYPE html>
+<html>
+<head>
+<script>
+function performTest()
+{
+    Selection_preserveWhileExecuting(function() {
+        var range = Selection_get();
+        Formatting_splitAroundSelection(range);
+        var outermost = Range_getOutermostNodes(range);
+        Formatting_pushDownInlineProperties(outermost);
+    });
+}
+</script>
+</head>
+<body>
+<p style="font-weight: bold">Here [is some] text</p>
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/pushDownInlineProperties05-expected.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/pushDownInlineProperties05-expected.html b/Editor/tests/formatting/pushDownInlineProperties05-expected.html
new file mode 100644
index 0000000..33637dc
--- /dev/null
+++ b/Editor/tests/formatting/pushDownInlineProperties05-expected.html
@@ -0,0 +1,10 @@
+<html>
+  <head></head>
+  <body>
+    <p>
+      <i>Here</i>
+      <i>is some</i>
+      <i>text</i>
+    </p>
+  </body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/pushDownInlineProperties05-input.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/pushDownInlineProperties05-input.html b/Editor/tests/formatting/pushDownInlineProperties05-input.html
new file mode 100644
index 0000000..7cd3dfb
--- /dev/null
+++ b/Editor/tests/formatting/pushDownInlineProperties05-input.html
@@ -0,0 +1,19 @@
+<!DOCTYPE html>
+<html>
+<head>
+<script>
+function performTest()
+{
+    Selection_preserveWhileExecuting(function() {
+        var range = Selection_get();
+        Formatting_splitAroundSelection(range);
+        var outermost = Range_getOutermostNodes(range);
+        Formatting_pushDownInlineProperties(outermost);
+    });
+}
+</script>
+</head>
+<body>
+<p style="font-style: italic">Here [is some] text</p>
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/pushDownInlineProperties06-expected.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/pushDownInlineProperties06-expected.html b/Editor/tests/formatting/pushDownInlineProperties06-expected.html
new file mode 100644
index 0000000..ebb26a9
--- /dev/null
+++ b/Editor/tests/formatting/pushDownInlineProperties06-expected.html
@@ -0,0 +1,10 @@
+<html>
+  <head></head>
+  <body>
+    <p>
+      <u>Here</u>
+      <u>is some</u>
+      <u>text</u>
+    </p>
+  </body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/pushDownInlineProperties06-input.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/pushDownInlineProperties06-input.html b/Editor/tests/formatting/pushDownInlineProperties06-input.html
new file mode 100644
index 0000000..cde0e96
--- /dev/null
+++ b/Editor/tests/formatting/pushDownInlineProperties06-input.html
@@ -0,0 +1,19 @@
+<!DOCTYPE html>
+<html>
+<head>
+<script>
+function performTest()
+{
+    Selection_preserveWhileExecuting(function() {
+        var range = Selection_get();
+        Formatting_splitAroundSelection(range);
+        var outermost = Range_getOutermostNodes(range);
+        Formatting_pushDownInlineProperties(outermost);
+    });
+}
+</script>
+</head>
+<body>
+<p style="text-decoration: underline">Here [is some] text</p>
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/pushDownInlineProperties07-expected.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/pushDownInlineProperties07-expected.html b/Editor/tests/formatting/pushDownInlineProperties07-expected.html
new file mode 100644
index 0000000..da59302
--- /dev/null
+++ b/Editor/tests/formatting/pushDownInlineProperties07-expected.html
@@ -0,0 +1,10 @@
+<html>
+  <head></head>
+  <body>
+    <p>
+      <span style="text-decoration: overline line-through"><u>Here</u></span>
+      <span style="text-decoration: overline line-through"><u>is some</u></span>
+      <span style="text-decoration: overline line-through"><u>text</u></span>
+    </p>
+  </body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/pushDownInlineProperties07-input.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/pushDownInlineProperties07-input.html b/Editor/tests/formatting/pushDownInlineProperties07-input.html
new file mode 100644
index 0000000..3088e65
--- /dev/null
+++ b/Editor/tests/formatting/pushDownInlineProperties07-input.html
@@ -0,0 +1,19 @@
+<!DOCTYPE html>
+<html>
+<head>
+<script>
+function performTest()
+{
+    Selection_preserveWhileExecuting(function() {
+        var range = Selection_get();
+        Formatting_splitAroundSelection(range);
+        var outermost = Range_getOutermostNodes(range);
+        Formatting_pushDownInlineProperties(outermost);
+    });
+}
+</script>
+</head>
+<body>
+<p style="text-decoration: underline overline line-through">Here [is some] text</p>
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/pushDownInlineProperties08-expected.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/pushDownInlineProperties08-expected.html b/Editor/tests/formatting/pushDownInlineProperties08-expected.html
new file mode 100644
index 0000000..0d7b30d
--- /dev/null
+++ b/Editor/tests/formatting/pushDownInlineProperties08-expected.html
@@ -0,0 +1,10 @@
+<html>
+  <head></head>
+  <body>
+    <p>
+      <span style="text-decoration: overline line-through"><b><i><u>Here</u></i></b></span>
+      <span style="text-decoration: overline line-through"><b><i><u>is some</u></i></b></span>
+      <span style="text-decoration: overline line-through"><b><i><u>text</u></i></b></span>
+    </p>
+  </body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/pushDownInlineProperties08-input.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/pushDownInlineProperties08-input.html b/Editor/tests/formatting/pushDownInlineProperties08-input.html
new file mode 100644
index 0000000..d27c82f
--- /dev/null
+++ b/Editor/tests/formatting/pushDownInlineProperties08-input.html
@@ -0,0 +1,19 @@
+<!DOCTYPE html>
+<html>
+<head>
+<script>
+function performTest()
+{
+    Selection_preserveWhileExecuting(function() {
+        var range = Selection_get();
+        Formatting_splitAroundSelection(range);
+        var outermost = Range_getOutermostNodes(range);
+        Formatting_pushDownInlineProperties(outermost);
+    });
+}
+</script>
+</head>
+<body>
+<p style="font-weight: bold; font-style: italic; text-decoration: underline overline line-through">Here [is some] text</p>
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/pushDownInlineProperties09-expected.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/pushDownInlineProperties09-expected.html b/Editor/tests/formatting/pushDownInlineProperties09-expected.html
new file mode 100644
index 0000000..56866e4
--- /dev/null
+++ b/Editor/tests/formatting/pushDownInlineProperties09-expected.html
@@ -0,0 +1,10 @@
+<html>
+  <head></head>
+  <body>
+    <p style="margin-left: 20%">
+      <span style="color: blue">Here</span>
+      <span style="color: blue">is some</span>
+      <span style="color: blue">text</span>
+    </p>
+  </body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/pushDownInlineProperties09-input.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/pushDownInlineProperties09-input.html b/Editor/tests/formatting/pushDownInlineProperties09-input.html
new file mode 100644
index 0000000..3249e3b
--- /dev/null
+++ b/Editor/tests/formatting/pushDownInlineProperties09-input.html
@@ -0,0 +1,19 @@
+<!DOCTYPE html>
+<html>
+<head>
+<script>
+function performTest()
+{
+    Selection_preserveWhileExecuting(function() {
+        var range = Selection_get();
+        Formatting_splitAroundSelection(range);
+        var outermost = Range_getOutermostNodes(range);
+        Formatting_pushDownInlineProperties(outermost);
+    });
+}
+</script>
+</head>
+<body>
+<p style="margin-left: 20%; color: blue">Here [is some] text</p>
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/pushDownInlineProperties10-expected.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/pushDownInlineProperties10-expected.html b/Editor/tests/formatting/pushDownInlineProperties10-expected.html
new file mode 100644
index 0000000..82e91fe
--- /dev/null
+++ b/Editor/tests/formatting/pushDownInlineProperties10-expected.html
@@ -0,0 +1,12 @@
+<html>
+  <head></head>
+  <body>
+    <div style="margin-right: 15%">
+      <p style="margin-left: 20%">
+        <span style="color: blue; font-size: 24pt">Here</span>
+        <span style="color: blue; font-size: 24pt">is some</span>
+        <span style="color: blue; font-size: 24pt">text</span>
+      </p>
+    </div>
+  </body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/pushDownInlineProperties10-input.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/pushDownInlineProperties10-input.html b/Editor/tests/formatting/pushDownInlineProperties10-input.html
new file mode 100644
index 0000000..d9366ee
--- /dev/null
+++ b/Editor/tests/formatting/pushDownInlineProperties10-input.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<html>
+<head>
+<script>
+function performTest()
+{
+    Selection_preserveWhileExecuting(function() {
+        var range = Selection_get();
+        Formatting_splitAroundSelection(range);
+        var outermost = Range_getOutermostNodes(range);
+        Formatting_pushDownInlineProperties(outermost);
+    });
+}
+</script>
+</head>
+<body>
+<div style="margin-right: 15%; font-size: 24pt">
+  <p style="margin-left: 20%; color: blue">Here [is some] text</p>
+</div>
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/pushDownInlineProperties11-expected.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/pushDownInlineProperties11-expected.html b/Editor/tests/formatting/pushDownInlineProperties11-expected.html
new file mode 100644
index 0000000..451f8d3
--- /dev/null
+++ b/Editor/tests/formatting/pushDownInlineProperties11-expected.html
@@ -0,0 +1,26 @@
+<html>
+  <head></head>
+  <body>
+    <p>
+      <s style="color: blue"><s><s>O</s></s></s>
+      <s>
+        <s>
+          <s><span style="color: blue">ne</span></s>
+          <s style="color: blue">Two</s>
+          <s style="color: blue">Three</s>
+        </s>
+        <s style="color: blue">
+          <s>Four</s>
+          <s>Five</s>
+          <s>Six</s>
+        </s>
+      </s>
+      <s>
+        <s style="color: blue">Seven</s>
+        <s style="color: blue">Eight</s>
+        <s><span style="color: blue">Nin</span></s>
+      </s>
+      <s style="color: blue"><s>e</s></s>
+    </p>
+  </body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/pushDownInlineProperties11-input.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/pushDownInlineProperties11-input.html b/Editor/tests/formatting/pushDownInlineProperties11-input.html
new file mode 100644
index 0000000..81d6ebb
--- /dev/null
+++ b/Editor/tests/formatting/pushDownInlineProperties11-input.html
@@ -0,0 +1,37 @@
+<!DOCTYPE html>
+<html>
+<head>
+<script>
+function performTest()
+{
+    Selection_preserveWhileExecuting(function() {
+        var range = Selection_get();
+        Formatting_splitAroundSelection(range);
+        var outermost = Range_getOutermostNodes(range);
+        Formatting_pushDownInlineProperties(outermost);
+    });
+}
+</script>
+</head>
+<body>
+<p style="color: blue">
+  <s>
+    <s>
+      <s>O[ne</s>
+      <s>Two</s>
+      <s>Three</s>
+    </s>
+    <s>
+      <s>Four</s>
+      <s>Five</s>
+      <s>Six</s>
+    </s>
+  </s>
+  <s>
+    <s>Seven</s>
+    <s>Eight</s>
+    <s>Nin]e</s>
+  </s>
+</p>
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/pushDownInlineProperties12-expected.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/pushDownInlineProperties12-expected.html b/Editor/tests/formatting/pushDownInlineProperties12-expected.html
new file mode 100644
index 0000000..f6a7db3
--- /dev/null
+++ b/Editor/tests/formatting/pushDownInlineProperties12-expected.html
@@ -0,0 +1,24 @@
+<html>
+  <head></head>
+  <body>
+    <p>
+      <s>
+        <s>
+          <s style="color: blue">One</s>
+          <s style="color: blue">Two</s>
+          <s style="color: blue">Three</s>
+        </s>
+        <s style="color: blue">
+          <s>Four</s>
+          <s>Five</s>
+          <s>Six</s>
+        </s>
+      </s>
+      <s style="color: blue">
+        <s>Seven</s>
+        <s>Eight</s>
+        <s>Nine</s>
+      </s>
+    </p>
+  </body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/pushDownInlineProperties12-input.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/pushDownInlineProperties12-input.html b/Editor/tests/formatting/pushDownInlineProperties12-input.html
new file mode 100644
index 0000000..18f0485
--- /dev/null
+++ b/Editor/tests/formatting/pushDownInlineProperties12-input.html
@@ -0,0 +1,39 @@
+<!DOCTYPE html>
+<html>
+<head>
+<script>
+function performTest()
+{
+    Selection_preserveWhileExecuting(function() {
+        var range = Selection_get();
+        Range_trackWhileExecuting(range,function() {
+            removeWhitespaceAndCommentNodes(document.body);
+        });
+        var outermost = Range_getOutermostNodes(range);
+        Formatting_pushDownInlineProperties(outermost);
+    });
+}
+</script>
+</head>
+<body>
+<p style="color: blue">
+  <s>
+    <s>
+      <s>One</s>
+      [<s>Two</s>]
+      <s>Three</s>
+    </s>
+    <s>
+      <s>Four</s>
+      <s>Five</s>
+      <s>Six</s>
+    </s>
+  </s>
+  <s>
+    <s>Seven</s>
+    <s>Eight</s>
+    <s>Nine</s>
+  </s>
+</p>
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/pushDownInlineProperties13-expected.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/pushDownInlineProperties13-expected.html b/Editor/tests/formatting/pushDownInlineProperties13-expected.html
new file mode 100644
index 0000000..f6a7db3
--- /dev/null
+++ b/Editor/tests/formatting/pushDownInlineProperties13-expected.html
@@ -0,0 +1,24 @@
+<html>
+  <head></head>
+  <body>
+    <p>
+      <s>
+        <s>
+          <s style="color: blue">One</s>
+          <s style="color: blue">Two</s>
+          <s style="color: blue">Three</s>
+        </s>
+        <s style="color: blue">
+          <s>Four</s>
+          <s>Five</s>
+          <s>Six</s>
+        </s>
+      </s>
+      <s style="color: blue">
+        <s>Seven</s>
+        <s>Eight</s>
+        <s>Nine</s>
+      </s>
+    </p>
+  </body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/pushDownInlineProperties13-input.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/pushDownInlineProperties13-input.html b/Editor/tests/formatting/pushDownInlineProperties13-input.html
new file mode 100644
index 0000000..6b9e5de
--- /dev/null
+++ b/Editor/tests/formatting/pushDownInlineProperties13-input.html
@@ -0,0 +1,39 @@
+<!DOCTYPE html>
+<html>
+<head>
+<script>
+function performTest()
+{
+    Selection_preserveWhileExecuting(function() {
+        var range = Selection_get();
+        Range_trackWhileExecuting(range,function() {
+            removeWhitespaceAndCommentNodes(document.body);
+        });
+        var outermost = Range_getOutermostNodes(range);
+        Formatting_pushDownInlineProperties(outermost);
+    });
+}
+</script>
+</head>
+<body>
+<p style="color: blue">
+  <s>
+    <s>
+      [<s>One</s>
+      <s>Two</s>
+      <s>Three</s>]
+    </s>
+    <s>
+      <s>Four</s>
+      <s>Five</s>
+      <s>Six</s>
+    </s>
+  </s>
+  <s>
+    <s>Seven</s>
+    <s>Eight</s>
+    <s>Nine</s>
+  </s>
+</p>
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/pushDownInlineProperties14-expected.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/pushDownInlineProperties14-expected.html b/Editor/tests/formatting/pushDownInlineProperties14-expected.html
new file mode 100644
index 0000000..3cb2757
--- /dev/null
+++ b/Editor/tests/formatting/pushDownInlineProperties14-expected.html
@@ -0,0 +1,24 @@
+<html>
+  <head></head>
+  <body>
+    <p>
+      <s>
+        <s style="color: blue">
+          <s>One</s>
+          <s>Two</s>
+          <s>Three</s>
+        </s>
+        <s style="color: blue">
+          <s>Four</s>
+          <s>Five</s>
+          <s>Six</s>
+        </s>
+      </s>
+      <s style="color: blue">
+        <s>Seven</s>
+        <s>Eight</s>
+        <s>Nine</s>
+      </s>
+    </p>
+  </body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/pushDownInlineProperties14-input.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/pushDownInlineProperties14-input.html b/Editor/tests/formatting/pushDownInlineProperties14-input.html
new file mode 100644
index 0000000..f04d8d4
--- /dev/null
+++ b/Editor/tests/formatting/pushDownInlineProperties14-input.html
@@ -0,0 +1,39 @@
+<!DOCTYPE html>
+<html>
+<head>
+<script>
+function performTest()
+{
+    Selection_preserveWhileExecuting(function() {
+        var range = Selection_get();
+        Range_trackWhileExecuting(range,function() {
+            removeWhitespaceAndCommentNodes(document.body);
+        });
+        var outermost = Range_getOutermostNodes(range);
+        Formatting_pushDownInlineProperties(outermost);
+    });
+}
+</script>
+</head>
+<body>
+<p style="color: blue">
+  <s>
+    [<s>
+      <s>One</s>
+      <s>Two</s>
+      <s>Three</s>
+    </s>]
+    <s>
+      <s>Four</s>
+      <s>Five</s>
+      <s>Six</s>
+    </s>
+  </s>
+  <s>
+    <s>Seven</s>
+    <s>Eight</s>
+    <s>Nine</s>
+  </s>
+</p>
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/pushDownInlineProperties15-expected.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/pushDownInlineProperties15-expected.html b/Editor/tests/formatting/pushDownInlineProperties15-expected.html
new file mode 100644
index 0000000..a7ef87d
--- /dev/null
+++ b/Editor/tests/formatting/pushDownInlineProperties15-expected.html
@@ -0,0 +1,24 @@
+<html>
+  <head></head>
+  <body>
+    <p>
+      <s style="color: blue">
+        <s>
+          <s>One</s>
+          <s>Two</s>
+          <s>Three</s>
+        </s>
+        <s>
+          <s>Four</s>
+          <s>Five</s>
+          <s>Six</s>
+        </s>
+      </s>
+      <s style="color: blue">
+        <s>Seven</s>
+        <s>Eight</s>
+        <s>Nine</s>
+      </s>
+    </p>
+  </body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/pushDownInlineProperties15-input.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/pushDownInlineProperties15-input.html b/Editor/tests/formatting/pushDownInlineProperties15-input.html
new file mode 100644
index 0000000..b154d7f
--- /dev/null
+++ b/Editor/tests/formatting/pushDownInlineProperties15-input.html
@@ -0,0 +1,39 @@
+<!DOCTYPE html>
+<html>
+<head>
+<script>
+function performTest()
+{
+    Selection_preserveWhileExecuting(function() {
+        var range = Selection_get();
+        Range_trackWhileExecuting(range,function() {
+            removeWhitespaceAndCommentNodes(document.body);
+        });
+        var outermost = Range_getOutermostNodes(range);
+        Formatting_pushDownInlineProperties(outermost);
+    });
+}
+</script>
+</head>
+<body>
+<p style="color: blue">
+  [<s>
+    <s>
+      <s>One</s>
+      <s>Two</s>
+      <s>Three</s>
+    </s>
+    <s>
+      <s>Four</s>
+      <s>Five</s>
+      <s>Six</s>
+    </s>
+  </s>]
+  <s>
+    <s>Seven</s>
+    <s>Eight</s>
+    <s>Nine</s>
+  </s>
+</p>
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/pushDownInlineProperties16-expected.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/pushDownInlineProperties16-expected.html b/Editor/tests/formatting/pushDownInlineProperties16-expected.html
new file mode 100644
index 0000000..287abd3
--- /dev/null
+++ b/Editor/tests/formatting/pushDownInlineProperties16-expected.html
@@ -0,0 +1,24 @@
+<html>
+  <head></head>
+  <body>
+    <p>
+      <s>
+        <s style="color: blue">
+          <s>One</s>
+          <s>Two</s>
+          <s>Three</s>
+        </s>
+        <s>
+          <s style="color: blue">Four</s>
+          <s style="color: blue">Five</s>
+          <s style="color: blue">Six</s>
+        </s>
+      </s>
+      <s>
+        <s style="color: blue">Seven</s>
+        <s style="color: blue">Eight</s>
+        <s style="color: blue">Nine</s>
+      </s>
+    </p>
+  </body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/pushDownInlineProperties16-input.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/pushDownInlineProperties16-input.html b/Editor/tests/formatting/pushDownInlineProperties16-input.html
new file mode 100644
index 0000000..f99bde2
--- /dev/null
+++ b/Editor/tests/formatting/pushDownInlineProperties16-input.html
@@ -0,0 +1,39 @@
+<!DOCTYPE html>
+<html>
+<head>
+<script>
+function performTest()
+{
+    Selection_preserveWhileExecuting(function() {
+        var range = Selection_get();
+        Range_trackWhileExecuting(range,function() {
+            removeWhitespaceAndCommentNodes(document.body);
+        });
+        var outermost = Range_getOutermostNodes(range);
+        Formatting_pushDownInlineProperties(outermost);
+    });
+}
+</script>
+</head>
+<body>
+<p style="color: blue">
+  <s>
+    <s>
+      <s>One</s>
+      <s>Two</s>
+      <s>Three</s>
+    </s>
+    <s>
+      <s>Four</s>
+      [<s>Five</s>
+      <s>Six</s>
+    </s>
+  </s>
+  <s>
+    <s>Seven</s>
+    <s>Eight</s>]
+    <s>Nine</s>
+  </s>
+</p>
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/pushDownInlineProperties17-expected.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/pushDownInlineProperties17-expected.html b/Editor/tests/formatting/pushDownInlineProperties17-expected.html
new file mode 100644
index 0000000..d6af9e9
--- /dev/null
+++ b/Editor/tests/formatting/pushDownInlineProperties17-expected.html
@@ -0,0 +1,24 @@
+<html>
+  <head></head>
+  <body>
+    <p>
+      <s>
+        <s style="color: blue; font-family: monospace; font-size: 18pt">
+          <s>One</s>
+          <s>Two</s>
+          <s>Three</s>
+        </s>
+        <s>
+          <s style="color: blue; font-family: fantasy; font-size: 18pt; text-decoration: overline">Four</s>
+          <s style="color: blue; font-family: fantasy; font-size: 18pt; text-decoration: line-through">Five</s>
+          <s style="color: blue; font-family: fantasy; font-size: 18pt; text-decoration: overline line-through">Six</s>
+        </s>
+      </s>
+      <s style="color: blue; font-family: sans-serif">
+        <s>Seven</s>
+        <s>Eight</s>
+        <s>Nine</s>
+      </s>
+    </p>
+  </body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/pushDownInlineProperties17-input.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/pushDownInlineProperties17-input.html b/Editor/tests/formatting/pushDownInlineProperties17-input.html
new file mode 100644
index 0000000..2043978
--- /dev/null
+++ b/Editor/tests/formatting/pushDownInlineProperties17-input.html
@@ -0,0 +1,39 @@
+<!DOCTYPE html>
+<html>
+<head>
+<script>
+function performTest()
+{
+    Selection_preserveWhileExecuting(function() {
+        var range = Selection_get();
+        Range_trackWhileExecuting(range,function() {
+            removeWhitespaceAndCommentNodes(document.body);
+        });
+        var outermost = Range_getOutermostNodes(range);
+        Formatting_pushDownInlineProperties(outermost);
+    });
+}
+</script>
+</head>
+<body>
+<p style="color: blue">
+  <s style="font-size: 18pt">
+    <s style="font-family: monospace">
+      <s>One</s>
+      <s>Two</s>
+      <s>Three</s>
+    </s>
+    <s style="font-family: fantasy">
+      <s style="text-decoration: overline">Four</s>
+      [<s style="text-decoration: line-through">Five</s>]
+      <s style="text-decoration: overline line-through">Six</s>
+    </s>
+  </s>
+  <s style="font-family: sans-serif">
+    <s>Seven</s>
+    <s>Eight</s>
+    <s>Nine</s>
+  </s>
+</p>
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/pushDownInlineProperties18-expected.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/pushDownInlineProperties18-expected.html b/Editor/tests/formatting/pushDownInlineProperties18-expected.html
new file mode 100644
index 0000000..72e521b
--- /dev/null
+++ b/Editor/tests/formatting/pushDownInlineProperties18-expected.html
@@ -0,0 +1,24 @@
+<html>
+  <head></head>
+  <body>
+    <p>
+      <s>
+        <s style="color: blue; font-family: monospace; font-size: 18pt">
+          <s>One</s>
+          <s>Two</s>
+          <s>Three</s>
+        </s>
+        <s>
+          <s style="color: blue; font-family: fantasy; font-size: 18pt; text-decoration: overline">Four</s>
+          <s><span style="color: blue; font-family: fantasy; font-size: 18pt; text-decoration: line-through">Five</span></s>
+          <s style="color: blue; font-family: fantasy; font-size: 18pt; text-decoration: overline line-through">Six</s>
+        </s>
+      </s>
+      <s style="color: blue; font-family: sans-serif">
+        <s>Seven</s>
+        <s>Eight</s>
+        <s>Nine</s>
+      </s>
+    </p>
+  </body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/pushDownInlineProperties18-input.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/pushDownInlineProperties18-input.html b/Editor/tests/formatting/pushDownInlineProperties18-input.html
new file mode 100644
index 0000000..de538cb
--- /dev/null
+++ b/Editor/tests/formatting/pushDownInlineProperties18-input.html
@@ -0,0 +1,39 @@
+<!DOCTYPE html>
+<html>
+<head>
+<script>
+function performTest()
+{
+    Selection_preserveWhileExecuting(function() {
+        var range = Selection_get();
+        Range_trackWhileExecuting(range,function() {
+            removeWhitespaceAndCommentNodes(document.body);
+        });
+        var outermost = Range_getOutermostNodes(range);
+        Formatting_pushDownInlineProperties(outermost);
+    });
+}
+</script>
+</head>
+<body>
+<p style="color: blue">
+  <s style="font-size: 18pt">
+    <s style="font-family: monospace">
+      <s>One</s>
+      <s>Two</s>
+      <s>Three</s>
+    </s>
+    <s style="font-family: fantasy">
+      <s style="text-decoration: overline">Four</s>
+      <s style="text-decoration: line-through">[Five]</s>
+      <s style="text-decoration: overline line-through">Six</s>
+    </s>
+  </s>
+  <s style="font-family: sans-serif">
+    <s>Seven</s>
+    <s>Eight</s>
+    <s>Nine</s>
+  </s>
+</p>
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/pushDownInlineProperties19-expected.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/pushDownInlineProperties19-expected.html b/Editor/tests/formatting/pushDownInlineProperties19-expected.html
new file mode 100644
index 0000000..88bbaa7
--- /dev/null
+++ b/Editor/tests/formatting/pushDownInlineProperties19-expected.html
@@ -0,0 +1,27 @@
+<html>
+  <head></head>
+  <body>
+    <div style="margin-left: 20%">
+      <p style="margin-right: 15%">
+        <s>
+          <s style="color: blue">
+            <s>One</s>
+            <s>Two</s>
+            <s>Three</s>
+          </s>
+          <s>
+            <s style="color: yellow">Four</s>
+            <s style="color: black">Five</s>
+            <s style="color: yellow">Six</s>
+          </s>
+        </s>
+        <s style="color: green">
+          <s>Seven</s>
+          <s>Eight</s>
+          <s>Nine</s>
+        </s>
+      </p>
+      <p style="color: red">Ten</p>
+    </div>
+  </body>
+</html>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/pushDownInlineProperties19-input.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/pushDownInlineProperties19-input.html b/Editor/tests/formatting/pushDownInlineProperties19-input.html
new file mode 100644
index 0000000..030e9fd
--- /dev/null
+++ b/Editor/tests/formatting/pushDownInlineProperties19-input.html
@@ -0,0 +1,42 @@
+<!DOCTYPE html>
+<html>
+<head>
+<script>
+function performTest()
+{
+    Selection_preserveWhileExecuting(function() {
+        var range = Selection_get();
+        Range_trackWhileExecuting(range,function() {
+            removeWhitespaceAndCommentNodes(document.body);
+        });
+        var outermost = Range_getOutermostNodes(range);
+        Formatting_pushDownInlineProperties(outermost);
+    });
+}
+</script>
+</head>
+<body>
+<div style="color: red; margin-left: 20%">
+  <p style="color: green; margin-right: 15%">
+    <s style="color: blue">
+      <s>
+        <s>One</s>
+        <s>Two</s>
+        <s>Three</s>
+      </s>
+      <s style="color: yellow">
+        <s>Four</s>
+        [<s style="color: black">Five</s>]
+        <s>Six</s>
+      </s>
+    </s>
+    <s>
+      <s>Seven</s>
+      <s>Eight</s>
+      <s>Nine</s>
+    </s>
+  </p>
+  <p>Ten</p>
+</div>
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/splitTextAfter01-expected.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/splitTextAfter01-expected.html b/Editor/tests/formatting/splitTextAfter01-expected.html
new file mode 100644
index 0000000..a48249c
--- /dev/null
+++ b/Editor/tests/formatting/splitTextAfter01-expected.html
@@ -0,0 +1,19 @@
+"|one two three four"   ->   "|one t"           ->   "|one two three four"
+"o|ne two three four"   ->   "o|ne t"           ->   "o|ne two three four"
+"on|e two three four"   ->   "on|e t"           ->   "on|e two three four"
+"one| two three four"   ->   "one| t"           ->   "one| two three four"
+"one |two three four"   ->   "one |t"           ->   "one |two three four"
+"one t|wo three four"   ->   "one t|"           ->   "one t|wo three four"
+"one tw|o three four"   ->   "w|o three four"   ->   "one tw|o three four"
+"one two| three four"   ->   "wo| three four"   ->   "one two| three four"
+"one two |three four"   ->   "wo |three four"   ->   "one two |three four"
+"one two t|hree four"   ->   "wo t|hree four"   ->   "one two t|hree four"
+"one two th|ree four"   ->   "wo th|ree four"   ->   "one two th|ree four"
+"one two thr|ee four"   ->   "wo thr|ee four"   ->   "one two thr|ee four"
+"one two thre|e four"   ->   "wo thre|e four"   ->   "one two thre|e four"
+"one two three| four"   ->   "wo three| four"   ->   "one two three| four"
+"one two three |four"   ->   "wo three |four"   ->   "one two three |four"
+"one two three f|our"   ->   "wo three f|our"   ->   "one two three f|our"
+"one two three fo|ur"   ->   "wo three fo|ur"   ->   "one two three fo|ur"
+"one two three fou|r"   ->   "wo three fou|r"   ->   "one two three fou|r"
+"one two three four|"   ->   "wo three four|"   ->   "one two three four|"

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/splitTextAfter01-input.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/splitTextAfter01-input.html b/Editor/tests/formatting/splitTextAfter01-input.html
new file mode 100644
index 0000000..aa6d29f
--- /dev/null
+++ b/Editor/tests/formatting/splitTextAfter01-input.html
@@ -0,0 +1,57 @@
+<!DOCTYPE html>
+<html>
+<head>
+<script>
+function pad(str,length)
+{
+    str = ""+str;
+    while (str.length < length)
+        str += " ";
+    return str;
+}
+
+function performTest()
+{
+    var ps = document.getElementsByTagName("P");
+    var text1 = ps[0].firstChild;
+
+    var positions = new Array();
+    for (var i = 0; i <= text1.nodeValue.length; i++)
+        positions.push(new Position(text1,i));
+
+    var origStrings = new Array();
+    for (var i = 0; i < positions.length; i++)
+        origStrings.push(positions[i].toString());
+
+    Position_trackWhileExecuting(positions,function() {
+        Formatting_splitTextAfter(new Position(text1,5));
+    });
+
+    var movedStrings = new Array();
+    for (var i = 0; i < positions.length; i++)
+        movedStrings.push(positions[i].toString());
+
+    Position_trackWhileExecuting(positions,function() {
+        UndoManager_undo();
+    });
+    var undoneStrings = new Array();
+    for (var i = 0; i < positions.length; i++)
+        undoneStrings.push(positions[i].toString());
+
+    var lines = new Array();
+    for (var i = 0; i < positions.length; i++) {
+        var extra = "";
+        if (undoneStrings[i] != origStrings[i])
+            extra += " ***";
+        lines.push(origStrings[i]+"   ->   "+
+                   pad(movedStrings[i],16)+"   ->   "+
+                   undoneStrings[i]+extra+"\n");
+    }
+    return lines.join("");
+}
+</script>
+</head>
+<body>
+<p>one two three four</p>
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/splitTextBefore01-expected.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/splitTextBefore01-expected.html b/Editor/tests/formatting/splitTextBefore01-expected.html
new file mode 100644
index 0000000..eef78e1
--- /dev/null
+++ b/Editor/tests/formatting/splitTextBefore01-expected.html
@@ -0,0 +1,19 @@
+"|one two three four"   ->   "|one t"           ->   "|one two three four"
+"o|ne two three four"   ->   "o|ne t"           ->   "o|ne two three four"
+"on|e two three four"   ->   "on|e t"           ->   "on|e two three four"
+"one| two three four"   ->   "one| t"           ->   "one| two three four"
+"one |two three four"   ->   "one |t"           ->   "one |two three four"
+"one t|wo three four"   ->   "|wo three four"   ->   "one t|wo three four"
+"one tw|o three four"   ->   "w|o three four"   ->   "one tw|o three four"
+"one two| three four"   ->   "wo| three four"   ->   "one two| three four"
+"one two |three four"   ->   "wo |three four"   ->   "one two |three four"
+"one two t|hree four"   ->   "wo t|hree four"   ->   "one two t|hree four"
+"one two th|ree four"   ->   "wo th|ree four"   ->   "one two th|ree four"
+"one two thr|ee four"   ->   "wo thr|ee four"   ->   "one two thr|ee four"
+"one two thre|e four"   ->   "wo thre|e four"   ->   "one two thre|e four"
+"one two three| four"   ->   "wo three| four"   ->   "one two three| four"
+"one two three |four"   ->   "wo three |four"   ->   "one two three |four"
+"one two three f|our"   ->   "wo three f|our"   ->   "one two three f|our"
+"one two three fo|ur"   ->   "wo three fo|ur"   ->   "one two three fo|ur"
+"one two three fou|r"   ->   "wo three fou|r"   ->   "one two three fou|r"
+"one two three four|"   ->   "wo three four|"   ->   "one two three four|"

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/splitTextBefore01-input.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/splitTextBefore01-input.html b/Editor/tests/formatting/splitTextBefore01-input.html
new file mode 100644
index 0000000..8802956
--- /dev/null
+++ b/Editor/tests/formatting/splitTextBefore01-input.html
@@ -0,0 +1,57 @@
+<!DOCTYPE html>
+<html>
+<head>
+<script>
+function pad(str,length)
+{
+    str = ""+str;
+    while (str.length < length)
+        str += " ";
+    return str;
+}
+
+function performTest()
+{
+    var ps = document.getElementsByTagName("P");
+    var text1 = ps[0].firstChild;
+
+    var positions = new Array();
+    for (var i = 0; i <= text1.nodeValue.length; i++)
+        positions.push(new Position(text1,i));
+
+    var origStrings = new Array();
+    for (var i = 0; i < positions.length; i++)
+        origStrings.push(positions[i].toString());
+
+    Position_trackWhileExecuting(positions,function() {
+        Formatting_splitTextBefore(new Position(text1,5));
+    });
+
+    var movedStrings = new Array();
+    for (var i = 0; i < positions.length; i++)
+        movedStrings.push(positions[i].toString());
+
+    Position_trackWhileExecuting(positions,function() {
+        UndoManager_undo();
+    });
+    var undoneStrings = new Array();
+    for (var i = 0; i < positions.length; i++)
+        undoneStrings.push(positions[i].toString());
+
+    var lines = new Array();
+    for (var i = 0; i < positions.length; i++) {
+        var extra = "";
+        if (undoneStrings[i] != origStrings[i])
+            extra += " ***";
+        lines.push(origStrings[i]+"   ->   "+
+                   pad(movedStrings[i],16)+"   ->   "+
+                   undoneStrings[i]+extra+"\n");
+    }
+    return lines.join("");
+}
+</script>
+</head>
+<body>
+<p>one two three four</p>
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/style-nop01-expected.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/style-nop01-expected.html b/Editor/tests/formatting/style-nop01-expected.html
new file mode 100644
index 0000000..043cc20
--- /dev/null
+++ b/Editor/tests/formatting/style-nop01-expected.html
@@ -0,0 +1,4 @@
+<html>
+  <head></head>
+  <body><p><br/></p></body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/style-nop01-input.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/style-nop01-input.html b/Editor/tests/formatting/style-nop01-input.html
new file mode 100644
index 0000000..72bae88
--- /dev/null
+++ b/Editor/tests/formatting/style-nop01-input.html
@@ -0,0 +1,17 @@
+<!DOCTYPE html>
+<html>
+<head>
+<script>
+
+function performTest()
+{
+    Formatting_applyFormattingChanges("",null);
+
+    // An unrelated part of the code adds "id" attributes to heading elements to keep track of
+    // sections - we're not testing that functionality here, so we want to ignore them
+    removeIds();
+}
+</script>
+</head>
+<body>[]</body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/style-nop01a-expected.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/style-nop01a-expected.html b/Editor/tests/formatting/style-nop01a-expected.html
new file mode 100644
index 0000000..c0aab59
--- /dev/null
+++ b/Editor/tests/formatting/style-nop01a-expected.html
@@ -0,0 +1,4 @@
+<html>
+  <head></head>
+  <body><h1><br/></h1></body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/style-nop01a-input.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/style-nop01a-input.html b/Editor/tests/formatting/style-nop01a-input.html
new file mode 100644
index 0000000..9250221
--- /dev/null
+++ b/Editor/tests/formatting/style-nop01a-input.html
@@ -0,0 +1,17 @@
+<!DOCTYPE html>
+<html>
+<head>
+<script>
+
+function performTest()
+{
+    Formatting_applyFormattingChanges("H1",null);
+
+    // An unrelated part of the code adds "id" attributes to heading elements to keep track of
+    // sections - we're not testing that functionality here, so we want to ignore them
+    removeIds();
+}
+</script>
+</head>
+<body>[]</body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/style-nop02-expected.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/style-nop02-expected.html b/Editor/tests/formatting/style-nop02-expected.html
new file mode 100644
index 0000000..b4dfc65
--- /dev/null
+++ b/Editor/tests/formatting/style-nop02-expected.html
@@ -0,0 +1,4 @@
+<html>
+  <head></head>
+  <body><p>a</p></body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/style-nop02-input.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/style-nop02-input.html b/Editor/tests/formatting/style-nop02-input.html
new file mode 100644
index 0000000..c9d3e66
--- /dev/null
+++ b/Editor/tests/formatting/style-nop02-input.html
@@ -0,0 +1,17 @@
+<!DOCTYPE html>
+<html>
+<head>
+<script>
+
+function performTest()
+{
+    Formatting_applyFormattingChanges("",null);
+
+    // An unrelated part of the code adds "id" attributes to heading elements to keep track of
+    // sections - we're not testing that functionality here, so we want to ignore them
+    removeIds();
+}
+</script>
+</head>
+<body>a[]</body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/style-nop03-expected.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/style-nop03-expected.html b/Editor/tests/formatting/style-nop03-expected.html
new file mode 100644
index 0000000..b4dfc65
--- /dev/null
+++ b/Editor/tests/formatting/style-nop03-expected.html
@@ -0,0 +1,4 @@
+<html>
+  <head></head>
+  <body><p>a</p></body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/style-nop03-input.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/style-nop03-input.html b/Editor/tests/formatting/style-nop03-input.html
new file mode 100644
index 0000000..a65975c
--- /dev/null
+++ b/Editor/tests/formatting/style-nop03-input.html
@@ -0,0 +1,17 @@
+<!DOCTYPE html>
+<html>
+<head>
+<script>
+
+function performTest()
+{
+    Formatting_applyFormattingChanges("",null);
+
+    // An unrelated part of the code adds "id" attributes to heading elements to keep track of
+    // sections - we're not testing that functionality here, so we want to ignore them
+    removeIds();
+}
+</script>
+</head>
+<body>[]a</body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/style-nop04-expected.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/style-nop04-expected.html b/Editor/tests/formatting/style-nop04-expected.html
new file mode 100644
index 0000000..a243c42
--- /dev/null
+++ b/Editor/tests/formatting/style-nop04-expected.html
@@ -0,0 +1,4 @@
+<html>
+  <head></head>
+  <body><p>ab</p></body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/style-nop04-input.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/style-nop04-input.html b/Editor/tests/formatting/style-nop04-input.html
new file mode 100644
index 0000000..b4bdf7f
--- /dev/null
+++ b/Editor/tests/formatting/style-nop04-input.html
@@ -0,0 +1,17 @@
+<!DOCTYPE html>
+<html>
+<head>
+<script>
+
+function performTest()
+{
+    Formatting_applyFormattingChanges("",null);
+
+    // An unrelated part of the code adds "id" attributes to heading elements to keep track of
+    // sections - we're not testing that functionality here, so we want to ignore them
+    removeIds();
+}
+</script>
+</head>
+<body>a[]b</body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/style-nop05-expected.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/style-nop05-expected.html b/Editor/tests/formatting/style-nop05-expected.html
new file mode 100644
index 0000000..b4dfc65
--- /dev/null
+++ b/Editor/tests/formatting/style-nop05-expected.html
@@ -0,0 +1,4 @@
+<html>
+  <head></head>
+  <body><p>a</p></body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/style-nop05-input.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/style-nop05-input.html b/Editor/tests/formatting/style-nop05-input.html
new file mode 100644
index 0000000..fe55cca
--- /dev/null
+++ b/Editor/tests/formatting/style-nop05-input.html
@@ -0,0 +1,17 @@
+<!DOCTYPE html>
+<html>
+<head>
+<script>
+
+function performTest()
+{
+    Formatting_applyFormattingChanges("",null);
+
+    // An unrelated part of the code adds "id" attributes to heading elements to keep track of
+    // sections - we're not testing that functionality here, so we want to ignore them
+    removeIds();
+}
+</script>
+</head>
+<body>[a]</body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/style-nop06-expected.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/style-nop06-expected.html b/Editor/tests/formatting/style-nop06-expected.html
new file mode 100644
index 0000000..7e3d0f3
--- /dev/null
+++ b/Editor/tests/formatting/style-nop06-expected.html
@@ -0,0 +1,4 @@
+<html>
+  <head></head>
+  <body><figure><p><br/></p></figure></body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/style-nop06-input.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/style-nop06-input.html b/Editor/tests/formatting/style-nop06-input.html
new file mode 100644
index 0000000..b7b43e1
--- /dev/null
+++ b/Editor/tests/formatting/style-nop06-input.html
@@ -0,0 +1,17 @@
+<!DOCTYPE html>
+<html>
+<head>
+<script>
+
+function performTest()
+{
+    Formatting_applyFormattingChanges("",null);
+
+    // An unrelated part of the code adds "id" attributes to heading elements to keep track of
+    // sections - we're not testing that functionality here, so we want to ignore them
+    removeIds();
+}
+</script>
+</head>
+<body><figure>[]</figure></body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/style-nop07-expected.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/style-nop07-expected.html b/Editor/tests/formatting/style-nop07-expected.html
new file mode 100644
index 0000000..49fe284
--- /dev/null
+++ b/Editor/tests/formatting/style-nop07-expected.html
@@ -0,0 +1,4 @@
+<html>
+  <head></head>
+  <body><figure><figcaption><p><br/></p></figcaption></figure></body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/style-nop07-input.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/style-nop07-input.html b/Editor/tests/formatting/style-nop07-input.html
new file mode 100644
index 0000000..037ec60
--- /dev/null
+++ b/Editor/tests/formatting/style-nop07-input.html
@@ -0,0 +1,17 @@
+<!DOCTYPE html>
+<html>
+<head>
+<script>
+
+function performTest()
+{
+    Formatting_applyFormattingChanges("",null);
+
+    // An unrelated part of the code adds "id" attributes to heading elements to keep track of
+    // sections - we're not testing that functionality here, so we want to ignore them
+    removeIds();
+}
+</script>
+</head>
+<body><figure><figcaption>[]</figcaption></figure></body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/style-nop08-expected.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/style-nop08-expected.html b/Editor/tests/formatting/style-nop08-expected.html
new file mode 100644
index 0000000..dfc5ed4
--- /dev/null
+++ b/Editor/tests/formatting/style-nop08-expected.html
@@ -0,0 +1,9 @@
+<html>
+  <head></head>
+  <body>
+    <table>
+      <caption><p><br/></p></caption>
+      <tbody><tr><td>Cell</td></tr></tbody>
+    </table>
+  </body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/style-nop08-input.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/style-nop08-input.html b/Editor/tests/formatting/style-nop08-input.html
new file mode 100644
index 0000000..17cf3b9
--- /dev/null
+++ b/Editor/tests/formatting/style-nop08-input.html
@@ -0,0 +1,23 @@
+<!DOCTYPE html>
+<html>
+<head>
+<script>
+
+function performTest()
+{
+    Formatting_applyFormattingChanges("",null);
+
+    // An unrelated part of the code adds "id" attributes to heading elements to keep track of
+    // sections - we're not testing that functionality here, so we want to ignore them
+    removeIds();
+}
+</script>
+</head>
+<body>
+  <table>
+    <caption>[]</caption>
+    <tr>
+      <td>Cell</td>
+    </tr>
+  </table>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/style-nop09-expected.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/style-nop09-expected.html b/Editor/tests/formatting/style-nop09-expected.html
new file mode 100644
index 0000000..6371754
--- /dev/null
+++ b/Editor/tests/formatting/style-nop09-expected.html
@@ -0,0 +1,4 @@
+<html>
+  <head></head>
+  <body><table><tbody><tr><td><p><br/></p></td></tr></tbody></table></body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/style-nop09-input.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/style-nop09-input.html b/Editor/tests/formatting/style-nop09-input.html
new file mode 100644
index 0000000..d9c537b
--- /dev/null
+++ b/Editor/tests/formatting/style-nop09-input.html
@@ -0,0 +1,22 @@
+<!DOCTYPE html>
+<html>
+<head>
+<script>
+
+function performTest()
+{
+    Formatting_applyFormattingChanges("",null);
+
+    // An unrelated part of the code adds "id" attributes to heading elements to keep track of
+    // sections - we're not testing that functionality here, so we want to ignore them
+    removeIds();
+}
+</script>
+</head>
+<body>
+  <table>
+    <tr>
+      <td>[]</td>
+    </tr>
+  </table>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/style01-expected.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/style01-expected.html b/Editor/tests/formatting/style01-expected.html
new file mode 100644
index 0000000..a42ee80
--- /dev/null
+++ b/Editor/tests/formatting/style01-expected.html
@@ -0,0 +1,14 @@
+<html>
+  <head></head>
+  <body>
+    <p>Normal</p>
+    <h1>Heading 1</h1>
+    <h2>Heading 2</h2>
+    <h3>Heading 3</h3>
+    <h4>Heading 4</h4>
+    <h5>Heading 5</h5>
+    <h6>Heading 6</h6>
+    <p class="hello">Class "hello"</p>
+    <p>Unchanged (normal)</p>
+  </body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/style01-input.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/style01-input.html b/Editor/tests/formatting/style01-input.html
new file mode 100644
index 0000000..6f577ac
--- /dev/null
+++ b/Editor/tests/formatting/style01-input.html
@@ -0,0 +1,49 @@
+<!DOCTYPE html>
+<html>
+<head>
+<script>
+
+function performTest()
+{
+
+    // Need to make a copy of this array, because it is "live" and the P elements will disappear
+    // from it as we apply formatting changes, changing them into heading elements
+    var ps = arrayCopy(document.getElementsByTagName("P"));
+
+    selectNode(ps[0]);
+    Formatting_applyFormattingChanges("",null);
+    selectNode(ps[1]);
+    Formatting_applyFormattingChanges("H1",null);
+    selectNode(ps[2]);
+    Formatting_applyFormattingChanges("H2",null);
+    selectNode(ps[3]);
+    Formatting_applyFormattingChanges("H3",null);
+    selectNode(ps[4]);
+    Formatting_applyFormattingChanges("H4",null);
+    selectNode(ps[5]);
+    Formatting_applyFormattingChanges("H5",null);
+    selectNode(ps[6]);
+    Formatting_applyFormattingChanges("H6",null);
+    selectNode(ps[7]);
+    Formatting_applyFormattingChanges(".hello",null);
+    selectNode(ps[8]);
+    Formatting_applyFormattingChanges(null,null);
+
+    // An unrelated part of the code adds "id" attributes to heading elements to keep track of
+    // sections - we're not testing that functionality here, so we want to ignore them
+    removeIds();
+}
+</script>
+</head>
+<body>
+<p>Normal</p>
+<p>Heading 1</p>
+<p>Heading 2</p>
+<p>Heading 3</p>
+<p>Heading 4</p>
+<p>Heading 5</p>
+<p>Heading 6</p>
+<p>Class "hello"</p>
+<p>Unchanged (normal)</p>
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/style02-expected.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/style02-expected.html b/Editor/tests/formatting/style02-expected.html
new file mode 100644
index 0000000..840c7f7
--- /dev/null
+++ b/Editor/tests/formatting/style02-expected.html
@@ -0,0 +1,14 @@
+<html>
+  <head></head>
+  <body>
+    <p>Normal</p>
+    <h1>Heading 1</h1>
+    <h2>Heading 2</h2>
+    <h3>Heading 3</h3>
+    <h4>Heading 4</h4>
+    <h5>Heading 5</h5>
+    <h6>Heading 6</h6>
+    <p class="hello">Class "hello"</p>
+    <h1>Unchanged (heading 1)</h1>
+  </body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/style02-input.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/style02-input.html b/Editor/tests/formatting/style02-input.html
new file mode 100644
index 0000000..53b955e
--- /dev/null
+++ b/Editor/tests/formatting/style02-input.html
@@ -0,0 +1,49 @@
+<!DOCTYPE html>
+<html>
+<head>
+<script>
+
+function performTest()
+{
+
+    // Need to make a copy of this array, because it is "live" and the H1 elements will disappear
+    // from it as we apply formatting changes, changing them into heading elements
+    var h1s = arrayCopy(document.getElementsByTagName("H1"));
+
+    selectNode(h1s[0]);
+    Formatting_applyFormattingChanges("",null);
+    selectNode(h1s[1]);
+    Formatting_applyFormattingChanges("H1",null);
+    selectNode(h1s[2]);
+    Formatting_applyFormattingChanges("H2",null);
+    selectNode(h1s[3]);
+    Formatting_applyFormattingChanges("H3",null);
+    selectNode(h1s[4]);
+    Formatting_applyFormattingChanges("H4",null);
+    selectNode(h1s[5]);
+    Formatting_applyFormattingChanges("H5",null);
+    selectNode(h1s[6]);
+    Formatting_applyFormattingChanges("H6",null);
+    selectNode(h1s[7]);
+    Formatting_applyFormattingChanges(".hello",null);
+    selectNode(h1s[8]);
+    Formatting_applyFormattingChanges(null,null);
+
+    // An unrelated part of the code adds "id" attributes to heading elements to keep track of
+    // sections - we're not testing that functionality here, so we want to ignore them
+    removeIds();
+}
+</script>
+</head>
+<body>
+<h1>Normal</h1>
+<h1>Heading 1</h1>
+<h1>Heading 2</h1>
+<h1>Heading 3</h1>
+<h1>Heading 4</h1>
+<h1>Heading 5</h1>
+<h1>Heading 6</h1>
+<h1>Class "hello"</h1>
+<h1>Unchanged (heading 1)</h1>
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/style03-expected.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/style03-expected.html b/Editor/tests/formatting/style03-expected.html
new file mode 100644
index 0000000..97fd91f
--- /dev/null
+++ b/Editor/tests/formatting/style03-expected.html
@@ -0,0 +1,14 @@
+<html>
+  <head></head>
+  <body>
+    <p>Normal</p>
+    <h1>Heading 1</h1>
+    <h2>Heading 2</h2>
+    <h3>Heading 3</h3>
+    <h4>Heading 4</h4>
+    <h5>Heading 5</h5>
+    <h6>Heading 6</h6>
+    <p class="hello">Class "hello"</p>
+    <p class="other">Unchanged (class "other")</p>
+  </body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/style03-input.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/style03-input.html b/Editor/tests/formatting/style03-input.html
new file mode 100644
index 0000000..4cf5e86
--- /dev/null
+++ b/Editor/tests/formatting/style03-input.html
@@ -0,0 +1,49 @@
+<!DOCTYPE html>
+<html>
+<head>
+<script>
+
+function performTest()
+{
+
+    // Need to make a copy of this array, because it is "live" and the P elements will disappear
+    // from it as we apply formatting changes, changing them into heading elements
+    var ps = arrayCopy(document.getElementsByTagName("P"));
+
+    selectNode(ps[0]);
+    Formatting_applyFormattingChanges("",null);
+    selectNode(ps[1]);
+    Formatting_applyFormattingChanges("H1",null);
+    selectNode(ps[2]);
+    Formatting_applyFormattingChanges("H2",null);
+    selectNode(ps[3]);
+    Formatting_applyFormattingChanges("H3",null);
+    selectNode(ps[4]);
+    Formatting_applyFormattingChanges("H4",null);
+    selectNode(ps[5]);
+    Formatting_applyFormattingChanges("H5",null);
+    selectNode(ps[6]);
+    Formatting_applyFormattingChanges("H6",null);
+    selectNode(ps[7]);
+    Formatting_applyFormattingChanges(".hello",null);
+    selectNode(ps[8]);
+    Formatting_applyFormattingChanges(null,null);
+
+    // An unrelated part of the code adds "id" attributes to heading elements to keep track of
+    // sections - we're not testing that functionality here, so we want to ignore them
+    removeIds();
+}
+</script>
+</head>
+<body>
+<p class="other">Normal</p>
+<p class="other">Heading 1</p>
+<p class="other">Heading 2</p>
+<p class="other">Heading 3</p>
+<p class="other">Heading 4</p>
+<p class="other">Heading 5</p>
+<p class="other">Heading 6</p>
+<p class="other">Class "hello"</p>
+<p class="other">Unchanged (class "other")</p>
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/style04-expected.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/style04-expected.html b/Editor/tests/formatting/style04-expected.html
new file mode 100644
index 0000000..159df8c
--- /dev/null
+++ b/Editor/tests/formatting/style04-expected.html
@@ -0,0 +1,14 @@
+<html>
+  <head></head>
+  <body>
+    <p align="center" style="color: blue">Normal</p>
+    <h1 align="center" style="color: blue">Heading 1</h1>
+    <h2 align="center" style="color: blue">Heading 2</h2>
+    <h3 align="center" style="color: blue">Heading 3</h3>
+    <h4 align="center" style="color: blue">Heading 4</h4>
+    <h5 align="center" style="color: blue">Heading 5</h5>
+    <h6 align="center" style="color: blue">Heading 6</h6>
+    <p align="center" class="hello" style="color: blue">Class "hello"</p>
+    <p align="center" style="color: blue">Unchanged (normal)</p>
+  </body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/style04-input.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/style04-input.html b/Editor/tests/formatting/style04-input.html
new file mode 100644
index 0000000..6b3e3f5
--- /dev/null
+++ b/Editor/tests/formatting/style04-input.html
@@ -0,0 +1,49 @@
+<!DOCTYPE html>
+<html>
+<head>
+<script>
+
+function performTest()
+{
+
+    // Need to make a copy of this array, because it is "live" and the P elements will disappear
+    // from it as we apply formatting changes, changing them into heading elements
+    var ps = arrayCopy(document.getElementsByTagName("P"));
+
+    selectNode(ps[0]);
+    Formatting_applyFormattingChanges("",null);
+    selectNode(ps[1]);
+    Formatting_applyFormattingChanges("H1",null);
+    selectNode(ps[2]);
+    Formatting_applyFormattingChanges("H2",null);
+    selectNode(ps[3]);
+    Formatting_applyFormattingChanges("H3",null);
+    selectNode(ps[4]);
+    Formatting_applyFormattingChanges("H4",null);
+    selectNode(ps[5]);
+    Formatting_applyFormattingChanges("H5",null);
+    selectNode(ps[6]);
+    Formatting_applyFormattingChanges("H6",null);
+    selectNode(ps[7]);
+    Formatting_applyFormattingChanges(".hello",null);
+    selectNode(ps[8]);
+    Formatting_applyFormattingChanges(null,null);
+
+    // An unrelated part of the code adds "id" attributes to heading elements to keep track of
+    // sections - we're not testing that functionality here, so we want to ignore them
+    removeIds();
+}
+</script>
+</head>
+<body>
+<p align="center" style="color: blue">Normal</p>
+<p align="center" style="color: blue">Heading 1</p>
+<p align="center" style="color: blue">Heading 2</p>
+<p align="center" style="color: blue">Heading 3</p>
+<p align="center" style="color: blue">Heading 4</p>
+<p align="center" style="color: blue">Heading 5</p>
+<p align="center" style="color: blue">Heading 6</p>
+<p align="center" style="color: blue">Class "hello"</p>
+<p align="center" style="color: blue">Unchanged (normal)</p>
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/style05-expected.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/style05-expected.html b/Editor/tests/formatting/style05-expected.html
new file mode 100644
index 0000000..fdb480d
--- /dev/null
+++ b/Editor/tests/formatting/style05-expected.html
@@ -0,0 +1,10 @@
+<html>
+  <head></head>
+  <body>
+    <p>Paragraph one</p>
+    <h1>Paragraph two</h1>
+    <h1>Paragraph three</h1>
+    <h1>Paragraph four</h1>
+    <p>Paragraph five</p>
+  </body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/style05-input.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/style05-input.html b/Editor/tests/formatting/style05-input.html
new file mode 100644
index 0000000..f8acf24
--- /dev/null
+++ b/Editor/tests/formatting/style05-input.html
@@ -0,0 +1,23 @@
+<!DOCTYPE html>
+<html>
+<head>
+<script>
+
+function performTest()
+{
+    Formatting_applyFormattingChanges("h1",null);
+
+    // An unrelated part of the code adds "id" attributes to heading elements to keep track of
+    // sections - we're not testing that functionality here, so we want to ignore them
+    removeIds();
+}
+</script>
+</head>
+<body>
+<p>Paragraph one</p>
+<p>Par[agraph two</p>
+<p>Paragraph three</p>
+<p>Paragraph fo]ur</p>
+<p>Paragraph five</p>
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/style06-expected.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/style06-expected.html b/Editor/tests/formatting/style06-expected.html
new file mode 100644
index 0000000..452ce51
--- /dev/null
+++ b/Editor/tests/formatting/style06-expected.html
@@ -0,0 +1,35 @@
+<html>
+  <head></head>
+  <body>
+    <p>
+      <i>
+        Paragraph
+        <u>one</u>
+      </i>
+    </p>
+    <h1>
+      <i>
+        Paragraph
+        <u>two</u>
+      </i>
+    </h1>
+    <h1>
+      <i>
+        Paragraph
+        <u>three</u>
+      </i>
+    </h1>
+    <h1>
+      <i>
+        Paragraph
+        <u>four</u>
+      </i>
+    </h1>
+    <p>
+      <i>
+        Paragraph
+        <u>five</u>
+      </i>
+    </p>
+  </body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/style06-input.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/style06-input.html b/Editor/tests/formatting/style06-input.html
new file mode 100644
index 0000000..ba3422c
--- /dev/null
+++ b/Editor/tests/formatting/style06-input.html
@@ -0,0 +1,23 @@
+<!DOCTYPE html>
+<html>
+<head>
+<script>
+
+function performTest()
+{
+    Formatting_applyFormattingChanges("h1",null);
+
+    // An unrelated part of the code adds "id" attributes to heading elements to keep track of
+    // sections - we're not testing that functionality here, so we want to ignore them
+    removeIds();
+}
+</script>
+</head>
+<body>
+<p><i>Paragraph <u>one</u></i></p>
+<p><i>Paragraph <u>t[wo</u></i></p>
+<p><i>Paragraph <u>three</u></i></p>
+<p><i>Paragraph <u>fou]r</u></i></p>
+<p><i>Paragraph <u>five</u></i></p>
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-corinthia/blob/03bd5af0/Editor/tests/formatting/style07-expected.html
----------------------------------------------------------------------
diff --git a/Editor/tests/formatting/style07-expected.html b/Editor/tests/formatting/style07-expected.html
new file mode 100644
index 0000000..def4a40
--- /dev/null
+++ b/Editor/tests/formatting/style07-expected.html
@@ -0,0 +1,10 @@
+<html>
+  <head></head>
+  <body>
+    <h1>Paragraph one</h1>
+    <h1>Paragraph two</h1>
+    <h1>Paragraph three</h1>
+    <h1>Paragraph four</h1>
+    <h1>Paragraph five</h1>
+  </body>
+</html>


Mime
View raw message