Matthew Ma
275a9a89b6
Keep exposed leading bangs literal in the chat composer ( #58412 )
...
## Why
Deleting `Yes` from `Yes! I agree.` should leave an ordinary message, without entering shell mode or treating the remaining `!` as a shell command on submission.
## What changed
- Activate shell mode when an edit inserts a leading `!`, rather than when deletion exposes one.
- Use the composer's shell-mode state to classify submissions and preserve that state when restoring the same draft.
- Keep input with whitespace before `!` in normal text mode.
## Testing
Add regression coverage for literal-bang submission and queueing, editing and rendering, Vim repeat and undo/redo, and cancelled history search. Update paste and startup-submission tests to distinguish literal bangs from shell commands.
GitOrigin-RevId: 05002c3e07edb47e0882465ad91b39d317d2c663
2026-10-30 18:53:11 +00:00
..
2026-10-01 01:35:40 +00:00
2026-10-27 05:52:01 +00:00
2026-10-30 18:53:11 +00:00
2026-10-15 19:02:09 +00:00
2026-10-29 03:07:15 +00:00
2026-10-07 22:46:41 +00:00
2026-10-30 06:36:20 +00:00
2026-10-30 18:53:11 +00:00
2026-10-06 18:52:05 +00:00
2026-10-28 23:06:34 +00:00
2026-10-06 18:52:05 +00:00
2026-10-14 22:58:37 +00:00
2026-10-06 18:16:18 +00:00
2026-10-30 08:03:51 +00:00
2026-10-30 08:03:51 +00:00
2026-10-29 02:10:32 +00:00
2026-10-01 01:47:15 +00:00
2026-10-30 18:53:11 +00:00
2026-10-26 21:14:35 +00:00
2026-09-22 18:06:15 +00:00
2026-10-10 22:28:01 +00:00
2026-09-19 19:14:11 +00:00
2026-10-15 19:02:09 +00:00
2026-10-29 02:10:32 +00:00
2026-10-29 02:10:32 +00:00
2026-09-20 03:02:48 +00:00
2026-10-29 19:16:28 +00:00
2026-10-15 03:48:33 +00:00
2026-10-04 06:46:50 +00:00
2026-09-19 19:14:11 +00:00
2026-10-03 03:00:46 +00:00
2026-10-26 21:14:35 +00:00
2026-10-29 03:07:15 +00:00
2026-10-06 19:52:29 +00:00
2026-10-26 22:12:07 +00:00
2026-10-23 18:39:28 +00:00
2026-10-27 05:52:01 +00:00
2026-10-30 06:36:20 +00:00
2026-09-19 19:12:18 +00:00
2026-10-14 20:05:29 +00:00
2026-10-20 15:10:26 +00:00
2026-10-20 15:10:26 +00:00
2026-10-30 08:03:51 +00:00
2026-10-29 03:07:15 +00:00
2026-10-11 15:38:44 +00:00
2026-10-06 19:51:39 +00:00
2026-09-19 19:21:35 +00:00
2026-10-03 03:00:46 +00:00
2026-09-19 19:12:18 +00:00
2026-09-19 19:11:54 +00:00
2026-09-19 19:21:35 +00:00
2026-10-01 17:52:19 +00:00
2026-10-26 21:36:05 +00:00
2026-09-19 19:21:35 +00:00
2026-09-19 19:21:35 +00:00
2026-10-26 21:14:35 +00:00
2026-10-12 17:14:59 +00:00
2026-10-06 19:52:03 +00:00
2026-10-26 21:14:35 +00:00
2026-09-19 17:46:43 +00:00
2026-09-19 19:21:35 +00:00
2026-10-15 19:02:34 +00:00
2026-09-20 02:59:37 +00:00
2026-10-11 15:50:39 +00:00
2026-10-26 21:14:35 +00:00
2026-10-29 17:35:44 +00:00
2026-10-04 01:36:25 +00:00
2026-09-20 03:02:02 +00:00
2026-10-29 03:07:15 +00:00
2026-10-29 03:07:15 +00:00
2026-10-29 02:10:32 +00:00
2026-10-29 03:07:15 +00:00
2026-10-30 18:53:11 +00:00
2026-10-26 21:21:23 +00:00
2026-10-06 19:12:16 +00:00
2026-10-14 22:58:37 +00:00
2026-10-03 03:00:46 +00:00
2026-10-13 23:58:39 +00:00
2026-10-08 21:01:06 +00:00
2026-10-01 22:17:51 +00:00
2026-10-26 21:36:05 +00:00
2026-10-26 21:36:05 +00:00
2026-10-26 21:36:05 +00:00
2026-10-26 21:36:05 +00:00