<!DOCTYPE html>
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    Thank you very much for the detailed explanation. Am I right in
    understanding that JDK-8355774 does not <br>
    consider the possibility of styling underline/wavy underline via a
    CSS file (without calling special methods<br>
    like addHighlight, addWavyUnderline? <br>
    <br>
    If so, should I open another issue?<br>
    <br>
    Best regards, Pavel<br>
    <br>
    <div class="moz-cite-prefix">On 5/12/25 19:41, Andy Goryachev wrote:<br>
    </div>
    <blockquote type="cite"
cite="mid:CY8PR10MB726596480AB75E947DF08A01E597A@CY8PR10MB7265.namprd10.prod.outlook.com">
      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
      <meta name="Generator"
        content="Microsoft Word 15 (filtered medium)">
      <style>@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}@font-face
        {font-family:"Yu Gothic";
        panose-1:2 11 4 0 0 0 0 0 0 0;}@font-face
        {font-family:Aptos;
        panose-1:2 11 0 4 2 2 2 2 2 4;}@font-face
        {font-family:"Iosevka Fixed SS16";
        panose-1:2 0 5 9 3 0 0 0 0 4;}@font-face
        {font-family:"Times New Roman \(Body CS\)";
        panose-1:2 11 6 4 2 2 2 2 2 4;}@font-face
        {font-family:"\@Yu Gothic";
        panose-1:2 11 4 0 0 0 0 0 0 0;}p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        font-size:10.0pt;
        font-family:"Aptos",sans-serif;}a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}span.EmailStyle200
        {mso-style-type:personal-reply;
        font-family:"Iosevka Fixed SS16";
        color:windowtext;}.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;
        mso-ligatures:none;}div.WordSection1
        {page:WordSection1;}</style>
      <div class="WordSection1">
        <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16"">Yes,
            I know.  But we must support both options, since the
            RichTextArea provides models that allow to style
            programmatically and independently from the stylesheet.  Our
            goal is to provide the tools that can be used equally well
            in either situation.  "The most frequent operations must be
            easy, all other must be possible".<o:p></o:p></span></p>
        <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16""><o:p> </o:p></span></p>
        <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16"">-andy<o:p></o:p></span></p>
        <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16""><o:p> </o:p></span></p>
        <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16""><o:p> </o:p></span></p>
        <div id="mail-editor-reference-message-container">
          <div>
            <div>
              <div
style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in">
                <p class="MsoNormal" style="margin-bottom:12.0pt"><b><span
                      style="font-size:12.0pt;color:black">From:
                    </span></b><span
                    style="font-size:12.0pt;color:black">openjfx-dev
                    <a class="moz-txt-link-rfc2396E" href="mailto:openjfx-dev-retn@openjdk.org"><openjfx-dev-retn@openjdk.org></a> on behalf of
                    PavelTurk <a class="moz-txt-link-rfc2396E" href="mailto:pavelturk2000@gmail.com"><pavelturk2000@gmail.com></a><br>
                    <b>Date: </b>Monday, May 12, 2025 at 09:34<br>
                    <b>To: </b><a class="moz-txt-link-abbreviated" href="mailto:openjfx-dev@openjdk.org">openjfx-dev@openjdk.org</a>
                    <a class="moz-txt-link-rfc2396E" href="mailto:openjfx-dev@openjdk.org"><openjfx-dev@openjdk.org></a><br>
                    <b>Subject: </b>Re: RFR: 8355774: RichTextArea:
                    provide mechanism for CSS styling of highlights<o:p></o:p></span></p>
              </div>
              <p class="MsoNormal"><span style="font-size:12.0pt">Andy,
                  thank you very much for your response. But as I’ve
                  said many times, I’m only considering styling through
                  a CSS file.
                  <br>
                  <br>
                  Best regards, Pavel<br>
                  <br>
                  On 5/12/25 19:28, Andy Goryachev wrote:<br>
                  <br>
                  <o:p></o:p></span></p>
              <blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
                <div>
                  <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16"">Pavel:</span><o:p></o:p></p>
                  <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16""> </span><o:p></o:p></p>
                  <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16"">Underlines
                      and strike-through attributes are available via
                      StyleAttributeMap.STRIKE_THROUGH and
                      StyleAttributeMap.UNDERLINE (using text color). 
                      On the other hand, adding this functionality via
                      addHighlight() would allow the application to
                      style the shapes via CSS.</span><o:p></o:p></p>
                  <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16""> </span><o:p></o:p></p>
                  <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16"">-andy</span><o:p></o:p></p>
                  <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16""> </span><o:p></o:p></p>
                  <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16""> </span><o:p></o:p></p>
                  <div id="mail-editor-reference-message-container">
                    <div>
                      <div>
                        <div
