File tree Expand file tree Collapse file tree
frontends/rioterm/src/renderer Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -415,28 +415,8 @@ impl TrailCursor {
415415 }
416416
417417 /// `true` while the spring corners haven't settled *visibly*.
418- ///
419- /// TODO: neovide deviation. Their equivalent returns true while
420- /// any spring `|position| >= 0.01` (the internal `Spring::update`
421- /// reset tolerance). We raise that to 0.5 px so the outer render
422- /// loop exits ~15-25 frames sooner per animation — without this,
423- /// rio keeps re-posting `needs_redraw()` / `set_dirty()`
424- /// every vsync for the full spring tail, which starves the
425- /// compositor drawable pool and causes `next_drawable` to block
426- /// ~4 ms per frame on macOS. Neovide doesn't hit this because
427- /// Skia renders through a different present path.
428- ///
429- /// Proper fix is to not force full-screen redraws just because
430- /// the trail quad shifted sub-pixel — either trail-only damage
431- /// or a dedicated overlay layer. Once that's in, revert this to
432- /// plain `self.animating` to match neovide exactly.
433418 #[ inline]
434419 pub fn is_animating ( & self ) -> bool {
435- if !self . animating {
436- return false ;
437- }
438- self . corners
439- . iter ( )
440- . any ( |c| c. spring_x . position . abs ( ) >= 0.5 || c. spring_y . position . abs ( ) >= 0.5 )
420+ !self . animating
441421 }
442422}
You can’t perform that action at this time.
0 commit comments