Skip to content

Conversation

@faogustavo
Copy link
Collaborator

  • When the user clicks into some interop component inside the ComposePanel, the focus was being automatically stolen
  • The old logic was testing if the clicked component was a child of the compose panel wrapper (at any level)
  • However, that logic does not work well when we have interop with swing components
  • To fix that problem, the check now validates if the click happened in the "SwingSkiaLayer", by checking if the parent component is the compose panel
  • This ensures focus requests from interop components are correctly handled rather than intercepted/stolen
image
Before After
Screen Recording 2026-01-05 at 17 41 47 Screen Recording 2026-01-05 at 17 39 24

Release notes

Bug fixes

  • JewelComposePanelWrapper now handles focus on Swing Interop components correctly, without stealing the focus when it gets clicked/focused

- When the user clicks into some interop component inside the ComposePanel, the focus was being automatically stolen
- The old logic was testing if the clicked component was a child of the compose panel wrapper (at any level)
- However, that logic does not work well when we have interop with swing components
- To fix that problem, the check now validates if the click happened in the "SwingSkiaLayer", by checking if the parent component is the compose panel
- This ensures focus requests from interop components are correctly handled rather than intercepted/stolen
@rock3r
Copy link
Collaborator

rock3r commented Jan 10, 2026

Ready to merge

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants