From 2d24950ad9a02096921bc764e2e3dcd8900c3366 Mon Sep 17 00:00:00 2001 From: akbash Date: Tue, 18 Aug 2026 04:37:11 +0300 Subject: fix: isolate hidden pane render cadence (#2892) refs #2890 Co-authored-by: akbash-bot <300245827+akbash-bot@users.noreply.github.com> --- src/app/mod.rs | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'src/app/mod.rs') diff --git a/src/app/mod.rs b/src/app/mod.rs index 2095b99e..501f39f6 100644 --- a/src/app/mod.rs +++ b/src/app/mod.rs @@ -149,7 +149,10 @@ pub struct App { /// Parsed `ui.window_title` plus the hostname resolved when it was applied. window_title_template: Option<(crate::config::WindowTitleTemplate, String)>, pub(crate) persist_pane_history: bool, + /// Last render-loop attempt, including a throttled hidden-only PTY skip. pub(crate) last_render_at: Option, + /// Last attempt that could update a connected presentation surface. + pub(crate) last_presentation_at: Option, pub(crate) input_leases: input::InputLeaseTable, pub render_notify: Arc, pub(crate) render_dirty: Arc, @@ -783,6 +786,7 @@ impl App { selection_highlight_clear_deadline: None, persist_pane_history: config.experimental.pane_history, last_render_at: None, + last_presentation_at: None, input_leases: input::InputLeaseTable::default(), api_rx, event_hub, @@ -1133,7 +1137,7 @@ impl App { self.render_dirty.request_generic(); self.render_notify.notify_one(); } - self.last_render_at = Some(now); + self.record_render_attempt(now, true); needs_render = false; continue; } -- cgit v1.2.3