LINUX.ORG.RU

PageUp, PageDown, Home и End работают в консоли, но не работают в иксах

 ,


1

2

Заметил проблему. На ноутбуке Dell 3168 PageUp, PageDown, Home и End (вызываются комбинацией fn и стрелки) не работают в иксах. В cat /dev/input/event? реакция есть, а ни в xev, ни в xinput test, ни в xinput test-xi2 нет. Соответственно приложения не реагируют. При этом переключаюсь в консоль — там всё работает.

Вывод evtest при нажатии такой:

Event: time 1491347531.484440, type 4 (EV_MSC), code 4 (MSC_SCAN), value c9
Event: time 1491347531.484440, type 1 (EV_KEY), code 104 (KEY_PAGEUP), value 2
Event: time 1491347531.484440, -------------- SYN_REPORT ------------
Event: time 1491347531.816420, type 4 (EV_MSC), code 4 (MSC_SCAN), value d1
Event: time 1491347531.816420, type 1 (EV_KEY), code 109 (KEY_PAGEDOWN), value 2
Event: time 1491347531.816420, -------------- SYN_REPORT ------------
Event: time 1491347532.285199, type 4 (EV_MSC), code 4 (MSC_SCAN), value c7
Event: time 1491347532.285199, type 1 (EV_KEY), code 102 (KEY_HOME), value 2
Event: time 1491347532.285199, -------------- SYN_REPORT ------------
Event: time 1491347532.602044, type 4 (EV_MSC), code 4 (MSC_SCAN), value cf
Event: time 1491347532.602044, type 1 (EV_KEY), code 107 (KEY_END), value 2
Event: time 1491347532.602044, -------------- SYN_REPORT ------------

То есть с виду всё правильно.

В чём может быть проблема?

P.S: На USB-клавиатуре эти кнопки работают.



Последнее исправление: te111011010 (всего исправлений: 3)

Вот решение от user_id_68054 и Мэтью Гаррета, за что им спасибо.

некоторые клавиатурные клавишы только нажимаются, но не отжимаются (комментарий)

И позор Dell'у, который даже клавиатуру в соответствии со стандартом не может сделать.

te111011010
() автор топика
Ответ на: комментарий от te111011010

Дунчик, но думаю делу пофиг и там все тоже самое

anonymous
()
Ответ на: комментарий от te111011010

dk-, помнишь, ты спрашивал, почему linux не работает на ноутбуках? Вот яркий пример. Сколько лет стандартной компьютерной клавиатуре? И даже тут производители умудряются сделать не по стандарту.

Это как некоторые быдлокодеры пишут программы. Не учитывают, что у всех разные компьютеры и разные ОС (не в смысле у кого windows, а у кого linux, а что может быть разные версии и редакции windows, и разное прикладное ПО, с которым может конфликтовать их программа). На претензии отвечают «на моём компьютере всё работает, значит сами виноваты». А раньше аналогично все сайты верстали исключительно под IE конкретных версий.

te111011010
() автор топика
Ответ на: комментарий от mandala

3162/3168 не говнобуки, они няшные :3

anonymous
()
Ответ на: комментарий от te111011010

Ты предлагаешь сделать аппаратную поддержку Fn-клавиш на уровне «начинки» клавиатуры (так, например, у банкоматов, но там вообще хардкор). На это ни кто не пойдет, дорого.

в консоль — там всё работает
не работают в иксах

Это разные реализации поддержки устройства «клавиатура». Вот и разница. К сожалению, в иксах я не силен, больше подсказать не могу. Извиняюсь за «капитанство».

mandala ★★★★★
()
Последнее исправление: mandala (всего исправлений: 1)
Ответ на: комментарий от mandala

Операционная система видит клавиатуру ноутбука как стандартную 105-клавишную клавиатуру, которая появилась десятки лет назад. Соответственно, ОС никак не знает про Fn. Комбинации клавиш с fn обрабатываются самим контроллером клавиатуры, в результате система считает, что была нажата настоящая клавиша PgDn, а не комбинация с Fn. Dell сделал так, что для этих комбинаций клавиатура посылает сигнал «клавиша нажата», а про сигнал «клавиша отпущена» забыли.

te111011010
() автор топика
Ответ на: комментарий от mandala

Ты предлагаешь сделать аппаратную поддержку Fn-клавиш на уровне «начинки» клавиатуры (так, например, у банкоматов, но там вообще хардкор). На это ни кто не пойдет, дорого.

???

Zmicier ★★★★★
()
Ответ на: комментарий от te111011010

Эм. т.е. ты уже разобрался, что иксы на сабжевых проблемных клавишах реагируют на отпускание? Мне кажется это не так, прокрутка при зажатой клавише работает. Хотя я могу ошибаться.

Соответственно, ОС никак не знает про Fn.

Тогда бы у тебя не было бы проблемы.

mandala ★★★★★
()
Последнее исправление: mandala (всего исправлений: 1)
Ответ на: комментарий от Zmicier

Чтоб клава слала код клавиш «105-клавишной клавы» вне зависимости от наркомании с Fn. Насколько я понимаю это сейчас не совсем так.

mandala ★★★★★
()
Последнее исправление: mandala (всего исправлений: 2)
Ответ на: комментарий от mandala

Так. Но, как я понял (я и сам в тонкости до сего момента не вникал), клавиатура при нажатии шлёт сигнал «клавиша с таким-то кодом нажата», а при отпускании — «клавиша с таким-то кодом отпущена». В данном случае всё так, кроме конкретно этих четырёх кнопок (помимо них через fn доступна клавиша menu, но она работает нормально). А по поводу этих кнопок — сигнал нажатия шлётся (именно стандартный сигнал клавиши pageup и т.п., если бы она была аппаратной), а про сигнал отжатия забыли. Консоль не ждёт сигнала отжатия, а иксы ждут. Вот поэтому и не работает.

te111011010
() автор топика
Ответ на: комментарий от mandala

Чтоб клава слала код клавиш «105-клавишной клавы» вне зависимости от наркомании с Fn. Насколько я понимаю это сейчас не совсем так.

Мне неизвестно достоверно, как устроено именно сабжевая машинка марки «Делл», но никаких оснований думать, что двукнопочное представление выходит куда-то за пределы клавиатуры, у меня нет — это же самый простой способ. Увы, он не только отбирает у пользователя свободу выбора, но и приводит к таким вот неисправимым ошибкам.

Удивление же мое вызвало ваше «дорого».

Zmicier ★★★★★
()
Последнее исправление: Zmicier (всего исправлений: 1)
Ответ на: комментарий от dk-

Домашняя страница Васи Пупкина под IE6 работает, а под Firefox 50 и M$ Edge — нет. Вывод: Фирефохэ и ёж кривы для веба.

te111011010
() автор топика
Ответ на: комментарий от Zmicier

но никаких оснований думать, что это не так, нет — это же самый простой способ

Это реализовано не аппаратно на клавиатуре, а в контроллере, что уже как бы костыль. Т.е. грубо — нельзя просто так подключить не родную клавиатуру с Fn-модификаторами к ноутбуку.

mandala ★★★★★
()
Последнее исправление: mandala (всего исправлений: 1)
Ответ на: комментарий от Zmicier

В принципе, то же самое могло быть и с аппаратными кнопками. Просто dell решил не следовать стандартам, а налабать прошивку микроконтроллера на коленке, проверить под виндой и сказать «работает — и хрен с ним, а другие ОС — это проблемы индейцев».

te111011010
() автор топика
Ответ на: комментарий от te111011010

Да ты еще и дурачок?
100% работающих в ие6 будут работать в фф 100500.

PS
Кстати, новый браузер от мс фантастически быстр! Я прям не перестаю удивляться. Были бы у него вкладки - цены бы не было.

dk-
()
Ответ на: комментарий от dk-

И это я не проверял на голом оффтопе с образа с сайта microsoft или с диска из магазина. Может, dell писал свой костыль для винды. Но тогда это реально маразм — драйвер для кнопки home. Абсурднее только драйвер для коврика мыши.

te111011010
() автор топика
Ответ на: комментарий от te111011010
showkey --scancodes

Сравни что говорит usb-клава и что говорит бортовая на проблемных клавишах. В tty естественно.

mandala ★★★★★
()
Ответ на: комментарий от mandala

Это реализовано не аппаратно на клавиатуре, а в контроллере

Я не понял противопоставления. Если воплощение на уровне прошивки клавиатуры — это программное, то что тогда было бы «аппаратным»?

что уже как бы костыль

???

Zmicier ★★★★★
()
Ответ на: комментарий от te111011010

В принципе, то же самое могло быть и с аппаратными кнопками.

Тот же самый вопрос.

Zmicier ★★★★★
()
Ответ на: комментарий от Zmicier

Ой всё. Я про то, что контроллер должен быть аппаратно неотделим от клавы.

mandala ★★★★★
()
Ответ на: комментарий от dk-

100% работающих в ие6 будут работать в фф 100500.

Я отлично помню эпоху, когда всё версталось только под ie6. Не рассказывай мне сказки. Например, ещё в 2008 году сайта магазина NIX работал только под IE. А ещё раньше каждый второй сайт криво работал под альтернативными браузерами. И это не считая activeX (то есть, api для бинарных плагинов), которым тоже пользовались и когда не надо, особенно Васи Пупкины.

Кстати, новый браузер от мс фантастически быстр! Я прям не перестаю удивляться. Были бы у него вкладки - цены бы не было.

Даже вкладки не завезли. Дикари. Хотя для основной задачи edge (скачивания нормального браузера) это совсем необязательно.

te111011010
() автор топика
Ответ на: комментарий от te111011010

История иногда ходит кругами.

Раньше под ие верстали, т.к. доля остальных браузеров была ничтожна. Теперь наоборот. Некоторые на ие забивают. Это нормально.

