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

FN keys and backspace stop working after suspend-resume #7

Open
sundarnagarajan opened this issue Sep 18, 2017 · 1 comment
Open

FN keys and backspace stop working after suspend-resume #7

sundarnagarajan opened this issue Sep 18, 2017 · 1 comment

Comments

@sundarnagarajan
Copy link
Owner

sundarnagarajan commented Sep 18, 2017

Following issue is confirmed on Ubuntu Mate 16.04.3 LTS

All the FN-Fx keys are detected, and out of the box after a fresh boot (or in live session) work perfectly - see below. However, after a suspend + resume, some of the keys - in particular F3 (Volume down), F4 (Volume Up), F5: Mute/Unmute stop working. This will manifest as:

Key does not produce OSD or have any effect, but the key combination can be detected under System --> Preferences --> Hardware --> Keyboard Shortcuts (in Ubuntu Mate) as a candidate for a key binding - often appearing as something like Mod4 + XF86AudioLowerVolume rather than XF86AudioLowerVolume.

In such cases, even the Backspace key stops working

@sundarnagarajan
Copy link
Owner Author

The problem has been solved (at least on Ubuntu Mate where I found the problem was present). I will be adding a fix. In short, the fix will contain:

  • A systemd script to be run as the user (not as root) during the resume process
  • This systemd script will call /etc/resume_fix_keyboard.sh - which contains the actual fix
  • /etc/resume_fix_keyboard.sh uses xdotool to send the keystroke Super_L + Delete which fixes the problem!
  • xdotool package will be installed automatically within the ISO
  • User will need to run a linux command to rename and enable the systemd script if the problem is present
  • Cannot automatically enable the systemd script, since the name of the script needs to include the name of the non-root user

It looks like mate-settings-daemon is stuck in some bad 'state' after a resume that is fixed by pressing Super_L + Delete. Also works if you press this key combination manually. Super_L + F3 or Super_L + F4 also work.

This is technically an upstream bug - I have just found a workaround

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant