Любая помощь будет принята с благодарностью. Я установил Ubuntu на Macbook Pro, и все работает хорошо, за исключением тачпада.
Указатель перемещается только тогда, когда я работаю с сенсорной панелью с абсолютным минимальным давлением.
Приложив немного дополнительного давления, указатель останавливается и застревает. Ослабив давление на тачпад до минимума, он снова начинает двигаться.
Если я загружаюсь в режиме восстановления Mac, сенсорная панель работает нормально и не перестает работать из-за давления моих пальцев. И это обычное использование, ничего необычного с точки зрения давления на тачпад.
Я попытался установить несколько инструментов, чтобы изменить все возможные настройки сенсорной панели, такие как отключение при наборе текста, настройки прокрутки и т. д., но не смог заставить это работать должным образом. Какие-либо предложения?
Моя версия Ubuntu 21.10 | Тип ОС 64-разрядная | GNOME версии 40.4.0 | Оконная система Wayland
Ниже представлено короткое видео, показывающее, как указатель застревает при увеличении давления на сенсорную панель. В видео открыт libinput, измеряющий давление тачпада.
https://youtu.be/MqLGDbBO5Y4
И вывод из libinput
:
+--------------------------------------------- ------------------------------+
| Треш | 30 | 25 | 130 | 256 | |
+--------------------------------------------- ------------------------------+
| Нажмите | вниз | вверх | пальма | большой палец | мин | макс | р | среднее | медиана |
+--------------------------------------------- ------------------------------+
| 1750 | х | х | х | | 25 | 241 | 0 | 174 | 177 |
| 1751 | х | х | х | | 26 | 218 | 0 | 176 | 174 |
| 1752 | х | х | х | | 22 | 212 | 0 | 155 | 155 |
| 1753 | х | х | х | | 50 | 193 | 0 | 163 | 176 |
+--------------------------------------------- ------------------------------+
Большое спасибо заранее!
Из того, что я вижу, кажется, что обнаружение ладони срабатывает очень рано, даже когда я слегка нажимаю на сенсорную панель только одним пальцем.
Я пытаюсь ввести файл local-overrides.quirks, но не уверен, как заставить libinput действительно читать файл quirks. Это просто вопрос выхода из системы и обратно?
Это файл .ini, который я пытаюсь прочитать с помощью libinput.
Не уверен, что синтаксис MatchDMIModalias хорош...
[Отмена давления на сенсорную панель]
MatchUdevType=тачпад
MatchName=bcm5974
MatchDMIModalias=dmi:*svnAppleInc.:*pnMacBookPro9,2*
AttrPalmPressureThreshold=256
Мне не удалось выяснить, работает ли local-overrides.quirks, поэтому я отредактировал фактический файл quirks, который libinput считывает при инициализации.
Я переместил порог давления ладони на максимум, так что теперь при его измерении он больше не вызывает срабатывание ладони.
МодельAppleTouchpad=1
AttrSizeHint=104x75
AttrTouchSizeRange=150:130
AttrPalmSizeThreshold=700
AttrPalmPressureThreshold=255
Тем не менее, указатель все еще зависает, когда я немного нажимаю на него. :'(
+--------------------------------------------- ------------------------------+
| Треш | 30 | 25 | 255 | 256 | |
+--------------------------------------------- ------------------------------+
| Нажмите | вниз | вверх | пальма | большой палец | мин | макс | р | среднее | медиана |
+--------------------------------------------- ------------------------------+
| 32 | х | х | | | 34 | 139 | 0 | 121 | 128 |
| 33 | х | х | | | 25 | 127 | 0 | 112 | 114 |
| 34 | х | х | | | 24 | 130 | 0 | 112 | 116 |
| 35 | х | х | | | 20 | 139 | 0 | 103 | 105 |
| 36 | х | х | | | 21 | 148 | 0 | 125 | 132 |
| 37 | х | х | | | 31 | 238 | 0 | 156 | 160 |
| 38 | х | х | | | 26 | 180 | 0 | 139 | 145 |
| 39 | х | х | | | 17 | 166 | 0 | 135 | 142 |
| 40 | х | х | | | 31 | 222 | 0 | 142 | 140 |
| 41 | х | х | | | 36 | 172 | 0 | 140 | 143 |
| 41 | х | х | | | 0 | 172 | 0 | 138 | 143 |
Тем не менее, указатель продолжает зависать, когда я чуть сильнее нажимаю, даже не сигнализируя о прикосновении ладони к инструменту измерения. :'(. Нужно продолжать расследование!
Ура!!!
Исправлено, сломав его!
Таким образом, даже после настройки порога давления ладони, чтобы ладонь никогда не срабатывала, указатель продолжал зависать, когда я прикладывал дополнительное давление к сенсорной панели. Очень назойливый. Я испробовал множество логических причуд, таких как ModelTabletModeNoSuspend, ModelTabletModeSwitchUnreliable, думая, что дополнительное давление может заставить linbinput думать, что я переключаюсь в режим планшета и каким-то образом отключаю тачпад. Не успешный.
Затем я решил бросить в него кухонную раковину и сделал логическое значение «5», просто чтобы увидеть, действительно ли он читает то, что я пишу. Это привело к ошибке синтаксического анализа причуды, которая помешала запуску всей причуды, и вуаля! Тачпад работал отлично! Это заставило меня понять, что одна из предустановленных настроек причуды заставляла указатель зависать.
Виновным параметром был AttrPalmSizeThreshold. Каким-то образом эта причуда замораживает указатель, если обнаруживает дополнительное давление, по крайней мере, на моем Macbook Pro 9,2. Удаление его из причуды заставило тачпад работать просто отлично! Большой успех!