aboutsummaryrefslogtreecommitdiffstats
path: root/TODO
diff options
context:
space:
mode:
authorblasty <blasty@local>2026-08-06 22:12:56 +0200
committerblasty <blasty@local>2026-08-06 22:12:56 +0200
commit6f9cf89c0804eba19fb2d87469d2d2ab28f8049b (patch)
treebb3bb136ff5847765128f79b655420322b3f0efd /TODO
parenttests: one front door (diff)
downloadida-tui-6f9cf89c0804eba19fb2d87469d2d2ab28f8049b.tar.gz
ida-tui-6f9cf89c0804eba19fb2d87469d2d2ab28f8049b.tar.xz
ida-tui-6f9cf89c0804eba19fb2d87469d2d2ab28f8049b.zip
app: lift trace navigation out of IdaTui
First cut at the 4000-line class. Trace is the cleanest seam: 348 contiguous lines, one coherent job (where we are in time and everything that moves us), and two suites already covering it. TraceController owns the state now -- the trace, the timestamp, the trail maps. IdaTui keeps the keys, because Textual only merges BINDINGS from DOMNode subclasses and a mixin's would be silently dropped, and it keeps the @work entry points, because the worker machinery wants a DOMNode host. Both are one-line delegates. _trace/_t/_trail_map/_trail_map_ea/_trail_line_of stay readable on the app as properties: the pilot suite and rpc.py read the position by those names, and a property means one owner rather than a copy that can drift. rpc.py itself now goes through the controller. The parallel line-map that _apply_split_map used to poke into five attributes is now one adopt_map() call -- same single shared index, but the sharing is stated rather than implied by two places assigning the same fields. 731 checks, unchanged.
Diffstat (limited to 'TODO')
0 files changed, 0 insertions, 0 deletions