Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Super key not working #1658

Closed
3 of 6 tasks
shawarden opened this issue Dec 7, 2024 · 22 comments · Fixed by #1666
Closed
3 of 6 tasks

Super key not working #1658

shawarden opened this issue Dec 7, 2024 · 22 comments · Fixed by #1666

Comments

@shawarden
Copy link

shawarden commented Dec 7, 2024

Is there an existing issue for this?

  • I have searched the existing issues

Are you using any gamescope patches or a forked version of gamescope?

  • The issue occurs on upstream gamescope without any modifications

Current Behavior

When using the Super key (Super_L) to toggle fullscreen mode it doesn't react. Other Super + functions (upscaling mode, screenshot, etc) also don't seem to do anything.

Steps To Reproduce

  1. Launch an application inside gamescope
  2. Hold the Super / Meta / Windows key
  3. Press F key to toggle fullscreen mode.

Hardware information

- Distro: Garuda Soaring
- CPU: AMD Ryzen 9 5900X
- GPU: AMD Radeon RX 6600 XT
- Driver Version: Mesa 24.3.1-arch1.1

Software information

- Desktop environment: KDE
- Session type: Wayland
- Gamescope version: 3.15.14 
- Gamescope launch command(s): gamescope -W 1920 -H 1080 -r 144 -- %command%

Which gamescope backends have the issue you are reporting?

  • Wayland (default for nested gamescope)
  • DRM (default for embedded gamescope, i.e. gamescope-session)
  • SDL
  • OpenVR

Logging, screenshots, or anything else

Running xev in gamescope shows the Super_L and f keys being received by the application but it doesn't toggle full screen mode.

demonstration ❯ gamescope -- xev[gamescope] [Info] console: gamescope version 3.15.14 (gcc 14.2.1) (gamescope:2542297): Gdk-WARNING **: 00:12:09.564: Failed to read portal settings: GDBus.Error:org.freedesktop.DBus.Error.AccessDenied: Portal operation not allowed: Unable to open /proc/2542297/root ATTENTION: default value of option vk_khr_present_wait overridden by environment. ATTENTION: default value of option vk_khr_present_wait overridden by environment. ATTENTION: default value of option vk_khr_present_wait overridden by environment. [gamescope] [Info] vulkan: selecting physical device 'AMD Radeon RX 6600 XT (RADV NAVI23)': queue family 1 (general queue family 0) [gamescope] [Info] vulkan: physical device supports DRM format modifiers [gamescope] [Info] wlserver: [backend/headless/backend.c:67] Creating headless backend [gamescope] [Info] xdg_backend: Seat name: seat0 [gamescope] [Info] vulkan: supported DRM formats for sampling usage: [gamescope] [Info] vulkan: AR24 (0x34325241) [gamescope] [Info] vulkan: XR24 (0x34325258) [gamescope] [Info] vulkan: AB24 (0x34324241) [gamescope] [Info] vulkan: XB24 (0x34324258) [gamescope] [Info] vulkan: RG16 (0x36314752) [gamescope] [Info] vulkan: NV12 (0x3231564E) [gamescope] [Info] vulkan: AB4H (0x48344241) [gamescope] [Info] vulkan: XB4H (0x48344258) [gamescope] [Info] vulkan: AB48 (0x38344241) [gamescope] [Info] vulkan: XB48 (0x38344258) [gamescope] [Info] vulkan: AB30 (0x30334241) [gamescope] [Info] vulkan: XB30 (0x30334258) [gamescope] [Info] vulkan: AR30 (0x30335241) [gamescope] [Info] vulkan: XR30 (0x30335258) [gamescope] [Info] wlserver: Using explicit sync when available [gamescope] [Info] wlserver: Running compositor on wayland display 'gamescope-0' [gamescope] [Info] wlserver: [backend/headless/backend.c:17] Starting headless backend [gamescope] [Info] wlserver: Successfully initialized libei for input emulation! [gamescope] [Error] wlserver: [xwayland/sockets.c:64] Failed to bind socket @/tmp/.X11-unix/X0: Address already in use [gamescope] [Info] wlserver: [xwayland/server.c:107] Starting Xwayland on :2 [gamescope] [Info] pipewire: stream state changed: connecting [gamescope] [Info] pipewire: stream state changed: paused [gamescope] [Info] pipewire: stream available on node ID: 155 [gamescope] [Info] xwm: Embedded, no cursor set. Using left_ptr by default. [gamescope] [Info] vblank: Using timerfd. [gamescope] [Error] xdg_backend: Failed to map keymap fd. [gamescope] [Info] xdg_backend: PreferredMetadata: Red: 0.66406 0.30176, Green: 0.26368 0.66504, Blue: 0.14356 0.06542, White: 0.31348 0.3291, Max Luminance: 519 nits, Min Luminance: 0.005 nits, Max Full Frame Luminance: 519 nits [gamescope] [Info] edid: Patching res 800x1280 -> 1280x720 Outer window is 0x400001, inner window is 0x400002 PropertyNotify event, serial 8, synthetic NO, window 0x400001, atom 0x27 (WM_NAME), time 57911736, state PropertyNewValue PropertyNotify event, serial 9, synthetic NO, window 0x400001, atom 0x22 (WM_COMMAND), time 57911736, state PropertyNewValue PropertyNotify event, serial 10, synthetic NO, window 0x400001, atom 0x28 (WM_NORMAL_HINTS), time 57911736, state PropertyNewValue CreateNotify event, serial 11, synthetic NO, window 0x400001, parent 0x400001, window 0x400002, (10,10), width 50, height 50 border_width 4, override NO PropertyNotify event, serial 14, synthetic NO, window 0x400001, atom 0x176 (WM_PROTOCOLS), time 57911736, state PropertyNewValue MapNotify event, serial 15, synthetic NO, window 0x400001, event 0x400001, window 0x400002, override NO MapNotify event, serial 22, synthetic NO, window 0x400001, event 0x400001, window 0x400001, override NO VisibilityNotify event, serial 22, synthetic NO, window 0x400001, state VisibilityUnobscured Expose event, serial 22, synthetic NO, window 0x400001, (0,0), width 178, height 10, count 3 Expose event, serial 22, synthetic NO, window 0x400001, (0,10), width 10, height 58, count 2 Expose event, serial 22, synthetic NO, window 0x400001, (68,10), width 110, height 58, count 1 Expose event, serial 22, synthetic NO, window 0x400001, (0,68), width 178, height 110, count 0 PropertyNotify event, serial 28, synthetic NO, window 0x400001, atom 0x115 (WM_STATE), time 57911745, state PropertyNewValue FocusIn event, serial 28, synthetic NO, window 0x400001, mode NotifyNormal, detail NotifyNonlinear KeymapNotify event, serial 28, synthetic NO, window 0x0, keys: 68 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ConfigureNotify event, serial 28, synthetic NO, window 0x400001, event 0x400001, window 0x400001, (1,1), width 178, height 178, border_width 2, above 0x200001, override NO [gamescope] [Warn] xwm: got the same buffer committed twice, ignoring. ConfigureNotify event, serial 29, synthetic NO, window 0x400001, event 0x400001, window 0x400001, (0,0), width 178, height 178, border_width 2, above 0x200001, override NO The XKEYBOARD keymap compiler (xkbcomp) reports: > Warning: Unsupported maximum keycode 708, clipping. > X11 cannot support keycodes above 255. > Warning: Could not resolve keysym XF86KbdInputAssistPrevgrou > Warning: Could not resolve keysym XF86KbdInputAssistNextgrou Errors from xkbcomp are not fatal to the X server EnterNotify event, serial 29, synthetic NO, window 0x400001, root 0x403, subw 0x0, time 57911746, (0,0), root:(2,2), mode NotifyNormal, detail NotifyAncestor, same_screen YES, focus YES, state 0 KeymapNotify event, serial 29, synthetic NO, window 0x0, keys: 68 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 MotionNotify event, serial 29, synthetic NO, window 0x400001, root 0x403, subw 0x0, time 57911746, (0,0), root:(2,2), state 0x0, is_hint 0, same_screen YES LeaveNotify event, serial 29, synthetic NO, window 0x400001, root 0x403, subw 0x0, time 57911753, (43,44), root:(45,46), mode NotifyNormal, detail NotifyInferior, same_screen YES, focus YES, state 0 MotionNotify event, serial 29, synthetic NO, window 0x400001, root 0x403, subw 0x400002, time 57911753, (43,44), root:(45,46), state 0x0, is_hint 0, same_screen YES [gamescope] [Info] xdg_backend: Changed refresh to: 143.975hz KeyPress event, serial 32, synthetic NO, window 0x400001, root 0x403, subw 0x400002, time 57917760, (43,44), root:(45,46), state 0x0, keycode 133 (keysym 0xffeb, Super_L), same_screen YES, XLookupString gives 0 bytes: XmbLookupString gives 0 bytes: XFilterEvent returns: False KeyPress event, serial 32, synthetic NO, window 0x400001, root 0x403, subw 0x400002, time 57921371, (43,44), root:(45,46), state 0x40, keycode 41 (keysym 0x66, f), same_screen YES, XLookupString gives 1 bytes: (66) "f" XmbLookupString gives 1 bytes: (66) "f" XFilterEvent returns: False KeyRelease event, serial 32, synthetic NO, window 0x400001, root 0x403, subw 0x400002, time 57921490, (43,44), root:(45,46), state 0x40, keycode 41 (keysym 0x66, f), same_screen YES, XLookupString gives 1 bytes: (66) "f" XFilterEvent returns: False KeyRelease event, serial 32, synthetic NO, window 0x400001, root 0x403, subw 0x400002, time 57921609, (43,44), root:(45,46), state 0x40, keycode 133 (keysym 0xffeb, Super_L), same_screen YES, XLookupString gives 0 bytes: XFilterEvent returns: False [gamescopereaper] [Info] reaper: Parent of gamescopereaper was killed. Killing children. [gamescope] [Info] launch: Primary child shut down!

