Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
From 59b09307d4e1657792f4a5690f045603cd89b077 Mon Sep 17 00:00:00 2001
From 154962ff4d2beb0b01f6f159339b887bae1b415a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E9=93=BA=E7=9B=96=E5=B4=BD?= <i@pugai.life>
Date: Tue, 8 Apr 2025 09:42:08 +0800
Subject: [PATCH] fix-exec-path
Subject: [PATCH 1/2] fix-exec-path

---
resources/xwayland-satellite.service | 2 +-
Expand All @@ -20,3 +20,6 @@ index 060ab6b..f68cefd 100644
StandardOutput=journal

[Install]
--
2.52.0

This file was deleted.

Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
From 398666947b5d85805c4211c27625679da1a84b1c Mon Sep 17 00:00:00 2001
From: En-En <39373446+En-En-Code@users.noreply.github.com>
Date: Fri, 20 Feb 2026 00:04:24 +0000
Subject: [PATCH 2/2] fix: take ownership of `_NET_WM_CM_S0`

EWMH section 8.1 requires that compositing window managers take
ownership of `_NET_WM_CM_Sn` for each screen `n` they manage (in the
case of `satellite`, this is just screen 0).

The Avalonia UI toolkit needs this atom to be owned in order to
provide transparent window support. Resolves #376.
---
src/xstate/mod.rs | 9 +++++++++
1 file changed, 9 insertions(+)

diff --git a/src/xstate/mod.rs b/src/xstate/mod.rs
index e9425f0..0fd91d1 100644
--- a/src/xstate/mod.rs
+++ b/src/xstate/mod.rs
@@ -333,6 +333,14 @@ impl XState {
time: x::CURRENT_TIME,
})
.unwrap();
+
+ self.connection
+ .send_and_check_request(&x::SetSelectionOwner {
+ owner: self.wm_window,
+ selection: self.atoms.net_wm_cm_s0,
+ time: x::CURRENT_TIME,
+ })
+ .unwrap();
}

pub fn handle_events(&mut self, server_state: &mut super::RealServerState) {
@@ -1034,6 +1042,7 @@ xcb::atoms_struct! {
wm_transient_for => b"WM_TRANSIENT_FOR" only_if_exists = false,
wm_state => b"WM_STATE" only_if_exists = false,
wm_s0 => b"WM_S0" only_if_exists = false,
+ net_wm_cm_s0 => b"_NET_WM_CM_S0" only_if_exists = false,
wm_check => b"_NET_SUPPORTING_WM_CHECK" only_if_exists = false,
net_wm_name => b"_NET_WM_NAME" only_if_exists = false,
wm_pid => b"_NET_WM_PID" only_if_exists = false,
--
2.52.0

2 changes: 1 addition & 1 deletion runtime-display/xwayland-satellite/spec
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
VER=0.8.1
REL=1
REL=2
SRCS="git::commit=tags/v$VER::https://github.com/Supreeeme/xwayland-satellite.git"
CHKSUMS="SKIP"
CHKUPDATE="anitya::id=377600"