Eric Traut
bbad09a83b
Fix Windows TUI navigation key handling ( #34625 )
...
## Why
Crossterm's Windows event backend expects Win32 input records. When the console
inherits virtual terminal input mode, or another console client restores it,
navigation keys instead arrive as literal escape bytes.
## What changed
- Keep the Windows console in input-record mode while the event stream is
polled, and disable focus-change reporting on Windows.
- Preserve and restore the console's original virtual terminal input setting
when the TUI shuts down.
## Testing
- Add unit coverage for clearing and restoring the virtual terminal input bit.
GitOrigin-RevId: 792b99e354fce357d51810a6c3b437e972ad11ce
2026-07-21 22:11:34 +00:00
..
2026-07-02 10:59:00 -07:00
2026-06-09 12:48:04 -07:00
2026-06-24 13:24:10 -07:00
2026-06-22 13:19:40 -07:00
2026-07-21 02:59:22 +00:00
2026-07-21 20:55:56 +00:00
2026-07-10 21:24:03 +00:00
2026-07-21 08:50:21 +00:00
2026-07-21 19:17:18 +00:00
2026-07-14 21:54:24 +00:00
2026-07-14 00:38:04 +00:00
2026-06-23 00:02:33 +00:00
2026-07-21 08:59:41 +00:00
2026-06-11 18:16:39 -07:00
2026-07-21 15:00:18 +00:00
2026-06-13 21:43:39 -07:00
2026-07-20 22:06:50 +00:00
2026-07-21 21:06:04 +00:00
2026-07-21 08:28:51 +00:00
2026-07-21 14:57:39 +00:00
2026-07-21 08:28:51 +00:00
2026-06-11 18:16:39 -07:00
2026-07-18 23:22:13 +00:00
2026-07-06 16:26:56 -07:00
2026-07-21 02:07:13 +00:00
2026-07-20 17:18:25 +00:00
2026-07-07 13:00:44 -07:00
2026-07-07 01:12:24 +00:00
2026-06-15 20:10:53 -07:00
2026-07-21 19:17:18 +00:00
2026-06-21 13:35:25 -07:00
2026-07-21 19:08:58 +00:00
2026-07-21 18:23:26 +00:00
2026-06-22 11:11:25 -07:00
2026-07-21 22:02:49 +00:00
2026-07-14 17:10:04 +00:00
2026-07-21 10:05:06 +00:00
2026-07-21 19:25:39 +00:00
2026-06-05 15:41:13 -07:00
2026-07-21 19:17:18 +00:00
2026-07-21 21:54:31 +00:00
2026-07-21 21:54:31 +00:00
2026-07-20 06:13:29 +00:00
2026-07-21 20:51:25 +00:00
2026-07-21 02:55:11 +00:00
2026-07-21 02:07:13 +00:00
2026-07-20 13:45:29 +00:00
2026-07-21 19:17:18 +00:00
2026-05-28 23:09:55 -07:00
2026-07-21 13:34:39 +00:00
2026-07-20 20:06:58 +00:00
2026-07-21 10:05:06 +00:00
2026-07-08 12:17:58 -04:00
2026-06-12 19:52:49 +00:00
2026-07-21 19:17:18 +00:00
2026-07-21 10:05:06 +00:00
2026-07-20 19:23:21 +00:00
2026-07-21 08:28:51 +00:00
2026-07-17 20:52:42 +00:00
2026-07-16 21:41:00 +00:00
2026-07-16 21:41:00 +00:00
2026-07-21 00:22:31 +00:00
2026-07-21 21:54:31 +00:00
2026-06-04 09:53:08 -04:00
2026-07-20 16:25:57 +00:00
2026-06-23 22:51:19 +01:00
2026-05-25 17:26:10 -03:00
2026-07-21 19:17:18 +00:00
2026-07-21 19:17:18 +00:00
2026-07-17 21:20:14 +00:00
2026-07-21 21:58:41 +00:00
2026-07-20 23:30:30 +00:00
2026-07-21 21:06:04 +00:00
2026-05-26 20:59:47 -07:00
2026-06-12 19:52:49 +00:00
2026-07-16 01:12:14 +00:00
2026-06-25 13:56:08 -07:00
2026-07-20 23:22:48 +00:00
2026-07-21 15:10:42 +00:00
2026-05-13 21:23:19 +00:00
2026-07-20 21:00:17 +00:00
2026-07-21 21:58:41 +00:00
2026-07-17 23:14:37 +00:00
2026-07-21 22:11:34 +00:00
2026-07-21 22:07:09 +00:00
2026-06-13 21:43:39 -07:00
2026-06-13 21:43:39 -07:00
2026-07-21 00:33:04 +00:00
2026-07-21 22:07:09 +00:00
2026-07-09 17:31:44 -07:00
2026-07-21 21:06:04 +00:00
2026-07-20 21:00:17 +00:00
2026-07-11 03:27:51 +00:00
2026-07-21 10:05:06 +00:00
2026-06-04 09:16:03 -07:00
2026-05-26 20:59:47 -07:00