diff options
| author | blasty <peter@haxx.in> | 2026-08-21 12:08:42 +0200 |
|---|---|---|
| committer | blasty <peter@haxx.in> | 2026-08-21 12:08:42 +0200 |
| commit | 7a3b198a904da186cc2860df059b063db24282ea (patch) | |
| tree | fd5a754169522c0ccd8b7e0d70b2238395d81b09 /logo.ans | |
| parent | docs: be honest that the triskel fork is unpublished (diff) | |
| download | ida-tui-7a3b198a904da186cc2860df059b063db24282ea.tar.gz ida-tui-7a3b198a904da186cc2860df059b063db24282ea.tar.xz ida-tui-7a3b198a904da186cc2860df059b063db24282ea.zip | |
splash: give the logo a placement id so re-anchoring replaces, not stacks
A kitty placement is identified by (image id, placement id); an a=p with no
p= key is anonymous and every one stacks another copy. The splash re-anchors
on every progress note (~5/s), so a 60s load ended with ~300 placements of an
RGBA logo alpha-compositing over each other -- soft edges creeping to solid,
and the terminal re-rendering all of them per frame.
Same pair every time (LOGO_PLACEMENT) = the terminal REPLACES the placement,
so re-anchoring is free and atomic. That is also why on_resize no longer
clear()s first (that showed a hole for a frame), and why a shrunk-to-nothing
region now drops the placement instead of leaving a stale one anchored.
tests/test_kittygfx.py pins the escapes (pure, stdlib);
experiments/splash_place_count.py counts what a real splash sends.
Diffstat (limited to 'logo.ans')
0 files changed, 0 insertions, 0 deletions
