From 3c5985a8c27ce9d6121ddbcbedc6dfaad703de1b Mon Sep 17 00:00:00 2001 From: Kamil Jarosz Date: Sun, 5 Jan 2025 19:27:05 +0100 Subject: [PATCH] tests: Add avm2/edittext_stylesheet test This test verifies the behavior of TextField.styleSheet --- .../swfs/avm2/edittext_stylesheet/Test.as | 319 +++++++++++ .../swfs/avm2/edittext_stylesheet/output.txt | 536 ++++++++++++++++++ .../swfs/avm2/edittext_stylesheet/test.swf | Bin 0 -> 4105 bytes .../swfs/avm2/edittext_stylesheet/test.toml | 1 + 4 files changed, 856 insertions(+) create mode 100644 tests/tests/swfs/avm2/edittext_stylesheet/Test.as create mode 100644 tests/tests/swfs/avm2/edittext_stylesheet/output.txt create mode 100644 tests/tests/swfs/avm2/edittext_stylesheet/test.swf create mode 100644 tests/tests/swfs/avm2/edittext_stylesheet/test.toml diff --git a/tests/tests/swfs/avm2/edittext_stylesheet/Test.as b/tests/tests/swfs/avm2/edittext_stylesheet/Test.as new file mode 100644 index 000000000000..9a99f9ad8067 --- /dev/null +++ b/tests/tests/swfs/avm2/edittext_stylesheet/Test.as @@ -0,0 +1,319 @@ +package { +import flash.display.*; +import flash.text.*; + +public class Test extends Sprite { + private var style:StyleSheet; + + public function Test() { + runTests(); + } + + function runTests() { + resetStyle(); + runInitialTests(); + runHtmlTests(); + } + + function resetStyle() { + style = new StyleSheet(); + + var classBold:Object = new Object(); + classBold.fontWeight = "bold"; + style.setStyle(".classBold", classBold); + + var classRed:Object = new Object(); + classRed.color = "#FF0000"; + style.setStyle(".classRed", classRed); + + var classGreen:Object = new Object(); + classGreen.color = "#00FF00"; + style.setStyle(".classGreen", classGreen); + + var classRedBold:Object = new Object(); + classRedBold.color = "#FF0000"; + classRedBold.fontWeight = "bold"; + style.setStyle(".classRedBold", classRedBold); + } + + function runInitialTests() { + var text: TextField = null; + + trace("Getter & setter:"); + text = newTextField(); + var s = new StyleSheet(); + text.styleSheet = s; + + trace(" Style before (1): " + s.styleNames); + trace(" Style before (2): " + text.styleSheet.styleNames); + + var classRed:Object = new Object(); + classRed.color = "#FF0000"; + s.setStyle(".classRed", classRed); + + trace(" Style after (1): " + s.styleNames); + trace(" Style after (2): " + text.styleSheet.styleNames); + + trace("Setting style after HTML:"); + text = newTextField(); + text.htmlText = 'a'; + trace(" HTML before: " + escape(text.htmlText)); + text.styleSheet = style; + trace(" HTML after style: " + escape(text.htmlText)); + text.htmlText = 'a'; + trace(" HTML after set: " + escape(text.htmlText)); + text.styleSheet = null; + trace(" HTML no style: " + escape(text.htmlText)); + + trace("Setting text after stylized HTML:"); + text = newTextField(); + text.styleSheet = style; + text.htmlText = 'a'; + trace(" HTML after style: " + escape(text.htmlText)); + trace(" Text after style: " + escape(text.text)); + text.text = 'b'; + trace(" HTML after set: " + escape(text.htmlText)); + trace(" Text after set: " + escape(text.text)); + text.styleSheet = null; + trace(" HTML after reset: " + escape(text.htmlText)); + trace(" Text after reset: " + escape(text.text)); + text.text = 'c'; + trace(" HTML after set: " + escape(text.htmlText)); + trace(" Text after set: " + escape(text.text)); + + trace("Setting HTML in text:"); + text = newTextField(); + text.styleSheet = style; + text.text = 'a'; + trace(" HTML after style: " + escape(text.htmlText)); + trace(" Text after style: " + escape(text.text)); + text.styleSheet = null; + trace(" HTML after reset: " + escape(text.htmlText)); + trace(" Text after reset: " + escape(text.text)); + + trace("Modifying CSS after parsing HTML:"); + text = newTextField(); + var s = new StyleSheet(); + text.styleSheet = s; + text.htmlText = 'a'; + trace(" Style (original): " + text.styleSheet.styleNames); + printTextRuns(text.getTextRuns()); + var classRed:Object = new Object(); + classRed.color = "#FF0000"; + s.setStyle(".classRed", classRed); + trace(" Style (after modifying CSS): " + text.styleSheet.styleNames); + printTextRuns(text.getTextRuns()); + text.htmlText = 'a'; + trace(" Style (after updating HTML to the same value): " + text.styleSheet.styleNames); + printTextRuns(text.getTextRuns()); + text.htmlText = 'b'; + trace(" Style (after updating HTML): " + text.styleSheet.styleNames); + printTextRuns(text.getTextRuns()); + text.styleSheet = s; + trace(" Style (after updating CSS): " + text.styleSheet.styleNames); + printTextRuns(text.getTextRuns()); + text.htmlText = 'c'; + trace(" Style (after updating HTML): " + text.styleSheet.styleNames); + printTextRuns(text.getTextRuns()); + var classRed:Object = new Object(); + classRed.color = "#00FF00"; + s.setStyle(".classRed", classRed); + text.styleSheet = s; + trace(" Style (after updating CSS without HTML): " + text.styleSheet.styleNames); + printTextRuns(text.getTextRuns()); + + trace("Modifying text after removing CSS:"); + text = newTextField(); + var s = new StyleSheet(); + text.text = '1'; + text.styleSheet = s; + text.styleSheet = null; + text.text = '2'; + trace(" Text after: " + text.text); + trace(" HTML after: " + text.htmlText); + + trace("Modifying text after removing CSS with HTML:"); + text = newTextField(); + var s = new StyleSheet(); + text.htmlText = '1'; + text.styleSheet = s; + text.styleSheet = null; + text.text = '2'; + trace(" Text after: " + text.text); + trace(" HTML after: " + text.htmlText); + + trace("Updating CSS and resetting it:"); + text = newTextField(); + text.styleSheet = new StyleSheet(); + text.htmlText = 'x'; + printTextRuns(text.getTextRuns()); + text.styleSheet = style; + text.styleSheet = null; + printTextRuns(text.getTextRuns()); + } + + function runHtmlTests() { + // Unknown classes + runHtmlTest('a'); + runHtmlTest('ab'); + + // Basic spans + runHtmlTest('a'); + runHtmlTest('a'); + runHtmlTest('a'); + runHtmlTest('a'); + + // Nesting & overlapping classes + runHtmlTest('ab'); + runHtmlTest('ab'); + runHtmlTest('abc'); + + // Multiple classes? + runHtmlTest('ab'); + + // Spaces + runHtmlTest('a'); + runHtmlTest('a'); + runHtmlTest('a'); + + // Dashes in names + var classMagenta:Object = new Object(); + classMagenta.color = "#FF00FF"; + style.setStyle(".class-magenta", classMagenta); + runHtmlTest('abc'); + + // Case sensitivity + runHtmlTest('a'); + runHtmlTest('a'); + runHtmlTest('a'); + + // Importance of styles + runHtmlTest('ab'); + runHtmlTest('ab'); + + // Class on paragraph + runHtmlTest('

a

b

'); + runHtmlTest('

a

b

'); + runHtmlTest('

a

b

'); + runHtmlTest('

a

b

'); + + // Styling elements + var classBlue:Object = new Object(); + classBlue.color = "#0000FF"; + style.setStyle("a", classBlue); + style.setStyle("b", classBlue); + style.setStyle("u", classBlue); + style.setStyle("textformat", classBlue); + style.setStyle("font", classBlue); + style.setStyle("p", classBlue); + style.setStyle("style", classBlue); + style.setStyle("i", classBlue); + style.setStyle("li", classBlue); + runHtmlTest(' a '); + runHtmlTest(' b '); + runHtmlTest(' u '); + runHtmlTest(' textformat '); + runHtmlTest(' font '); + runHtmlTest('

p

'); + runHtmlTest(' span '); + runHtmlTest(' i '); + runHtmlTest('
  • li
  • '); + runHtmlTest(' a '); + resetStyle(); + + // Style vs attribute preference (font) + var classBlue:Object = new Object(); + classBlue.color = "#0000FF"; + style.setStyle("font", classBlue); + runHtmlTest(' a '); + runHtmlTest(' a '); + resetStyle(); + + // Style vs attribute preference (p) + var classPa:Object = new Object(); + classPa.textAlign = "right"; + var classPb:Object = new Object(); + classPb.textAlign = "center"; + style.setStyle("classp", classPa); + style.setStyle("p", classPb); + runHtmlTest('

    a

    '); + runHtmlTest('

    a

    '); + runHtmlTest('

    a

    '); + runHtmlTest('

    a

    '); + runHtmlTest('

    a

    '); + resetStyle(); + + // Style vs attribute preference (span) + var classSpan:Object = new Object(); + classSpan.color = "#0000FF"; + style.setStyle("span", classSpan); + runHtmlTest(' a '); + runHtmlTest(' a '); + resetStyle(); + + // Star? + var classAll:Object = new Object(); + classAll.color = "#0000FF"; + style.setStyle("*", classAll); + runHtmlTest(' a '); + runHtmlTest(' hello b '); + resetStyle(); + + // Specific tags with styles + var classAll:Object = new Object(); + classAll.color = "#0000FF"; + style.setStyle("p.classspec", classAll); + runHtmlTest('

    a

    b '); + resetStyle(); + } + + function runHtmlTest(html: String) { + var text = newTextField(); + text.styleSheet = style; + + trace("======================================"); + trace(" Setting HTML: " + escape(html)); + text.htmlText = html; + trace(" HTML get: " + escape(text.htmlText)); + trace(" Text get: " + escape(text.text)); + printTextRuns(text.getTextRuns()); + text.styleSheet = null; + trace(" Style reset: " + escape(text.htmlText)); + printTextRuns(text.getTextRuns()); + } + + private function printTextRuns(runs: Array) { + trace(" Text runs (" + runs.length + "):"); + for each (var run in runs) { + trace(" from " + run.beginIndex + " to " + run.endIndex + ": " + describeTextFormat(run.textFormat)); + } + } + + private function describeTextFormat(tf: TextFormat): String { + return "size=" + tf.size + + ", blockIndent=" + tf.blockIndent + + ", font=" + tf.font + + ", align=" + tf.align + + ", leading=" + tf.leading + + ", display=" + tf.display + + ", kerning=" + tf.kerning + + ", leftMargin=" + tf.leftMargin + + ", rightMargin=" + tf.rightMargin + + ", color=" + tf.color + + ", bold=" + tf.bold + + ", italic=" + tf.italic + + ", bullet=" + tf.bullet + + ", underline=" + tf.underline; + } + + private function escape(string: String): String { + return string.replace(/\n/g, "\\n").replace(/\r/g, "\\r"); + } + + private function newTextField(): TextField { + var text = new TextField(); + text.defaultTextFormat = new TextFormat("FontName", 10); + return text; + } +} +} diff --git a/tests/tests/swfs/avm2/edittext_stylesheet/output.txt b/tests/tests/swfs/avm2/edittext_stylesheet/output.txt new file mode 100644 index 000000000000..e2f874d5636e --- /dev/null +++ b/tests/tests/swfs/avm2/edittext_stylesheet/output.txt @@ -0,0 +1,536 @@ +Getter & setter: + Style before (1): + Style before (2): + Style after (1): .classred + Style after (2): .classred +Setting style after HTML: + HTML before:

    a

    + HTML after style:

    a

    + HTML after set: a + HTML no style:

    a

    +Setting text after stylized HTML: + HTML after style: a + Text after style: a + HTML after set: b + Text after set: b + HTML after reset:

    b

    + Text after reset: b + HTML after set:

    c

    + Text after set: c +Setting HTML in text: + HTML after style: a + Text after style: a + HTML after reset:

    a

    + Text after reset: a +Modifying CSS after parsing HTML: + Style (original): + Text runs (1): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + Style (after modifying CSS): .classred + Text runs (1): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + Style (after updating HTML to the same value): .classred + Text runs (1): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + Style (after updating HTML): .classred + Text runs (1): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=16711680, bold=false, italic=false, bullet=false, underline=false + Style (after updating CSS): .classred + Text runs (1): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=16711680, bold=false, italic=false, bullet=false, underline=false + Style (after updating HTML): .classred + Text runs (1): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=16711680, bold=false, italic=false, bullet=false, underline=false + Style (after updating CSS without HTML): .classred + Text runs (1): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=65280, bold=false, italic=false, bullet=false, underline=false +Modifying text after removing CSS: + Text after: 2 + HTML after:

    <b>2</b>

    +Modifying text after removing CSS with HTML: + Text after: 2 + HTML after:

    <b>2</b>

    +Updating CSS and resetting it: + Text runs (1): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + Text runs (1): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=16711680, bold=false, italic=false, bullet=false, underline=false +====================================== + Setting HTML: a + HTML get: a + Text get: a + Text runs (1): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + Style reset:

    a

    + Text runs (1): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false +====================================== + Setting HTML: ab + HTML get: ab + Text get: ab + Text runs (1): + from 0 to 2: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + Style reset:

    ab

    + Text runs (1): + from 0 to 2: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false +====================================== + Setting HTML: a + HTML get: a + Text get: a + Text runs (1): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=true, italic=false, bullet=false, underline=false + Style reset:

    a

    + Text runs (1): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=true, italic=false, bullet=false, underline=false +====================================== + Setting HTML: a + HTML get: a + Text get: a + Text runs (1): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=16711680, bold=false, italic=false, bullet=false, underline=false + Style reset:

    a

    + Text runs (1): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=16711680, bold=false, italic=false, bullet=false, underline=false +====================================== + Setting HTML: a + HTML get: a + Text get: a + Text runs (1): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=65280, bold=false, italic=false, bullet=false, underline=false + Style reset:

    a

    + Text runs (1): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=65280, bold=false, italic=false, bullet=false, underline=false +====================================== + Setting HTML: a + HTML get: a + Text get: a + Text runs (1): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=16711680, bold=true, italic=false, bullet=false, underline=false + Style reset:

    a

    + Text runs (1): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=16711680, bold=true, italic=false, bullet=false, underline=false +====================================== + Setting HTML: ab + HTML get: ab + Text get: ab + Text runs (2): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=16711680, bold=false, italic=false, bullet=false, underline=false + from 1 to 2: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=65280, bold=false, italic=false, bullet=false, underline=false + Style reset:

    ab

    + Text runs (2): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=16711680, bold=false, italic=false, bullet=false, underline=false + from 1 to 2: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=65280, bold=false, italic=false, bullet=false, underline=false +====================================== + Setting HTML: ab + HTML get: ab + Text get: ab + Text runs (1): + from 0 to 2: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=16711680, bold=false, italic=false, bullet=false, underline=false + Style reset:

    ab

    + Text runs (1): + from 0 to 2: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=16711680, bold=false, italic=false, bullet=false, underline=false +====================================== + Setting HTML: abc + HTML get: abc + Text get: abc + Text runs (2): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=16711680, bold=false, italic=false, bullet=false, underline=false + from 1 to 3: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=16711680, bold=true, italic=false, bullet=false, underline=false + Style reset:

    abc

    + Text runs (2): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=16711680, bold=false, italic=false, bullet=false, underline=false + from 1 to 3: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=16711680, bold=true, italic=false, bullet=false, underline=false +====================================== + Setting HTML: ab + HTML get: ab + Text get: ab + Text runs (2): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + from 1 to 2: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=16711680, bold=true, italic=false, bullet=false, underline=false + Style reset:

    ab

    + Text runs (2): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + from 1 to 2: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=16711680, bold=true, italic=false, bullet=false, underline=false +====================================== + Setting HTML: a + HTML get: a + Text get: a + Text runs (1): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + Style reset:

    a

    + Text runs (1): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false +====================================== + Setting HTML: a + HTML get: a + Text get: a + Text runs (1): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + Style reset:

    a

    + Text runs (1): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false +====================================== + Setting HTML: a + HTML get: a + Text get: a + Text runs (1): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + Style reset:

    a

    + Text runs (1): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false +====================================== + Setting HTML: abc + HTML get: abc + Text get: abc + Text runs (2): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=16711935, bold=false, italic=false, bullet=false, underline=false + from 1 to 3: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + Style reset:

    abc

    + Text runs (2): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=16711935, bold=false, italic=false, bullet=false, underline=false + from 1 to 3: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false +====================================== + Setting HTML: a + HTML get: a + Text get: a + Text runs (1): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=16711680, bold=false, italic=false, bullet=false, underline=false + Style reset:

    a

    + Text runs (1): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=16711680, bold=false, italic=false, bullet=false, underline=false +====================================== + Setting HTML: a + HTML get: a + Text get: a + Text runs (1): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=16711680, bold=false, italic=false, bullet=false, underline=false + Style reset:

    a

    + Text runs (1): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=16711680, bold=false, italic=false, bullet=false, underline=false +====================================== + Setting HTML: a + HTML get: a + Text get: a + Text runs (1): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=16711680, bold=false, italic=false, bullet=false, underline=false + Style reset:

    a

    + Text runs (1): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=16711680, bold=false, italic=false, bullet=false, underline=false +====================================== + Setting HTML: ab + HTML get: ab + Text get: ab + Text runs (2): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=65280, bold=false, italic=false, bullet=false, underline=false + from 1 to 2: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=16711680, bold=false, italic=false, bullet=false, underline=false + Style reset:

    ab

    + Text runs (2): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=65280, bold=false, italic=false, bullet=false, underline=false + from 1 to 2: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=16711680, bold=false, italic=false, bullet=false, underline=false +====================================== + Setting HTML: ab + HTML get: ab + Text get: ab + Text runs (2): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=16711680, bold=false, italic=false, bullet=false, underline=false + from 1 to 2: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=65280, bold=false, italic=false, bullet=false, underline=false + Style reset:

    ab

    + Text runs (2): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=16711680, bold=false, italic=false, bullet=false, underline=false + from 1 to 2: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=65280, bold=false, italic=false, bullet=false, underline=false +====================================== + Setting HTML:

    a

    b

    + HTML get:

    a

    b

    + Text get: ab + Text runs (2): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=16711680, bold=false, italic=false, bullet=false, underline=false + from 1 to 2: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=true, italic=false, bullet=false, underline=false + Style reset:

    ab

    + Text runs (2): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=16711680, bold=false, italic=false, bullet=false, underline=false + from 1 to 2: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=true, italic=false, bullet=false, underline=false +====================================== + Setting HTML:

    a

    b

    + HTML get:

    a

    b

    + Text get: ab + Text runs (2): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + from 1 to 2: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=true, italic=false, bullet=false, underline=false + Style reset:

    ab

    + Text runs (2): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + from 1 to 2: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=true, italic=false, bullet=false, underline=false +====================================== + Setting HTML:

    a

    b

    + HTML get:

    a

    b

    + Text get: ab + Text runs (2): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=16711680, bold=false, italic=false, bullet=false, underline=false + from 1 to 2: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + Style reset:

    ab

    + Text runs (2): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=16711680, bold=false, italic=false, bullet=false, underline=false + from 1 to 2: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false +====================================== + Setting HTML:

    a

    b

    + HTML get:

    a

    b

    + Text get: ab + Text runs (1): + from 0 to 2: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + Style reset:

    ab

    + Text runs (1): + from 0 to 2: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false +====================================== + Setting HTML: a + HTML get: a + Text get: a + Text runs (3): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + from 1 to 2: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=255, bold=false, italic=false, bullet=false, underline=false + from 2 to 3: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + Style reset:

    a

    + Text runs (3): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + from 1 to 2: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=255, bold=false, italic=false, bullet=false, underline=false + from 2 to 3: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false +====================================== + Setting HTML: b + HTML get: b + Text get: b + Text runs (3): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + from 1 to 2: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=true, italic=false, bullet=false, underline=false + from 2 to 3: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + Style reset:

    b

    + Text runs (3): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + from 1 to 2: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=true, italic=false, bullet=false, underline=false + from 2 to 3: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false +====================================== + Setting HTML: u + HTML get: u + Text get: u + Text runs (3): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + from 1 to 2: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=true + from 2 to 3: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + Style reset:

    u

    + Text runs (3): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + from 1 to 2: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=true + from 2 to 3: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false +====================================== + Setting HTML: textformat + HTML get: textformat + Text get: textformat + Text runs (1): + from 0 to 12: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + Style reset:

    textformat

    + Text runs (1): + from 0 to 12: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false +====================================== + Setting HTML: font + HTML get: font + Text get: font + Text runs (1): + from 0 to 6: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + Style reset:

    font

    + Text runs (1): + from 0 to 6: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false +====================================== + Setting HTML:

    p

    + HTML get:

    p

    + Text get: p + Text runs (3): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + from 1 to 2: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=255, bold=false, italic=false, bullet=false, underline=false + from 2 to 3: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + Style reset:

    p

    + Text runs (3): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + from 1 to 2: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=255, bold=false, italic=false, bullet=false, underline=false + from 2 to 3: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false +====================================== + Setting HTML: span + HTML get: span + Text get: span + Text runs (1): + from 0 to 6: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + Style reset:

    span

    + Text runs (1): + from 0 to 6: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false +====================================== + Setting HTML: i + HTML get: i + Text get: i + Text runs (3): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + from 1 to 2: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=true, bullet=false, underline=false + from 2 to 3: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + Style reset:

    i

    + Text runs (3): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + from 1 to 2: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=true, bullet=false, underline=false + from 2 to 3: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false +====================================== + Setting HTML:
  • li
  • + HTML get:
  • li
  • + Text get: li + Text runs (3): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + from 1 to 3: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=255, bold=false, italic=false, bullet=true, underline=false + from 3 to 4: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + Style reset:

    li

    + Text runs (3): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + from 1 to 3: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=255, bold=false, italic=false, bullet=true, underline=false + from 3 to 4: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false +====================================== + Setting HTML: a + HTML get: a + Text get: a + Text runs (3): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + from 1 to 2: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=16711680, bold=false, italic=false, bullet=false, underline=false + from 2 to 3: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + Style reset:

    a

    + Text runs (3): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + from 1 to 2: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=16711680, bold=false, italic=false, bullet=false, underline=false + from 2 to 3: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false +====================================== + Setting HTML: a + HTML get: a + Text get: a + Text runs (1): + from 0 to 3: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + Style reset:

    a

    + Text runs (1): + from 0 to 3: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false +====================================== + Setting HTML: a + HTML get: a + Text get: a + Text runs (3): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + from 1 to 2: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=65280, bold=false, italic=false, bullet=false, underline=false + from 2 to 3: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + Style reset:

    a

    + Text runs (3): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + from 1 to 2: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=65280, bold=false, italic=false, bullet=false, underline=false + from 2 to 3: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false +====================================== + Setting HTML:

    a

    + HTML get:

    a

    + Text get: a + Text runs (3): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + from 1 to 2: size=10, blockIndent=0, font=FontName, align=center, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + from 2 to 3: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + Style reset:

    a

    + Text runs (3): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + from 1 to 2: size=10, blockIndent=0, font=FontName, align=center, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + from 2 to 3: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false +====================================== + Setting HTML:

    a

    + HTML get:

    a

    + Text get: a + Text runs (3): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + from 1 to 2: size=10, blockIndent=0, font=FontName, align=center, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + from 2 to 3: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + Style reset:

    a

    + Text runs (3): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + from 1 to 2: size=10, blockIndent=0, font=FontName, align=center, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + from 2 to 3: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false +====================================== + Setting HTML:

    a

    + HTML get:

    a

    + Text get: a + Text runs (3): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + from 1 to 2: size=10, blockIndent=0, font=FontName, align=justify, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + from 2 to 3: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + Style reset:

    a

    + Text runs (3): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + from 1 to 2: size=10, blockIndent=0, font=FontName, align=justify, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + from 2 to 3: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false +====================================== + Setting HTML:

    a

    + HTML get:

    a

    + Text get: a + Text runs (3): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + from 1 to 2: size=10, blockIndent=0, font=FontName, align=justify, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + from 2 to 3: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + Style reset:

    a

    + Text runs (3): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + from 1 to 2: size=10, blockIndent=0, font=FontName, align=justify, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + from 2 to 3: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false +====================================== + Setting HTML:

    a

    + HTML get:

    a

    + Text get: a + Text runs (3): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + from 1 to 2: size=10, blockIndent=0, font=FontName, align=justify, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + from 2 to 3: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + Style reset:

    a

    + Text runs (3): + from 0 to 1: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + from 1 to 2: size=10, blockIndent=0, font=FontName, align=justify, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + from 2 to 3: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false +====================================== + Setting HTML: a + HTML get: a + Text get: a + Text runs (1): + from 0 to 3: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + Style reset:

    a

    + Text runs (1): + from 0 to 3: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false +====================================== + Setting HTML: a + HTML get: a + Text get: a + Text runs (1): + from 0 to 3: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + Style reset:

    a

    + Text runs (1): + from 0 to 3: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false +====================================== + Setting HTML: a + HTML get: a + Text get: a + Text runs (1): + from 0 to 3: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + Style reset:

    a

    + Text runs (1): + from 0 to 3: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false +====================================== + Setting HTML: hello b + HTML get: hello b + Text get: hello b + Text runs (3): + from 0 to 7: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + from 7 to 8: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=true, italic=false, bullet=false, underline=false + from 8 to 9: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + Style reset:

    hello b

    + Text runs (3): + from 0 to 7: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + from 7 to 8: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=true, italic=false, bullet=false, underline=false + from 8 to 9: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false +====================================== + Setting HTML:

    a

    b + HTML get:

    a

    b + Text get: a b + Text runs (1): + from 0 to 5: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false + Style reset:

    a b

    + Text runs (1): + from 0 to 5: size=10, blockIndent=0, font=FontName, align=left, leading=0, display=block, kerning=false, leftMargin=0, rightMargin=0, color=0, bold=false, italic=false, bullet=false, underline=false diff --git a/tests/tests/swfs/avm2/edittext_stylesheet/test.swf b/tests/tests/swfs/avm2/edittext_stylesheet/test.swf new file mode 100644 index 0000000000000000000000000000000000000000..e238b1eca3021925333d411095f2be2fd59d8fc1 GIT binary patch literal 4105 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 H{xzhy9NhgL literal 0 HcmV?d00001 diff --git a/tests/tests/swfs/avm2/edittext_stylesheet/test.toml b/tests/tests/swfs/avm2/edittext_stylesheet/test.toml new file mode 100644 index 000000000000..cf6123969a1d --- /dev/null +++ b/tests/tests/swfs/avm2/edittext_stylesheet/test.toml @@ -0,0 +1 @@ +num_ticks = 1