Недавно я приобрел новую Wacom Mobile Studio Pro 13. Планшетный компьютер (без трекпада, без физической клавиатуры, всего несколько кнопок с левой стороны, со стилусом Wacom).
Когда я впервые захожу в учетную запись, вводя пароль с экранной клавиатуры, клавиша Shift работает просто отлично. Но после входа в систему и на экране блокировки клавиша Shift фактически не использует заглавные буквы, хотя клавиатура визуально выглядит так, как будто она работает. Это делает невозможным вход в систему с экрана блокировки, что требует жесткой загрузки.
Я проверил в текстовом редакторе, чтобы убедиться, что он не работает, как описано.
Я не уверен, что мне чего-то не хватает, и я не уверен, как начать устранение этой проблемы.
Вот быстрый снимок экрана проблемы в случае, если моего описания недостаточно.
Вот решение, которое будет только работать над Xorg, не Уэйлендом.
Мы изменим двоичный файл, /usr/lib/gnome-shell/libgnome-shell.so
.
Сделайте резервное копирование исходного файла.
sudo cp /usr/lib/gnome-shell/libgnome-shell.so /usr/lib/gnome-shell/libgnome-shell.so.original
Просмотрите часть файла, который мы изменим.
xxd /usr/lib/gnome-shell/libgnome-shell.so | grep -A3 "ribou.DisplayA"
Вывод будет похож на это, показывая, что Карибу использует Gnome новый Shell LocalAdapter
обработать нажатия виртуальной клавиши.
001150d0: 4361 7269 626f 752e 4469 7370 6c61 7941 Caribou.DisplayA
001150e0: 6461 7074 6572 2e73 6574 5f64 6566 6175 dapter.set_defau
001150f0: 6c74 286e 6577 204c 6f63 616c 4164 6170 lt(new LocalAdap
00115100: 7465 7228 2929 3b0a 0a20 2020 2020 2020 ter());..
Прокомментируйте часть кода, который говорит Карибу использовать Gnome Shell LocalAdapter
. Карибу затем примет значение по умолчанию к своему собственному XAdapter
, который работает только в X11.
sudo sed -i 's|\x43\x61\x72\x69\x62\x6f\x75\x2e\x44\x69\x73\x70\x6c\x61\x79\x41|\x2f\x2f\x72\x69\x62\x6f\x75\x2e\x44\x69\x73\x70\x6c\x61\x79\x41|g' /usr/lib/gnome-shell/libgnome-shell.so
Проверьте это /usr/lib/gnome-shell/libgnome-shell.so
был изменен правильно.
xxd /usr/lib/gnome-shell/libgnome-shell.so | grep -A3 "ribou.DisplayA"
Вывод будет похож на это, показывая, что строка была теперь прокомментирована.
001150d0: 2f2f 7269 626f 752e 4469 7370 6c61 7941 //ribou.DisplayA
001150e0: 6461 7074 6572 2e73 6574 5f64 6566 6175 dapter.set_defau
001150f0: 6c74 286e 6577 204c 6f63 616c 4164 6170 lt(new LocalAdap
00115100: 7465 7228 2929 3b0a 0a20 2020 2020 2020 ter());..
Отключите Уэйленд и используйте X11 на GDM (вход в систему) экран.
sudo sed -i "s|#WaylandEnable=false|WaylandEnable=false|g" /etc/gdm3/custom.conf
Удостовериться WaylandEnable
был не прокомментирован и что это установлено на false
в конфигурации GDM.
cat /etc/gdm3/custom.conf | grep -B1 WaylandEnable
Вывод должен точно походить на это.
# Uncoment the line below to force the login screen to use Xorg
WaylandEnable=false
Наконец, перезагрузка для внесения изменений эффективными.
Так как решением выше является только обходное решение, регистр на Панели запуска и Bugzilla, и отметьте себя, как повлияли, таким образом, эта ошибка исправлена...
Отмена / Возвращается Изменения
Если Ваши выводы от шагов 4 и 5 соответствуют тому, что показывают выше, то изменения были внесены успешно. Если необходимо вернуться эти изменения, сделайте следующее:
Отменить изменения на шаге 4...
sudo cp /usr/lib/gnome-shell/libgnome-shell.so.original /usr/lib/gnome-shell/libgnome-shell.so
Отменить изменения на шаге 5...
sudo sed -i "s|WaylandEnable=false|#WaylandEnable=false|g" /etc/gdm3/custom.conf
Ах, это то, что вы, отправив мне электронное письмо с инструкциями до «Хорошего», поместите его здесь, чтобы его было проще найти, в случае, если оно понадобится людям в предстоящем выпуске
.