Details
-
Bug
-
Resolution: Done
-
P2: Important
-
4.8.3, 5.0.0 Beta 2
-
None
-
Id7ec1741d0d5eb4ea845469909c8d684e14017f1
Description
A panel is any item that sets QGraphicsItem::ItemIsPanel. If you create an item that can take focus, or that has several child items, some of which can accept focus, you would expect one of these widgets to gain focus when the panel is activated. However with today's behavior you must explicitly have called setFocus() on the panel or one of its children for focus to automatically be given when the panel is activated. It's even not possible to hit Tab to get focus to appear on anything if setFocus() has not been explicitly called. This breaks the tab focus paradigm, where you should never have to set focus on any widget explicitly, it should be enough to define a reasonable focus chain.
QGraphicsScene should be smart enough to set focus on the first reasonable widget when a panel is activated. The current behavior, where explicit setFocus() ensure a certain widget gains focus, must be kept.
Attachments
Issue Links
- relates to
-
QTBUG-28187 Broken tab focus chain after enabling QGraphicsItem::ItemIsPanel
- Closed
For Gerrit Dashboard: QTBUG-28194 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
40581,2 | Make sure panels always gain focus when activated or tab is pressed. | master | qt/qtbase | Status: ABANDONED | +1 | 0 |
41613,3 | Make sure panels always gain focus when activated or tab is pressed. | dev | qt/qtbase | Status: MERGED | +2 | 0 |
42995,1 | Make sure panels always gain focus when activated or tab is pressed. | stable | qt/qtbase | Status: ABANDONED | 0 | 0 |