Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v15]

2024-03-05 Thread Karthik P K
On Tue, 5 Mar 2024 15:34:36 GMT, Andy Goryachev wrote: >>> P.S. Tested on on macOS 14.3.1. The results on Windows/Linux should be >>> identical, but if we can get some testing done on these two platforms that >>> would be nice. >> >> I tested the changes in windows and do not see any issues.

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v15]

2024-03-05 Thread Andy Goryachev
On Thu, 29 Feb 2024 05:38:04 GMT, Karthik P K wrote: >> Tested with the MonkeyTester, using different justification (left, right, >> center, justify) and node orientation, for both Text and TextFlow. Multiple >> Text instances, rich text, inline nodes, bidi, various line breaking >> scenarios

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v17]

2024-03-04 Thread Andy Goryachev
On Mon, 4 Mar 2024 17:13:01 GMT, John Hendrikx wrote: >> modules/javafx.graphics/src/main/java/javafx/scene/text/Text.java line 1044: >> >>> 1042: private int findFirstRunStart() { >>> 1043: int start = Integer.MAX_VALUE; >>> 1044: for (GlyphList r: getRuns()) { >> >> the ol

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v13]

2024-03-04 Thread John Hendrikx
On Mon, 4 Mar 2024 11:03:26 GMT, Karthik P K wrote: >> @andy-goryachev-oracle The coverage comes from EclEmma, an Eclipse plugin. >> Once installed, there is another way to run tests called `Coverage as...` >> just above `Run as...`. It's very useful to use it on a JUnit test to see >> if th

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v17]

2024-03-04 Thread John Hendrikx
On Mon, 4 Mar 2024 11:01:09 GMT, Karthik P K wrote: >> In the `getHitInfo()` method of PrismTextLayout, RTL node orientation >> conditions were not considered, hence hit test values such as character >> index and insertion index values were incorrect. >> >> Added checks for RTL orientation of

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v17]

2024-03-04 Thread John Hendrikx
On Mon, 4 Mar 2024 16:15:02 GMT, Andy Goryachev wrote: >> Karthik P K has updated the pull request incrementally with one additional >> commit since the last revision: >> >> Add unit test > > modules/javafx.graphics/src/main/java/javafx/scene/text/Text.java line 1044: > >> 1042: private

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v17]

2024-03-04 Thread John Hendrikx
On Mon, 4 Mar 2024 11:01:09 GMT, Karthik P K wrote: >> In the `getHitInfo()` method of PrismTextLayout, RTL node orientation >> conditions were not considered, hence hit test values such as character >> index and insertion index values were incorrect. >> >> Added checks for RTL orientation of

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v17]

2024-03-04 Thread John Hendrikx
On Mon, 4 Mar 2024 16:12:12 GMT, Andy Goryachev wrote: >> Karthik P K has updated the pull request incrementally with one additional >> commit since the last revision: >> >> Add unit test > > modules/javafx.graphics/src/main/java/com/sun/javafx/scene/text/TextLayout.java > line 108: > >> 10

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v17]

2024-03-04 Thread Andy Goryachev
On Mon, 4 Mar 2024 11:01:09 GMT, Karthik P K wrote: >> In the `getHitInfo()` method of PrismTextLayout, RTL node orientation >> conditions were not considered, hence hit test values such as character >> index and insertion index values were incorrect. >> >> Added checks for RTL orientation of

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v13]

2024-03-04 Thread Karthik P K
On Thu, 29 Feb 2024 17:33:14 GMT, John Hendrikx wrote: >> @hjohn how do you get this coverage diagram? >> >> The BreakIterator is a part of the existing code, we should probably have >> this discussion outside of this PR. I agree, there might be a situation >> when the app wants to select a s

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v16]

2024-03-04 Thread Karthik P K
On Thu, 29 Feb 2024 12:12:01 GMT, John Hendrikx wrote: >> Karthik P K has updated the pull request incrementally with one additional >> commit since the last revision: >> >> Review comments > > modules/javafx.graphics/src/main/java/javafx/scene/text/Text.java line 1031: > >> 1029: if

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v17]

2024-03-04 Thread Karthik P K
> In the `getHitInfo()` method of PrismTextLayout, RTL node orientation > conditions were not considered, hence hit test values such as character index > and insertion index values were incorrect. > > Added checks for RTL orientation of nodes and fixed the issue in > `getHitInfo()` to calculat

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v16]