Кстати. Я наврал. Щас проверил - есть вкладки. Чет я прям тупанул. Но их нельзя сделать сбоку и древовидными - это беда.

Но там еще косяк - в меню правой кнопки нет пункта «нагуглить выделенное».

dk-
()
Ответ на: комментарий от te111011010

Даже вкладки не завезли.

Что? Лично сидел на лорчике в десяточке в едге с вкладками. Там есть режим какой-то типа для «плиточных» приложений во весь экран, но им пользоваться не обязательно.

mandala ★★★★★
()
Ответ на: комментарий от dk-

Раньше под ие верстали, т.к. доля остальных браузеров была ничтожна. Теперь наоборот. Некоторые на ие забивают. Это нормально.

А есть стандарты w3c. В сфере железа тоже есть стандарты, такие как bios, uefi, acpi и другие. Как веб-мастера любят не следовать стандартам, а делать тяп-ляп и потом методом тыка подгонять под нужный браузер (правда старые IE и сами плохо соответствовали веб-стандартам), так и разработчики железа при написании прошивок любят не следовать им, а методом тыка фиксить прошивки, чтобы кое-как работало под вендой, либо писать программные (для венды) костыли, которые исправляют кривизну прошивок.

te111011010
() автор топика
Ответ на: комментарий от dk-

Между прочим, тогда, по твоей логике, и для серверов linux не готов, поскольку для того, чтобы установить ОС, нужна клавиатура либо её эмуляция при помощи ip-kvm или средствами виртуальной машины.

te111011010
() автор топика
Ответ на: комментарий от mandala

Те же коды, но в случае с fn — как будто залипание. А после нескольких тыков по разным кнопкам — ничего не показывал. Возможно, иксы умеют блокировать залипшие клавиши.

te111011010
() автор топика
Ответ на: комментарий от mandala

Лучше погугли (мне сейчас некогда), как на аппаратном уровне клавиатура себя ведёт. Вот нажал я кнопку, она шлёт системе какой-то сигнал. Если я держу кнопку, то что происходит? Она периодически шлёт сигналы, или не шлёт ничего? А когда отпускаю, то шлёт другой сигнал, что кнопка отпущена?

te111011010
() автор топика
Ответ на: комментарий от Deleted

По ссылке уже писали. Вроде ничем не помогли. Типа «наш ноутбук работает только под Windows, работа под остальными ОС не гарантируется, мы не запрещаем, но вы ставите их на свой страх и риск».

te111011010
() автор топика
Ответ на: комментарий от te111011010

В качестве бреда, попробуй отключить повтор в иксах

xset r off

Лучше погугли

Гуглю, самому стало интересно.

mandala ★★★★★
()
Ответ на: комментарий от te111011010

О, я проглядел. Ну радует, что моя думалка приехала туда же куда и у умных людей. Значит не совсем тупой.

mandala ★★★★★
()
Последнее исправление: mandala (всего исправлений: 3)
Ответ на: комментарий от te111011010

напиши пожалуйста что-нибудь на официальный dell-форум (если ещё не написал) — http://en.community.dell.com/support-forums/

( ну и там как-нибудь даже было-бы-не-плохо-наверно в сообщении сослаться на тему http://en.community.dell.com/support-forums/software-os/f/3525/t/19999436 .. чтобы не выглядело бы так будто проблема одиночная )

user_id_68054 ★★★★★
()
Ответ на: комментарий от user_id_68054

Ты же знаешь что они ответят. Что под windows работает — значит не дефект.

Вот если найдётся человек с деллом с предустановленным линуксом с той же проблемой, то его слова будут чуть весомее.

te111011010
() автор топика
Ответ на: комментарий от te111011010

А есть стандарты w3c

Срать.
Стандарты это хорошо. Им полезно следовать.
Но самая главная задача - сайт должен зашибать бабло. Или помогать зашибать бабло. А расходы на его поддержание должны быть оптимальны. а специалисты для его поддержания должны быть заменяемы.

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

А еще есть мнение, что сейчас, как раз, стандартизация куда лучше, чем во времена ие6. В смысле реально полезна.

dk-
()
Ответ на: комментарий от dk-

Ну вот кто был виноват в том, что раньше сайты работали только под ie6?

te111011010
() автор топика
Ответ на: комментарий от dk-

Это ты пишешь чушь, утверждая, что Linux обязан поддерживать все кривые клавиатуры. Может он ещё обязан поддерживать клавиатуры, залитые кофем? Или веб-камеры с разбитым объективом?

te111011010
() автор топика
Ответ на: комментарий от te111011010

Вот если найдётся человек с деллом с предустановленным линуксом
предустановленным

Дебилов нет. Его тут же сносят и ставят любимый дистр

anonymous
()
Ответ на: комментарий от anonymous

В небе звёзды зажглись и кругом темнота. Только кошки не спят,ищут кошки кота

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.