Article View: pl.comp.os.advocacy
Article #481863Re: ta niebywała intuicyjność interfejsów...
From: Andrzej Rosa
Date: Mon, 07 Mar 2011 15:56
Date: Mon, 07 Mar 2011 15:56
113 lines
6115 bytes
6115 bytes
On 2011-03-07, Michał Gancarski <michal@gancarski.com> wrote: > On 07 Mar 2011 14:48:07 GMT, Andrzej Rosa wrote: > >> Nie rozumiem. Na przykładzie. Dotknąłem pędzla, aplikacja zapamiętała >> to dotknięcie, dotykam rysunku i rysuję. Wszystko pięknie. Ale gdy >> dotykam poza rysunkiem a aplikacja nadal rysuje jest wtopa. >> >> I dalej w tym samym stylu. Załóżmy aplikację pełnoekranową, żeby nie >> było komplikacji. Dotknąłem pędzla, aplikacja zapamiętała że ma być >> pędzel, po czym dotykam menu. Aplikacja powinna dać mi się przeklikać >> przez menu a mimo to nadal pamiętać, że wyimaginowany kursor ma >> przylepiony do niego pędzel. Nie powinna zapomnieć wybranego narzędzia >> zanim użytkownik z niego osobiście nie zrezygnuje. > > To dokładnie tak jak z myszką. Sam sobie musisz zapamiętać, które narzędzie > zostało wybrane. No i fajnie. Wybrałeś pędzel, wszystko jest oczywiste, a użytkownik przeciągnął selekcję z innej aplikacji na obszar rysunki i zamiast wklejenia dostał krechę, bo programista nie przewidział że przeciąganie to zupełnie inny event niż rysowanie, mimo iż realizuje się go absolutnie identycznie. >> Problem w tym, że w przypadku interfejsu dotykowego warunki nie są >> konkretne. Decyduje kontekst, który nie jest konkretem, bo istnieje >> głównie w umyśle użytkownika. >> >> Na przykład. Użytkownik klika w menu, system otwiera menu, użytkownik >> klnie. Dlaczego? Bo on przecież "dotknął i przeciągnął" a nie "dotknął >> menu". "Komputery są gupie!" > > Skoro dotknął i przeciągnął, to nie "po prostu dotknął". Proste. To tak > jakbyś narzekał, że nie wiesz co zrobić z dwuklikiem na elemencie menu. Bo > przecież użytkownik nie kliknknął, tylko dwukliknął i klnie. Olaboga, > musisz o tym pomyśleć. To akurat proste. Dwuklik jest rozwinięciem jednokliku, tzn. najpierw robi to co jednoklik (powiedzmy zaznacza), po czym realizuje dwuklik, jeśli faktycznie nastąpi. Nie ma konfliktu. >> No i obsłużył proste dotknięcie w sytuacji gdy powinien się domyślić, że >> powinien obsłużyć gest. > > Albo obsłuży dwuklik w sytuacji, gdy powinien się domyślić, że to powinien > być zwykły klik. Albo nie klik, tylko przytrzymanie klawisza i > przeciągnięcie myszką. Albo może jednocześnie prawy i lewy przycisk? > Kółeczko? Trzeci przycisk? Przeciągnięcie z trzecim przyciskiem? > Przeciągnięcie z prawym? Każde z tych zdarzeń jest jednoznacznie określone, bo kursor zmienia stan zależnie od sekwencji*. Ale owszem, zdarzały się problemy w przypadków gestów myszy i to całkiem często**. W przypadku interfejsu dotykowego jest po prostu gorzej. *) np. prawy kliki, puszczasz -> menu kontekstowe, ale prawy klik, przeciągasz daje gest myszy. **) np. prawy klik, przeciągasz daje menu kontekstowe zamiast gestu. [...] >>>> Nie ma kursora o jednoznacznie określonym stanie. >>> >>> Ale przecież w normalnych aplikacjach to Ci nie jest potrzebne. Po xuj >>> Ci pozycja kursora myszki jak nic nie wciskasz? >> >> Jednoznacznie określa kontekst. > > Nie. Podaj przykład. >> Jak kursor jest nad rysunkiem, >> pracujemy w paincie. > > Jak bazgrasz palcem po obszarze malowania, to malujesz. Naprawdę? A jak użytkownik rozwinął menu, przejechał palcem po pozycjach i wyjechał poza, to też powinna być krecha? Kursor nie robi krechy. Po wyjechaniu poza menu, menu się zwija, ale żeby coś narysować trzeba ponownie wcisnąć LPM. Tutaj dotyk to dotyk, nie? >> Jak kursor jest poza rysunkiem, obsługujemy zwykłe >> kliknięcia. > > Jak dotykasz poza obszarem malowania, to nie malujesz. Trudne? A co w sytuacji gdy chcesz przeciągnąć kreskę poza widoczny obszar rysunku? Użytkownik prawdopodobnie będzie oczekiwał, że program przesunie mu widoczny obszar w kierunku malowania. Czyli wyjeżdżasz poza obszar rysowania, ale z kontekstu wynika, że użytkownik chce kontynuować rysowanie, a nie przejechać palcem w inne miejsce. Najśmieszniej by było, gdyby po wyjechaniu poza rysunek system obsłużył gest. ;-) [...] >> W przypadku interfejsu dotykowego kontekst trzeba zgadnąć. > > To dokładnie tak samo jak z myszą. Powiedzmy, podobnie do gestów myszy, które też lubią się rypać, więc niewielka to pociecha. >> Jak kursor w ogóle jest, sytuacja się upraszcza. > > Nie. Nie? Robię Ctrl-V. Gdzie i co powinno być wklejone. -- Andrzej Rosa Working Gentoo flavor: http://www.funtoo.org Maintained by Daniel Robbins.
Technical Details
Message-ID:
<4d750022$0$2492$65785112@news.neostrada.pl>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.rmf.pl!agh.edu.pl!news.agh.edu.pl!news.onet.pl!news.nask.pl!news.nask.org.pl!newsfeed2.atman.pl!newsfeed.atman.pl!newsfeed.neostrada.pl!unt-exc-01.news.neostrada.pl!unt-spo-a-01.news.neostrada.pl!news.neostrada.pl.POSTED!not-for-mailReferences:
<90a44e0b-e088-46ee-8b44-69ea10d21611@u3g2000vbe.googlegroups.com> <iklomn$r0e$1@news.onet.pl> <ikm2c2$hjv$1@node2.news.atman.pl> <4d6ea047$0$2452$65785112@news.neostrada.pl> <ikqirp$9j0$1@inews.gazeta.pl> <4d7120e0$0$2491$65785112@news.neostrada.pl> <wzs7ints4fdh.gy2djku3mouc$.dlg@40tude.net> <4d73d38d$0$2439$65785112@news.neostrada.pl> <dk59fm1lho5c$.mmsu0q21f7sl.dlg@40tude.net> <4d74cf56$0$2486$65785112@news.neostrada.pl> <slrnin9lqe.2mi3.proteus@pl-test.org> <4d74f027$0$2505$65785112@news.neostrada.pl> <169uowejwavm3$.mdcsqyj5rroq.dlg@40tude.net>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.rmf.pl!agh.edu.pl!news.agh.edu.pl!news.onet.pl!news.nask.pl!news.nask.org.pl!newsfeed2.atman.pl!newsfeed.atman.pl!newsfeed.neostrada.pl!unt-exc-01.news.neostrada.pl!unt-spo-a-01.news.neostrada.pl!news.neostrada.pl.POSTED!not-for-mail Newsgroups: pl.comp.os.advocacy From: Andrzej Rosa <bakters@yahoo.com> Subject: Re: ta niebywała intuicyjność interfejsów... References: <90a44e0b-e088-46ee-8b44-69ea10d21611@u3g2000vbe.googlegroups.com> <iklomn$r0e$1@news.onet.pl> <ikm2c2$hjv$1@node2.news.atman.pl> <4d6ea047$0$2452$65785112@news.neostrada.pl> <ikqirp$9j0$1@inews.gazeta.pl> <4d7120e0$0$2491$65785112@news.neostrada.pl> <wzs7ints4fdh.gy2djku3mouc$.dlg@40tude.net> <4d73d38d$0$2439$65785112@news.neostrada.pl> <dk59fm1lho5c$.mmsu0q21f7sl.dlg@40tude.net> <4d74cf56$0$2486$65785112@news.neostrada.pl> <slrnin9lqe.2mi3.proteus@pl-test.org> <4d74f027$0$2505$65785112@news.neostrada.pl> <169uowejwavm3$.mdcsqyj5rroq.dlg@40tude.net> User-Agent: slrn/0.9.9p1 (Linux) Mime-Version: 1.0 Date: 07 Mar 2011 15:56:18 GMT Lines: 113 Message-ID: <4d750022$0$2492$65785112@news.neostrada.pl> Organization: Telekomunikacja Polska NNTP-Posting-Host: 83.28.170.220 X-Trace: 1299513378 unt-rea-a-02.news.neostrada.pl 2492 83.28.170.220:48293 X-Complaints-To: abuse@news.neostrada.pl Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit