Situație stupidă: player-ul trimite primul event de MouseEvent.CLICK, deabia după aia al doilea event de MouseEvent.CLICK se transformă în MouseEvent.DOUBLE_CLICK. Asta înseamnă că dacă am o function1 pe CLICK și function2 pe DOUBLE_CLICK, la orice dublu-click o să mi se declanșeze function1, după care function2. Am căutat pe tot netul în sus și în jos și nu văd nici o rezolvare decât să nu mai tratez MouseEvent.DOUBLE_CLICK, ci să o ard cu timere și/sau semafoare și doar cu eventuri de CLICK..
evilpenguin Uncategorized actionscript, actionscript 3.0, flash, probleme
Niciodată nu mi-a fost să văd pâna acum atâtea din problemele cu care m-am confruntat rezolvate. Iar modul în care sunt prezentate unele dintre ele, Other Community Requested Enhancements, mă bucură să afirm faptul că Adobe într-adevăr ia în serios părerile și cerințele developerilor. O să discut 3 dintre cele mai enervante probleme cu care m-am confruntat pâna acum:
- Limited Fullscreen Keyboard Access: până acum, în Flash Player 9.0.124, în modul fullscreen, singura tastă ascultată era Esc, care nu putea să facă altceva decât să te întoarca la modul normal de vizualizare. Începând cu Flash Player 10, modul fullscreen acceptă scurtături pe tastele “non-printing”, adică săgețile, Ctrl, Space, Enter, etc. De-abia aștept să am imensa plăcere să apăs tasta Space în timp ce mă uit la un film online, pentru a face o pauză de mers și umplut paharul de Cola. Ca să nu mai zic de jocuri online în format fullscreen.
- File Reference runtime access: dacă cumva vroiai să ai o aplicație online în Flash care să facă ceva cu o poză de pe calculatorul utilizatorului, gen upload-ul, cropul și resize-ul de la coaforul virtual, erai obligat să-i faci bounce-back de la server. Sub nici o formă nu puteai să o deschizi direct de pe calculatorul utilizatorului – nu exista funcție pentru așa ceva. Deci apucă-te și fă upload, pune poza în sesiune, și fă un loadMovie() la un server side care să-ti întoarca poza cu mime-type-ul de jpeg. Transfer inutil de date, timp pierdut, server load inutil și câteva zeci de linii de cod scrise în plus. De la Flash Player 10 tot acesc circ nu mai este necesar.
- Dynamic Streaming: o serie de funcții care permit ajustarea automată a conținutului streamuit în funcție de modificarea lățimii de bandă disponibilă a clientului. Nu mi-e clar cât din asta va fi embedded în următorul Flash Media Server și cât va trebui implementat de mână, dar măcar vor exista niște tool-uri foarte cool, de exemplu NetStreamInfo.maxBytesPerSecond – care cică ar returna capacitatea maximă de transfer a clientului în orice moment de timp.
Rămâne de văzut ce și cum, dar viitorul suna bine. Pentru cine n-are ce citi pe budă, vă recomand release notes-urile de la Flash Player 10 beta. Injoy.
evilpenguin Internet actionscript, flash