Running konsole within a gamescope session any Super + KEY that part of a system shortcut causes it to write an s then the KEY pressed. Super + F : sf etc.

@matte-schwartz
Copy link

Does having NumLock enabled or disabled change the behavior at all?

@shawarden
Copy link
Author

shawarden commented Dec 7, 2024

I don't have a physical numlock button on my keyboard but toggling it both on and off via onboard or numlockx results in the same behaviour.

E: Using a different keyboard that does have a numlock produces the same behaviour.

@matte-schwartz
Copy link

thought it might have been the same as #1637 but this sounds like a different issue with hotkeys/Meta key usage.

@naxil
Copy link

naxil commented Dec 7, 2024

same problem here.. i have apple old keyboard i use wev instead of xev... but only my OS shorcut works. the gamescope shorcut not work at all

[11: wl_data_device] selection: id: 4278190081 [13: wl_pointer] button: serial: 1338; time: 436217; button: 272 (left), state: 1 (pressed) [13: wl_pointer] frame [10: xdg_toplevel] configure: width: 640; height: 480 activated [09: xdg_surface] configure: serial: 1340 [13: wl_pointer] motion: time: 436353; x, y: 295.125000, 387.972656 [13: wl_pointer] frame [13: wl_pointer] button: serial: 1341; time: 436369; button: 272 (left), state: 0 (released) [13: wl_pointer] frame [14: wl_keyboard] key: serial: 1344; time: 437625; key: 133; state: 1 (pressed) sym: Super_L (65515), utf8: '' [14: wl_keyboard] modifiers: serial: 0; group: 0 depressed: 00000040: Mod4 latched: 00000000 locked: 00000000 [14: wl_keyboard] key: serial: 1347; time: 438513; key: 41; state: 1 (pressed) sym: f (102), utf8: 'f' [14: wl_keyboard] key: serial: 1349; time: 438697; key: 41; state: 0 (released) sym: f (102), utf8: '' [14: wl_keyboard] key: serial: 1351; time: 439193; key: 41; state: 1 (pressed) sym: f (102), utf8: 'f' [14: wl_keyboard] key: serial: 1353; time: 439289; key: 41; state: 0 (released) sym: f (102), utf8: '' [14: wl_keyboard] key: serial: 1355; time: 439625; key: 41; state: 1 (pressed) sym: f (102), utf8: 'f' [14: wl_keyboard] key: serial: 1357; time: 439714; key: 41; state: 0 (released) sym: f (102), utf8: '' [14: wl_keyboard] key: serial: 1359; time: 439986; key: 41; state: 1 (pressed) sym: f (102), utf8: 'f' [14: wl_keyboard] key: serial: 1361; time: 440082; key: 41; state: 0 (released) sym: f (102), utf8: '' [14: wl_keyboard] key: serial: 1363; time: 440330; key: 41; state: 1 (pressed) sym: f (102), utf8: 'f' [14: wl_keyboard] key: serial: 1365; time: 440410; key: 41; state: 0 (released) sym: f (102), utf8: '' [14: wl_keyboard] key: serial: 1367; time: 440650; key: 41; state: 1 (pressed) sym: f (102), utf8: 'f' [14: wl_keyboard] key: serial: 1369; time: 440730; key: 41; state: 0 (released) sym: f (102), utf8: '' [14: wl_keyboard] key: serial: 1372; time: 441898; key: 133; state: 0 (released) sym: Super_L (65515), utf8: '' [14: wl_keyboard] modifiers: serial: 0; group: 0 depressed: 00000000 latched: 00000000 locked: 00000000

