Uygulamalara değil sürücülere bakın
Bunu yapan bir program bulamazsınız, çünkü bu üç tür dokunmatik yüzey nedeniyle sürücüler uygulamalar için tek bir temsile soyutlamaya çalışırlar:
- Mutlak konum verilerini bildiren dokunmatik yüzeyler, Xorg sürücüsü tarafından uygulamalar için göreli harekete dönüştürülüyor. Normal bir uygulama dokunmatik yüzeyle doğrudan (tasarım gereği) konuşamaz, bu nedenle sürücüde bir çözüm aramalısınız.
- Hem göreli hem de mutlak modları kullanabilen dokunmatik yüzeyler, donanıma özgü ve uygulamaya duyarlı olmayan modların değiştirilmesini gerektirir.
- Bazı daha temel dokunmatik yüzeylerin mutlak konumları bildirme özelliği yoktur.
Ne yazık ki, neredeyse tüm mutlak değerleri bildirebilen bir dokunmatik yüzeye sahip olsanız bile, çoğu dokunmatik yüzey sürücüsü bunları Linux uygulamalarında kullanmanıza izin vermez. Mutlak veriler gerçekten oradadır, çünkü sürücü örneğin kaydırma için kenarlarından dokunup dokunmadığınızı algılayabilir. Bunu evtest
sanal bir terminalde (X'i askıya almak için) kullanarak kendiniz test edin . Synaptics dokunmatik yüzeyim mutlak konumları aşağıdaki gibi bildirir:
Event type 3 (EV_ABS)
Event code 0 (ABS_X)
Value 3332
Min 1472
Max 5648
Fuzz 8
Resolution 39
Event code 1 (ABS_Y)
Value 2017
Min 1408
Max 4806
Fuzz 8
Resolution 79
Bir Synaptics cihazını Xorg'da mutlak moda sokma yeteneği , sürücüdeki bu taahhütle yakın zamanda kaldırıldı xf86-input-synaptics
:
Remove absolute mode
Moving a touchpad in absolute mode is unusual - touchpads are disconnected
from the output device, so direct interaction is hard. There appears to be
little usage of it (I haven't seen bug reports from people claiming to use
it). Joe Shaw, author of the code and only known user doesn't have a use for
it anymore, so purge it from the repo.
Sistem genelindeki temel sürücü: evdev
Bunu şu anda Linux'ta mümkün görmenin tek yolu evdev
Xorg'daki sürücüyü kullanmaktır . Öyleydi tartışılan Xorg posta listesine (aşağıda bir alıntı) üzerinde 2010 yılında geri:
Göreceli hareketten ziyade, parmağınızın dokunmatik yüzey üzerinde mutlak konumunu almam gerekiyor.
synaptics sürücüsü bunu yapmaz, ancak evdev sürücüsü yapar. Bu nedenle X sunucunuzu dokunmatik yüzey için evdev sürücüsünü kullanacak şekilde yapılandırmanız gerekir. Aşağıdaki yapılandırma snippet'i, sunucu 1.8 veya üstünü çalıştırmanız durumunda bunu sizin için yapar.
Section "InputClass"
Identifier "evdev touchpad"
MatchIsTouchpad "on"
Driver "evdev"
Option "Mode" "absolute"
EndSection
Bunu farklı kaydet /etc/X11/xorg.conf.d/99-evdev-touchpad.conf
ve sunucuyu yeniden başlatın. Bunun yalnızca dokunmatik yüzeyin davranışını değiştirdiğini, olaylardaki verileri değil, yine de verilerin yine de mutlak olduğunu unutmayın. Ayrıca, synaptics yerine evdev kullanarak iki parmakla kaydırma, dokunma vb. Yeteneğini kaybedersiniz.
Alt satır: özellik isteği oluşturma
Akış yukarı bugtracker'da özellik isteği için yer görüyorum sürücüsü (ve muhtemelen diğerleri) için . Touchpad'in mutlak konum değerlerini okuyabilmek için Xorg'da bir arayüze sahip olmak çok yararlı olacaktır. Gördüğüm ana engelleyiciler, bunun donanıma özgü ve dolayısıyla uygulanması zor olabileceğidir.
Ben Joe Shaw ve Peter Hutterer ile konuşmak da bu tarihin tam olarak ne olduğunu, nasıl büyük bir özellik isteği yapmak ve ondan ne olacağını görmek için çok değerli olabilir düşünüyorum.