Last night I made a Greasemonkey tool for making posting images to ImageShack for safe-keeping or external hosting more comfortable. Actually, I mage two; one that uploads inlined images and one that uploads linked images (if the link is also an image -- typically a thumbnail).
Functionally, it works rather well -- install the script (or scripts -- you can run both at the same time, if you like), and from then on until you turn the script off again (click the Greasemonkey icon and uncheck the appropriate script), the images on all new pages loaded will behave slightly differently when clicked. Assuming you chose the inline saver script for instance, and load this page. Everything seems normal. (In itself a bit of a misfeature, which ought to be addressed somehow usability wise.) But if, say, you click the Japanese flag, which usually (okay, I added that bit last night as well, but you get the idea) would have asked Google translate to hand you a machine translated page in Japanese. Now that flag starts flashing, while ImageShack picks it up and stores it on their hard disks. When done, you get a little popup with the resulting URL to copy and store away elsewhere, and then the image will stop flashing and turn ghosted (clicking this image will now perform its usual function again).
What I kind of miss here though, is a way of switching the script back and forth between active and inactive mode, without the fuss of using the Greasemonkey icon and reloading the page afterward. It ought to be resident at all times without doing anything, until I gave some magic command -- an odd keybinding, or perhaps a bookmarklet to trig it into action. Not quite sure what would be best yet. The popup also has to go. What would be a good way of showing the URL? Adding an input field just below the image?
Some visual cues about images being armed to be ImageShacked would also be in order. I just don't feel like interaction design at the moment, so I'm leaving this script in this somewhat sorry state, for the time being. Useful but somewhat bothersome. Feel free to keep playing with the code.