@shawarden
Copy link
Author

shawarden commented Dec 8, 2024

action ❯ gamescope -- wev
[gamescope] [Info]  console: gamescope version 3.15.14 (gcc 14.2.1)

(gamescope:89409): Gdk-WARNING **: 14:26:48.499: Failed to read portal settings: GDBus.Error:org.freedesktop.DBus.Error.AccessDenied: Portal operation not allowed: Unable to open /proc/89409/root
ATTENTION: default value of option vk_khr_present_wait overridden by environment.
ATTENTION: default value of option vk_khr_present_wait overridden by environment.
ATTENTION: default value of option vk_khr_present_wait overridden by environment.
[gamescope] [Info]  vulkan: selecting physical device 'AMD Radeon RX 6600 XT (RADV NAVI23)': queue family 1 (general queue family 0)
[gamescope] [Info]  vulkan: physical device supports DRM format modifiers
[gamescope] [Info]  wlserver: [backend/headless/backend.c:67] Creating headless backend
[gamescope] [Info]  xdg_backend: Seat name: seat0
[gamescope] [Info]  vulkan: supported DRM formats for sampling usage:
[gamescope] [Info]  vulkan:   AR24 (0x34325241)
[gamescope] [Info]  vulkan:   XR24 (0x34325258)
[gamescope] [Info]  vulkan:   AB24 (0x34324241)
[gamescope] [Info]  vulkan:   XB24 (0x34324258)
[gamescope] [Info]  vulkan:   RG16 (0x36314752)
[gamescope] [Info]  vulkan:   NV12 (0x3231564E)
[gamescope] [Info]  vulkan:   AB4H (0x48344241)
[gamescope] [Info]  vulkan:   XB4H (0x48344258)
[gamescope] [Info]  vulkan:   AB48 (0x38344241)
[gamescope] [Info]  vulkan:   XB48 (0x38344258)
[gamescope] [Info]  vulkan:   AB30 (0x30334241)
[gamescope] [Info]  vulkan:   XB30 (0x30334258)
[gamescope] [Info]  vulkan:   AR30 (0x30335241)
[gamescope] [Info]  vulkan:   XR30 (0x30335258)
[gamescope] [Info]  wlserver: Using explicit sync when available
[gamescope] [Info]  wlserver: Running compositor on wayland display 'gamescope-0'
[gamescope] [Info]  wlserver: [backend/headless/backend.c:17] Starting headless backend
[gamescope] [Info]  wlserver: Successfully initialized libei for input emulation!
[gamescope] [Error] wlserver: [xwayland/sockets.c:64] Failed to bind socket @/tmp/.X11-unix/X0: Address already in use
[gamescope] [Info]  wlserver: [xwayland/server.c:107] Starting Xwayland on :2
[gamescope] [Info]  pipewire: stream state changed: connecting
[gamescope] [Info]  pipewire: stream state changed: paused
[gamescope] [Info]  pipewire: stream available on node ID: 136
[gamescope] [Info]  xwm: Embedded, no cursor set. Using left_ptr by default.
[gamescope] [Info]  vblank: Using timerfd.
[gamescope] [Error] xdg_backend: Failed to map keymap fd.
[gamescope] [Info]  xdg_backend: PreferredMetadata: Red: 0.66406 0.30176, Green: 0.26368 0.66504, Blue: 0.14356 0.06542, White: 0.31348 0.3291, Max Luminance: 519 nits, Min Luminance: 0.005 nits, Max Full Frame Luminance: 519 nits
[gamescope] [Info]  edid: Patching res 800x1280 -> 1280x720
[06:         wl_seat] name: seat0
[06:         wl_seat] capabilities: pointer keyboard
[10:    xdg_toplevel] configure: width: 0; height: 0
[09:     xdg_surface] configure: serial: 781
[14:     wl_keyboard] repeat_info: rate: 25 keys/sec; delay: 250 ms
[14:     wl_keyboard] keymap: format: 1 (xkb v1), size: 65132
[13:      wl_pointer] enter: serial: 782; surface: 3, x, y: 424.152344, 186.664062
[13:      wl_pointer] frame
[14:     wl_keyboard] modifiers: serial: 0; group: 0
                    depressed: 00000000
                    latched: 00000000
                    locked: 00000000
[14:     wl_keyboard] enter: serial: 787; surface: 3
[14:     wl_keyboard] modifiers: serial: 0; group: 0
                    depressed: 00000000
                    latched: 00000000
                    locked: 00000000
[11:  wl_data_device] data_offer: id: 4278190080
[4278190080:   wl_data_offer] offer: mime_type: TIMESTAMP
[4278190080:   wl_data_offer] offer: mime_type: TARGETS
[4278190080:   wl_data_offer] offer: mime_type: MULTIPLE
[4278190080:   wl_data_offer] offer: mime_type: SAVE_TARGETS
[4278190080:   wl_data_offer] offer: mime_type: text/plain;charset=utf-8
[4278190080:   wl_data_offer] offer: mime_type: STRING
[11:  wl_data_device] selection: id: 4278190080
[10:    xdg_toplevel] configure: width: 640; height: 480
                    activated
[09:     xdg_surface] configure: serial: 790
[13:      wl_pointer] motion: time: 257844; x, y: 423.265625, 186.664062
[13:      wl_pointer] frame
[13:      wl_pointer] motion: time: 257853; x, y: 422.472656, 186.664062
[13:      wl_pointer] frame
[13:      wl_pointer] motion: time: 257859; x, y: 421.472656, 186.664062
[13:      wl_pointer] frame
[13:      wl_pointer] motion: time: 257866; x, y: 420.472656, 186.664062
[13:      wl_pointer] frame
[13:      wl_pointer] motion: time: 257872; x, y: 419.472656, 186.664062
[13:      wl_pointer] frame
[13:      wl_pointer] motion: time: 257879; x, y: 418.472656, 186.664062
[13:      wl_pointer] frame
[13:      wl_pointer] motion: time: 257896; x, y: 417.492188, 186.664062
[13:      wl_pointer] frame
[14:     wl_keyboard] key: serial: 793; time: 260446; key: 133; state: 1 (pressed)
                    sym: Super_L      (65515), utf8: ''