2024-02-29 Thread Andy Goryachev
On Thu, 29 Feb 2024 17:27:28 GMT, John Hendrikx wrote: > Arial is one of the most available fonts across platforms. No it is not, as we can see from https://github.com/openjdk/jfx/pull/1236#issuecomment-1939005318 so perhaps we check and pick an alternative if Arial is not present? What is th

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v13]

2024-02-29 Thread Andy Goryachev
On Thu, 29 Feb 2024 17:33:14 GMT, John Hendrikx wrote: >> @hjohn how do you get this coverage diagram? >> >> The BreakIterator is a part of the existing code, we should probably have >> this discussion outside of this PR. I agree, there might be a situation >> when the app wants to select a s

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v13]

2024-02-29 Thread John Hendrikx
On Thu, 29 Feb 2024 15:59:58 GMT, Andy Goryachev wrote: >> I disagree on this. The code is complicated and full of branches. Manual >> testing is very error prone. However, since you restored most of the code >> to its original (which wasn't tested either) I could live with it. Still, >> h

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v16]

2024-02-29 Thread John Hendrikx
On Thu, 29 Feb 2024 15:49:47 GMT, Andy Goryachev wrote: > > FontHelper.getNativeFont( > > perhaps we could pick a suitable font based on the platform? to make sure we > always get a valid font? The points tested will be specific to the font used, similar to the problems with the #1236 PR. So

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v13]

2024-02-29 Thread Andy Goryachev
On Thu, 29 Feb 2024 13:23:40 GMT, John Hendrikx wrote: >> I believe the tests added in this PR are helpful in making sure that the >> HitInfo calculation does not give results like character index less than 0 >> or character index greater than total length of the text or out of bound >> values

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v16]

2024-02-29 Thread Andy Goryachev
On Thu, 29 Feb 2024 05:38:05 GMT, Karthik P K wrote: >> In the `getHitInfo()` method of PrismTextLayout, RTL node orientation >> conditions were not considered, hence hit test values such as character >> index and insertion index values were incorrect. >> >> Added checks for RTL orientation of

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v13]

2024-02-29 Thread John Hendrikx
On Tue, 27 Feb 2024 10:00:41 GMT, Karthik P K wrote: >> I'm not sure if we could write headless test for this. Could you please >> point me to a test which could be helpful for me? > > I believe the tests added in this PR are helpful in making sure that the > HitInfo calculation does not give r

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v16]

2024-02-29 Thread John Hendrikx
On Thu, 29 Feb 2024 05:38:05 GMT, Karthik P K wrote: >> In the `getHitInfo()` method of PrismTextLayout, RTL node orientation >> conditions were not considered, hence hit test values such as character >> index and insertion index values were incorrect. >> >> Added checks for RTL orientation of

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v15]

2024-02-28 Thread Karthik P K
On Thu, 29 Feb 2024 00:27:33 GMT, Andy Goryachev wrote: > P.S. Tested on on macOS 14.3.1. The results on Windows/Linux should be > identical, but if we can get some testing done on these two platforms that > would be nice. I tested the changes in windows and do not see any issues. I have exec

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v16]

2024-02-28 Thread Karthik P K
> In the `getHitInfo()` method of PrismTextLayout, RTL node orientation > conditions were not considered, hence hit test values such as character index > and insertion index values were incorrect. > > Added checks for RTL orientation of nodes and fixed the issue in > `getHitInfo()` to calculat

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v15]

2024-02-28 Thread Andy Goryachev
On Wed, 28 Feb 2024 12:18:08 GMT, Karthik P K wrote: >> In the `getHitInfo()` method of PrismTextLayout, RTL node orientation >> conditions were not considered, hence hit test values such as character >> index and insertion index values were incorrect. >> >> Added checks for RTL orientation of

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v15]

2024-02-28 Thread Karthik P K
> In the `getHitInfo()` method of PrismTextLayout, RTL node orientation > conditions were not considered, hence hit test values such as character index > and insertion index values were incorrect. > > Added checks for RTL orientation of nodes and fixed the issue in > `getHitInfo()` to calculat

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v14]

2024-02-28 Thread Karthik P K
On Tue, 27 Feb 2024 16:18:31 GMT, John Hendrikx wrote: >> Karthik P K has updated the pull request incrementally with one additional >> commit since the last revision: >> >> Fix repeating text node issue > > So, I looked into the mirroring problem as well. I had to remove a single > line fr

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v14]

