Вы нажимаете Alt+Shift в любимом приложении — оно вместо переключения языка ворует фокус? Другое сочетание клавиш с Alt и опять украден фонус? Знакомо? Раздражает? Если да вы — не одиноки. Сегодня расскажу, как я гонялся за этой неуловимой проблемой в Manjaro Linux с KDE, безрезультатно перепробовал множество найденных решений и предложений AI, периодически возвращаясь к проблеме снова и снова, а в итоге нашёл решение, до смешного простое и эффективное.
В чём, собственно, беда?
Суть проблемы: в некоторых приложениях (у меня — в Element, клиенте Matrix) одиночное нажатие клавиши Alt не просто активирует меню, а крадёт фокус у активного окна. Это особенно бесит, если вы привыкли использовать комбинации вроде Alt+Shift для переключения раскладки или Alt+[цифра] для навигации по вкладкам.
Поначалу думал: «Ну, наверняка где‑то в настройках KDE случайно зацепил какую‑то опцию». Но нет — в разделе «Сочетания клавиш» ни одна команда не была привязана к одиночному Alt. Тогда я полез гуглить.
Первые попытки решения: классика жанра
В процессе поисков, я наткнулся на обсуждение, где пользователь с Ubuntu 17.10 жаловался на аналогичную проблему, а затем делился решением — отключить меню через Gnome Tweak. Вот только у меня KDE, а не GNOME, так-что решение оказалось не применимо.
Дальше я попробовал стандартные рецепты для GTK‑приложений:
Добавил в ~/.config/gtk-3.0/settings.ini и ~/.config/gtk-4.0/settings.ini строки:
gtk-enable-accels=0
gtk-enable-mnemonics=0
Запускал Element с переменной GTK_DISABLE_ACCELERATORS=1.
Проверял настройки через dconf-editor (но параметра gtk-enable-accels там не оказалось).
Результат? Нулевой. Element по‑прежнему упрямо открывал меню при нажатии Alt и главное — крал фокус из поля ввода сообщения. Это дико выбешивает, когда вводишь сообщение, нужно переключить раскладку и с этого момента, еще несколько десятков символов набранных «по инерции» оказываются не в поле ввода в лучшем случае, а в худшем — если был нажат пробел и активирована какая-то опция меню — к моменту, как остановишься и перестанешь набирать текст, Element успевает пожить своей жизнью и одному корейскому рандому известно, что именно произойдет в результате.
Глубокое погружение:
Разумеется, я запускал Element с —verbose, искал упоминания accelerator, menu и т.п., но ничего полезного не нашёл.
Обновление пакетов? Ну, я ждал, что проблема исчезнет сама по себе, как это иногда бывает с обновлениями, но нет — время шло, система обновлялась, но Alt оставался самим самой.
Создание тестовой учётной записи — чтобы исключить влияние локальных настроек. Увы, и там Alt работал так же.
Прозрение: решение на поверхности
И вот, после очередной порции гугла и чтения форумов, вдруг подумал. А что, если просто перехватить Alt до того, как его получит GTK приложение? Вспомнил, как Wayland привнёс в мою жизнь веселья, своим появлением и перехватом комбинаций, например, настроенные комбинации CopyQ отвалились, т.к. Wayland стал перехватывать их до того, как они попадут в CopyQ (погуглите — я не один «веселился» в тот вечер ;)).
Шаги решения:
- Параметры системы →Клавиатура → Комбинации клавиш.
- Нажал «Добавить команду или приложение» → «Команду».
- Задал:
- Название: Block Alt with date
- Команда: date
- Сочетание: Alt
- Применил настройки и перезапустил Element.
И… о чудо! Клавиша Alt больше не ворует мой фокус из поля ввода! Никакого меню по нажатию Alt! И прекрасно выполняет мои привычные настроенные комбинации.
Ключевые слова для поиска:
- Alt крадёт фокус KDE
- клавиша Alt открывает меню Manjaro
- отключить меню по Alt в Element
- глобальные сочетания клавиш KDE
- проблема с Alt в Wayland
- Electron‑приложения и Alt в Linux
- как заблокировать клавишу Alt в KDE
- настройка сочетаний клавиш Manjaro
- фокус окна и Alt в KDE Plasma
- решение проблемы с Alt в GTK‑приложениях
