diff options
| author | blasty <blasty@local> | 2026-07-26 14:36:12 +0200 |
|---|---|---|
| committer | blasty <blasty@local> | 2026-07-26 14:36:12 +0200 |
| commit | fd696d8cf080c37c1cbe7696f21fe8d5b8c468e4 (patch) | |
| tree | d15d8a6bfad5726b0a99b5f0d8875d200ab78478 /docs | |
| parent | listing: syntax-highlight assembly from IDA's own token tags (diff) | |
| download | ida-tui-fd696d8cf080c37c1cbe7696f21fe8d5b8c468e4.tar.gz ida-tui-fd696d8cf080c37c1cbe7696f21fe8d5b8c468e4.tar.xz ida-tui-fd696d8cf080c37c1cbe7696f21fe8d5b8c468e4.zip | |
app: delete DisasmView, superseded by the unified listing
DisasmView was the function-scoped code view from before the unification. The
app hasn't instantiated it since — compose() yields only ListingView, and even
the test harness's Ctx.dis returns ListingView with a comment saying so. Its
CursorMoved messages had no handler, so every one it posted went nowhere.
304 lines of rendering, search, cursor and navigation logic that never ran. It
also cost real time this week: it made assembly highlighting look like a job
that needed doing twice, and its isinstance branches in the follow and xrefs
handlers were unreachable twins of the ListingView branch directly below them,
which is exactly the kind of thing you read carefully before realising it can't
execute.
Gone with it: the dead branches (folded into the ListingView ones, keeping the
fall-through-edge comment that was worth keeping), its CSS rule, and the
comments that pointed at it as though it were a live alternative.
DisasmModel STAYS — the domain still uses it to index a function's instructions
(_do_edit_item resolves a row within a function that way). Only the widget was
dead.
209/0 scenarios, 26/0 blob, 30/0 project UI, 36/0 index, 32/0 formats, 39/0
project, 27/0 pool. Smoke-tested a live pane afterwards: the listing renders,
highlighted, and `drive where` answers.
Diffstat (limited to 'docs')
| -rw-r--r-- | docs/TEXTUAL_NOTES.md | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/docs/TEXTUAL_NOTES.md b/docs/TEXTUAL_NOTES.md index 059b47c..c8b265c 100644 --- a/docs/TEXTUAL_NOTES.md +++ b/docs/TEXTUAL_NOTES.md @@ -15,7 +15,7 @@ Hard-won Textual behaviour and the patterns this app relies on. Pairs with isn't recomputed until layout. Apply the scroll now AND again via `call_after_refresh` with `refresh(layout=True)`; don't zero `virtual_size` on load (snaps scroll to 0 → visible flash). See `ColumnCursor._apply_scroll`, - `DisasmView._on_primed`, `DecompView.show`. + `ListingView._on_primed`, `DecompView.show`. - **Scrolling on already-laid-out content (no reload) leaves a stale frame.** A plain `scroll_to` moves `scroll_offset` but Textual only repaints on a *rounded* scroll change, and with no virtual_size/content change there's no |
