DEV Community

Cover image for When Ubuntu Keyboard Shortcuts Stop Working: A Systematic GNOME Troubleshooting Guide
Vincent Tommi
Vincent Tommi

Posted on

When Ubuntu Keyboard Shortcuts Stop Working: A Systematic GNOME Troubleshooting Guide

Have you ever experienced a strange Ubuntu problem where your keyboard works perfectly, but your keyboard shortcuts suddenly stop working?

That happened to me recently.

I could type normally. Every key worked as expected. But keyboard shortcuts such as Alt + Tab, Ctrl + C, Ctrl + V, and other combinations were not behaving as expected.

At first, this looked like a keyboard problem.

It wasn't.

The keyboard was working properly. The problem was with the way Ubuntu/GNOME was handling shortcuts.

This article explains how I approached the problem and the commands that can help diagnose similar issues.

1. First, determine whether the keyboard or shortcuts are the problem

The first mistake you can make when keyboard shortcuts stop working is assuming that the keyboard is broken.

Before changing anything, test normal typing.

Open a terminal and run:

echo "keyboard test"
Enter fullscreen mode Exit fullscreen mode

If you can type normally, the keyboard hardware and basic input are probably working.

This gives us an important distinction:

Keyboard input works
        ↓
Normal typing works
        ↓
Keyboard shortcuts fail
        ↓
Investigate the desktop/input configuration
Enter fullscreen mode Exit fullscreen mode

This is much better than immediately reinstalling drivers or changing system configurations.

2. Test different types of shortcuts

Not all keyboard shortcuts are handled by the same component.

For example:

Application shortcuts

These include:

Ctrl + C
Ctrl + V
Ctrl + Z
Ctrl + A
Enter fullscreen mode Exit fullscreen mode

These are generally handled by the application.

Desktop/window-manager shortcuts

Examples include:

Alt + Tab
Super
Ctrl + Alt + T
Enter fullscreen mode Exit fullscreen mode

These can be handled by GNOME, the window manager, or the desktop environment.

This distinction is important when troubleshooting.

If Ctrl + C works in one application but Alt + Tab doesn't work, the problem may be related specifically to GNOME's global shortcuts.

3. Check GNOME's shortcut configuration

Ubuntu's GNOME desktop stores many shortcut configurations through gsettings.

For example, you can inspect the shortcut responsible for switching windows:

gsettings get org.gnome.desktop.wm.keybindings switch-windows
Enter fullscreen mode Exit fullscreen mode

You may see something similar to:

['<Alt>Tab']
Enter fullscreen mode Exit fullscreen mode

This tells you that GNOME has Alt + Tab configured as a window-switching shortcut.

You can also check application switching:

gsettings get org.gnome.desktop.wm.keybindings switch-applications
Enter fullscreen mode Exit fullscreen mode

If the expected shortcut is missing or has been changed, GNOME's shortcut configuration may be the source of the problem.

4. Check GNOME Shell shortcuts

Some shortcuts are handled directly by GNOME Shell.

For example:

gsettings get org.gnome.shell.keybindings show-applications
Enter fullscreen mode Exit fullscreen mode

This can help determine whether shortcuts involving the Super key are configured correctly.

The key idea is that instead of guessing, we can inspect the configuration directly.

5. Check Ubuntu's graphical shortcut settings

You can also inspect shortcuts through the GUI.

Go to:

Settings → Keyboard → View and Customize Shortcuts

From there, look at the configured shortcuts for:

  • Windows
  • Navigation
  • Applications
  • System
  • Custom shortcuts

This is useful because it allows you to verify the configuration without using the terminal.

6. Check accessibility features

Another easy-to-miss cause is accessibility settings.

Ubuntu provides features such as:

  • Sticky Keys
  • Slow Keys
  • Bounce Keys

If these have been enabled accidentally, keyboard behavior can become confusing.

Go to:

Settings → Accessibility → Typing

and check whether these features are enabled.

