diff options
| author | Can Celik <ogulcancelik@gmail.com> | 2026-09-02 22:45:51 +0300 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2026-09-02 22:45:51 +0300 |
| commit | e22cba35ef7b405758097a5f9436aae8fb4caaf0 (patch) | |
| tree | a25cf28ad45a3b34c4dc25d54e3095f6c8be2b3a /src/app | |
| parent | 5a2dee700eeeea68267a4d16777307632f77172f (diff) | |
fix: keep direct graphics bound to its client (#3549)
Diffstat (limited to 'src/app')
| -rw-r--r-- | src/app/pane_graphics.rs | 7 |
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 { |
