aboutsummaryrefslogtreecommitdiffstats
path: root/tests/test_trace_ui.py
diff options
context:
space:
mode:
authorblasty <blasty@local>2026-08-06 23:07:30 +0200
committerblasty <blasty@local>2026-08-06 23:07:30 +0200
commite0e65b1a26f96b304b098490da77ed1722d2260d (patch)
treed950058ab8a1607bfca2384d9cf6a86bb427076f /tests/test_trace_ui.py
parentapp: lift trace navigation out of IdaTui (diff)
downloadida-tui-e0e65b1a26f96b304b098490da77ed1722d2260d.tar.gz
ida-tui-e0e65b1a26f96b304b098490da77ed1722d2260d.tar.xz
ida-tui-e0e65b1a26f96b304b098490da77ed1722d2260d.zip
app: lift database edits out of IdaTui, and one prompt abstraction
Second cut at the 4000-line class, and the biggest: 702 contiguous lines of rename/comment/retype/make-data/literal-format/define, now EditController. What stays on IdaTui is what Textual insists on owning -- on_<Message> handlers, which it dispatches by name on the DOMNode, and @work entry points, whose worker machinery wants a DOMNode host. Both are one-line delegates. Underneath them was the duplication that made this worth doing rather than just moving lines. Opening a prompt (hide the status bar, set placeholder, can_focus, display, value, focus) was written out five times; closing it four; and Esc was a six-branch ladder in on_key with one copy of the same four lines per prompt. They had drifted -- search cancelled its highlight, goto restored focus, the edit prompts did neither consistently. Prompt/PromptBar own that discipline once, and close() HANDS BACK the context it was holding, so it can't be read twice or go stale: the listing's rename had to capture _rename_addr by hand before _end_rename cleared it, or the name went to address 0. _line_ea_for stays on the app -- rpc.py and the goto readback ask the same question, so it was never an edit helper.
Diffstat (limited to 'tests/test_trace_ui.py')
0 files changed, 0 insertions, 0 deletions