aboutsummaryrefslogtreecommitdiff
path: root/src/app
diff options
context:
space:
mode:
authorCan Celik <ogulcancelik@gmail.com>2026-09-02 22:45:51 +0300
committerGitHub <noreply@github.com>2026-09-02 22:45:51 +0300
commite22cba35ef7b405758097a5f9436aae8fb4caaf0 (patch)
treea25cf28ad45a3b34c4dc25d54e3095f6c8be2b3a /src/app
parent5a2dee700eeeea68267a4d16777307632f77172f (diff)
fix: keep direct graphics bound to its client (#3549)
Diffstat (limited to 'src/app')
-rw-r--r--src/app/pane_graphics.rs7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/app/pane_graphics.rs b/src/app/pane_graphics.rs
index 7b516116..e6c43fa1 100644
--- a/src/app/pane_graphics.rs
+++ b/src/app/pane_graphics.rs
@@ -65,6 +65,13 @@ impl Slot {
.as_ref()
.is_some_and(|active| active.load(std::sync::atomic::Ordering::Acquire))
}
+
+ pub(crate) fn direct_client(&self) -> Option<u64> {
+ self.direct_gate
+ .as_ref()
+ .map(|gate| gate.client_id)
+ .or_else(|| self.layer.as_ref().and_then(Layer::resident_client))
+ }
}
impl Drop for Slot {