Given the advance of HTML 5, and in the interest of developing web apps with average functionality, would it now be possible to:
1. Drag files and folders into a web app?
2. Drag files and folders out of a web app?
3. Drag a spreadsheet out of a web app onto the icon of Excel in the dock and have it open in Excel?
4. Monitor that same spreadsheet's content (originally provided by the web app) for changes when the user edits it and presses CTRL+S?
Or is it only possible to drag things into a browser window but not back out and nothing else?
Can a user drag a piece of data into a browser windowâ€¦ and then drag it back out?
For example, a user may want to use a Contacts web app, and drag a contact out the browser window as a piece of vcard data and land this onto the Contacts app in the dock, which would then import the contact, all in a single mouse gesture?
Or is it not possible to provide that kind of user experience?
For example, a user may want to use a PDF web app, and transfer a piece of PDF data to the Preview app, but be forced to click a link to download the PDF, click the very small "Keep" button next to the "This type of file can harm your computer. Do you want to keep anyway?" warning, and then drag the PDF onto the Preview app, and then go to the Downloads folder to delete the "download". At least 5 mouse clicks and then a CMD+backspace to accomplish what (from the user's point of view at least) should have only taken one drag and drop?
And then this may be vendor specific, but if a user created a piece of PDF data and dragged it into the browser window in the first place, does it still make sense to warn them that "this type of file can harm your computer"?
The browser takes on too much responsibility for things it can't possibly reason about, and seeks not enough advice from the user where it could. It often seems that the browser is built to lecture the user, rather than the other way round. I use the browser everyday at work, and sometimes you have to ask yourself: who's serving who. Does the user serve the browser, or does the browser serve the user?