If you don't intentionally use them, disable them and test the shortcuts again.

7. Check GNOME extensions

GNOME extensions can also modify or intercept keyboard behavior.

To see installed extensions:

gnome-extensions list
Enter fullscreen mode Exit fullscreen mode

If you suspect an extension is causing the problem, temporarily disable it:

gnome-extensions disable EXTENSION_NAME
Enter fullscreen mode Exit fullscreen mode

Then test the shortcuts again.

This is particularly useful if the problem started after installing or updating a GNOME extension.

8. Check whether Ubuntu is detecting the key combinations

If the configuration appears correct but shortcuts still don't work, the next step is to determine whether the desktop is actually receiving the key events.

One useful tool is wev.

Install it with:

sudo apt install wev
Enter fullscreen mode Exit fullscreen mode

Then run:

wev
Enter fullscreen mode Exit fullscreen mode

Press keys such as:

Ctrl
Alt
Shift
Super
Enter fullscreen mode Exit fullscreen mode

and combinations such as:

Ctrl + C
Alt + Tab
Enter fullscreen mode Exit fullscreen mode

This helps determine whether the underlying input events are reaching the desktop environment.

This is an important debugging principle:

Don't just ask whether a feature works. Determine which layer of the system is failing.

For keyboard shortcuts, the layers can look roughly like:

Keyboard
   ↓
Linux input system
   ↓
Desktop environment
   ↓
GNOME Shell / Window Manager
   ↓
Application
   ↓
Shortcut
Enter fullscreen mode Exit fullscreen mode

Finding the failing layer makes troubleshooting much easier.

9. Don't immediately reset your configuration

One tempting solution is to reset GNOME configuration immediately.

For example:

dconf reset -f /org/gnome/desktop/wm/keybindings/
Enter fullscreen mode Exit fullscreen mode

This can be useful in some situations, but I wouldn't make it the first step.

Why?

Because resetting configuration can remove custom settings that you intentionally created.

A better troubleshooting process is:

1. Confirm the keyboard works
2. Identify which shortcuts fail
3. Determine whether the problem is global or application-specific
4. Inspect GNOME shortcut configuration
5. Check accessibility settings
6. Check GNOME extensions
7. Inspect keyboard events
8. Reset configuration only if necessary
Enter fullscreen mode Exit fullscreen mode

This approach minimizes unnecessary changes.

10. What I learned from the problem

The most important lesson wasn't actually the command that fixed the shortcuts.

It was the troubleshooting methodology.

When something stops working, don't immediately assume the most obvious component is broken.

In my case:

Keyboard works
      ↓
Typing works
      ↓
Shortcuts don't work
      ↓
Keyboard hardware is probably not the problem
      ↓
Investigate GNOME
      ↓
Inspect shortcut configuration
      ↓
Test the input events
      ↓
Identify the configuration/problem layer
Enter fullscreen mode Exit fullscreen mode

This approach can be applied to much more than keyboard shortcuts.

The same principle applies when debugging:

  • Django applications
  • APIs
  • databases
  • Docker
  • networking
  • Linux services
  • authentication
  • frontend applications

Instead of asking:

"What can I reinstall?"

Ask:

"Which layer is actually failing?"

Conclusion

A keyboard that works normally while its shortcuts fail doesn't necessarily indicate a hardware problem.

On Ubuntu/GNOME, keyboard shortcuts involve several layers of configuration, including GNOME Shell, the window manager, applications, accessibility settings, and extensions.

The best approach is therefore to troubleshoot systematically rather than immediately resetting or reinstalling components.

The general debugging pattern is simple:

Observe
   ↓
Isolate
   ↓
Inspect
   ↓
Test
   ↓
Fix
   ↓
Verify
Enter fullscreen mode Exit fullscreen mode

That mindset is useful far beyond Linux desktop troubleshooting.

Sometimes the best debugging tool isn't a complicated command.

It's knowing which layer to investigate first.

Top comments (0)