style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in">
                          <p class="MsoNormal"
                            style="margin-bottom:12.0pt"><b><span
                                style="font-size:12.0pt;color:black">From:
                              </span></b><span
                              style="font-size:12.0pt;color:black">openjfx-dev
                              <a
href="mailto:openjfx-dev-retn@openjdk.org" moz-do-not-send="true">
                                <openjfx-dev-retn@openjdk.org></a>
                              on behalf of PavelTurk <a
                                href="mailto:pavelturk2000@gmail.com"
                                moz-do-not-send="true">
                                <pavelturk2000@gmail.com></a><br>
                              <b>Date: </b>Thursday, May 8, 2025 at
                              22:18<br>
                              <b>To: </b><a
                                href="mailto:openjfx-dev@openjdk.org"
                                moz-do-not-send="true"
                                class="moz-txt-link-freetext">openjfx-dev@openjdk.org</a>
                              <a href="mailto:openjfx-dev@openjdk.org"
                                moz-do-not-send="true">
                                <openjfx-dev@openjdk.org></a><br>
                              <b>Subject: </b>Re: RFR: 8355774:
                              RichTextArea: provide mechanism for CSS
                              styling of highlights</span><o:p></o:p></p>
                        </div>
                        <p class="MsoNormal"
                          style="margin-bottom:12.0pt"><span
                            style="font-size:12.0pt">Andy, I'm really
                            glad we figured out the background-color
                            issue, and I'm also very grateful to you!<br>
                            <br>
                            Regarding wavy lines and other types of
                            underlining — in my previous message, I
                            listed the key attributes
                            <br>
                            that are essential for a modern CodeArea.
                            For example, underline for links — I don't
                            think it's necessary to write
                            <br>
                            that the internet is extremely popular today
                            and that links in code are common practice,
                            and so on.<br>
                            <br>
                            Of course, all of these properties should be
                            set via a CSS file, since that's the most
                            efficient way to use CSS —
                            <br>
                            when styling is completely separated from
                            logic.<br>
                            <br>
                            So, the list contains five properties. If
                            two of them are not supported, that means
                            (to me) that only 60% of the
                            <br>
                            core properties are supported.<br>
                            <br>
                            That's just my feedback — the decision is,
                            of course, yours :)<br>
                            <br>
                            Best regards, Pavel</span><o:p></o:p></p>
                        <div>
                          <p class="MsoNormal"><span
                              style="font-size:12.0pt">On 5/9/25 00:09,
                              Andy Goryachev wrote:</span><o:p></o:p></p>
                        </div>
                        <blockquote
                          style="margin-top:5.0pt;margin-bottom:5.0pt">
                          <div>
                            <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16"">The
                                only property that makes sense is the
                                background color.  The wavy and other
                                kinds of underlines, while they make
                                some sense in the context of the
                                CodeArea, would fail in general in the
                                context of RichTextArea where the
                                content may include nodes and images. 
                                The highlights were designed
                                specifically for the case to highlight
                                the content range regardless of what is
                                in it.</span><o:p></o:p></p>
                            <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16""> </span><o:p></o:p></p>
                            <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16"">I've
                                reopened
                                <a
href="https://bugs.openjdk.org/browse/JDK-8356436"
                                  moz-do-not-send="true"
                                  class="moz-txt-link-freetext">https://bugs.openjdk.org/browse/JDK-8356436</a>
                                for the background color.</span><o:p></o:p></p>
                            <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16""> </span><o:p></o:p></p>
                            <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16"">Thank
                                you for your patience and good
                                suggestions!</span><o:p></o:p></p>
                            <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16""> </span><o:p></o:p></p>
                            <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16"">-andy</span><o:p></o:p></p>
                            <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16""> </span><o:p></o:p></p>
                            <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16""> </span><o:p></o:p></p>
                            <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16""> </span><o:p></o:p></p>
                            <div