[14:     wl_keyboard] modifiers: serial: 0; group: 0
                    depressed: 00000040: Mod4
                    latched: 00000000
                    locked: 00000000
[14:     wl_keyboard] key: serial: 796; time: 261250; key: 41; state: 1 (pressed)
                    sym: f            (102), utf8: 'f'
[14:     wl_keyboard] key: serial: 798; time: 261378; key: 41; state: 0 (released)
                    sym: f            (102), utf8: ''
[14:     wl_keyboard] key: serial: 801; time: 261976; key: 133; state: 0 (released)
                    sym: Super_L      (65515), utf8: ''
[14:     wl_keyboard] modifiers: serial: 0; group: 0
                    depressed: 00000000
                    latched: 00000000
                    locked: 00000000
[14:     wl_keyboard] key: serial: 805; time: 268439; key: 64; state: 1 (pressed)
                    sym: Alt_L        (65513), utf8: ''
[14:     wl_keyboard] modifiers: serial: 0; group: 0
                    depressed: 00000008: Mod1
                    latched: 00000000
                    locked: 00000000
[13:      wl_pointer] leave: surface: 3
[13:      wl_pointer] frame
[14:     wl_keyboard] leave: serial: 808; surface: 3
[10:    xdg_toplevel] configure: width: 640; height: 480
[09:     xdg_surface] configure: serial: 822
[13:      wl_pointer] enter: serial: 839; surface: 3, x, y: 417.492188, 186.664062
[13:      wl_pointer] frame
[14:     wl_keyboard] modifiers: serial: 0; group: 0
                    depressed: 00000008: Mod1
                    latched: 00000000
                    locked: 00000000
[14:     wl_keyboard] modifiers: serial: 0; group: 0
                    depressed: 00000000
                    latched: 00000000
                    locked: 00000000
[14:     wl_keyboard] modifiers: serial: 0; group: 0
                    depressed: 00000008: Mod1
                    latched: 00000000
                    locked: 00000000
[13:      wl_pointer] leave: surface: 3
[13:      wl_pointer] frame
^C[gamescopereaper] [Info]  reaper: Parent of gamescopereaper was killed. Killing children.
[gamescope] [Error] xwm: X11 I/O error
[gamescope] [Info]  launch: Primary child shut down!
system info ❯ fastfetch
shard@orion
 OS Garuda Linux x86_64
├ Kernel Linux 6.12.1-zen1-1-zen
├ Packages 2697 (pacman)[stable], 13 (flatpak-user)
└ Shell zsh 5.9

 DE KDE Plasma 6.2.4
├ Window Manager KWin (Wayland)
├ Login Manager sddm-autologin 0.21.0 (Wayland)
├ WM Theme Breeze
├ Color Themes Sweet-transparent-toolbar (DraculaPurple) [Qt], Dracula [GTK2/3/4]
├ System Icons breeze-dark [Qt], breeze-dark [GTK2/3/4]
├ System Fonts Noto Sans (10pt) [Qt], Noto Sans (10pt) [GTK2/3/4]
└ Terminal yakuake 24.8.3

 PC Desktop
