Merge branch 'main' into next

This commit is contained in:
galister
2025-12-11 21:24:16 +09:00
3 changed files with 18 additions and 5 deletions

View File

@@ -222,6 +222,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,

View File

@@ -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).
@@ -145,10 +150,6 @@ Check [here](https://github.com/galister/wlx-overlay-s/wiki/Troubleshooting) for
### Mouse is not where it should be
Hyprland users: Hyprland v0.41.0 changed their absolute input implementation to one that does not respect existing absolute input standards. Make your voice heard: [Hyprland#6023](https://github.com/hyprwm/Hyprland/issues/6023)・[Hyprland#6889](https://github.com/hyprwm/Hyprland/issues/6889)
Niri users: use on Niri 0.1.7 or later.
X11 users might be dealing with a [Phantom Monitor](https://wiki.archlinux.org/title/Xrandr#Disabling_phantom_monitor).
Other desktops: The screens may have been selected in the wrong order, see [First Start](#first-start).

View File

@@ -222,12 +222,21 @@ impl OverlayBackend for ScreenBackend {
}
}
fn on_pointer(&mut self, app: &mut AppState, hit: &PointerHit, pressed: bool) {
let btn = match hit.mode {
let mut btn = match hit.mode {
PointerMode::Right => MOUSE_RIGHT,
PointerMode::Middle => MOUSE_MIDDLE,
_ => MOUSE_LEFT,
};
// Swap left and right buttons if left-handed mode is enabled
if app.session.config.left_handed_mouse {
btn = match btn {
MOUSE_LEFT => MOUSE_RIGHT,
MOUSE_RIGHT => MOUSE_LEFT,
other => other,
};
};
if pressed {
set_next_move(u64::from(app.session.config.click_freeze_time_ms));
}