Spacerkiem po drzewie

 

Od kilku lat NVDA to mój podstawowy czytnik ekranu. Na tę decyzję miało wpływ kilka czynników, do najistotniejszych z nich należało m.in. pojawienie się dodatku NVDA Remote, nie bez znaczenia był też aspekt ekonomiczny. Obecnie NVDA potrafi dostarczać nam informacji w sposób równie efektywny jak jego komercyjni konkurenci a bywa, że wręcz ich wyprzedza. Oczywiście zdarza się i sytuacja odwrotna, ale umówmy się, nie istnieje Screen Reader idealny. Od czasu do czasu próbuję przekonać część znajomych, żeby dali szansę NVDA, na co bardzo często słyszę „no tak, ale ta myszka…”. Znam również przypadki osób, które używają NVDA od lat, ale nie sięgają po możliwość sterowania kursorem komputerowego gryzonia. Moim zdaniem, jeśli używamy NVDA, zasady obsługi myszy w tym programie po prostu trzeba znać. Jeśli mielibyśmy do czynienia z systemem i oprogramowaniem, w którym wszystko byłoby dostępne z klawiatury, to rzecz całą moglibyśmy śmiało odłożyć ad acta – niestety, system Windows powyższego postulatu nie spełnia i chyba nigdy nie będzie.

Zrozumieć obiekty i ich strukturę

Emulacja myszki w NVDA to tak naprawdę poruszanie się po drzewie obiektów. Obiektem jest każde okno i jego elementy. Wszystko to tworzy drzewiastą strukturę, której korzeniem jest zawsze pulpit. W przypadku NVDA nie jesteśmy niestety w stanie w żaden sposób ograniczyć zasięgu naszych manewrów tak, jak możemy to zrobić w przypadku innych czytników ekranu. Będąc w dowolnym oknie zawsze, gdy zanadto się zapędzimy, możemy z niego wyjść, a ponowne odnalezienie go może nie być wcale takie proste. Kolejna kwestia to zależności obiektów wewnątrz okien. To najtrudniejsza rzecz do okiełznania i prawdę mówiąc, nie ma na to żadnych reguł. O ile przeglądanie ekranu z wykorzystaniem emulacji myszki w WE czy JAWS pozwala nam wyobrazić sobie graficzny układ okna w czym może nam również pomóc osoba widząca, o tyle w przypadku nawigacji obiektowej NVDA musimy po prostu o tym zapomnieć. Tak, zgadza się, zapominamy o jakimkolwiek wyglądzie. Wykreślamy z pamięci ten pasek narzędzi, który znajdował się na górze okna, bo może on znajdować się na trzecim poziomie drzewa wewnątrz aplikacji o 2 obiekty na lewo od głównego pnia

Zaś jedyna metoda, żeby poznać jakąś aplikację i jej strukturę to wchodzić wszędzie, gdzie się tylko da, myszkować, szukać, przeglądać i liczyć na to, że coś się znajdzie. Tak, wiem, to nie jest łatwe. Tak, wiem, czytelnicy spodziewali się prostej recepty na rozwiązanie problemów ale sorry, taką mamy nawigację. Na pocieszenie dodam tyle, że doświadczenie przychodzi z czasem. Jeśli poprzeglądamy sobie kilka, kilkanaście programów niejako instynktownie będziemy wiedzieli, czego szukać i taka nawigacja stanie się prostsza, choć nigdy nie będzie bardzo efektywna. W podręczniku NVDA autorzy podali bardzo prosty przykład zależności obiektów w postaci listy i elementów listy. Owszem, jest to bardzo logiczne i tego typu zależności warto pamiętać i kojarzyć. Podobnie, jak rzecz się ma z listą, tak jest choćby i z paskiem narzędzi i jego przyciskami. Jeśli chcemy kliknąć jakiś przycisk to wydaje się być czymś oczywistym, że musimy najpierw wejść w pasek. Największym jednak problemem będzie odnalezienie owego paska, który może być dosłownie wszędzie, a wszystko zależy od ułańskiej fantazji programisty.

Ważne skróty

Podawane w niniejszym tekście skróty odnoszą się do desktopowego układu klawiatury NVDA, gdyż układ ten moim zdaniem jest prostszy dla początkującego użytkownika, który i tak z nawigacją obiektową będzie mieć sporo zabawy. Jeśli ktoś zapragnie przejść na wyższy poziom, może łatwo sprawdzić skróty dla układu Laptop, wystarczy wejść w NVDA, Ustawienia, Zdarzenia wejścia.

NVDA + numeryczne 8 – przenosi nas o poziom wyżej w drzewie obiektów, naciskając ten skrót odpowiednio długo, zawsze przejdziemy na pulpit

NVDA + numeryczne 2 – odczytuje nazwę aktualnego obiektu, wciśnięte dwukrotnie, literuje tę nazwę.

NVDA + numeryczne 2 – przenosi nas o poziom niżej w drzewie obiektów – przy pomocy tego skrótu zagłębiamy się w coraz mniejsze obiekty, reprezentujące kolejne elementy okna programu.

NVDA numeryczne 4 i NVDA + numeryczne 6 – poruszamy się po obiektach na równym poziomie zagnieżdżenia względem aktualnego obiektu - odpowiednio w lewą i prawą stronę.

Przegląd obiektu

Nauczyliśmy się już poruszania po drzewie obiektów, to jednak nie wszystko. NVDA oferuje nam także tzw. Tryb przeglądu, który przyda nam się do nieco bliższego zapoznania się z obiektem. Między poszczególnymi trybami przeglądu przełączamy się wciskając NVDA + numeryczne 7 (poprzedni tryb) i NVDA + Numeryczne 1 (następny tryb).

Dla przykładu, znajdując się w dokumencie MS Word do wyboru mieć będziemy przegląd ekranu, przegląd dokumentu i przegląd obiektu, tryby przeglądu różnić się będą w zależności od typu aplikacji.

Jeśli chodzi o zasadę działania trybu przeglądu, to każdy obiekt możemy przeglądać po:

wierszach (numeryczne 7, 8 i 9 – poprzedni, aktualny, następny wiersz)

wyrazach (numeryczne 4, 5 i 6 – poprzedni, aktualny, następny wyraz

i znakach (numeryczne 1, 2 i 3 – poprzedni, aktualny, następny znak.

Korzystając z tego trybu jesteśmy w stanie przeglądać zawartość wieloliniowych obiektów w wygodniejszy sposób, pamiętajmy że pojedynczym obiektem w przypadku pola tekstowego nie jest jedna linijka tego pola, ale całe pole. Jakkolwiek teoretycznie jesteśmy w ten sposób w stanie przeglądać również zawartość całego ekranu, mam jednak co do tego spore wątpliwości. Z moich obserwacji wynika bowiem, że tryb przeglądania ekranu sprowadza się tylko i wyłącznie do okna pojedynczego programu i tego, co w tym programie wysuwa się na pierwszy plan.

Klikamy

Czas najwyższy przejść do zagadnienia kliknięcia lewym, lub prawym przyciskiem myszy, do czego to właśnie przede wszystkim wykorzystywać będziemy nawigację obiektową. W tym celu przechodzimy do interesującego nas obiektu np. przycisku na pasku narzędzi, wciskamy NVDA + numeryczny /, co powoduje przesunięcie wskaźnika myszy do bieżącego obiektu, a następnie wciskamy numeryczny / lub numeryczną gwiazdkę * (odpowiednio lewy i prawy przycisk myszy).

Istnieje jeszcze kilka innych skrótów, takich jak choćby NVDA + numeryczna gwiazdka powodująca czynność odwrotną, tj. sprowadzenie nawigacji do wskaźnika myszy, czy NVDA + numeryczny minus, powodujący przejście NVDA do punktu uwagi, są to jednak, przynajmniej w moim przypadku, kombinacje używane rzadziej i stosowane przede wszystkim w sytuacji, gdy już kompletnie pogubię się w gmatwaninie obiektów, w hierarchiach ich wzajemnych zależności, gdy zgubię się zupełnie w plątaninie całego tego programistycznego drzewa.

Na zakończenie

Ta nawigacja nie jest wygodna, nie jest logiczna, nie jest fajna. Wszystko zdaje się przemawiać przeciwko takiej formie interakcji użytkownika z komputerem, przecież to dobre dla programistów. Na zakończenie chciałbym jednak przedstawić historię z życia wziętą. Zdarzyło mi się, że korzystałem już z programów, z których pewne informacje byłem w stanie wyciągnąć tylko i wyłącznie za pomocą obiektowej nawigacji NVDA. Standardowe emulacje myszki WE czy JAWS’a nie zdawały się tu na nic, albo dostarczały niewystarczająco dużo informacji. Przykładem takiego programu jest HubiC i jego okno statusu wykonywanych operacji. Przy odpowiednim wysiłku jesteśmy w stanie, używając nawigacji obiektowej odczytać jaki plik i z jaką prędkością jest aktualnie przesyłany, ile plików zostało w kolejce, oraz jaki mają rozmiar. Nie jest to proste, ale możliwe do odczytania. Moja propozycja, to przede wszystkim dać szansę nawigacji obiektowej NVDA. Swego czasu też miałem poważne opory przed tym mechanizmem, optyka jednak zmienia się, jeśli to nasze zawodowe „być, albo nie być”. Zapewniam, że każdy, kto na komputerze robi coś więcej niż przeglądanie stron www odczuje wymierne korzyści gdy z tym mechanizmem się zapozna i zaakceptuje jego ograniczenia a z czasem, nawet niechętny skomplikowanej w użyciu funkcji czytelnik, uzna jej przydatność i wręcz ją polubi?

Powodzenia!

Michał Dziwisz

 

Projekt współfinansowany ze środków Państwowego Funduszu Rehabilitacji Osób Niepełnosprawnych oraz Gminy Miejskiej Kraków