RFR: 8349004: DatePicker: NPE in show() when initialized in a background thread
Kevin Rushforth
kcr at openjdk.org
Wed Feb 12 23:21:17 UTC 2025
On Wed, 12 Feb 2025 19:45:32 GMT, Andy Goryachev <angorya at openjdk.org> wrote:
> ## Root Cause
>
> Focus is being requested in show(), even a background thread.
>
> ## Solution
>
> Do not request focus if in a background thread.
I took a quick look at PR #1709 which has a similar problem with its show method, and there is a third option we should consider:
3. Change the implementation of all skin show methods to do nothing (bail out early) if not on the FX application thread. If we do this, I would want to see it documented.
In any case, I'd like to pause the reviews of the individual PRs that touch the skin's `show` method until we resolve the larger question of what to do about `*Skin::show`.
One thing that would help inform the discussion:
Why did you call show in the first place in your NodeInitStressTest (for that matter, why directly call _any_ skin methods, since apps generally don't)? Was it just something you did to stress it, or is it reflective of a normal operation that an app might do during initialization of a node on a background thread? I have a feeling it's the former, but maybe I'm missing something.
-------------
PR Comment: https://git.openjdk.org/jfx/pull/1708#issuecomment-2655054885
More information about the openjfx-dev
mailing list