Component
- Bugfix: Fix high CPU usage (app and terminal emulator, e.g. tmux) caused by a
cursor position request/reply feedback loop redrawing the screen at ~60fps in
the non-alternate-screen modes. See #1302. - Animation frames are now produced only when requested via
animation::RequestAnimationFrame()(e.g. byanimation::Animator), as in
FTXUI 6. Receiving an event no longer implicitly triggers an animation
frame. - Bugfix:
App::PostEventis now thread safe again, as documented. Since the
7.0.0 event loop rework it pushed into an unsynchronized buffer, racing with
the main loop when called from another thread. - Bugfix: Fix unbounded memory growth in the event buffer. A receiver used
during terminal setup was kept for the wholeApplifetime, retaining every
subsequent event (including every mouse move).
Dom
- Performance:
textcomputes its requirement once and renders only the
visible lines. This makes scrolling a large text inside aframe
significantly faster. Thanks @patlefort. See #1309. - Performance:
textselection now only visits and stores the selected line
range, instead of scanning and allocating one entry per line of the whole
text on every frame.