Mam laptopa z ekranem dotykowym i chcę ukryć wskaźnik za każdym razem, gdy dotykam ekranu. Zdaję sobie sprawę z rozwiązań takich jak porozrzucane i startx -nocursor
ale chcę wskaźnik, aby ukryć / pokazać dynamicznie, ukrywania, jeśli mogę użyć ekranu dotykowego i pokazuje, kiedy używać myszki sprzętu.
Myślałem o stworzeniu dwóch oddzielnych wskaźników i zastosowaniu jednego z dwóch powyższych rozwiązań do wskaźnika na ekranie dotykowym, ale żadne z tych rozwiązań nie wspomina o tym, jak celować w pojedynczy wskaźnik, a posiadanie wielu wskaźników powoduje, że wszystko działa dziwnie, a to nie ukrywałoby sprzętu kursor myszki.
Ja mogę zrozumieć najbardziej rozsądnie zrobić coś jak ten , śledzenie aktualnego mechanizmu wejściowego i wykonywania xinput -cursor [transparent cursor]
, gdy ekran dotykowy służy i xinput -cursor [normal cursor]
kiedy jest używana normalna mysz.
Spojrzałem na xinput i wygląda na to, że ponieważ zarówno mysz sprzętowa, jak i ekran dotykowy są podporządkowane temu samemu wskaźnikowi, oba rejestrują te same zdarzenia w xev, więc nie jestem pewien, skąd otrzymam informacje potrzebne do odróżnienia dotyku od kliknięcia myszką. Czy to możliwe?
Podejrzewam, że używasz ekranu dotykowego, gdy nie masz myszy, i podłączasz go do systemu, kiedy chcesz go używać. W takim przypadku możesz użyć
udev
reguł do odpowiedniego zarządzania wskaźnikiem:Warunki użyte do odróżnienia myszy są zapożyczone z tej odpowiedzi .
Należy pamiętać, że poszczególne aplikacje mogą dynamicznie zmieniać definicję kursora, dzięki czemu kursor może stać się ponownie widoczny po najechaniu kursorem na jego okno. Zamiast tego możesz uruchomić / zatrzymać,
unclutter
jeśli chcesz, aby wszystkie kursory były wszędzie ukryte:Osobiście wyłączałbym również ekran dotykowy całkowicie, gdy mysz jest podłączona, aby przypadkowe dotknięcie go nie przeszkadzało kursorowi, gdy oczekuje się, że podąży za myszą.
źródło
udev
jako usunięty po wyłączeniu go za pomocą przycisku Fn (zakładając, że go masz).Widoczne jest narzędzie do usuwania niepotrzebnych poprawek od teraz dostępne tutaj . Ta wersja dodaje
-touch
opcję automatycznego ukrywania kursora po wykryciu wprowadzania dotykowego. (Oryginalne repozytorium unclutter-xfixes jest tutaj )Należy pamiętać, że nadal obejmuje zachowanie ukrywania kursora po określonym czasie. Możesz po prostu ustawić
--timeout
opcję na bardzo wysoką wartość, aby obejść ten problem.To powinno działać idealnie dla Ciebie. W moim przypadku miałem podłączony zewnętrznie ekran dotykowy, a kiedy wracam do zwykłego monitora, kursor będzie na ekranie dotykowym, więc muszę przenieść go z powrotem na monitor z miejsca, w którym go dotknąłem. Fajną rzeczą jest to, że kiedy zacznę poruszać myszą, pojawi się kursor, więc wiem, gdzie on jest.
Zaletą tej opcji jest to, że nadal mogę normalnie używać myszy na ekranie dotykowym, jeśli chcę, ale chowam ją, gdy tego nie robię.
źródło