├ CPU AMD Ryzen 9 5900X (24) @ 4.95 GHz
├ GPU AMD Radeon RX 6600 XT [Discrete]
├ OpenGL 4.6 (Compatibility Profile) Mesa 24.3.1-arch1.1
├ Vulkan 1.3.296 - radv [Mesa 24.3.1-arch1.1]
└ Display(s) 3440x1440 @ 144 Hz in 34" [External, HDR]
DE shortcuts ❯ grep meta ~/.config/kglobalshortcutsrc ~/.config/khotkeysrc
/home/shard/.config/kglobalshortcutsrc:Switch to Last-Used Keyboard Layout=none,Meta+Alt+L,Switch to Last-Used Keyboard Layout
/home/shard/.config/kglobalshortcutsrc:Switch to Next Keyboard Layout=none,Meta+Alt+K,Switch to Next Keyboard Layout
/home/shard/.config/kglobalshortcutsrc:Toggle Screen Reader On and Off=Meta+Alt+S,Meta+Alt+S,Toggle Screen Reader On and Off
/home/shard/.config/kglobalshortcutsrc:Toggle Touchpad=Touchpad Toggle,Touchpad Toggle\tMeta+Ctrl+Zenkaku Hankaku,Toggle Touchpad
/home/shard/.config/kglobalshortcutsrc:mic_mute=Alt+PgDown\tMeta+Volume Mute\tMicrophone Mute,Microphone Mute\tMeta+Volume Mute,Mute Microphone
/home/shard/.config/kglobalshortcutsrc:Lock Session=Meta+L\tScreensaver,Meta+L\tScreensaver,Lock Session
/home/shard/.config/kglobalshortcutsrc:Activate Window Demanding Attention=Meta+Ctrl+A,Meta+Ctrl+A,Activate Window Demanding Attention
/home/shard/.config/kglobalshortcutsrc:Edit Tiles=Meta+T,Meta+T,Toggle Tiles Editor
/home/shard/.config/kglobalshortcutsrc:Grid View=Meta+G,Meta+G,Toggle Grid View
/home/shard/.config/kglobalshortcutsrc:Kill Window=Meta+Ctrl+Esc,Meta+Ctrl+Esc,Kill Window
/home/shard/.config/kglobalshortcutsrc:MoveMouseToCenter=Meta+F6,Meta+F6,Move Mouse to Centre
/home/shard/.config/kglobalshortcutsrc:MoveMouseToFocus=Meta+F5,Meta+F5,Move Mouse to Focus
/home/shard/.config/kglobalshortcutsrc:Overview=Meta+W,Meta+W,Toggle Overview
/home/shard/.config/kglobalshortcutsrc:Show Desktop=Meta+D,Meta+D,Peek at Desktop
/home/shard/.config/kglobalshortcutsrc:Switch One Desktop Down=none,Meta+Ctrl+Down,Switch One Desktop Down
/home/shard/.config/kglobalshortcutsrc:Switch One Desktop Up=none,Meta+Ctrl+Up,Switch One Desktop Up
/home/shard/.config/kglobalshortcutsrc:Switch One Desktop to the Left=none,Meta+Ctrl+Left,Switch One Desktop to the Left
/home/shard/.config/kglobalshortcutsrc:Switch One Desktop to the Right=none,Meta+Ctrl+Right,Switch One Desktop to the Right
/home/shard/.config/kglobalshortcutsrc:Switch Window Down=Meta+Alt+Down,Meta+Alt+Down,Switch to Window Below
/home/shard/.config/kglobalshortcutsrc:Switch Window Left=Meta+Alt+Left,Meta+Alt+Left,Switch to Window to the Left
/home/shard/.config/kglobalshortcutsrc:Switch Window Right=Meta+Alt+Right,Meta+Alt+Right,Switch to Window to the Right
/home/shard/.config/kglobalshortcutsrc:Switch Window Up=Meta+Alt+Up,Meta+Alt+Up,Switch to Window Above
/home/shard/.config/kglobalshortcutsrc:Window Maximize=Meta+PgUp,Meta+PgUp,Maximise Window
/home/shard/.config/kglobalshortcutsrc:Window Minimize=Meta+PgDown,Meta+PgDown,Minimise Window
/home/shard/.config/kglobalshortcutsrc:Window One Desktop Down=Meta+Ctrl+Shift+Down,Meta+Ctrl+Shift+Down,Window One Desktop Down
/home/shard/.config/kglobalshortcutsrc:Window One Desktop Up=Meta+Ctrl+Shift+Up,Meta+Ctrl+Shift+Up,Window One Desktop Up
/home/shard/.config/kglobalshortcutsrc:Window One Desktop to the Left=Meta+Ctrl+Shift+Left,Meta+Ctrl+Shift+Left,Window One Desktop to the Left
/home/shard/.config/kglobalshortcutsrc:Window One Desktop to the Right=Meta+Ctrl+Shift+Right,Meta+Ctrl+Shift+Right,Window One Desktop to the Right
/home/shard/.config/kglobalshortcutsrc:Window Quick Tile Bottom=Meta+Down,Meta+Down,Quick Tile Window to the Bottom
/home/shard/.config/kglobalshortcutsrc:Window Quick Tile Left=Meta+Left,Meta+Left,Quick Tile Window to the Left
/home/shard/.config/kglobalshortcutsrc:Window Quick Tile Right=Meta+Right,Meta+Right,Quick Tile Window to the Right
/home/shard/.config/kglobalshortcutsrc:Window Quick Tile Top=Meta+Up,Meta+Up,Quick Tile Window to the Top
/home/shard/.config/kglobalshortcutsrc:Window to Next Screen=Meta+Shift+Right,Meta+Shift+Right,Move Window to Next Screen
/home/shard/.config/kglobalshortcutsrc:Window to Previous Screen=Meta+Shift+Left,Meta+Shift+Left,Move Window to Previous Screen
/home/shard/.config/kglobalshortcutsrc:view_actual_size=Meta+0,Meta+0,Zoom to Actual Size
/home/shard/.config/kglobalshortcutsrc:view_zoom_in=Meta++\tMeta+=,Meta++\tMeta+=,Zoom In
/home/shard/.config/kglobalshortcutsrc:view_zoom_out=Meta+-,Meta+-,Zoom Out
/home/shard/.config/kglobalshortcutsrc:powerProfile=Battery\tMeta+B,Battery\tMeta+B,Switch Power Profile
/home/shard/.config/kglobalshortcutsrc:activate application launcher=Alt+F1\tMeta,Meta\tAlt+F1,Activate Application Launcher
/home/shard/.config/kglobalshortcutsrc:activate task manager entry 1=Meta+1,Meta+1,Activate Task Manager Entry 1
/home/shard/.config/kglobalshortcutsrc:activate task manager entry 10=none,Meta+0,Activate Task Manager Entry 10
/home/shard/.config/kglobalshortcutsrc:activate task manager entry 2=Meta+2,Meta+2,Activate Task Manager Entry 2
/home/shard/.config/kglobalshortcutsrc:activate task manager entry 3=Meta+3,Meta+3,Activate Task Manager Entry 3
/home/shard/.config/kglobalshortcutsrc:activate task manager entry 4=Meta+4,Meta+4,Activate Task Manager Entry 4
/home/shard/.config/kglobalshortcutsrc:activate task manager entry 5=Meta+5,Meta+5,Activate Task Manager Entry 5
/home/shard/.config/kglobalshortcutsrc:activate task manager entry 6=Meta+6,Meta+6,Activate Task Manager Entry 6
/home/shard/.config/kglobalshortcutsrc:activate task manager entry 7=Meta+7,Meta+7,Activate Task Manager Entry 7
/home/shard/.config/kglobalshortcutsrc:activate task manager entry 8=Meta+8,Meta+8,Activate Task Manager Entry 8
/home/shard/.config/kglobalshortcutsrc:activate task manager entry 9=Meta+9,Meta+9,Activate Task Manager Entry 9
/home/shard/.config/kglobalshortcutsrc:clipboard_action=Meta+Ctrl+X,Meta+Ctrl+X,Automatic Action Popup Menu
/home/shard/.config/kglobalshortcutsrc:cycle-panels=Meta+Alt+P,Meta+Alt+P,Move keyboard focus between panels
/home/shard/.config/kglobalshortcutsrc:manage activities=Meta+Q,Meta+Q,Show Activity Switcher
/home/shard/.config/kglobalshortcutsrc:next activity=Meta+A,none,Walk through activities
/home/shard/.config/kglobalshortcutsrc:previous activity=Meta+Shift+A,none,Walk through activities (Reverse)
/home/shard/.config/kglobalshortcutsrc:repeat_action=none,Meta+Ctrl+R,Manually Invoke Action on Current Clipboard
/home/shard/.config/kglobalshortcutsrc:show-on-mouse-pos=Meta+V,Meta+V,Show Clipboard Items at Mouse Position
/home/shard/.config/kglobalshortcutsrc:stop current activity=Meta+S,Meta+S,Stop Current Activity
/home/shard/.config/kglobalshortcutsrc:_launch=Meta+E
/home/shard/.config/kglobalshortcutsrc:RecordRegion=Meta+Shift+R
/home/shard/.config/kglobalshortcutsrc:Map to fullscreen=Meta+Ctrl+F,Meta+Ctrl+F,Map to fullscreen
/home/shard/.config/kglobalshortcutsrc:Map to screen 1=Meta+Ctrl+1,Meta+Ctrl+1,Map to screen 1
/home/shard/.config/kglobalshortcutsrc:Map to screen 2=Meta+Ctrl+2,Meta+Ctrl+2,Map to screen 2
/home/shard/.config/kglobalshortcutsrc:Next Profile=Meta+Ctrl+N,Meta+Ctrl+N,Next profile
/home/shard/.config/kglobalshortcutsrc:Previous Profile=Meta+Ctrl+P,Meta+Ctrl+P,Previous Profile
/home/shard/.config/kglobalshortcutsrc:Toggle screen map selection=Meta+Ctrl+M,Meta+Ctrl+M,Toggle between all screens
/home/shard/.config/kglobalshortcutsrc:Toggle stylus mode=Meta+Ctrl+S,Meta+Ctrl+S,Toggle the Stylus Tool Relative/Absolute
/home/shard/.config/kglobalshortcutsrc:Toggle touch tool=Meta+Ctrl+T,Meta+Ctrl+T,Enable/Disable the Touch Tool

