The change event is often fired very late in IE9 (event throttling?)
I turned on debug mode and added new Date().getTime() to the start of all the console.info in the javascript and IE9 is spitting out the following:
debugMode : ,true
SWF FileAPI ready!
File Input add...,image-input,true,image/*,application/zip,,
MouseOverEvent...,image-input
1344039113616 FileInput Event click[object Object]
Browsing...,image-input
File Input change...,image-input
1344039161137 FileInput Event change[object Object]
FileReader read...,image-input,eggs.jpg,readAsDataURL
1344039161138 FileReader Event loadstart[object Object]true
1344039161147 FileReader Event progress[object Object]true
1344039161157 FileReader Event progress[object Object]true
1344039161203 FileReader Event load[object Object]true
FileReader result...,image-input.eggs.jpg
1344039161256 FileReader Event loadend[object Object]true
That's 47521ms or 48 seconds between clicking on the swf and the change event being fired. I didn't spend more than a second or two actually selecting the file.
Sometimes it just works fine for 2 or 3 files, and then it gets slow again. Then it starts working quickly again for 2-3 files, etc. It never happens in any other browser, not even Safari.
When IE9 is in this state the browser is actually working fine and fully responsive. Further clicks to the swf will still log FileInput Event and Browsing... (but no file input window is opened) so I assume flash isn't locked up either.
Both IE9 and Safari are using Flash 11.3.300.270.
I think this is actually caused by selecting the files too fast. Does IE9 throttle events from Flash? If I select files really slowly (3+ seconds between each click) then everything seems to work fine.
I see this issue as well, but I have no idea how to fix it :(
For me I am seeing the file explorer (chooser) open 5-10 seconds after clicking on the swf