id="mail-editor-reference-message-container">
                              <div>
                                <div>
                                  <div
style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in">
                                    <p class="MsoNormal"
                                      style="margin-bottom:12.0pt"><b><span
style="font-size:12.0pt;color:black">From:
                                        </span></b><span
style="font-size:12.0pt;color:black">openjfx-dev <a
href="mailto:openjfx-dev-retn@openjdk.org" moz-do-not-send="true">
<openjfx-dev-retn@openjdk.org></a> on behalf of PavelTurk <a
href="mailto:pavelturk2000@gmail.com" moz-do-not-send="true">
<pavelturk2000@gmail.com></a><br>
                                        <b>Date: </b>Thursday, May 8,
                                        2025 at 13:13<br>
                                        <b>To: </b><a
href="mailto:openjfx-dev@openjdk.org" moz-do-not-send="true"
                                          class="moz-txt-link-freetext">openjfx-dev@openjdk.org</a>
                                        <a
href="mailto:openjfx-dev@openjdk.org" moz-do-not-send="true">
<openjfx-dev@openjdk.org></a><br>
                                        <b>Subject: </b>Re: RFR:
                                        8355774: RichTextArea: provide
                                        mechanism for CSS styling of
                                        highlights</span><o:p></o:p></p>
                                  </div>
                                  <p class="MsoNormal"
                                    style="margin-bottom:12.0pt"><span
                                      style="font-size:12.0pt">Since
                                      we’re talking about code styling,
                                      I would highlight the following as
                                      the main properties:<br>
                                      - foreground color (+)<br>
                                      - background color (-)<br>
                                      - font (weight, italic, size,
                                      name) (+)<br>
                                      - underline (e.g. for links) (?)<br>
                                      - wavy underline (e.g. for
                                      spelling) (-)<br>
                                      <br>
                                      I think these properties cover 99%
                                      of all the necessary properties
                                      for CodeArea.<br>
                                      I used + and - to show what has
                                      already been implemented.<br>
                                      <br>
                                      Best regards, Pavel</span><o:p></o:p></p>
                                  <div>
                                    <p class="MsoNormal"><span
                                        style="font-size:12.0pt">On
                                        5/8/25 22:21, Andy Goryachev
                                        wrote:</span><o:p></o:p></p>
                                  </div>
                                  <blockquote
style="margin-top:5.0pt;margin-bottom:5.0pt">
                                    <div>
                                      <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16"">Oh,
                                          I finally get it what you
                                          want.  Thanks!</span><o:p></o:p></p>
                                      <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16""> </span><o:p></o:p></p>
                                      <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16"">What
                                          you asking is effectively to
                                          add support for some
                                          additional properties to the
                                          class that renders the text
                                          segment (currently, Text).  My
                                          first question is - what are
                                          the additional properties,
                                          beside the background-color? 
                                          If it's only the background
                                          color, it's probably easy to
                                          add.</span><o:p></o:p></p>
                                      <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16""> </span><o:p></o:p></p>
                                      <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16"">Anything
                                          beyond that, such as
                                          equivalent of full
                                          -fx-region-background or
                                          -fx-region-border, would be
                                          extremely unlikely.</span><o:p></o:p></p>
                                      <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16""> </span><o:p></o:p></p>
                                      <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16"">-andy</span><o:p></o:p></p>
                                      <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16""> </span><o:p></o:p></p>
                                      <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16""> </span><o:p></o:p></p>
                                      <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16""> </span><o:p></o:p></p>
                                      <div
id="mail-editor-reference-message-container">
                                        <div>
                                          <div>
                                            <div
style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in">
                                              <p class="MsoNormal"
style="margin-bottom:12.0pt"><b><span
style="font-size:12.0pt;color:black">From:
                                                  </span></b><span
