surshar / claude-code
Claude Code is an agentic coding tool that lives in your terminal, understands your codebase, and helps you code faster by executing routine tasks, explaining complex code, and handling git workflows - all through natural language commands.
Built by Anthropic · github.com/anthropics
The pane and the dialog were opened with holdToasts, which holds every toast while the pane is shown: other plugins' and the app's own, as this plugin's. Nothing in the mod relies on the hold, and a toast no longer lands between the pane and the prompt, so the option goes from both opens.
| Mmods/diff/README.md |
| Mmods/diff/hooks/register.ts |
| Mmods/diff/tests/register.test.ts |
| Mmods/diff/tests/views.test.ts |
| @@ -37,8 +37,8 @@ | ||
| 37 | 37 | `ui.focus` and re-centres the rows as the built-in does), the key hints; |
| 38 | 38 | Enter shows that file's hunks alone, |
| 39 | 39 | Escape backs out to the list and then closes, leaving `Diff dialog |
| 40 | -dismissed`; toasts are held while it is up. A file's ask button arms that | |
| 41 | -file: its hunks ride the next prompt as context, once. | |
| 40 | +dismissed`; toasts show while it is up, as beside the docked pane. A file's | |
| 41 | +ask button arms that file: its hunks ride the next prompt as context, once. | |
| 42 | 42 | |
| 43 | 43 | The pane compares the working tree against HEAD, split at the session's |
| 44 | 44 | start (the default; the start the engine gives in `$.session.usage()`, so a |
| @@ -180,7 +180,6 @@ | ||
| 180 | 180 | return { |
| 181 | 181 | id: Names.PANE_ID, |
| 182 | 182 | title: Names.PANE_TITLE, |
| 183 | - holdToasts: true, | |
| 184 | 183 | closeOnEscape: true, |
| 185 | 184 | rows: Views.dialogRowsOf(model), |
| 186 | 185 | } |
| @@ -439,7 +438,7 @@ | ||
| 439 | 438 | const opened = await engine.openPane( |
| 440 | 439 | isDialog |
| 441 | 440 | ? { ...dialogPane(), focus: true } |
| 442 | - : { id: Names.PANE_ID, title: Names.PANE_TITLE, holdToasts: true }, | |
| 441 | + : { id: Names.PANE_ID, title: Names.PANE_TITLE }, | |
| 443 | 442 | ) |
| 444 | 443 | |
| 445 | 444 | const isWaiting = isRecord(opened) && opened.isPlaced === false |
| @@ -358,9 +358,7 @@ | ||
| 358 | 358 | '--show-toplevel', |
| 359 | 359 | ) |
| 360 | 360 | |
| 361 | - expect(world.opened).toEqual([ | |
| 362 | - { id: 'diff', title: 'Diff', holdToasts: true }, | |
| 363 | - ]) | |
| 361 | + expect(world.opened).toEqual([{ id: 'diff', title: 'Diff' }]) | |
| 364 | 362 | |
| 365 | 363 | await world.clock.advance(Fixtures.SETTLE_MS) |
| 366 | 364 | |
| @@ -380,7 +378,6 @@ | ||
| 380 | 378 | expect(world.opened[0]).toEqual({ |
| 381 | 379 | id: 'diff', |
| 382 | 380 | title: 'Diff', |
| 383 | - holdToasts: true, | |
| 384 | 381 | closeOnEscape: true, |
| 385 | 382 | rows: expect.any(Number), |
| 386 | 383 | focus: true, |
| @@ -290,7 +290,6 @@ | ||
| 290 | 290 | expect(world.opened.at(-1), 'sized to its rows once listed').toEqual({ |
| 291 | 291 | id: 'diff', |
| 292 | 292 | title: 'Diff', |
| 293 | - holdToasts: true, | |
| 294 | 293 | closeOnEscape: true, |
| 295 | 294 | rows: 8, |
| 296 | 295 | }) |