diff options
| author | akbash <akbash@herdr.dev> | 2026-08-18 04:37:11 +0300 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2026-08-18 04:37:11 +0300 |
| commit | 2d24950ad9a02096921bc764e2e3dcd8900c3366 (patch) | |
| tree | b6884a29425922dfed083bb7108415ae56725a45 /src/app/mod.rs | |
| parent | d497ee14dd3f2b5325a16d0de779ed6bd62178ee (diff) | |
fix: isolate hidden pane render cadence (#2892)
refs #2890
Co-authored-by: akbash-bot <300245827+akbash-bot@users.noreply.github.com>
Diffstat (limited to 'src/app/mod.rs')
| -rw-r--r-- | src/app/mod.rs | 6 |
1 files changed, 5 insertions, 1 deletions
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<Instant>, + /// Last attempt that could update a connected presentation surface. + pub(crate) last_presentation_at: Option<Instant>, pub(crate) input_leases: input::InputLeaseTable, pub render_notify: Arc<Notify>, pub(crate) render_dirty: Arc<crate::render_signal::RenderSignal>, @@ -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; } |
