On Thu, 7 Jan 2021 20:11:31 GMT, Alexey Ivanov <aiva...@openjdk.org> wrote:
> I wonder how native text components behave: is the selection preserved when > text is replaced? On windows, the selection resets, on macOS and Linux it is preserved. But it works that way because we implemented it in a such way, actually did not pay attention to such use-case. > Do I get it right that if the new text is longer than the initial one, then > only the portion will be left selected. For the case: 1. the user sets the short text 2. then selects the longer distance 3. then sets the longer text nothing is changed. The select() method at step 2 will trim passed parameters based on the short text at step 1. So only the portion of the text will be selected. > Won't it cause the issue if the scenario where the selectionStart is past the > length of the new text. I mean the only "field" portion of "text field" is > selected, and then the text in component is replaced with "text", thus the > selectionStart points 1 character past the end of the new text. The new call to select() method should take care of that since the user as well can call it passing wrong parameters. ------------- PR: https://git.openjdk.java.net/jdk/pull/1104