@naxil
Copy link

naxil commented Dec 9, 2024

same problem here.. i have try other terminal.

i have this two error

[gamescope] [Error] xdg_backend: Failed to map keymap fd.

[gamescope] [Error] wlserver: [xwayland/sockets.c:64] Failed to bind socket @/tmp/.X11-unix/X0: Address already in use

i use arch. with KDE PLASMA (when vkcube start all kde shortcuts works fine (like SUPER+G). why we can't solve this problem?

@shawarden
Copy link
Author

shawarden commented Dec 10, 2024

@matte-schwartz is there any better way to get debugging info for gamescope's key/hotkey intercept? I can't see any command line options for it.

@naxil
Copy link

naxil commented Dec 10, 2024

@matte-schwartz is there any better way to get debugging info for gamescope's key/hotkey intercept? I can't see any command line options for it.

u can use wev (wayland version of xev). also exist env variable for disable wayland shortcuts. but if u see my previous message i have strange error about keymap on gamescope verbose

@shawarden
Copy link
Author

shawarden commented Dec 10, 2024

@naxil I used that in my previous comment here and got the same errors you mentioned. But it shows what the application running within a gamescope session sees, not necessarily what the gamescope wrapper sees? IDK. Straws are being clutched at because the fullscreen toggle was awesome.

@billbeans
Copy link

I believe this is happening to me as well on Debian. I can start games in full screen, but none of the super key options work except for the ones already set by my DE. For example, I can't toggle fullscreen, which is supposed to be Super + F

@shawarden
Copy link
Author

@billbeans What DE are you using?

Wayland / X11?

KDE Plasma / Gnome?

Versions, etc.

@billbeans
Copy link

@billbeans What DE are you using?

Wayland / X11?

KDE Plasma / Gnome?

Versions, etc.

Debian 12

Wayland via Mutter

GNOME 43.9

Gamescope 3.11.49-1 amd64

@naxil
Copy link

naxil commented Dec 12, 2024

same here. no fix?

@shawarden
Copy link
Author

shawarden commented Dec 13, 2024

@matte-schwartz I switched over to KDE Plasma X11 and it works as desired/expected with Super_L + f toggling fullscreen mode so since this is happening in both KDE and Gnome, it's likely something with wayland that's interfering.

system info ❯ fastfetch
shard@orion
OS Garuda Linux x86_64
├ Kernel Linux 6.12.4-zen1-1-zen
├ Packages 2690 (pacman)[stable], 18 (flatpak-user)
└ Shell zsh 5.9

DE KDE Plasma 6.2.4
├ Window Manager KWin (X11)
├ Login Manager sddm 0.21.0 (X11)
├ WM Theme Breeze
├ Color Themes Sweet-transparent-toolbar (DraculaPurple) [Qt], Dracula [GTK2/3/4]
├ System Icons breeze-dark [Qt], breeze-dark [GTK2/3/4]
├ System Fonts Noto Sans (10pt) [Qt], Noto Sans (10pt) [GTK2/3/4]
└ Terminal yakuake 24.8.3

PC Desktop
├ CPU AMD Ryzen 9 5900X (24) @ 4.95 GHz
├ GPU AMD Radeon RX 6600 XT [Discrete]
├ OpenGL 4.6 (Compatibility Profile) Mesa 24.3.1-arch1.3
├ Vulkan 1.3.296 - radv [Mesa 24.3.1-arch1.3]
└ Display(s) 3440x1440 @ 144 Hz in 34" [External]
demo ❯ gamescope -- xev
[gamescope] [Info]  console: gamescope version 3.15.14 (gcc 14.2.1)
[gamescope] [Info]  vulkan: selecting physical device 'AMD Radeon RX 6600 XT (RADV NAVI23)': queue family 1 (general queue family 0)
[gamescope] [Info]  vulkan: physical device supports DRM format modifiers
[gamescope] [Info]  wlserver: [backend/headless/backend.c:67] Creating headless backend
[gamescope] [Info]  vulkan: supported DRM formats for sampling usage:
[gamescope] [Info]  vulkan:   AR24 (0x34325241)
[gamescope] [Info]  vulkan:   XR24 (0x34325258)
[gamescope] [Info]  vulkan:   AB24 (0x34324241)
[gamescope] [Info]  vulkan:   XB24 (0x34324258)
[gamescope] [Info]  vulkan:   RG16 (0x36314752)
[gamescope] [Info]  vulkan:   NV12 (0x3231564E)
[gamescope] [Info]  vulkan:   AB4H (0x48344241)
[gamescope] [Info]  vulkan:   XB4H (0x48344258)
[gamescope] [Info]  vulkan:   AB48 (0x38344241)
[gamescope] [Info]  vulkan:   XB48 (0x38344258)
[gamescope] [Info]  vulkan:   AB30 (0x30334241)
[gamescope] [Info]  vulkan:   XB30 (0x30334258)
[gamescope] [Info]  vulkan:   AR30 (0x30335241)
[gamescope] [Info]  vulkan:   XR30 (0x30335258)
[gamescope] [Info]  vulkan: Creating Gamescope nested swapchain with format 44 and colorspace 0
[gamescope] [Info]  wlserver: Using explicit sync when available
[gamescope] [Info]  wlserver: Running compositor on wayland display 'gamescope-0'
[gamescope] [Info]  wlserver: [backend/headless/backend.c:17] Starting headless backend
[gamescope] [Info]  wlserver: Successfully initialized libei for input emulation!
[gamescope] [Error] wlserver: [xwayland/sockets.c:64] Failed to bind socket @/tmp/.X11-unix/X0: Address already in use
[gamescope] [Info]  wlserver: [xwayland/server.c:107] Starting Xwayland on :1
[gamescope] [Info]  pipewire: stream state changed: connecting
[gamescope] [Info]  pipewire: stream state changed: paused
[gamescope] [Info]  pipewire: stream available on node ID: 114
[gamescope] [Info]  vblank: Using timerfd.
[gamescope] [Info]  vulkan: Creating Gamescope nested swapchain with format 44 and colorspace 0
Outer window is 0x400001, inner window is 0x400002

PropertyNotify event, serial 8, synthetic NO, window 0x400001,
atom 0x27 (WM_NAME), time 7975219, state PropertyNewValue

PropertyNotify event, serial 9, synthetic NO, window 0x400001,
atom 0x22 (WM_COMMAND), time 7975219, state PropertyNewValue

PropertyNotify event, serial 10, synthetic NO, window 0x400001,
atom 0x28 (WM_NORMAL_HINTS), time 7975219, state PropertyNewValue

CreateNotify event, serial 11, synthetic NO, window 0x400001,
parent 0x400001, window 0x400002, (10,10), width 50, height 50
border_width 4, override NO

PropertyNotify event, serial 14, synthetic NO, window 0x400001,
atom 0x175 (WM_PROTOCOLS), time 7975219, state PropertyNewValue

MapNotify event, serial 15, synthetic NO, window 0x400001,
event 0x400001, window 0x400002, override NO

MapNotify event, serial 28, synthetic NO, window 0x400001,
event 0x400001, window 0x400001, override NO

VisibilityNotify event, serial 28, synthetic NO, window 0x400001,
state VisibilityUnobscured

Expose event, serial 28, synthetic NO, window 0x400001,
(0,0), width 178, height 10, count 3

Expose event, serial 28, synthetic NO, window 0x400001,
(0,10), width 10, height 58, count 2

Expose event, serial 28, synthetic NO, window 0x400001,
(68,10), width 110, height 58, count 1

Expose event, serial 28, synthetic NO, window 0x400001,
(0,68), width 178, height 110, count 0

PropertyNotify event, serial 28, synthetic NO, window 0x400001,
atom 0x115 (WM_STATE), time 7975227, state PropertyNewValue

FocusIn event, serial 28, synthetic NO, window 0x400001,
mode NotifyNormal, detail NotifyNonlinear

KeymapNotify event, serial 28, synthetic NO, window 0x0,
keys:  21  0   0   0   0   0   0   0   0   0   0   0   0   0   0   0
0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0

ConfigureNotify event, serial 28, synthetic NO, window 0x400001,
event 0x400001, window 0x400001, (1,1), width 178, height 178,
border_width 2, above 0x200001, override NO
[gamescope] [Warn]  xwm: got the same buffer committed twice, ignoring.

ConfigureNotify event, serial 29, synthetic NO, window 0x400001,
event 0x400001, window 0x400001, (0,0), width 178, height 178,
border_width 2, above 0x200001, override NO
The XKEYBOARD keymap compiler (xkbcomp) reports:
> Warning:          Unsupported maximum keycode 708, clipping.
>                   X11 cannot support keycodes above 255.
> Warning:          Could not resolve keysym XF86KbdInputAssistPrevgrou
> Warning:          Could not resolve keysym XF86KbdInputAssistNextgrou
Errors from xkbcomp are not fatal to the X server

EnterNotify event, serial 29, synthetic NO, window 0x400001,
root 0x403, subw 0x0, time 7975227, (0,0), root:(2,2),
mode NotifyNormal, detail NotifyAncestor, same_screen YES,
focus YES, state 0

KeymapNotify event, serial 29, synthetic NO, window 0x0,
keys:  21  0   0   0   0   0   0   0   0   0   0   0   0   0   0   0
0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0

MotionNotify event, serial 29, synthetic NO, window 0x400001,
root 0x403, subw 0x0, time 7975227, (0,0), root:(2,2),
state 0x0, is_hint 0, same_screen YES

LeaveNotify event, serial 29, synthetic NO, window 0x400001,
root 0x403, subw 0x0, time 7975235, (181,175), root:(183,177),
mode NotifyNormal, detail NotifyAncestor, same_screen YES,
focus YES, state 0

EnterNotify event, serial 29, synthetic NO, window 0x400001,
root 0x403, subw 0x400002, time 7975244, (25,44), root:(27,46),
mode NotifyNormal, detail NotifyVirtual, same_screen YES,
focus YES, state 0

KeymapNotify event, serial 29, synthetic NO, window 0x0,
keys:  21  0   0   0   0   0   0   0   0   0   0   0   0   0   0   0
0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0

KeyPress event, serial 29, synthetic NO, window 0x400001,
root 0x403, subw 0x400002, time 7981227, (20,48), root:(22,50),
state 0x0, keycode 133 (keysym 0xffeb, Super_L), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False

LeaveNotify event, serial 32, synthetic NO, window 0x400001,
root 0x403, subw 0x400002, time 7984467, (181,139), root:(183,141),
mode NotifyNormal, detail NotifyVirtual, same_screen YES,
focus YES, state 64

EnterNotify event, serial 32, synthetic NO, window 0x400001,
root 0x403, subw 0x400002, time 7984467, (20,48), root:(22,50),
mode NotifyNormal, detail NotifyVirtual, same_screen YES,
focus YES, state 64

KeymapNotify event, serial 32, synthetic NO, window 0x0,
keys:  3   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0
32  0   0   0   0   0   0   0   0   0   0   0   0   0   0   0

MotionNotify event, serial 32, synthetic NO, window 0x400001,
root 0x403, subw 0x400002, time 7984467, (20,48), root:(22,50),
state 0x40, is_hint 0, same_screen YES
[gamescope] [Info]  vulkan: Creating Gamescope nested swapchain with format 44 and colorspace 0

KeyRelease event, serial 32, synthetic NO, window 0x400001,
root 0x403, subw 0x400002, time 7984870, (20,48), root:(22,50),
state 0x40, keycode 133 (keysym 0xffeb, Super_L), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False

KeyPress event, serial 32, synthetic NO, window 0x400001,
root 0x403, subw 0x400002, time 7985132, (20,48), root:(22,50),
state 0x0, keycode 133 (keysym 0xffeb, Super_L), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False

EnterNotify event, serial 32, synthetic NO, window 0x400001,
root 0x403, subw 0x0, time 7985662, (0,24), root:(2,26),
mode NotifyNormal, detail NotifyInferior, same_screen YES,
focus YES, state 64

KeymapNotify event, serial 32, synthetic NO, window 0x0,
keys:  3   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0
32  0   0   0   0   0   0   0   0   0   0   0   0   0   0   0

MotionNotify event, serial 32, synthetic NO, window 0x400001,
root 0x403, subw 0x0, time 7985662, (0,24), root:(2,26),
state 0x40, is_hint 0, same_screen YES

KeyRelease event, serial 32, synthetic NO, window 0x400001,
[gamescope] [Info]  vulkan: Creating Gamescope nested swapchain with format 44 and colorspace 0
root 0x403, subw 0x0, time 7985662, (0,24), root:(2,26),
state 0x40, keycode 133 (keysym 0xffeb, Super_L), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False

KeyPress event, serial 32, synthetic NO, window 0x400001,
root 0x403, subw 0x0, time 7987759, (0,24), root:(2,26),
state 0x0, keycode 64 (keysym 0xffe9, Alt_L), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False

KeyRelease event, serial 32, synthetic NO, window 0x400001,
root 0x403, subw 0x0, time 7987876, (0,24), root:(2,26),
state 0x8, keycode 64 (keysym 0xffe9, Alt_L), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False
^C[gamescopereaper] [Info]  reaper: Parent of gamescopereaper was killed. Killing children.
terminate called without an active exception
[1]    893476 IOT instruction (core dumped)  gamescope -- xev

The only difference that jumps out at me is the lack of...

[gamescope] [Error] xdg_backend: Failed to map keymap fd.

...in the X11 run.

@naxil
Copy link

naxil commented Dec 13, 2024

for fix temporary try this : launch gamescope with --backend sdl options like:

gamescope --backend sdl -- vkcube

@shawarden
Copy link
Author

That does fix it on wayland but it also breaks hdr support so if you don't use that then, it should work for you.

I still can't get it to toggle fullscreen on gamecope --backend sdl -- wev but it works for xev and vkcube.

gamescope'd wev has always lacked a titlebar and border though so that may be a different issue.

If changing the backend away from wayland fixes things, then again, wayland may be the issue.

@billbeans
Copy link

I'm getting unrecognized option '--backend'. Is my version too old? I'm on 3.11.49, which is the one in the Debian stable repo

@naxil
Copy link

naxil commented Dec 13, 2024

I'm getting unrecognized option '--backend'. Is my version too old? I'm on 3.11.49, which is the one in the Debian stable repo

yes i think so i have [Info] console: gamescope version 3.15.14 (gcc 14.2.1)

for me is that line the problem with wayland

[gamescope] [Error] xdg_backend: Failed to map keymap fd.

idk if that is releated with keyboard map or not..

iam on:

Linux naxilpc 6.12.4-arch1-1 #1 SMP PREEMPT_DYNAMIC Mon, 09 Dec 2024 14:31:57 +0000 x86_64 GNU/Linux

System:
Host: naxilpc Kernel: 6.12.4-arch1-1 arch: x86_64 bits: 64
Desktop: KDE Plasma v: 6.2.4 Distro: Arch Linux
Machine:
Type: Desktop Mobo: Micro-Star model: B450M PRO-VDH MAX (MS-7A38) v: 8.0
serial: UEFI: American Megatrends LLC. v: B.N2
date: 08/30/2024
CPU:
Info: 6-core AMD Ryzen 5 5600G with Radeon Graphics [MT MCP] speed (MHz):
avg: 2994 min/max: 400/4464
Graphics:
Device-1: Advanced Micro Devices [AMD/ATI] Navi 23 [Radeon RX 6600/6600
XT/6600M] driver: amdgpu v: kernel
Display: wayland server: X.org v: 1.21.1.14 with: Xwayland v: 24.1.4
compositor: kwin_wayland driver: X: loaded: modesetting dri: radeonsi
gpu: amdgpu resolution: 1920x1080
API: OpenGL v: 4.6 compat-v: 4.5 vendor: amd mesa v: 24.3.1-arch1.3
renderer: AMD Radeon RX 6600 (radeonsi navi23 LLVM 18.1.8 DRM 3.59
6.12.4-arch1-1)

matte-schwartz added a commit to matte-schwartz/gamescope that referenced this issue Dec 15, 2024
…kend

Per Wayland protocol specsheet regarding keymapping:
"From version 7 onwards, the fd must be mapped with MAP_PRIVATE by the
recipient, as MAP_SHARED may fail."

This matches up exactly with what we're seeing with this error:
[gamescope] [Error] xdg_backend: Failed to map keymap fd.

Changing MAP_SHARED to MAP_PRIVATE per the spec addresses this error.

Fixes: ValveSoftware#1658
(hopefully) fixes: ValveSoftware#1637
matte-schwartz added a commit to matte-schwartz/gamescope that referenced this issue Dec 15, 2024
Per Wayland protocol specsheet regarding keymapping:
"From version 7 onwards, the fd must be mapped with MAP_PRIVATE by the
recipient, as MAP_SHARED may fail."

This matches up exactly with what we're seeing with this error:
[gamescope] [Error] xdg_backend: Failed to map keymap fd.

Changing MAP_SHARED to MAP_PRIVATE per the spec addresses this error.

Fixes: ValveSoftware#1658
(hopefully) fixes: ValveSoftware#1637
@matte-schwartz
Copy link

#1666 should hopefully fix this issue, if anyone else would like to test and confirm. On my rig it works properly on both Plasma 6 Wayland and Cosmic desktop now.

@shawarden
Copy link
Author

It works as expected on my end. Super + hotkeys act appropriately now. Thank you very much for resolving this.

@naxil
Copy link

naxil commented Dec 15, 2024

It works as expected on my end. Super + hotkeys act appropriately now. Thank you very much for resolving this.

who can explain how to act for fix it step by step?

@naxil
Copy link

naxil commented Dec 16, 2024

#1666 should hopefully fix this issue, if anyone else would like to test and confirm. On my rig it works properly on both Plasma 6 Wayland and Cosmic desktop now.

but is a mod of source ? or is a parameter of wayland?

adamdmoss pushed a commit to adamdmoss/gamescope-ubuntu24 that referenced this issue Dec 16, 2024
Per Wayland protocol specsheet regarding keymapping:
"From version 7 onwards, the fd must be mapped with MAP_PRIVATE by the
recipient, as MAP_SHARED may fail."

This matches up exactly with what we're seeing with this error:
[gamescope] [Error] xdg_backend: Failed to map keymap fd.

Changing MAP_SHARED to MAP_PRIVATE per the spec addresses this error.

Fixes: ValveSoftware#1658
(hopefully) fixes: ValveSoftware#1637

(cherry picked from commit 1c9495c)
antheas pushed a commit to antheas/gamescope that referenced this issue Jan 19, 2025
Per Wayland protocol specsheet regarding keymapping:
"From version 7 onwards, the fd must be mapped with MAP_PRIVATE by the
recipient, as MAP_SHARED may fail."

This matches up exactly with what we're seeing with this error:
[gamescope] [Error] xdg_backend: Failed to map keymap fd.

Changing MAP_SHARED to MAP_PRIVATE per the spec addresses this error.

Fixes: ValveSoftware#1658
(hopefully) fixes: ValveSoftware#1637
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants