Disable Touchscreen w Voyage

2 min.

Najnowszy czytnik Amazona – Kindle Oasis 2017 – ma kilka unikalnych funkcji. Niektóre z nich, np. wyłączenie ekranu dotykowego, mogą działać na starszych czytnikach… W czasie testów okazało się, że funkcja ta w przypadku Kindle Voyage działa trochę inaczej, niż można było oczekiwać.

Ta anomalia wynika z budowy czytnika – przyciski w Voyage są na tym samym poziomie co ekran dotykowy, dlatego odpowiednio silne dociśnięcie ekranu wpływa też na strefę pod przyciskami.

Do wgrania modyfikacji wymagany jest min. bridge.

Co osiągamy?

Po nałożeniu patcha, w menu otwartego e-booka pojawi się pozycja Disable Touchscreen. Po jej wybraniu otworzy się okienko z informacją widoczną poniżej.

Disable Touchscreen Menu Disable Touchscreen Window

Po zatwierdzeniu wyboru przyciskiem OK ekran Voyage zmieni swoje zachowanie. Nie robiłem testów na jakimkolwiek innym czytniku Kindle, ale przypuszczam, że w przypadku pierwszego Oasisa’a efekt będzie podobny jak w Oasis 2017 (i tym samym różny niż w Voyage).

Efekt modyfikacji

Po zatwierdzeniu wyłaczenia dotyku czytnik zachowuje się następująco:

  • przyciski zmiany stron działają normalnie;
  • dotknięcie górnej cześć ekranu, domyślnie wywołującej menu, nie powoduje żadnej reakcji;
  • podobnie nie można wywołać dolnego menu i funkcji PageFlip;
  • delikatne (lub po prostu krótkie) dotknięcie ekranu nie powoduje żadnej reakcji (domyślnie wystarcza do zmieniania stron);
  • próba zaznaczania tekstu, wywołania słownika. zmiany wielkości fontu itp. nie działa;
  • mocniejsze dotknięcie ekranu powoduje przejście do następnej strony – bez względu na to, czy dotknięcie będzie na środku, blisko lewej czy prawej krawędzi ekranu; siła dotknięcia powinna być nieco większa niż ustawiona wrażliwość przycisków;
  • efekt mija po uśpieniu i wybudzeniu czytnika (o czym informuje komunikat widoczny powyżej).

Warte zauważenia jest wyłączenie zaznaczania tekstu – w nowych wersjach FW irytujące jest to, że po przypadkowym wywołaniu zaznaczania natychmiast „zaśmiecany” jest plik My Clippings.txt. Dodatkowo strony można zmieniać do przodu dotykając ekranu zarówno z lewej, jak i prawej strony. Dużo rzadziej używany przycisk „wstecz” dostępny jest nadal pod przyciskiem na obudowie.

Kwestia techniczna

Jak powszechnie wiadomo Amazon przygotowuje jedno oprogramowanie dla wszystkich czytników od Paperwhite 2 (to stanowi bazę i pod ten czytnik jest optymalizowane oprogramowanie), aż po najnowszy Oasis 2017. O tym jakie funkcje są dostępne na jednym czytniku i niedostępne na innym decydują różne instrukcje warunkowe.

W tym przypadku odpowiednia opcja dostępna jest w klasie ReaderTouchControlPlugin z archiwum Reader-plugin.jar.

O tym czy odpowiednia opcja pojawi się w menu decyduje porównanie wartości screen.resolution.width z liczbą 1264. Ta druga wartość to oczywiście rozdzielczość pozioma Oasis 2017. Wystarczy podmienić ją na 1072 (wartość właściwa dla Voyage) i to już koniec ingerencji.

Gotowy plik dla Voyage z FW 5.9.6 z nałożonym patchem udostępniam pod linkiem: Disable Touchscreen Voyage 5.9.6. Po pobraniu wystarczy podmienić nim plik o tej samej nazwie znajdujący się w katalogu /opt/amazon/ebook/lib/.

Alternatywne rozwiązanie

Inny, podobny efekt można uzyskać modyfikacją opisaną na mobileread – Kindle Voyage Intocable. Jednak jak dla mnie to opcja przekombinowana i sam nawet nie sprawdzam czy i jak działa.

To nadal nie wyczerpuje dostępnych możliwości, ale tutaj nie będę o nich szerzej pisał. Narzucającym się rozwiązaniem jest wyłączenie drivera warstwy dotykowej po jakimś zdarzeniu (lub np. po wpisaniu wybranej komendy w pole wyszukiwania) oraz ponowne załadowanie przy wychodzeniu z trybu wygaszacza (i oczywiście przy restarcie itp. zdarzeniach).