diff options
| author | blasty <blasty@local> | 2026-07-24 16:07:36 +0200 |
|---|---|---|
| committer | blasty <blasty@local> | 2026-07-24 16:07:36 +0200 |
| commit | d2d5d31073d3cbe54fdb1447d8e8380a43293453 (patch) | |
| tree | f1d14084369eee860f6b738e9af109593f32eabf /idatui/worker_client.py | |
| parent | ux: render the logo.ans ANSI-art splash in the loading overlay (diff) | |
| download | ida-tui-d2d5d31073d3cbe54fdb1447d8e8380a43293453.tar.gz ida-tui-d2d5d31073d3cbe54fdb1447d8e8380a43293453.tar.xz ida-tui-d2d5d31073d3cbe54fdb1447d8e8380a43293453.zip | |
hex: freeze the cursor's screen position on scroll (not clamp-to-edge)
Replace the clamp-to-nearest-edge follow with a true screen-position freeze:
watch_scroll_y now shifts the byte cursor by the exact scroll delta on a user
scroll (wheel/scrollbar), so it points at a new byte but stays on the same screen
row. Cursor-driven scrolls (_scroll_to_cursor via _apply_scroll) are marked with
_internal_top and skipped, so key-nav/click don't double-move the cursor. All
scroll sources funnel through the one watch point.
Pilot `hex` scenario: put the cursor mid-viewport, scroll 30 rows, assert its
screen row is unchanged (+ clicks still land on the exact byte). 10/10 pass.
Diffstat (limited to 'idatui/worker_client.py')
0 files changed, 0 insertions, 0 deletions