style="font-size:12.0pt;color:black">openjfx-dev <a
href="mailto:openjfx-dev-retn@openjdk.org" moz-do-not-send="true">
<openjfx-dev-retn@openjdk.org></a> on behalf of PavelTurk <a
href="mailto:pavelturk2000@gmail.com" moz-do-not-send="true">
<pavelturk2000@gmail.com></a><br>
                                                  <b>Date: </b>Thursday,
                                                  May 8, 2025 at 11:44<br>
                                                  <b>To: </b><a
href="mailto:openjfx-dev@openjdk.org" moz-do-not-send="true"
class="moz-txt-link-freetext">openjfx-dev@openjdk.org</a> <a
href="mailto:openjfx-dev@openjdk.org" moz-do-not-send="true">
<openjfx-dev@openjdk.org></a><br>
                                                  <b>Subject: </b>Re:
                                                  RFR: 8355774:
                                                  RichTextArea: provide
                                                  mechanism for CSS
                                                  styling of highlights</span><o:p></o:p></p>
                                            </div>
                                            <p class="MsoNormal"
style="margin-bottom:12.0pt"><span style="font-size:12.0pt">Andy, thank
                                                you for your reply.
                                                <br>
                                                <br>
                                                I have already provided
                                                some examples, but I’ll
                                                give one more very
                                                simple example that
                                                clearly illustrates the
                                                problem.<br>
                                                <br>
                                                I have a library that
                                                uses JFX CodeArea.
                                                Naturally, all styles
                                                are stored in a CSS
                                                file. Users of this
                                                library can customize
                                                <br>
                                                how the code is
                                                displayed by modifying
                                                the styles in the CSS
                                                file. Let’s take the
                                                search feature as an
                                                example. In the
                                                <br>
                                                CSS file, there is a
                                                class:<br>
                                                <br>
                                                .search-match {<br>
                                                   
                                                -fx-background-color:
                                                orange;<br>
                                                }<br>
                                                <br>
                                                But the user wants to
                                                change not the
                                                background color, but
                                                the foreground color and
                                                font weight. So they
                                                write:<br>
                                                <br>
                                                .search-match {<br>
                                                    -fx-fill: orange;<br>
                                                    -fx-font-weight:
                                                bold;<br>
                                                }<br>
                                                <br>
                                                And this should work. If
                                                it doesn’t, then it’s no
                                                longer CSS-based
                                                styling.<br>
                                                <br>
                                                If, for some reason, the
                                                -fx-background-color
                                                property cannot be used,
                                                an alternative property
                                                can be introduced,
                                                <br>
                                                such as
                                                -fx-highlight-color.
                                                However, everything else
                                                in the example should
                                                work as described.<br>
                                                <br>
                                                Best regards, Pavel</span><o:p></o:p></p>
                                            <div>
                                              <p class="MsoNormal"><span
style="font-size:12.0pt">On 5/8/25 21:25, Andy Goryachev wrote:</span><o:p></o:p></p>
                                            </div>
                                            <blockquote
style="margin-top:5.0pt;margin-bottom:5.0pt">
                                              <div>
                                                <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16"">Pavel:</span><o:p></o:p></p>
                                                <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16""> </span><o:p></o:p></p>
                                                <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16"">I
                                                    think your comments
                                                    in the ticket are
                                                    still invisible to
                                                    me, so I can't
                                                    comment.</span><o:p></o:p></p>
                                                <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16""> </span><o:p></o:p></p>
                                                <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16"">About
                                                    your recent comment
                                                    in the PR - I have
                                                    difficulty
                                                    understanding what
                                                    you mean.  We are
                                                    not adding methods
                                                    to "style individual
                                                    properties".  We are
                                                    adding methods that
                                                    allow the
                                                    application to use
                                                    CSS to style parts
                                                    of the visual
                                                    representation of
                                                    the given
                                                    RichParagraph.</span><o:p></o:p></p>
                                                <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16""> </span><o:p></o:p></p>
                                                <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16"">Perhaps
                                                    if you describe what
                                                    kind of visual
                                                    representation you
                                                    have in mind, we can
                                                    show how to achieve
                                                    that in the code.</span><o:p></o:p></p>
                                                <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16""> </span><o:p></o:p></p>
                                                <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16"">-andy</span><o:p></o:p></p>
                                                <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16""> </span><o:p></o:p></p>
                                                <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Iosevka Fixed SS16""> </span><o:p></o:p></p>
                                                <div