2024-02-27 Thread John Hendrikx
On Tue, 27 Feb 2024 13:51:08 GMT, Karthik P K wrote: >> In the `getHitInfo()` method of PrismTextLayout, RTL node orientation >> conditions were not considered, hence hit test values such as character >> index and insertion index values were incorrect. >> >> Added checks for RTL orientation of

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v13]

2024-02-27 Thread Karthik P K
On Tue, 27 Feb 2024 05:09:20 GMT, Karthik P K wrote: >> yes, this bothered me from the start. I did have a test case in the MT with >> two text nodes with the same text, and it seemed to work correctly. or did >> I miss something? > > Actually most of the repeating text cases are handled. I s

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v14]

2024-02-27 Thread Karthik P K
> In the `getHitInfo()` method of PrismTextLayout, RTL node orientation > conditions were not considered, hence hit test values such as character index > and insertion index values were incorrect. > > Added checks for RTL orientation of nodes and fixed the issue in > `getHitInfo()` to calculat

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v13]

2024-02-27 Thread Karthik P K
On Mon, 26 Feb 2024 11:35:06 GMT, Karthik P K wrote: >> tests/system/src/test/java/test/robot/javafx/scene/RTLTextFlowCharacterIndexTest.java >> line 238: >> >>> 236: >>> 237: @Test >>> 238: public void testTextAndTextFlowHitInfoForRTLEnglishText() throws >>> Exception { >> >> I just

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v13]

2024-02-26 Thread Karthik P K
On Mon, 26 Feb 2024 16:22:56 GMT, Andy Goryachev wrote: >> You are right. It fails when there are repeated text nodes. I will look into >> this > > yes, this bothered me from the start. I did have a test case in the MT with > two text nodes with the same text, and it seemed to work correctly.

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v13]

2024-02-26 Thread Andy Goryachev
On Mon, 26 Feb 2024 10:40:03 GMT, Karthik P K wrote: >> modules/javafx.graphics/src/main/java/com/sun/javafx/text/PrismTextLayout.java >> line 606: >> >>> 604: boolean addLtrIdx = run.getTextSpan().getText().length() >>> != run.length; >>> 605: if (r.getStart() != curRu

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v13]

2024-02-26 Thread John Hendrikx
On Wed, 21 Feb 2024 10:01:37 GMT, Karthik P K wrote: >> In the `getHitInfo()` method of PrismTextLayout, RTL node orientation >> conditions were not considered, hence hit test values such as character >> index and insertion index values were incorrect. >> >> Added checks for RTL orientation of

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v13]

2024-02-26 Thread Karthik P K
On Sun, 25 Feb 2024 13:16:06 GMT, John Hendrikx wrote: >> Karthik P K has updated the pull request with a new target base due to a >> merge or a rebase. The incremental webrev excludes the unrelated changes >> brought in by the merge/rebase. The pull request contains 13 additional >> commits s

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v13]

2024-02-26 Thread Karthik P K
On Sat, 24 Feb 2024 23:00:43 GMT, John Hendrikx wrote: >> Karthik P K has updated the pull request with a new target base due to a >> merge or a rebase. The incremental webrev excludes the unrelated changes >> brought in by the merge/rebase. The pull request contains 13 additional >> commits s

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v13]

2024-02-25 Thread Karthik P K
On Sat, 24 Feb 2024 22:44:05 GMT, John Hendrikx wrote: > The character index, even in your example image above, seems to be relative > to the `Text`, not to the `TextFlow` (it is 0, even though there are clearly > 10 characters before it belonging to another `Text`), so what exactly do you > m

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v13]

2024-02-25 Thread John Hendrikx
On Wed, 21 Feb 2024 10:01:37 GMT, Karthik P K wrote: >> In the `getHitInfo()` method of PrismTextLayout, RTL node orientation >> conditions were not considered, hence hit test values such as character >> index and insertion index values were incorrect. >> >> Added checks for RTL orientation of

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v13]

2024-02-24 Thread John Hendrikx
On Wed, 21 Feb 2024 10:01:37 GMT, Karthik P K wrote: >> In the `getHitInfo()` method of PrismTextLayout, RTL node orientation >> conditions were not considered, hence hit test values such as character >> index and insertion index values were incorrect. >> >> Added checks for RTL orientation of

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v13]

2024-02-24 Thread John Hendrikx
On Wed, 21 Feb 2024 10:01:37 GMT, Karthik P K wrote: >> In the `getHitInfo()` method of PrismTextLayout, RTL node orientation >> conditions were not considered, hence hit test values such as character >> index and insertion index values were incorrect. >> >> Added checks for RTL orientation of

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v11]

