Bug 31727

Summary: Перестает работать переключение раскладки клавиатуры
Product: Branch p7 Reporter: Анатолий Кирсанов <kiav1976>
Component: xorg-serverAssignee: Andrey Cherepanov <cas>
Status: CLOSED WONTFIX QA Contact: qa-p7 <qa-p7>
Severity: major    
Priority: P3 CC: imz, kondratyuk, lakostis, lav, mattakushi10
Version: не указана   
Hardware: all   
OS: Linux   
Bug Depends on: 25196    
Bug Blocks:    
Attachments:
Description Flags
Действующие настройки переключения раскладок none

Description Анатолий Кирсанов 2016-01-21 19:25:11 MSK
KDesktop 7.0.5
Переключение раскладки по Alt+Shift. Ставил так при установке, после - не менял.

Иногда (за две недели два-три раза) раскладка клавиатуры перестает работать. Не реагирует на Alt+Shift. Также нет реакции на выбор раскладки мышью на виджете в системном лотке. Когда он работает, достаточно одного клика для смены раскладки. Когда не работает - реакции на один клик нет. Выбор в контекстном меню виджета нужно раскладки также ее не устанавливает.

Помогает решить проблему выход из сеанса и повторной вход. Т.е. перезагрузка не обязательна.

Вероятно, запускается какая-то программа, регистрирующая свои действия на Alt+Shift. Мой набор:
Thundferbird.
Skype.
Twinkle.
Firefox.
LibreOffice.
KWrite
KCalc.
Kaffeine.

Не уверен, но возможно, что влияет длительное бездействие (нет действий клавиатурой и мышью), т.к. в последний раз это произошло во время просмотра фильма, после получения сообщений в Skype и ответа в нем же на звонок. Попытка написать текст в чат в Skype по-русски обнаружило невозможность изменить раскладку. Просмотр видео был на полный экран, входящие сообщения я игнорировал, а на звонок ответить пришлось.

Манипулировать виджетом раскладки мне приходилось после установки. Сначала он перестал показываться в лотке. Я настроил так, чтобы он показывался всегда, указал использование флажков вместо текстового обозначения раскладки. Потом, в безуспешной попытке что-то решить, поставил в настройках галочку на "Настроить раскладки". Это ничем не помогло.
Comment 1 Анатолий Кирсанов 2016-01-21 19:26:07 MSK
Created attachment 6472 [details]
Действующие настройки переключения раскладок
Comment 2 Sergey V Turchin 2016-01-22 10:54:01 MSK
(В ответ на комментарий №0)
> Помогает решить проблему выход из сеанса и повторной вход.
> Т.е. перезагрузка не обязательна.
xorg-server перезапустился.

> Вероятно, запускается какая-то программа, регистрирующая свои действия на
[...]
> Skype.
Наибольшее подозрение. Попробуйте временно полностью исключить его из выполняющихся программ.
Comment 3 Анатолий Кирсанов 2016-01-24 03:00:21 MSK
(В ответ на комментарий №2)
> (В ответ на комментарий №0)
> > Помогает решить проблему выход из сеанса и повторной вход.
> > Т.е. перезагрузка не обязательна.
> xorg-server перезапустился.

Это должно быть видно в journalctl? Там ничего от X нет. Примерно в это время почему-то "передернуло" клавиатуру USB. Сам разъемы не трогал, других устройств USB не подключал. Правда, WEB-камера USB есть и Skype с ней работает ...