id="mail-editor-reference-message-container">
                                                  <div>
                                                    <div>
                                                      <div
style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in">
                                                        <p
class="MsoNormal" style="margin-bottom:12.0pt"><b><span
style="font-size:12.0pt;color:black">From:
                                                          </span></b><span
style="font-size:12.0pt;color:black">openjfx-dev <a
href="mailto:openjfx-dev-retn@openjdk.org" moz-do-not-send="true">
<openjfx-dev-retn@openjdk.org></a> on behalf of PavelTurk <a
href="mailto:pavelturk2000@gmail.com" moz-do-not-send="true">
<pavelturk2000@gmail.com></a><br>
                                                          <b>Date: </b>Thursday,
                                                          May 8, 2025 at
                                                          11:04<br>
                                                          <b>To: </b><a
href="mailto:openjfx-dev@openjdk.org" moz-do-not-send="true"
class="moz-txt-link-freetext">openjfx-dev@openjdk.org</a> <a
href="mailto:openjfx-dev@openjdk.org" moz-do-not-send="true">
<openjfx-dev@openjdk.org></a><br>
                                                          <b>Subject: </b>Re:
                                                          RFR: 8355774:
                                                          RichTextArea:
                                                          provide
                                                          mechanism for
                                                          CSS styling of
                                                          highlights</span><o:p></o:p></p>
                                                      </div>
                                                      <div>
                                                        <p
class="MsoNormal" style="margin-bottom:12.0pt"><span
style="font-size:11.0pt">I am not a member of the JavaFX team, but if I
                                                          may, I’d like
                                                          to express my
                                                          opinion. I
                                                          believe that
                                                          creating
                                                          separate<br>
                                                          methods for
                                                          styling
                                                          individual
                                                          properties is
                                                          a very
                                                          problematic
                                                          and dangerous
                                                          decision.<br>
                                                          <br>
                                                          First, the
                                                          usefulness of
                                                          such methods
                                                          is minimal
                                                          because when
                                                          styling is
                                                          done via CSS,
                                                          the assumption
                                                          is that<br>
                                                          adjusting the
                                                          CSS file
                                                          should be
                                                          sufficient—something
                                                          that won’t
                                                          work in this
                                                          case. For
                                                          example one
                                                          user for
                                                          search<br>
                                                          result wants
                                                          to set
                                                          background
                                                          color for
                                                          matches but
                                                          another one
                                                          wants to set
                                                          foreground
                                                          color +
                                                          weight.<br>
                                                          Second, it
                                                          violates
                                                          fundamental
                                                          CSS
                                                          principles.
                                                          Third, if
                                                          these methods
                                                          are added to
                                                          the API, they
                                                          cannot later<br>
                                                          be removed
                                                          without
                                                          breaking
                                                          backward
                                                          compatibility.<br>
                                                          <br>
                                                          I wrote about
                                                          this in detail
                                                          in the
                                                          additional
                                                          information
                                                          for
                                                          JDK-8356436,
                                                          but my comment
                                                          has not yet
                                                          been approved<br>
                                                          by a
                                                          moderator.<br>
                                                          <br>
                                                          When in doubt,
                                                          it’s very
                                                          helpful to see
                                                          how others are
                                                          doing it. In
                                                          RichTextFX,
                                                          special CSS
                                                          properties
                                                          were
                                                          introduced,<br>
                                                          which resulted
                                                          in a
                                                          consistent
                                                          standard for
                                                          applying CSS
                                                          styles to all
