Details
-
Bug
-
Resolution: Fixed
-
P2: Important
-
5.4.2, 5.14.2, 6.3.1
-
None
-
macOS 10.15 - 14
-
-
cf9b143cb (dev), 565923306 (6.7), 28ac7a4e6 (6.6), 8c3a2f643 (tqtc/lts-6.5)
Description
We use Qt to embed controls into floating palettes of Adobe Illustrator. An Illustrator-provided palette is the parent of Qt widgets. There are multiple issues with transfering focus between Qt controls and Adobe controls:
- Qt edit fields sometimes not get focus
- Qt edit fields sometimes not lose focus, esp. when Adobe controls get the focus
- Text caret sometimes not shown when typing in a Qt edit-field
The root-cause is that the container widget was not activated after mouse clicking. The 'QCocoaWindow' should handle the window de/activation if it's embedded (i.e not a toplevel NSWindow).
The proposed fix is in QCocoaWindow::windowDidBecomeKey() and QCocoaWindow::windowDidResignKey() - see the attached patch file for Qt 6.3.1. 6.3.2, 6.6.0