Dokunmatik ekranı kullanırken fare imlecini dinamik olarak gizleme


21

Dokunmatik bir dizüstü bilgisayarım var ve ekrana her dokunduğumda işaretçiyi gizlemek istiyorum. Ben gibi çözümlerin farkındayım karıştırmayan ve startx -nocursorfakat / gizlemek için işaretçi istiyorum ben bir donanım fare kullandığımda dokunmatik ekran ve gösteren kullanırsanız, dinamik saklandığını gösteriyor.

İki ayrı işaretçi yapmayı ve yukarıdaki iki çözümden birini dokunmatik ekran işaretçisine uygulamayı düşündüm , ancak bu çözümlerin hiçbiri tek bir işaretçiyi nasıl hedefleyeceğini söylemiyor ve birden fazla işaretçi bulundurmak işleri tuhaf hale getiriyor ve bu da donanımı gizlemiyor fare imleci.

Ben en makul gibi bunu bir şey yapabilirsiniz anlamaya Bu geçerli giriş mekanizmasının takip ve yürütme, xinput -cursor [transparent cursor]dokunmatik ekran kullanılır ve ne zaman xinput -cursor [normal cursor]normal bir fare ne zaman kullanılır.

Yine de xinput'a baktım ve hem donanım faresi hem de dokunmatik ekran aynı işaretçiye bağlı olduğundan, ikisi de aynı olayları xev'de kaydettiğinden, bir dokunuşu ayırt etmek için gereken bilgileri nereden alacağımdan emin değilim bir fare tıklaması. mümkün mü?

Yanıtlar:


5

Kullanabilirsin

Kullanmak için yükleyin

sudo apt-get install unclutter

sonra çalıştır

unclutter -idle 0.01 -root

Boşta kaldıktan sonraki sayının gizlenmeden önceki süre anlamına geldiğini unutmayın. Bu durumda, saniyenin 1 / 100'üne ayarlanır. Bunu her zaman gizlenecek bir değere değiştirmeyi deneyebilirsiniz.

Bu, imleci hareket ettirmediğinizde gizler. Eminim tamamen gizlemek için bir seçenek de var.


Karmaşık olmayan çözümler gördüm, ancak bu bir dokunmatik ekran ve bir fare kullanma arasında ayrım yapmıyor.
erp

2

Farenizi kullanmadığınızda dokunmatik ekranı kullandığınızı ve kullanmak istediğinizde sisteme bir tane taktığınızı varsayalım. Bu durumda, udevişaretçinizi buna göre yönetmek için kuralları kullanabilirsiniz :

ACTION=="add", ATTRS{bInterfaceProtocol}=="02", ATTRS{bInterfaceClass}=="03", ATTRS{bInterfaceSubClass}=="01", ENV{DISPLAY}=":0", ENV{XAUTHORITY}="/home/user/.Xauthority", ENV{REMOVE_CMD}="/usr/bin/xinput -cursor [transparent cursor]", RUN+="/usr/bin/xinput -cursor [normal cursor]"

Bir fareyi ayırt etmek için kullanılan koşullar bu cevaptan ödünç alınır .

Tek tek uygulamaların imleci dinamik olarak yeniden tanımlayabileceğini unutmayın, böylece pencerelerini üzerine getirdiğinizde imleciniz tekrar görünür hale gelebilir. unclutterTüm imleçlerin her yerde gizlenmesini istiyorsanız bunun yerine başlatabilir / durdurabilirsiniz :

ACTION=="add", ATTRS{bInterfaceProtocol}=="02", ATTRS{bInterfaceClass}=="03", ATTRS{bInterfaceSubClass}=="01", ENV{DISPLAY}=":0", ENV{XAUTHORITY}="/home/user/.Xauthority", ENV{REMOVE_CMD}="/bin/sh -c unclutter&", RUN+="/usr/bin/killall unclutter"

Şahsen fare takılıyken dokunmatik ekranı tamamen devre dışı bırakardım, böylece yanlışlıkla dokunmak imleci fareyi takip etmesini beklediğinizde rahatsız etmez.


Bu sadece benim takılıp, sadece takılı fareler için benim trackpad için bu davranışı dışında iyi bir seçenektir. Udev'in yalnızca dinamik olarak eklenen / kaldırılan cihazları etkilediğine inanıyorum?
erp

Trackpad'iniz "donanım faresi" mi demek istiyorsun? Denemek ve işe yarayıp yaramadığını görmek zorunda kalacaksınız. Dokunmatik yüzey aslında udevFn düğmesini kullanarak devre dışı bıraktığınızda kaldırılmış olarak görülebilir (bir tane olduğunu varsayarsak).
Dmitry Grigoryev

1

Burada nowrep tarafından karmaşık olmayan düzeltmeler aracının bir çatal var . Bu sürüm bir-touch , bir dokunma girişi algılandığında imleci otomatik olarak gizleme seçeneği . (Orijinal karışıklık-xfixes deposu burada )

Dikkat edilmesi gereken bir şey, belirli bir süre sonra imleci gizleme davranışını içermesidir. Sadece--timeout çözmek seçeneği çok yüksek bir değere .

Bu sizin için mükemmel bir şekilde çalışmalıdır. Benim durumumda harici olarak bağlı bir dokunmatik ekranım vardı ve normal monitöre geri döndüğümde imleç dokunmatik ekranda olacak, bu yüzden dokunduğum yerden ekrana geri götürmeliyim. Güzel olan şey, fareyi hareket ettirmeye başladıktan sonra imlecin görüneceği için nerede olduğunu biliyorum.

Bu seçeneğin güzel bir yararı, istediğimde faremi dokunmatik ekranda normal gibi kullanabilmem, ancak istemediğimde gizlemem.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.