properties—fully aligned with established CSS norms.<br>
                                                          <br>
                                                          This is my
                                                          personal
                                                          opinion,
                                                          which, of
                                                          course, can be
                                                          wrong.<br>
                                                          <br>
                                                          Best regards,
                                                          Pavel<br>
                                                          <br>
                                                          On 5/8/25
                                                          20:46, Andy
                                                          Goryachev
                                                          wrote:<br>
                                                          > Adding
                                                          missing APIs
                                                          related to
                                                          styling the
                                                          highlights
                                                          with CSS:<br>
                                                          ><br>
                                                          >
                                                          ![Screenshot
                                                          2025-05-07 at
                                                          15 08 53](<a
href="https://github.com/user-attachments/assets/e37062b4-9804-40a7-872d-830fe0f584c1"
moz-do-not-send="true" class="moz-txt-link-freetext">https://github.com/user-attachments/assets/e37062b4-9804-40a7-872d-830fe0f584c1</a>)<br>
                                                          ><br>
                                                          ><br>
                                                          ><br>
                                                          > Adds
                                                          methods to the
`RichParagraph.Builder`:<br>
                                                          ><br>
                                                          ><br>
                                                          >         
                                                          /**<br>
                                                          >          
                                                          * Adds a wavy
                                                          underline
                                                          (typically
                                                          used as a
                                                          spell checker
                                                          indicator)
                                                          with the
                                                          specified
                                                          style name(s).<br>
                                                          >          
                                                          * <p><br>
                                                          >          
                                                          * The
                                                          corresponding
                                                          styles should
                                                          define CSS
                                                          properties
                                                          applicable to
                                                          {@link
                                                          javafx.scene.shape.Path}.<br>
                                                          >          
                                                          *<br>
                                                          >          
                                                          * @param start
                                                          the start
                                                          offset<br>
                                                          >          
                                                          * @param
                                                          length the end
                                                          offset<br>
                                                          >          
                                                          * @param css
                                                          the style
                                                          name(s)<br>
                                                          >          
                                                          * @return this
                                                          {@code
                                                          Builder}
                                                          instance<br>
                                                          >          
                                                          * @since 25<br>
                                                          >          
                                                          */<br>
                                                          >         
                                                          public Builder
addWavyUnderline(int start, int length, String ... css) {<br>
                                                          ><br>
                                                          ><br>
                                                          ><br>
                                                          >         
                                                          /**<br>
                                                          >          
                                                          * Adds a
                                                          highlight with
                                                          the specified
                                                          style name(s).<br>
                                                          >          
                                                          * Use
                                                          translucent
                                                          colors to
                                                          enable
                                                          multiple
                                                          highlights in
                                                          the same
                                                          region of
                                                          text.<br>
                                                          >          
                                                          * <p><br>
                                                          >          
                                                          * The
                                                          corresponding
                                                          styles should
                                                          define CSS
                                                          properties
                                                          applicable to
                                                          {@link
                                                          javafx.scene.shape.Path}.<br>
                                                          >          
                                                          *<br>
                                                          >          
                                                          * @param start
                                                          the start
                                                          offset<br>
                                                          >          
                                                          * @param
                                                          length the end
                                                          offset<br>
                                                          >          
                                                          * @param css
                                                          the style
                                                          name(s)<br>
                                                          >          
                                                          * @return this
                                                          {@code
                                                          Builder}
                                                          instance<br>
                                                          >          
                                                          * @since 25<br>
                                                          >          
                                                          */<br>
                                                          >         
                                                          public Builder
addHighlight(int start, int length, String ... css) {<br>
                                                          ><br>
                                                          ><br>
                                                          ><br>
                                                          > Also
                                                          adding similar
                                                          methods to the
`SimpleViewOnlyStyledModel` class:<br>
                                                          ><br>
                                                          ><br>
                                                          >      /**<br>
                                                          >       *
                                                          Adds a
                                                          highlight of
                                                          the given
                                                          color to the
                                                          specified
                                                          range within
                                                          the last
                                                          paragraph,<br>
                                                          >       *
                                                          with the
                                                          specified
                                                          style name(s).<br>
                                                          >       *<br>
                                                          >       *
                                                          @param start
                                                          the start
                                                          offset<br>
                                                          >       *
                                                          @param length
                                                          the length of
                                                          the highlight<br>
                                                          >       *
                                                          @param css the
                                                          highlight
                                                          style name(s)<br>
                                                          >       *
                                                          @return this
                                                          model instance<br>
                                                          >       *
                                                          @since 25<br>
                                                          >       */<br>
                                                          >     
                                                          public
                                                          SimpleViewOnlyStyledModel
                                                          highlight(int
                                                          start, int
                                                          length, String
                                                          ... css) {<br>
                                                          ><br>
                                                          ><br>
                                                          >      /**<br>
                                                          >       *
                                                          Adds a wavy
                                                          underline
                                                          (typically
                                                          used as a
                                                          spell checker
                                                          indicator)<br>
                                                          >       *
                                                          to the
                                                          specified
                                                          range within
                                                          the last
                                                          paragraph,
                                                          with the
                                                          specified
                                                          style name(s).<br>
                                                          >       *<br>
                                                          >       *
                                                          @param start
                                                          the start
                                                          offset<br>
                                                          >       *
                                                          @param length
                                                          the length of
                                                          the highlight<br>
                                                          >       *
                                                          @param css the
                                                          highlight
                                                          style name(s)<br>
                                                          >       *
                                                          @return this
                                                          model instance<br>
                                                          >       *
                                                          @since 25<br>
                                                          >       */<br>
                                                          >     
                                                          public
                                                          SimpleViewOnlyStyledModel
addWavyUnderline(int start, int length, String ... css) {<br>
                                                          ><br>
                                                          >
                                                          -------------<br>
                                                          ><br>
                                                          > Commit
                                                          messages:<br>
                                                          >   - tab<br>
                                                          >   - css<br>
                                                          ><br>
                                                          > Changes:
                                                          <a
href="https://git.openjdk.org/jfx/pull/1802/files"
moz-do-not-send="true" class="moz-txt-link-freetext">https://git.openjdk.org/jfx/pull/1802/files</a><br>
                                                          >   
                                                          Webrev: <a
href="https://webrevs.openjdk.org/?repo=jfx&pr=1802&range=00"
moz-do-not-send="true">https://webrevs.openjdk.org/?repo=jfx&pr=1802&range=00</a><br>
                                                          >    Issue:
                                                          <a
href="https://bugs.openjdk.org/browse/JDK-8355774"
moz-do-not-send="true" class="moz-txt-link-freetext">https://bugs.openjdk.org/browse/JDK-8355774</a><br>
                                                          >    Stats:
                                                          128 lines in 4
                                                          files changed:
                                                          110 ins; 8
                                                          del; 10 mod<br>
                                                          >    Patch:
                                                          <a
href="https://git.openjdk.org/jfx/pull/1802.diff" moz-do-not-send="true"
class="moz-txt-link-freetext">https://git.openjdk.org/jfx/pull/1802.diff</a><br>
                                                          >    Fetch:
                                                          git fetch <a
href="https://git.openjdk.org/jfx.git" moz-do-not-send="true"
class="moz-txt-link-freetext">https://git.openjdk.org/jfx.git</a>
                                                          pull/1802/head:pull/1802<br>
                                                          ><br>
                                                          > PR: <a
href="https://git.openjdk.org/jfx/pull/1802" moz-do-not-send="true"
class="moz-txt-link-freetext">https://git.openjdk.org/jfx/pull/1802</a></span><o:p></o:p></p>
                                                      </div>
                                                    </div>
                                                  </div>
                                                </div>
                                              </div>
                                            </blockquote>
                                            <p class="MsoNormal"><span
                                                style="font-size:12.0pt"> </span><o:p></o:p></p>
                                          </div>
                                        </div>
                                      </div>
                                    </div>
                                  </blockquote>
                                  <p class="MsoNormal"><span
                                      style="font-size:12.0pt"> </span><o:p></o:p></p>
                                </div>
                              </div>
                            </div>
                          </div>
                        </blockquote>
                        <p class="MsoNormal"><span
                            style="font-size:12.0pt"> </span><o:p></o:p></p>
                      </div>
                    </div>
                  </div>
                </div>
              </blockquote>
              <p class="MsoNormal"><span style="font-size:12.0pt"><o:p> </o:p></span></p>
            </div>
          </div>
        </div>
      </div>
    </blockquote>
    <br>
  </body>
</html>