On Thu, 25 Apr 2024 21:41:14 GMT, Oliver Kopp <d...@openjdk.org> wrote:

>> Fixes https://bugs.openjdk.org/browse/JDK-8330462.
>> 
>> If the parameter `maxLength` is larger than `Integer.MAX_VALUE - start`, 
>> then an addition of `start` to it leads to a negative value. This is "fixed" 
>> by using `Math.max` comparing the `maxLength` and `maxLength + start`.
>
> Oliver Kopp has updated the pull request incrementally with one additional 
> commit since the last revision:
> 
>   Make use of Utils.clamp function

(I switched to TextField; is a bit easier for me to debug)

Intermedidate testing result:

When pressing "space", the rectangle moves correctly. When moving the cursor 
"inside" these much spaces, it also moves.

![image](https://github.com/openjdk/jfx/assets/1366654/1a239b18-9b86-4ced-a319-edea341ad2ce)

---

Ctrl+A leads to the box borders be of length of the complete text, not the 
visible text

![image](https://github.com/openjdk/jfx/assets/1366654/4e4b2610-cee2-450b-b1a6-1bea342a6e2a)

---

I thought, following would help, but does not:


     */
     public void selectRange(int anchor, int caretPosition) {
         caretPosition = Utils.clamp(0, caretPosition, getLength());
         anchor = Utils.clamp(0, anchor, getLength());
 
+        notifyAccessibleAttributeChanged(AccessibleAttribute.SELECTION_START);
+        notifyAccessibleAttributeChanged(AccessibleAttribute.SELECTION_END);
+        notifyAccessibleAttributeChanged(AccessibleAttribute.CARET_OFFSET);
+
         TextFormatter.Change change = new TextFormatter.Change(this, 
getFormatterAccessor(), anchor, caretPosition);
         TextFormatter<

-------------

PR Comment: https://git.openjdk.org/jfx/pull/1442#issuecomment-2078282435

Reply via email to