From a7996d7db84547e91590cf025ee314a9e1e7521a Mon Sep 17 00:00:00 2001 From: SpookySkeletons <37986496+SpookySkeletons@users.noreply.github.com> Date: Tue, 12 Aug 2025 04:30:42 -0400 Subject: [PATCH 1/4] fix: KDE vertical monitor fix (#247) --- src/overlays/screen.rs | 14 ++------------ 1 file changed, 2 insertions(+), 12 deletions(-) diff --git a/src/overlays/screen.rs b/src/overlays/screen.rs index f9e209a..b76b171 100644 --- a/src/overlays/screen.rs +++ b/src/overlays/screen.rs @@ -807,18 +807,8 @@ pub fn create_screens_wayland(wl: &mut WlxClientAlias, app: &mut AppState) -> Sc let transform = output.transform.into(); let interaction = create_screen_interaction(logical_pos, logical_size, transform); - let logical_size_landscape = if output.size.0 > output.size.1 { - output.logical_size - } else { - (output.logical_size.1, output.logical_size.0) - }; - - let state = create_screen_state( - output.name.clone(), - logical_size_landscape, - transform, - &app.session, - ); + let state = + create_screen_state(output.name.clone(), output.size, transform, &app.session); let meta = ScreenMeta { name: wl.outputs[id].name.clone(), From 6e77a93cf542637b8b84babd014df251228ad470 Mon Sep 17 00:00:00 2001 From: galister <22305755+galister@users.noreply.github.com> Date: Tue, 12 Aug 2025 17:34:05 +0900 Subject: [PATCH 2/4] update wlx-capture to fix cosmic resolution issue --- Cargo.lock | 4 ++-- Cargo.toml | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 1487811..e73e544 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -5271,8 +5271,8 @@ dependencies = [ [[package]] name = "wlx-capture" -version = "0.5.3" -source = "git+https://github.com/galister/wlx-capture?tag=v0.5.3#4479bd4bdd2b570aec9692e55b513ec7c0a17e7f" +version = "0.5.4" +source = "git+https://github.com/galister/wlx-capture?tag=v0.5.4#1aad584fafd529c63cce3355f0b2e2175ab69c70" dependencies = [ "ashpd", "drm-fourcc", diff --git a/Cargo.toml b/Cargo.toml index e89f6a1..d3f5fb6 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -58,7 +58,7 @@ sysinfo = { version = "0.34.2" } thiserror = "2.0.3" vulkano = { version = "0.35.1" } vulkano-shaders = { version = "0.35.0" } -wlx-capture = { git = "https://github.com/galister/wlx-capture", tag = "v0.5.3", default-features = false } +wlx-capture = { git = "https://github.com/galister/wlx-capture", tag = "v0.5.4", default-features = false } libmonado = { version = "1.3.2", optional = true } winit = { version = "0.30.0", optional = true } xdg = "2.5.2" From dd5e608fd1e3f81922af51de5fccce2d7dcf2908 Mon Sep 17 00:00:00 2001 From: Shiloh Fen Date: Tue, 12 Aug 2025 03:35:18 -0500 Subject: [PATCH 3/4] Add Homebrew installation instructions (#244) --- README.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/README.md b/README.md index 971142f..60d3611 100644 --- a/README.md +++ b/README.md @@ -41,6 +41,11 @@ For users specifically running **SteamVR via Steam Flatpak**, follow these steps 1. Start SteamVR. 1. `flatpak run --command='/path/to/squashfs-root/AppRun' com.valvesoftware.Steam` +### Install via Homebrew + +1. Add AtomicXR tap `brew tap matrixfurry.com/atomicxr https://tangled.sh/@matrixfurry.com/homebrew-atomicxr` +2. Install WlxOverlay-S: `brew install wlx-overlay-s` + AUR package is [wlx-overlay-s-git](https://aur.archlinux.org/packages/wlx-overlay-s-git). You may also want to [build from source](https://github.com/galister/wlx-overlay-s/wiki/Building-from-Source). From fbd518952127299dddea91122e0dcb53a0218568 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sorch=C3=A9?= Date: Thu, 14 Aug 2025 00:09:39 +0200 Subject: [PATCH 4/4] [Feature] Add left-handed mouse emulation for swapped button handling (#249) * Adds left handed mouse mode config * cleanup --- src/config.rs | 3 +++ src/overlays/screen.rs | 11 +++++++++++ 2 files changed, 14 insertions(+) diff --git a/src/config.rs b/src/config.rs index b1d5de2..8a94a2d 100644 --- a/src/config.rs +++ b/src/config.rs @@ -273,6 +273,9 @@ pub struct GeneralConfig { #[serde(default = "def_false")] pub focus_follows_mouse_mode: bool, + #[serde(default = "def_false")] + pub left_handed_mouse: bool, + #[serde(default = "def_false")] pub block_game_input: bool, diff --git a/src/overlays/screen.rs b/src/overlays/screen.rs index b76b171..f576f63 100644 --- a/src/overlays/screen.rs +++ b/src/overlays/screen.rs @@ -134,6 +134,17 @@ impl InteractionHandler for ScreenInteractionHandler { _ => MOUSE_LEFT, }; + // Swap left and right buttons if left-handed mode is enabled + let btn = if app.session.config.left_handed_mouse { + match btn { + MOUSE_LEFT => MOUSE_RIGHT, + MOUSE_RIGHT => MOUSE_LEFT, + other => other, + } + } else { + btn + }; + if pressed { set_next_move(u64::from(app.session.config.click_freeze_time_ms)); }