ispyisail
d9db6e59e7
Let Escape step back out of the folio, so Tab cannot trap keyboard users
...
Tab cycles the folio's items, which means focusNextPrevChild() has to
refuse the usual focus traversal. On its own that leaves someone working
without a mouse able to reach the drawing area and never leave it -- the
exact person the Tab cycling was added for.
Escape now steps back out in two stages: it drops the selection first,
then hands focus to the next widget. The one-shot m_releasing_focus flag
is what lets that second Escape through the override.
Verified under Xvfb: with an item selected, Escape clears it (193k pixels
change); a second Escape changes nothing visually; a Tab after that moves
widget focus in the toolbar (306 pixels) instead of selecting on the
canvas, which is the behaviour of a view that no longer holds focus.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com >
2026-09-15 11:32:42 +12:00
..
2026-09-13 09:56:25 +12:00
2026-09-14 15:30:44 +12:00
2026-09-13 10:09:44 +02:00
2026-01-16 15:24:35 +01:00
2026-01-26 18:47:43 +01:00
2026-09-13 00:36:02 +12:00
2026-08-27 07:27:25 +02:00
2026-09-12 11:41:36 +02:00
2026-08-17 10:25:44 +02:00
2026-08-06 23:05:05 +12:00
2026-07-11 21:47:04 +02:00
2026-08-22 13:34:29 +02:00
2026-07-31 09:52:32 +12:00
2026-09-11 20:11:19 +03:00
2026-08-11 11:48:58 +12:00
2025-05-22 21:33:32 +02:00
2026-09-14 15:15:39 +12:00
2026-01-16 15:24:35 +01:00
2026-09-07 10:44:30 +02:00
2026-01-16 15:24:35 +01:00
2026-08-22 13:34:29 +02:00
2026-08-10 21:19:56 +12:00
2026-01-16 15:24:35 +01:00
2026-08-17 16:46:49 +02:00
2026-08-23 18:25:23 +02:00
2026-09-13 09:56:25 +12:00
2026-09-05 15:48:28 +02:00
2026-08-13 15:45:15 +02:00
2026-01-16 15:24:35 +01:00
2026-08-09 09:11:40 +02:00
2026-08-09 09:11:40 +02:00
2026-09-13 02:00:50 +12:00
2026-09-11 20:12:09 +03:00
2026-01-16 15:24:35 +01:00
2026-01-16 15:24:35 +01:00
2026-07-30 18:32:54 +12:00
2026-08-13 08:50:24 +08:00
2026-09-11 20:12:09 +03:00
2026-09-10 22:44:27 +02:00
2026-08-03 13:19:51 +12:00
2026-01-16 15:24:35 +01:00
2026-09-12 23:06:15 +12:00
2026-01-16 15:24:35 +01:00
2026-01-16 15:24:35 +01:00
2026-01-16 15:24:35 +01:00
2026-08-13 15:45:15 +02:00
2026-01-16 15:24:35 +01:00
2026-01-16 15:24:35 +01:00
2026-01-16 15:24:35 +01:00
2026-01-16 15:24:35 +01:00
2026-08-08 00:32:31 +02:00
2026-01-16 15:24:35 +01:00
2026-09-09 11:45:36 +12:00
2026-01-16 15:24:35 +01:00
2026-01-16 15:24:35 +01:00
2026-09-15 09:32:50 +12:00
2026-09-15 09:32:50 +12:00
2026-09-13 12:58:43 +02:00
2026-08-22 11:25:47 +02:00
2026-07-14 19:27:16 +02:00
2026-01-16 15:24:35 +01:00
2026-01-16 15:24:35 +01:00
2026-01-16 15:24:35 +01:00
2026-01-16 15:24:35 +01:00
2026-01-16 15:24:35 +01:00
2026-09-07 20:54:18 +12:00
2026-09-15 11:32:42 +12:00
2026-09-15 11:32:42 +12:00
2026-09-07 10:44:30 +02:00
2026-09-07 10:44:30 +02:00
2026-08-08 21:53:20 +12:00
2026-04-26 10:48:47 +02:00
2026-07-14 19:27:16 +02:00
2026-01-16 15:24:35 +01:00
2026-08-08 00:32:31 +02:00
2026-01-16 15:24:35 +01:00
2026-07-14 19:27:17 +02:00
2026-01-16 15:24:35 +01:00
2026-08-09 09:11:40 +02:00
2026-01-16 15:24:35 +01:00
2026-08-09 11:51:23 +02:00
2026-05-13 19:42:11 +02:00
2026-08-21 14:03:02 +02:00
2026-08-04 16:36:23 +12:00
2026-01-16 15:24:35 +01:00
2026-01-16 15:24:35 +01:00
2026-01-16 15:24:35 +01:00
2026-01-16 15:24:35 +01:00
2026-09-07 10:44:30 +02:00
2026-01-16 15:24:35 +01:00
2026-08-08 08:09:45 +02:00
2026-08-06 21:37:40 +02:00
2026-08-09 19:25:56 +02:00
2026-08-06 21:37:40 +02:00
2026-09-03 15:05:22 +02:00
2026-04-19 10:44:52 +02:00
2026-08-04 10:32:25 +12:00
2026-08-04 10:32:25 +12:00
2026-09-11 16:28:11 +02:00
2026-06-20 22:31:06 +12:00
2026-09-11 07:10:15 +12:00
2026-08-11 11:33:28 +12:00
2026-01-16 15:24:35 +01:00
2026-08-24 18:24:30 +02:00
2026-08-14 08:58:36 +02:00
2026-08-28 19:55:29 +02:00
2026-08-12 12:29:56 +02:00
2026-09-14 14:55:17 +12:00
2026-01-16 15:24:35 +01:00
2026-09-14 22:14:36 +12:00
2026-09-11 16:28:11 +02:00
2026-01-16 15:24:35 +01:00
2026-01-16 15:24:35 +01:00
2026-09-15 09:32:50 +12:00
2026-09-11 20:12:09 +03:00
2026-09-07 10:44:30 +02:00
2026-09-07 10:44:30 +02:00
2026-09-11 20:11:19 +03:00
2026-09-11 20:11:19 +03:00
2026-08-11 14:11:00 +02:00
2026-08-06 23:04:27 +12:00
2026-08-05 05:26:57 +12:00
2026-08-05 05:26:57 +12:00
2026-09-13 00:06:31 +12:00
2026-08-12 12:29:56 +02:00
2026-01-16 15:24:35 +01:00
2026-01-16 15:24:35 +01:00
2026-01-16 15:24:35 +01:00
2026-01-16 15:24:35 +01:00
2026-08-16 07:16:33 +02:00
2026-01-16 15:24:35 +01:00
2026-09-12 23:27:46 +12:00
2026-07-17 10:25:49 +02:00
2026-08-08 00:32:31 +02:00
2026-01-16 15:24:35 +01:00
2026-07-17 21:01:26 +02:00
2026-07-17 21:01:26 +02:00
2026-08-09 01:34:22 +02:00
2026-01-16 15:24:35 +01:00
2026-01-16 15:24:35 +01:00
2026-01-16 15:24:35 +01:00
2026-07-17 10:29:13 +02:00
2026-07-17 10:29:13 +02:00
2026-08-12 12:29:56 +02:00
2026-08-01 01:35:51 +12:00
2020-09-07 22:03:40 +02:00
2026-01-16 15:24:35 +01:00
2026-01-16 15:24:35 +01:00
2026-01-16 15:24:35 +01:00
2026-09-12 14:50:22 +02:00
2026-08-08 12:31:45 +02:00
2020-09-07 22:03:40 +02:00
2026-01-16 15:24:35 +01:00
2026-06-11 12:39:43 +12:00
2026-06-11 12:39:43 +12:00