2024-02-23 Thread Karthik P K
On Thu, 22 Feb 2024 10:33:38 GMT, Karthik P K wrote: >> A valid concern about specific fonts, similar to >> https://github.com/openjdk/jfx/pull/1236#issuecomment-1937022815 >> >> What was the resolution there? To use a hard-coded font based on the >> platform, or pick an available one from th

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v11]

2024-02-22 Thread Karthik P K
On Tue, 20 Feb 2024 15:48:26 GMT, Andy Goryachev wrote: >> I see that the tests don't run on all the platforms. I will look into this >> and update the PR > > A valid concern about specific fonts, similar to > https://github.com/openjdk/jfx/pull/1236#issuecomment-1937022815 > > What was the re

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v11]

2024-02-21 Thread Karthik P K
On Wed, 21 Feb 2024 18:59:02 GMT, John Hendrikx wrote: > I'm unclear on this part, do you mean it's possible that multiple `Text` > objects could be hit at the same time? There should only be one `TextRun` at > a certain x/y coordinate right? > Yes there will be one TextRun at a certain x/y co

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v11]

2024-02-21 Thread John Hendrikx
On Wed, 21 Feb 2024 13:03:46 GMT, Karthik P K wrote: > > To determine the runStart/runEnd, `Text` is already analyzing the runs (and > > doing coordinate tests on them). Runs however have locations, with x/y > > coordinates. Would it not be possible, and more sensible, to adjust the > > `x`, `

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v11]

2024-02-21 Thread Karthik P K
On Mon, 19 Feb 2024 14:32:36 GMT, John Hendrikx wrote: > To determine the runStart/runEnd, `Text` is already analyzing the runs (and > doing coordinate tests on them). Runs however have locations, with x/y > coordinates. Would it not be possible, and more sensible, to adjust the `x`, > `y` coo

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v13]

2024-02-21 Thread Karthik P K
> In the `getHitInfo()` method of PrismTextLayout, RTL node orientation > conditions were not considered, hence hit test values such as character index > and insertion index values were incorrect. > > Added checks for RTL orientation of nodes and fixed the issue in > `getHitInfo()` to calculat

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v11]

2024-02-20 Thread Andy Goryachev
On Mon, 19 Feb 2024 10:21:52 GMT, Karthik P K wrote: >> tests/system/src/test/java/test/robot/javafx/scene/RTLTextCharacterIndexTest.java >> line 107: >> >>> 105: */ >>> 106: >>> 107: public class RTLTextCharacterIndexTest { >> >> This is a system test, which don't run with the build system.

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v11]

2024-02-19 Thread Karthik P K
On Mon, 19 Feb 2024 14:32:36 GMT, John Hendrikx wrote: >Okay, so let me summarize (and let me know if that's correct) @hjohn you have summarised it correctly. I understood your concern and thanks for explaining your suggestion it in details. I will look into this approach and get back to you.

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v11]

2024-02-19 Thread John Hendrikx
On Mon, 19 Feb 2024 13:45:00 GMT, Karthik P K wrote: > > @karthikpandelu You mentioned there is special casing going on when a > > `Text` is part of a `TextFlow`. What are those cases and where is this > > happening? How does it even know that a `Text` is involved and that it is > > part of a

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v11]

2024-02-19 Thread Karthik P K
On Thu, 15 Feb 2024 10:36:51 GMT, Karthik P K wrote: >> I think we should simplify the `getHitInfo` method in the `TextLayout` >> interface. >> >> The code currently seems to be making distinctions where there are none. >> `TextFlow`s provide spans, while `Text`s provide a text. `getHitInfo`

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v11]

2024-02-19 Thread John Hendrikx
On Thu, 15 Feb 2024 10:36:51 GMT, Karthik P K wrote: >> I think we should simplify the `getHitInfo` method in the `TextLayout` >> interface. >> >> The code currently seems to be making distinctions where there are none. >> `TextFlow`s provide spans, while `Text`s provide a text. `getHitInfo`

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v11]

2024-02-19 Thread Karthik P K
On Wed, 14 Feb 2024 04:39:04 GMT, John Hendrikx wrote: >> Karthik P K has updated the pull request incrementally with one additional >> commit since the last revision: >> >> Review comments > > modules/javafx.graphics/src/main/java/com/sun/javafx/text/PrismTextLayout.java > line 432: > >> 4

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v11]

2024-02-19 Thread Karthik P K
On Wed, 14 Feb 2024 04:33:00 GMT, John Hendrikx wrote: >> Karthik P K has updated the pull request incrementally with one additional >> commit since the last revision: >> >> Review comments > > modules/javafx.graphics/src/main/java/com/sun/javafx/text/PrismTextLayout.java > line 424: > >> 4

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v11]

2024-02-19 Thread Karthik P K
On Wed, 14 Feb 2024 04:27:42 GMT, John Hendrikx wrote: >> Karthik P K has updated the pull request incrementally with one additional >> commit since the last revision: >> >> Review comments > > modules/javafx.graphics/src/main/java/com/sun/javafx/scene/text/TextLayout.java > line 213: > >>

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v12]

2024-02-19 Thread Karthik P K
> In the `getHitInfo()` method of PrismTextLayout, RTL node orientation > conditions were not considered, hence hit test values such as character index > and insertion index values were incorrect. > > Added checks for RTL orientation of nodes and fixed the issue in > `getHitInfo()` to calculat

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v11]

2024-02-15 Thread John Hendrikx
On Thu, 15 Feb 2024 10:36:51 GMT, Karthik P K wrote: > > I think we should simplify the `getHitInfo` method in the `TextLayout` > > interface. > > The code currently seems to be making distinctions where there are none. > > `TextFlow`s provide spans, while `Text`s provide a text. `getHitInfo` c

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v11]

2024-02-15 Thread Karthik P K
On Wed, 14 Feb 2024 05:27:19 GMT, John Hendrikx wrote: > I think we should simplify the `getHitInfo` method in the `TextLayout` > interface. > > The code currently seems to be making distinctions where there are none. > `TextFlow`s provide spans, while `Text`s provide a text. `getHitInfo` can

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v11]

2024-02-13 Thread John Hendrikx
On Fri, 9 Feb 2024 07:59:47 GMT, Karthik P K wrote: >> In the `getHitInfo()` method of PrismTextLayout, RTL node orientation >> conditions were not considered, hence hit test values such as character >> index and insertion index values were incorrect. >> >> Added checks for RTL orientation of

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v10]

2024-02-11 Thread Karthik P K
On Thu, 8 Feb 2024 18:22:28 GMT, Andy Goryachev wrote: >> Karthik P K has updated the pull request incrementally with one additional >> commit since the last revision: >> >> Fix emoji issue > > @hjohn this might impact your work in #1236 - would you like to take a look? Thanks for reviewing

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v11]

2024-02-09 Thread Andy Goryachev
On Fri, 9 Feb 2024 07:59:47 GMT, Karthik P K wrote: >> In the `getHitInfo()` method of PrismTextLayout, RTL node orientation >> conditions were not considered, hence hit test values such as character >> index and insertion index values were incorrect. >> >> Added checks for RTL orientation of

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v10]

2024-02-09 Thread Karthik P K
On Thu, 8 Feb 2024 18:13:58 GMT, Andy Goryachev wrote: >> Karthik P K has updated the pull request incrementally with one additional >> commit since the last revision: >> >> Fix emoji issue > > modules/javafx.graphics/src/main/java/com/sun/javafx/text/PrismTextLayout.java > line 531: > >> 5

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v11]

2024-02-09 Thread Karthik P K
> In the `getHitInfo()` method of PrismTextLayout, RTL node orientation > conditions were not considered, hence hit test values such as character index > and insertion index values were incorrect. > > Added checks for RTL orientation of nodes and fixed the issue in > `getHitInfo()` to calculat

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v9]

2024-02-08 Thread Andy Goryachev
On Tue, 6 Feb 2024 10:31:18 GMT, Karthik P K wrote: >> In the `getHitInfo()` method of PrismTextLayout, RTL node orientation >> conditions were not considered, hence hit test values such as character >> index and insertion index values were incorrect. >> >> Added checks for RTL orientation of

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v10]

2024-02-08 Thread Andy Goryachev
On Wed, 7 Feb 2024 10:43:12 GMT, Karthik P K wrote: >> In the `getHitInfo()` method of PrismTextLayout, RTL node orientation >> conditions were not considered, hence hit test values such as character >> index and insertion index values were incorrect. >> >> Added checks for RTL orientation of

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v10]

2024-02-08 Thread Andy Goryachev
On Thu, 8 Feb 2024 06:12:05 GMT, Karthik P K wrote: >>> Since the emoji itself is not rendered properly I don't think it is an >>> issue relevant to this PR. >> >> Quite possibly, these are grapheme clusters which are currently not >> supported: >> `β˜πŸΏβ˜πŸΏβ˜πŸΏπŸ€¦πŸΌβ€β™‚οΈ` >> >> I see the emoji and tab

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v10]

2024-02-07 Thread Karthik P K
On Wed, 7 Feb 2024 23:43:41 GMT, Andy Goryachev wrote: > I see the emoji and tab text options work now, but inline nodes still fail. I don't see issue with inline nodes. Please let me know in which case you are facing issue. https://github.com/openjdk/jfx/assets/26969459/e926e7ad-1fd1-4cb8-af01

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v10]

2024-02-07 Thread Andy Goryachev
On Wed, 7 Feb 2024 10:43:53 GMT, Karthik P K wrote: > Since the emoji itself is not rendered properly I don't think it is an issue > relevant to this PR. Quite possibly, these are grapheme clusters which are currently not supported: `β˜πŸΏβ˜πŸΏβ˜πŸΏπŸ€¦πŸΌβ€β™‚οΈ` I see the emoji and tab text options work now,

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v10]

2024-02-07 Thread Karthik P K
On Wed, 7 Feb 2024 10:43:12 GMT, Karthik P K wrote: >> In the `getHitInfo()` method of PrismTextLayout, RTL node orientation >> conditions were not considered, hence hit test values such as character >> index and insertion index values were incorrect. >> >> Added checks for RTL orientation of

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v10]

2024-02-07 Thread Karthik P K
> In the `getHitInfo()` method of PrismTextLayout, RTL node orientation > conditions were not considered, hence hit test values such as character index > and insertion index values were incorrect. > > Added checks for RTL orientation of nodes and fixed the issue in > `getHitInfo()` to calculat

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v9]

2024-02-06 Thread Karthik P K
On Tue, 6 Feb 2024 18:09:40 GMT, Andy Goryachev wrote: > Fails with "Emojis" data set (magenta line indicates where): > I forgot to mention that I didn't test with emojis. I wanted to make it work with text with all scenario and then move to emojis. Now that we have text related issues fixed,

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v9]

2024-02-06 Thread Andy Goryachev
On Tue, 6 Feb 2024 10:31:18 GMT, Karthik P K wrote: >> In the `getHitInfo()` method of PrismTextLayout, RTL node orientation >> conditions were not considered, hence hit test values such as character >> index and insertion index values were incorrect. >> >> Added checks for RTL orientation of

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v9]

2024-02-06 Thread Andy Goryachev
On Tue, 6 Feb 2024 10:31:18 GMT, Karthik P K wrote: >> In the `getHitInfo()` method of PrismTextLayout, RTL node orientation >> conditions were not considered, hence hit test values such as character >> index and insertion index values were incorrect. >> >> Added checks for RTL orientation of

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v8]

2024-02-06 Thread Karthik P K
On Thu, 1 Feb 2024 09:20:35 GMT, Karthik P K wrote: >> In the `getHitInfo()` method of PrismTextLayout, RTL node orientation >> conditions were not considered, hence hit test values such as character >> index and insertion index values were incorrect. >> >> Added checks for RTL orientation of

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v9]

2024-02-06 Thread Karthik P K
> In the `getHitInfo()` method of PrismTextLayout, RTL node orientation > conditions were not considered, hence hit test values such as character index > and insertion index values were incorrect. > > Added checks for RTL orientation of nodes and fixed the issue in > `getHitInfo()` to calculat

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v7]

2024-02-01 Thread Andy Goryachev
On Thu, 1 Feb 2024 08:06:18 GMT, Karthik P K wrote: >> modules/javafx.graphics/src/main/java/com/sun/javafx/text/PrismTextLayout.java >> line 513: >> >>> 511: if ((x > run.getWidth() && >>> (!isMultiRunText || run.getStart() == curRunStart)) || textWidthPrevLine >

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v8]

2024-02-01 Thread Karthik P K
> In the `getHitInfo()` method of PrismTextLayout, RTL node orientation > conditions were not considered, hence hit test values such as character index > and insertion index values were incorrect. > > Added checks for RTL orientation of nodes and fixed the issue in > `getHitInfo()` to calculat

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v7]

2024-02-01 Thread Karthik P K
On Wed, 31 Jan 2024 21:09:53 GMT, Andy Goryachev wrote: >> Karthik P K has updated the pull request incrementally with one additional >> commit since the last revision: >> >> Fix issue with multiline text > > modules/javafx.graphics/src/main/java/com/sun/javafx/text/PrismTextLayout.java > li

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v7]

2024-02-01 Thread Karthik P K
On Wed, 31 Jan 2024 10:24:20 GMT, Karthik P K wrote: >> In the `getHitInfo()` method of PrismTextLayout, RTL node orientation >> conditions were not considered, hence hit test values such as character >> index and insertion index values were incorrect. >> >> Added checks for RTL orientation of

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v7]

2024-01-31 Thread Andy Goryachev
On Wed, 31 Jan 2024 10:24:20 GMT, Karthik P K wrote: >> In the `getHitInfo()` method of PrismTextLayout, RTL node orientation >> conditions were not considered, hence hit test values such as character >> index and insertion index values were incorrect. >> >> Added checks for RTL orientation of

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v7]

2024-01-31 Thread Andy Goryachev
On Wed, 31 Jan 2024 10:24:20 GMT, Karthik P K wrote: >> In the `getHitInfo()` method of PrismTextLayout, RTL node orientation >> conditions were not considered, hence hit test values such as character >> index and insertion index values were incorrect. >> >> Added checks for RTL orientation of

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v6]

2024-01-31 Thread Karthik P K
On Mon, 29 Jan 2024 07:31:53 GMT, Karthik P K wrote: >> In the `getHitInfo()` method of PrismTextLayout, RTL node orientation >> conditions were not considered, hence hit test values such as character >> index and insertion index values were incorrect. >> >> Added checks for RTL orientation of

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v7]

2024-01-31 Thread Karthik P K
> In the `getHitInfo()` method of PrismTextLayout, RTL node orientation > conditions were not considered, hence hit test values such as character index > and insertion index values were incorrect. > > Added checks for RTL orientation of nodes and fixed the issue in > `getHitInfo()` to calculat

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v4]

2024-01-29 Thread Andy Goryachev
On Mon, 29 Jan 2024 07:29:06 GMT, Karthik P K wrote: >>> Noticed a problem - on Windows 11 and on macOS 14.2.1 hit into shows >>> different values for Text and TextFlow. This issue can be seen with pretty >>> much every text, even "aaa\nbbb\n". In this screenshot, the line >>> corresponds

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v4]

2024-01-28 Thread Karthik P K
On Thu, 18 Jan 2024 07:49:26 GMT, Karthik P K wrote: > Noticed a problem - on Windows 11 and on macOS 14.2.1 hit into shows > different values for Text and TextFlow. > Fixed this issue. Please check. - PR Comment: https://git.openjdk.org/jfx/pull/1323#issuecomment-1914110425

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v6]

2024-01-28 Thread Karthik P K
> In the `getHitInfo()` method of PrismTextLayout, RTL node orientation > conditions were not considered, hence hit test values such as character index > and insertion index values were incorrect. > > Added checks for RTL orientation of nodes and fixed the issue in > `getHitInfo()` to calculat

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v5]

2024-01-17 Thread Karthik P K
> In the `getHitInfo()` method of PrismTextLayout, RTL node orientation > conditions were not considered, hence hit test values such as character index > and insertion index values were incorrect. > > Added checks for RTL orientation of nodes and fixed the issue in > `getHitInfo()` to calculat

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v4]

2024-01-17 Thread Karthik P K
On Wed, 17 Jan 2024 19:45:51 GMT, Andy Goryachev wrote: > Noticed a problem - on Windows 11 and on macOS 14.2.1 hit into shows > different values for Text and TextFlow. This issue can be seen with pretty > much every text, even "aaa\nbbb\n". In this screenshot, the line > corresponds to th

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v4]

2024-01-17 Thread Andy Goryachev
On Wed, 17 Jan 2024 10:54:46 GMT, Karthik P K wrote: >> In the `getHitInfo()` method of PrismTextLayout, RTL node orientation >> conditions were not considered, hence hit test values such as character >> index and insertion index values were incorrect. >> >> Added checks for RTL orientation of

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v2]

2024-01-17 Thread Andy Goryachev
On Wed, 17 Jan 2024 10:57:44 GMT, Karthik P K wrote: > flickering is observed This is not an issue: the hit info label gets wider than available space, causing a layout (there is no scroll bar). - PR Comment: https://git.openjdk.org/jfx/pull/1323#issuecomment-1896149715

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v2]

2024-01-17 Thread Karthik P K
On Tue, 16 Jan 2024 12:50:59 GMT, Karthik P K wrote: > There seems to be a weird problem with Text (tested on macOS) in the Monkey > Tester. Fixed this issue. Please check. I observed one more issue. When I scroll the Text window around 70% or more with Writing Systems selected and then hover

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v4]

2024-01-17 Thread Karthik P K
> In the `getHitInfo()` method of PrismTextLayout, RTL node orientation > conditions were not considered, hence hit test values such as character index > and insertion index values were incorrect. > > Added checks for RTL orientation of nodes and fixed the issue in > `getHitInfo()` to calculat

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v2]

2024-01-16 Thread Karthik P K
On Tue, 16 Jan 2024 15:42:28 GMT, Andy Goryachev wrote: >> Added comment and used bit logic in the condition. >> Do you think we should create a method in TextRun? I believe it is out of >> scope of this PR as it will be used in other functions as well. > > Yes, creating such a new method in Tex

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v2]

2024-01-16 Thread Andy Goryachev
On Tue, 16 Jan 2024 10:34:42 GMT, Karthik P K wrote: >> modules/javafx.graphics/src/main/java/com/sun/javafx/text/PrismTextLayout.java >> line 562: >> >>> 560: charIndex += textWidthPrevLine; >>> 561: charIndex += relIndex; >>> 562: if

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v2]

2024-01-16 Thread Karthik P K
On Fri, 12 Jan 2024 16:58:55 GMT, Andy Goryachev wrote: > There seems to be a weird problem with Text (tested on macOS) in the Monkey > Tester. 'Writing Systems' is a multi-line text with a tricky font (which does > not get rendered correctly in LTR mode for some reason, but does in RTL). So >

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v3]

2024-01-16 Thread Karthik P K
> In the `getHitInfo()` method of PrismTextLayout, RTL node orientation > conditions were not considered, hence hit test values such as character index > and insertion index values were incorrect. > > Added checks for RTL orientation of nodes and fixed the issue in > `getHitInfo()` to calculat

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v3]

2024-01-16 Thread Karthik P K
On Fri, 12 Jan 2024 15:50:24 GMT, Andy Goryachev wrote: >> Are you suggesting to pass boolean as parameter in addition to textRunStart >> and curRunStart? If that is the case then yes I think it would be better. > > that's right, something like this: > > > public Hit getHitInfo(float x, float

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v2]

2024-01-16 Thread Karthik P K
On Fri, 12 Jan 2024 16:14:20 GMT, Andy Goryachev wrote: >> Karthik P K has updated the pull request incrementally with one additional >> commit since the last revision: >> >> Code review changes > > modules/javafx.graphics/src/main/java/com/sun/javafx/text/PrismTextLayout.java > line 480: >

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v2]

2024-01-12 Thread Andy Goryachev
On Thu, 11 Jan 2024 10:15:01 GMT, Karthik P K wrote: >> In the `getHitInfo()` method of PrismTextLayout, RTL node orientation >> conditions were not considered, hence hit test values such as character >> index and insertion index values were incorrect. >> >> Added checks for RTL orientation of

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v2]

2024-01-12 Thread Andy Goryachev
On Thu, 11 Jan 2024 10:15:01 GMT, Karthik P K wrote: >> In the `getHitInfo()` method of PrismTextLayout, RTL node orientation >> conditions were not considered, hence hit test values such as character >> index and insertion index values were incorrect. >> >> Added checks for RTL orientation of

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation

2024-01-12 Thread Andy Goryachev
On Fri, 12 Jan 2024 06:29:44 GMT, Karthik P K wrote: > Do you think it is better to address that issue after we complete JDK-8318095? I think the solution for JDK-8318095 is just to trigger a layout, so we could do all these in parallel (as long as we don't resize the container). I was hoping t

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation [v2]

2024-01-12 Thread Andy Goryachev
On Fri, 12 Jan 2024 05:16:33 GMT, Karthik P K wrote: >> @karthikpandelu , the more I think about it, the less I like the idea of >> overloading (textRunStart and curRunStart). >> what if things will change in the future? >> >> I think it'll be much cleaner to pass a boolean forTextFlow (or forT

Re: RFR: 8319844 : Text/TextFlow.hitTest() is incorrect in RTL orientation

2024-01-11 Thread Karthik P K
On Wed, 10 Jan 2024 21:16:01 GMT, Andy Goryachev wrote: > I wonder if we should address JDK-8318095 first to be able to test this fix > fully. We have another bug [JDK-8319050](https://bugs.openjdk.org/browse/JDK-8319050) for the issue with `careShape()` and `rangeShape()`. Do you think it is

  1   2   >