Hi all,<div><br><div>I am implementing the CSS3 text decoration style &quot;wavy&quot; for Skia platform [3], and I would like to know a few things (please let me know if this is not the right mailing list to ask this):</div>
<div><br></div>
<div>- There is already a &quot;spelling line&quot; style implementation which mimics &quot;wavy&quot; style behavior, only with its own colors and theme. While Skia uses a custom, inline bitmap for rendering the red waves, other toolkits such as Cairo and Qt implements a function called &quot;drawErrorUnderline&quot; which renders the waves based on a given bounding rectangle. These are triggered by the drawLineForDocumentMarker function.</div>
<div><br></div><div>- Individual implementations of the &quot;wavy&quot; style are popping up for each platform (ie. Qt [1] and Cairo [2] already have their implementations pending review).</div><div><br></div><div>I see we can go both ways here:</div>
<div><br></div><div>1. Adapt the already implemented functions to support custom colors (as defined by &quot;-webkit-text-decoration-color&quot;, for example). While this looks easier on Qt and Cairo platforms, since drawErrorUnderline already gives everything we need, we would need to find a consensus on the custom bitmap usage for Skia platform. Of course, this would include updating the Qt [1] and Cairo [2] patches to support this approach.</div>
<div><br></div><div>2. Continue with individual implementations of the wavy style as we&#39;re doing now. I&#39;m afraid this option would involve code duplication.</div><div><br></div><div>IMO we should adopt first option, rename the drawErrorUnderline to drawWavyLine (as suggested by KyungTae Kim), and find a solution for the Skia custom bitmap approach.</div>
<div><br></div><div>What do you guys think?</div><div><br></div><div>Links:</div><div>[1] <a href="https://bugs.webkit.org/show_bug.cgi?id=93507">https://bugs.webkit.org/show_bug.cgi?id=93507</a><br></div><div>[2] <a href="https://bugs.webkit.org/show_bug.cgi?id=94110">https://bugs.webkit.org/show_bug.cgi?id=94110</a></div>
<div>[3] <a href="https://bugs.webkit.org/show_bug.cgi?id=93509">https://bugs.webkit.org/show_bug.cgi?id=93509</a></div><div><br></div><div>Best,</div><div><div><br></div>-- <br>Bruno de Oliveira Abinader<div>
<div>Software Engineer @ basysKom GmbH<br>
    WebKit committer / Nokia Certified Qt Specialist</div></div><br>
</div>
</div>