From 6b023051eb044f1c72b5e70068d35c24c145fba9 Mon Sep 17 00:00:00 2001 From: dec05eba Date: Sat, 4 Jan 2025 03:06:49 +0100 Subject: Fallback to focused window for x11 uncomposited --- README.md | 3 ++- src/Overlay.cpp | 4 +++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 6774083..a7aa20c 100644 --- a/README.md +++ b/README.md @@ -56,4 +56,5 @@ If you want to donate you can donate via bitcoin or monero. # Known issues * When the UI is open the wallpaper is shown instead of the game on Hyprland and Sway. This is an issue with Hyprland and Sway. It cant be fixed until the UI is redesigned to not be a fullscreen overlay. -* Different keyboard layouts are not supported at the moment. The physical layout of keys are used for global hotkeys. If your Z and Y keys are swapped for example then you need to press Alt+Y instead of Alt+Z to open/hide the UI. If you experience this issue then please email dec05eba@protonmail.com to get it fixed. \ No newline at end of file +* Different keyboard layouts are not supported at the moment. The physical layout of keys are used for global hotkeys. If your Z and Y keys are swapped for example then you need to press Alt+Y instead of Alt+Z to open/hide the UI. If you experience this issue then please email dec05eba@protonmail.com to get it fixed. +* The mouse position can sometimes shift when opening the UI. diff --git a/src/Overlay.cpp b/src/Overlay.cpp index eb4ea4b..dd16243 100644 --- a/src/Overlay.cpp +++ b/src/Overlay.cpp @@ -2052,7 +2052,9 @@ namespace gsr { return false; bool window_texture_loaded = false; - const Window focused_window = get_focused_window(display, WindowCaptureType::CURSOR); + Window focused_window = get_focused_window(display, WindowCaptureType::CURSOR); + if(!focused_window) + focused_window = get_focused_window(display, WindowCaptureType::FOCUSED); if(focused_window && is_window_fullscreen_on_monitor(display, focused_window, monitor)) window_texture_loaded = window_texture_init(&window_texture, display, mgl_window_get_egl_display(window->internal_window()), focused_window, egl_funcs) == 0; -- cgit v1.2.3