янв 21 19:01:17 main.localdomain kernel: hub 2-0:1.0: port 1 disabled by hub (EMI?), re-enabling...
янв 21 19:01:17 main.localdomain kernel: usb 2-1: USB disconnect, device number 3
янв 21 19:01:18 main.localdomain kernel: usb 2-1: new low-speed USB device number 4 using uhci_hcd
янв 21 19:01:18 main.localdomain kernel: input: Plus More Enterprise LTD. USB-compliant keyboard as /devices/pci0000:00/0000:00:1d.1/usb2/2-1/2-1:1.0/0003:0518:0001.0006/input/input12
янв 21 19:01:18 main.localdomain kernel: hid-generic 0003:0518:0001.0006: input,hidraw3: USB HID v1.10 Keyboard [Plus More Enterprise LTD. USB-compliant keyboard] on usb-0000:00:1d.1-1/input0
янв 21 19:01:18 main.localdomain kernel: input: Plus More Enterprise LTD. USB-compliant keyboard as /devices/pci0000:00/0000:00:1d.1/usb2/2-1/2-1:1.1/0003:0518:0001.0007/input/input13
янв 21 19:01:18 main.localdomain kernel: hid-generic 0003:0518:0001.0007: input,hidraw4: USB HID v1.10 Mouse [Plus More Enterprise LTD. USB-compliant keyboard] on usb-0000:00:1d.1-1/input1
янв 21 19:01:18 main.localdomain mtp-probe[3756]: checking bus 2, device 4: "/sys/devices/pci0000:00/0000:00:1d.1/usb2/2-1"
янв 21 19:01:18 main.localdomain mtp-probe[3756]: bus: 2, device: 4 was not an MTP device
Comment 4 Konstantin A Lepikhov (L.A. Kostis) 2016-02-10 01:26:27 MSK
(In reply to comment #3)
> (В ответ на комментарий №2)
> > (В ответ на комментарий №0)
> > > Помогает решить проблему выход из сеанса и повторной вход.
> > > Т.е. перезагрузка не обязательна.
> > xorg-server перезапустился.
> 
> Это должно быть видно в journalctl? Там ничего от X нет. Примерно в это время
> почему-то "передернуло" клавиатуру USB. Сам разъемы не трогал, других устройств
> USB не подключал. Правда, WEB-камера USB есть и Skype с ней работает ...
> 
> янв 21 19:01:17 main.localdomain kernel: hub 2-0:1.0: port 1 disabled by hub
> (EMI?), re-enabling...
Обычно это плохой разъем/статика или пыль. Ну если у вас передернуло клавиатуру, что-то же должно дернуть и /etc/X11/xinit/fixkeyboard после этого, иначе раскладка сбрасывается на ту, что по-умолчанию.
Comment 5 Анатолий Кирсанов 2016-02-14 18:26:45 MSK
(В ответ на комментарий №4)
> (In reply to comment #3)
> > (В ответ на комментарий №2)
> > > (В ответ на комментарий №0)
> > > > Помогает решить проблему выход из сеанса и повторной вход.
> > > > Т.е. перезагрузка не обязательна.
> > > xorg-server перезапустился.
> > 
> > Это должно быть видно в journalctl? Там ничего от X нет. Примерно в это время
> > почему-то "передернуло" клавиатуру USB. Сам разъемы не трогал, других устройств
> > USB не подключал. Правда, WEB-камера USB есть и Skype с ней работает ...
> > 
> > янв 21 19:01:17 main.localdomain kernel: hub 2-0:1.0: port 1 disabled by hub
> > (EMI?), re-enabling...
> Обычно это плохой разъем/статика или пыль. 
Пыль я проверил. Ее нет, недавно перебирал комп, все прочистил.
Статика может быть - заземления у меня нет и не предвидится.
Насчет плохого разъема - проверяю. Клавиатура у меня новая, требует два гнезда USB (прямо на клавиатуре есть гнездо для флешек). Поменял местами клавиуатуру с WEB-камерой и мышкой, буду наблюдать.

Проблема наблюдается очень редко, но вызывает массу раздражения, т.к. надо закрывать графический сеанс и заходить снова.

Думал, что спасет новое ядро un-def (было std-def, ставил по другой причине, часто были зависания при загрузке, вероятно из-за USB, см. мою ошибку 31710). 

Не исключено, что дело вовсе в отсутствии описания этой клавиатуры в системе (OKLICK 330M). В ней много функциональных (дополнительных) клавиш и система никак на них не реагирует.

> Ну если у вас передернуло клавиатуру, что-то же должно дернуть и /etc/X11/xinit/fixkeyboard
> после этого,
> иначе раскладка сбрасывается на ту, что по-умолчанию.
Не уверен, что понял о чем речь. fixkeyboard запускается при каких обстоятельствах? Только при загрузке X? Ну тогда примерно понятно что творится. xdpyinfo показывает наличие XKEYBOARD. Файл /etc/X11/xinit/Xkbmap в системе есть, в нем записано:

-layout us,ru
-option grp:alt_shift_toggle,compose:menu 

После сбоя у меня еще ни разу не осталась установленной русская раскладка. Может и правда ее ставит fixkeyboard. Но у меня больше подозрений на аппарутуру. Когда я вытаскиваю клавиутару из гнезда USB и вставляю снова переключатель раскладки также перестает работать.
Comment 6 Konstantin A Lepikhov (L.A. Kostis) 2016-02-19 15:26:34 MSK
(In reply to comment #5)
...
> Не уверен, что понял о чем речь. fixkeyboard запускается при каких
> обстоятельствах? Только при загрузке X? Ну тогда примерно понятно что творится.
> xdpyinfo показывает наличие XKEYBOARD. Файл /etc/X11/xinit/Xkbmap в системе
> есть, в нем записано:
> 
> -layout us,ru
> -option grp:alt_shift_toggle,compose:menu 
> 
> После сбоя у меня еще ни разу не осталась установленной русская раскладка.
> Может и правда ее ставит fixkeyboard. Но у меня больше подозрений на
> аппарутуру. Когда я вытаскиваю клавиутару из гнезда USB и вставляю снова
> переключатель раскладки также перестает работать.

fixkeyboard запускается один раз при загрузке Иксов, поэтому у вас оно и "вылечивается" перезапуском. Можете просто вручную его запустить из терминала и все. Все правильно, вы переткнули клаивиатуру, т.е. поменяли адрес input устройства и его нужно проинциализировать по-новой. Как это сделать правильно - вопрос к мантейнеру Иксов и udev.
Comment 7 Vitaly Lipatov 2016-03-24 12:16:49 MSK
(В ответ на комментарий №6)
...
> fixkeyboard запускается один раз при загрузке Иксов, поэтому у вас оно и
> "вылечивается" перезапуском. Можете просто вручную его запустить из терминала и
> все. Все правильно, вы переткнули клаивиатуру, т.е. поменяли адрес input
> устройства и его нужно проинциализировать по-новой. Как это сделать правильно -
> вопрос к мантейнеру Иксов и udev.
Я думаю, что немного по-другому: при подключении клавиатуры вызывается встроенный в Иксы механизм выставления раскладки, который затирает выставленное через fixkeyboard. Типа /etc/X11/xorg.conf.d/95-input-keyboard.conf

И всё это больше похоже на дубль
https://bugzilla.altlinux.org/show_bug.cgi?id=25196
Comment 8 Maxim Knyazev 2020-09-15 12:59:09 MSK
Поддержка дистрибутива завершена. Используйте новые версии.