<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>[161608] trunk</title>
</head>
<body>

<style type="text/css"><!--
#msg dl.meta { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dl.meta dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer, #logmsg { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt;  }
#msg dl a { font-weight: bold}
#msg dl a:link    { color:#fc3; }
#msg dl a:active  { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre { overflow: auto; background: #ffc; border: 1px #fa0 solid; padding: 6px; }
#logmsg { background: #ffc; border: 1px #fa0 solid; padding: 1em 1em 0 1em; }
#logmsg p, #logmsg pre, #logmsg blockquote { margin: 0 0 1em 0; }
#logmsg p, #logmsg li, #logmsg dt, #logmsg dd { line-height: 14pt; }
#logmsg h1, #logmsg h2, #logmsg h3, #logmsg h4, #logmsg h5, #logmsg h6 { margin: .5em 0; }
#logmsg h1:first-child, #logmsg h2:first-child, #logmsg h3:first-child, #logmsg h4:first-child, #logmsg h5:first-child, #logmsg h6:first-child { margin-top: 0; }
#logmsg ul, #logmsg ol { padding: 0; list-style-position: inside; margin: 0 0 0 1em; }
#logmsg ul { text-indent: -1em; padding-left: 1em; }#logmsg ol { text-indent: -1.5em; padding-left: 1.5em; }
#logmsg > ul, #logmsg > ol { margin: 0 0 1em 0; }
#logmsg pre { background: #eee; padding: 1em; }
#logmsg blockquote { border: 1px solid #fa0; border-left-width: 10px; padding: 1em 1em 0 1em; background: white;}
#logmsg dl { margin: 0; }
#logmsg dt { font-weight: bold; }
#logmsg dd { margin: 0; padding: 0 0 0.5em 0; }
#logmsg dd:before { content:'\00bb';}
#logmsg table { border-spacing: 0px; border-collapse: collapse; border-top: 4px solid #fa0; border-bottom: 1px solid #fa0; background: #fff; }
#logmsg table th { text-align: left; font-weight: normal; padding: 0.2em 0.5em; border-top: 1px dotted #fa0; }
#logmsg table td { text-align: right; border-top: 1px dotted #fa0; padding: 0.2em 0.5em; }
#logmsg table thead th { text-align: center; border-bottom: 1px solid #fa0; }
#logmsg table th.Corner { text-align: left; }
#logmsg hr { border: none 0; border-top: 2px dashed #fa0; height: 1px; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff  {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<div id="msg">
<dl class="meta">
<dt>Revision</dt> <dd><a href="http://trac.webkit.org/projects/webkit/changeset/161608">161608</a></dd>
<dt>Author</dt> <dd>mmaxfield@apple.com</dd>
<dt>Date</dt> <dd>2014-01-09 17:29:56 -0800 (Thu, 09 Jan 2014)</dd>
</dl>

<h3>Log Message</h3>
<pre>text-decoration-skip: ink does not work with line wraps
https://bugs.webkit.org/show_bug.cgi?id=126729

Reviewed by Simon Fraser.

Source/WebCore:

InlineTextBox's m_start and m_length fields are offsets into the renderer's string,
not the generated TextRun. Because of this distinction, when multiple InlineTextBoxes
were constructed for the same element, all the subsequent elements would use incorrect
indices and therefore not have skipping decorations.

Test: fast/css3-text/css3-text-decoration/text-decoration-skip/text-decoration-skip-ink-multiline.html

* platform/graphics/Font.h:
* platform/graphics/mac/FontMac.mm:
(WebCore::Font::dashesForIntersectionsWithRect):
* rendering/InlineTextBox.cpp:
(WebCore::drawSkipInkUnderline):
(WebCore::InlineTextBox::paintDecoration):
* rendering/TextPainter.cpp:
(WebCore::TextPainter::dashesForIntersectionsWithRect):
* rendering/TextPainter.h:

LayoutTests:

This test compares rending of a single element that wraps lines with one element per line.
Both elements have text-decoration-skip:ink turned on.

* fast/css3-text/css3-text-decoration/text-decoration-skip/text-decoration-skip-ink-multiline-expected.html: Added.
* fast/css3-text/css3-text-decoration/text-decoration-skip/text-decoration-skip-ink-multiline.html: Added.</pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkLayoutTestsChangeLog">trunk/LayoutTests/ChangeLog</a></li>
<li><a href="#trunkSourceWebCoreChangeLog">trunk/Source/WebCore/ChangeLog</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsFonth">trunk/Source/WebCore/platform/graphics/Font.h</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsmacFontMacmm">trunk/Source/WebCore/platform/graphics/mac/FontMac.mm</a></li>
<li><a href="#trunkSourceWebCorerenderingInlineTextBoxcpp">trunk/Source/WebCore/rendering/InlineTextBox.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingTextPaintercpp">trunk/Source/WebCore/rendering/TextPainter.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingTextPainterh">trunk/Source/WebCore/rendering/TextPainter.h</a></li>
</ul>

<h3>Added Paths</h3>
<ul>
<li><a href="#trunkLayoutTestsfastcss3textcss3textdecorationtextdecorationskiptextdecorationskipinkmultilineexpectedhtml">trunk/LayoutTests/fast/css3-text/css3-text-decoration/text-decoration-skip/text-decoration-skip-ink-multiline-expected.html</a></li>
<li><a href="#trunkLayoutTestsfastcss3textcss3textdecorationtextdecorationskiptextdecorationskipinkmultilinehtml">trunk/LayoutTests/fast/css3-text/css3-text-decoration/text-decoration-skip/text-decoration-skip-ink-multiline.html</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkLayoutTestsChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/ChangeLog (161607 => 161608)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/ChangeLog        2014-01-10 01:24:53 UTC (rev 161607)
+++ trunk/LayoutTests/ChangeLog        2014-01-10 01:29:56 UTC (rev 161608)
</span><span class="lines">@@ -1,3 +1,16 @@
</span><ins>+2014-01-09  Myles C. Maxfield  &lt;mmaxfield@apple.com&gt;
+
+        text-decoration-skip: ink does not work with line wraps
+        https://bugs.webkit.org/show_bug.cgi?id=126729
+
+        Reviewed by Simon Fraser.
+
+        This test compares rending of a single element that wraps lines with one element per line.
+        Both elements have text-decoration-skip:ink turned on.
+
+        * fast/css3-text/css3-text-decoration/text-decoration-skip/text-decoration-skip-ink-multiline-expected.html: Added.
+        * fast/css3-text/css3-text-decoration/text-decoration-skip/text-decoration-skip-ink-multiline.html: Added.
+
</ins><span class="cx"> 2014-01-09  Zoltan Horvath  &lt;zoltan@webkit.org&gt;
</span><span class="cx"> 
</span><span class="cx">         [CSS Shapes] First line gets incorrectly adjusted in shape-inside due to rounding
</span></span></pre></div>
<a id="trunkLayoutTestsfastcss3textcss3textdecorationtextdecorationskiptextdecorationskipinkmultilineexpectedhtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/fast/css3-text/css3-text-decoration/text-decoration-skip/text-decoration-skip-ink-multiline-expected.html (0 => 161608)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/fast/css3-text/css3-text-decoration/text-decoration-skip/text-decoration-skip-ink-multiline-expected.html                                (rev 0)
+++ trunk/LayoutTests/fast/css3-text/css3-text-decoration/text-decoration-skip/text-decoration-skip-ink-multiline-expected.html        2014-01-10 01:29:56 UTC (rev 161608)
</span><span class="lines">@@ -0,0 +1,11 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+&lt;/head&gt;
+&lt;body&gt;
+This test makes sure that text-decoration-skip: ink is applied on elements that wrap lines
+&lt;div style=&quot;text-decoration: underline; -webkit-text-decoration-skip: ink; width: 300px;&quot;&gt;thisisalongstringofcharactersthatshouldlinewrap&lt;/div&gt;
+&lt;div style=&quot;text-decoration: underline; -webkit-text-decoration-skip: ink; width: 300px;&quot;&gt;thisisalongstringofcharactersthatshouldlinewrap&lt;/div&gt;
+&lt;div style=&quot;text-decoration: underline; -webkit-text-decoration-skip: ink; width: 300px;&quot;&gt;thisisalongstringofcharactersthatshouldlinewrap&lt;/div&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestsfastcss3textcss3textdecorationtextdecorationskiptextdecorationskipinkmultilinehtml"></a>
<div class="addfile"><h4>Added: trunk/LayoutTests/fast/css3-text/css3-text-decoration/text-decoration-skip/text-decoration-skip-ink-multiline.html (0 => 161608)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/fast/css3-text/css3-text-decoration/text-decoration-skip/text-decoration-skip-ink-multiline.html                                (rev 0)
+++ trunk/LayoutTests/fast/css3-text/css3-text-decoration/text-decoration-skip/text-decoration-skip-ink-multiline.html        2014-01-10 01:29:56 UTC (rev 161608)
</span><span class="lines">@@ -0,0 +1,9 @@
</span><ins>+&lt;!DOCTYPE html&gt;
+&lt;html&gt;
+&lt;head&gt;
+&lt;/head&gt;
+&lt;body&gt;
+This test makes sure that text-decoration-skip: ink is applied on elements that wrap lines
+&lt;div style=&quot;text-decoration: underline; -webkit-text-decoration-skip: ink; width: 300px;&quot;&gt;thisisalongstringofcharactersthatshouldlinewrap thisisalongstringofcharactersthatshouldlinewrap thisisalongstringofcharactersthatshouldlinewrap&lt;/div&gt;
+&lt;/body&gt;
+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkSourceWebCoreChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/ChangeLog (161607 => 161608)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/ChangeLog        2014-01-10 01:24:53 UTC (rev 161607)
+++ trunk/Source/WebCore/ChangeLog        2014-01-10 01:29:56 UTC (rev 161608)
</span><span class="lines">@@ -1,3 +1,27 @@
</span><ins>+2014-01-09  Myles C. Maxfield  &lt;mmaxfield@apple.com&gt;
+
+        text-decoration-skip: ink does not work with line wraps
+        https://bugs.webkit.org/show_bug.cgi?id=126729
+
+        Reviewed by Simon Fraser.
+
+        InlineTextBox's m_start and m_length fields are offsets into the renderer's string,
+        not the generated TextRun. Because of this distinction, when multiple InlineTextBoxes
+        were constructed for the same element, all the subsequent elements would use incorrect
+        indices and therefore not have skipping decorations.
+
+        Test: fast/css3-text/css3-text-decoration/text-decoration-skip/text-decoration-skip-ink-multiline.html
+
+        * platform/graphics/Font.h:
+        * platform/graphics/mac/FontMac.mm:
+        (WebCore::Font::dashesForIntersectionsWithRect):
+        * rendering/InlineTextBox.cpp:
+        (WebCore::drawSkipInkUnderline):
+        (WebCore::InlineTextBox::paintDecoration):
+        * rendering/TextPainter.cpp:
+        (WebCore::TextPainter::dashesForIntersectionsWithRect):
+        * rendering/TextPainter.h:
+
</ins><span class="cx"> 2014-01-09  Benjamin Poulain  &lt;bpoulain@apple.com&gt;
</span><span class="cx"> 
</span><span class="cx">         Remove remaining blackberry files I could find in WebCore
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsFonth"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/Font.h (161607 => 161608)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/Font.h        2014-01-10 01:24:53 UTC (rev 161607)
+++ trunk/Source/WebCore/platform/graphics/Font.h        2014-01-10 01:29:56 UTC (rev 161608)
</span><span class="lines">@@ -106,7 +106,7 @@
</span><span class="cx">     float drawText(GraphicsContext*, const TextRun&amp;, const FloatPoint&amp;, int from = 0, int to = -1, CustomFontNotReadyAction = DoNotPaintIfFontNotReady) const;
</span><span class="cx">     void drawEmphasisMarks(GraphicsContext*, const TextRun&amp;, const AtomicString&amp; mark, const FloatPoint&amp;, int from = 0, int to = -1) const;
</span><span class="cx"> 
</span><del>-    DashArray dashesForIntersectionsWithRect(const TextRun&amp;, const FloatPoint&amp; textOrigin, int from, int to, const FloatRect&amp; lineExtents) const;
</del><ins>+    DashArray dashesForIntersectionsWithRect(const TextRun&amp;, const FloatPoint&amp; textOrigin, const FloatRect&amp; lineExtents) const;
</ins><span class="cx"> 
</span><span class="cx">     float width(const TextRun&amp;, HashSet&lt;const SimpleFontData*&gt;* fallbackFonts = 0, GlyphOverflow* = 0) const;
</span><span class="cx">     float width(const TextRun&amp;, int&amp; charsConsumed, String&amp; glyphName) const;
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsmacFontMacmm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/mac/FontMac.mm (161607 => 161608)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/mac/FontMac.mm        2014-01-10 01:24:53 UTC (rev 161607)
+++ trunk/Source/WebCore/platform/graphics/mac/FontMac.mm        2014-01-10 01:29:56 UTC (rev 161608)
</span><span class="lines">@@ -436,14 +436,14 @@
</span><span class="cx">     state.currentPoint = point;
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-DashArray Font::dashesForIntersectionsWithRect(const TextRun&amp; run, const FloatPoint&amp; textOrigin, int textRunStartIndex, int textRunEndIndex, const FloatRect&amp; lineExtents) const
</del><ins>+DashArray Font::dashesForIntersectionsWithRect(const TextRun&amp; run, const FloatPoint&amp; textOrigin, const FloatRect&amp; lineExtents) const
</ins><span class="cx"> {
</span><span class="cx">     float deltaX;
</span><span class="cx">     GlyphBuffer glyphBuffer;
</span><span class="cx">     if (codePath(run) != Complex)
</span><del>-        deltaX = getGlyphsAndAdvancesForSimpleText(run, textRunStartIndex, textRunEndIndex, glyphBuffer);
</del><ins>+        deltaX = getGlyphsAndAdvancesForSimpleText(run, 0, run.length(), glyphBuffer);
</ins><span class="cx">     else
</span><del>-        deltaX = getGlyphsAndAdvancesForComplexText(run, textRunStartIndex, textRunEndIndex, glyphBuffer);
</del><ins>+        deltaX = getGlyphsAndAdvancesForComplexText(run, 0, run.length(), glyphBuffer);
</ins><span class="cx">     CGAffineTransform translation = CGAffineTransformMakeTranslation(textOrigin.x() + deltaX, textOrigin.y());
</span><span class="cx">     translation = CGAffineTransformScale(translation, 1, -1);
</span><span class="cx">     DashArray result;
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingInlineTextBoxcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/InlineTextBox.cpp (161607 => 161608)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/InlineTextBox.cpp        2014-01-10 01:24:53 UTC (rev 161607)
+++ trunk/Source/WebCore/rendering/InlineTextBox.cpp        2014-01-10 01:29:56 UTC (rev 161608)
</span><span class="lines">@@ -118,12 +118,12 @@
</span><span class="cx">     return result;
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-static void drawSkipInkUnderline(TextPainter&amp; textPainter, GraphicsContext&amp; context, FloatPoint localOrigin, float underlineOffset, float width, bool isPrinting, int m_start, int m_len)
</del><ins>+static void drawSkipInkUnderline(TextPainter&amp; textPainter, GraphicsContext&amp; context, FloatPoint localOrigin, float underlineOffset, float width, bool isPrinting)
</ins><span class="cx"> {
</span><span class="cx">     FloatPoint adjustedLocalOrigin = localOrigin;
</span><span class="cx">     adjustedLocalOrigin.move(0, underlineOffset);
</span><span class="cx">     FloatRect underlineBoundingBox = context.computeLineBoundsForText(adjustedLocalOrigin, width, isPrinting);
</span><del>-    DashArray intersections = textPainter.dashesForIntersectionsWithRect(underlineBoundingBox, m_start, m_start + m_len);
</del><ins>+    DashArray intersections = textPainter.dashesForIntersectionsWithRect(underlineBoundingBox);
</ins><span class="cx">     DashArray a = translateIntersectionPointsToSkipInkBoundaries(intersections, underlineBoundingBox.height(), width);
</span><span class="cx"> 
</span><span class="cx">     ASSERT(!(a.size() % 2));
</span><span class="lines">@@ -1185,10 +1185,10 @@
</span><span class="cx"> #if ENABLE(CSS3_TEXT_DECORATION_SKIP_INK)
</span><span class="cx">                 if (lineStyle.textDecorationSkip() == TextDecorationSkipInk) {
</span><span class="cx">                     if (!context.paintingDisabled()) {
</span><del>-                        drawSkipInkUnderline(textPainter, context, localOrigin, underlineOffset, width, isPrinting, m_start, m_len);
</del><ins>+                        drawSkipInkUnderline(textPainter, context, localOrigin, underlineOffset, width, isPrinting);
</ins><span class="cx"> 
</span><span class="cx">                         if (decorationStyle == TextDecorationStyleDouble)
</span><del>-                            drawSkipInkUnderline(textPainter, context, localOrigin, underlineOffset + doubleOffset, width, isPrinting, m_start, m_len);
</del><ins>+                            drawSkipInkUnderline(textPainter, context, localOrigin, underlineOffset + doubleOffset, width, isPrinting);
</ins><span class="cx">                     }
</span><span class="cx">                 } else {
</span><span class="cx"> #endif // CSS3_TEXT_DECORATION_SKIP_INK
</span><span class="lines">@@ -1219,10 +1219,10 @@
</span><span class="cx"> #if ENABLE(CSS3_TEXT_DECORATION_SKIP_INK)
</span><span class="cx">                 if (lineStyle.textDecorationSkip() == TextDecorationSkipInk) {
</span><span class="cx">                     if (!context.paintingDisabled()) {
</span><del>-                        drawSkipInkUnderline(textPainter, context, localOrigin, 0, width, isPrinting, m_start, m_len);
</del><ins>+                        drawSkipInkUnderline(textPainter, context, localOrigin, 0, width, isPrinting);
</ins><span class="cx"> 
</span><span class="cx">                         if (decorationStyle == TextDecorationStyleDouble)
</span><del>-                            drawSkipInkUnderline(textPainter, context, localOrigin, -doubleOffset, width, isPrinting, m_start, m_len);
</del><ins>+                            drawSkipInkUnderline(textPainter, context, localOrigin, -doubleOffset, width, isPrinting);
</ins><span class="cx">                     }
</span><span class="cx">                 } else {
</span><span class="cx"> #endif // CSS3_TEXT_DECORATION_SKIP_INK
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingTextPaintercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/TextPainter.cpp (161607 => 161608)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/TextPainter.cpp        2014-01-10 01:24:53 UTC (rev 161607)
+++ trunk/Source/WebCore/rendering/TextPainter.cpp        2014-01-10 01:29:56 UTC (rev 161608)
</span><span class="lines">@@ -177,9 +177,9 @@
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> #if ENABLE(CSS3_TEXT_DECORATION_SKIP_INK)
</span><del>-DashArray TextPainter::dashesForIntersectionsWithRect(const FloatRect&amp; lineExtents, int textRunStartIndex, int textRunEndIndex)
</del><ins>+DashArray TextPainter::dashesForIntersectionsWithRect(const FloatRect&amp; lineExtents)
</ins><span class="cx"> {
</span><del>-    return m_font.dashesForIntersectionsWithRect(m_textRun, m_textOrigin, textRunStartIndex, textRunEndIndex, lineExtents);
</del><ins>+    return m_font.dashesForIntersectionsWithRect(m_textRun, m_textOrigin, lineExtents);
</ins><span class="cx"> }
</span><span class="cx"> #endif
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingTextPainterh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/TextPainter.h (161607 => 161608)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/TextPainter.h        2014-01-10 01:24:53 UTC (rev 161607)
+++ trunk/Source/WebCore/rendering/TextPainter.h        2014-01-10 01:29:56 UTC (rev 161608)
</span><span class="lines">@@ -68,7 +68,7 @@
</span><span class="cx">     void paintText();
</span><span class="cx">     void paintTextInContext(GraphicsContext&amp;, float amountToIncreaseStrokeWidthBy);
</span><span class="cx"> 
</span><del>-    DashArray dashesForIntersectionsWithRect(const FloatRect&amp; lineExtents, int textRunStartIndex, int textRunEndIndex);
</del><ins>+    DashArray dashesForIntersectionsWithRect(const FloatRect&amp; lineExtents);
</ins><span class="cx"> 
</span><span class="cx"> private:
</span><span class="cx">     bool m_paintSelectedTextOnly;
</span></span></pre>
</div>
</div>

</body>
</html>