I’ve recently been working on learning how to develop Mac OS X Dashboard widgets, and I thought a good little project would be to make a droplet to allow Dropbox (a very cool service and application) users to share files easily using their Public folder and its respective public URL. It used a lot of javascript and CSS, both things I was fairly unfamiliar with, but make a lot of sense (in a web context) and actually convey fairly easily to the widgets. Please download the widget and let me know what you think. It is compatible with every version of OS X that Dropbox is. If you have any questions, clicking the “?” mark on the back of the widget will bring up helpful instructions.
Edit: I’ve updated the link to point to version 1.0.1 which fixes an issue where copying to the Public directory didn’t always happen.
Mountain Lion Update: This widget is no longer working in Mountain Lion. The first problem is that it isn’t signed, so Gatekeeper restricts users from installing this widget from Mountain Lion OS X forward. The only way that I can sign this widget is with a $99/year Mac Developer account. I do not have a paid Mac Developer account, and I’m afraid I have no personal incentive other than to sign this widget that I wrote ~4 years ago and have distributed thousands of free copies.
When I wrote this widget years ago, Apple’s Widget Dashboard was a more first-class part of the operating system. Now, it is slowly dying off, I created this widget with the help of a Dashcode developer application. That application is no longer available, a further sign that Apple sees a very short future for Dashboard. For those reasons, it is unlikely I will be able to repair this widget to run in Mountain Lion and forward. I include a little technical detail in the next paragraph, and widgets are all “open source” so to speak (just right-click it and Show Package Contents), so if you would like to adapt this widget yourself, feel free, but please attribute my initial work, and also please email me to let me know. I will keep the widget available for download below. Thank you, and I appreciate your understanding.
To get slightly more technical, as I’ve investigated the problem after getting around the code-signing issue, I’ve seen this error pop-up (in the Console) at the point in the code where the widget reads what files were just dropped on it (the first step in using this widget usefully): “WindowServer[78]: _CGXSetWindowHasKeyAppearance: Operation on a window 0x5f3 requiring rights kCGSWindowRightOwner by caller Dashboard.” I think this may have to do with the sandboxing being added to Mountain Lion? I know Mac App Store apps need to request specific entitlements, and, since I can’t look up this error in the Mac Developer account reference area, I am at a loss to what it really means, and if it is a case of needing to request an entitlement, I wouldn’t know how to do that for a widget… If you have any feedback or ideas, please email me at the email address in the help section of the widget, or post a comment.
great app thanks. Simple and effective
Can you make an application that will automatically change straight quotes to “smart“ curly quotes – both single and double? I cannot find such a thing and don’t understand why Apple doesn’t incorporate into their OS.
There use to be a great app called “SmartKeys“ which not only did this but corrected commonly misspelled words. I contacted the creator and he replied that he couldn’t make it work with OS X.
hi. I’m new in MAC. How I did to drag and drop a file in this widget?? I’ve already installed DropBox.
Hi wal,
You start dragging your file like usual and you’ll see the icon is attached to your cursor while you hold down the mouse button. While still holding the button down, press F12 to call up Dashboard (or whatever button you’ve set to call up dashboard). If you’ve set up the droplet correctly, when you hover over it, you should see a green + on your cursor and the down arrow on the widget will animate up and down to show it’s ready for you to drop the file. Lots of words to describe, but very quick and simple to actually do once you’ve got it.
Cool, thanks Wes!
the widget field does not allow to put in my complete ID
which is my email.
http://dl.getdropbox.com/u/info@ckb/toiletpaper.jpg
but also the link is not right
it has to be: https://files.getdropbox.com/u/239525/toiletpaper.jpg
Hi, claas. I think you misunderstand what the widget means by “user id” If you click the ? mark on the widget’s back, there is helpful documentation to figure it out.
I can save you the trouble since you provided the URL and tell you that your userID is 239525 (that number after /u/ in your URL)
A quick +1 on claas’s comment:
you don’t have https support from your widget!
It only links to the http, which doesn’t work.
True, the widget only creates “http” links and not “https” links (you can fix that wish a single “s” after pasting in the mean time).
My question for you is your statement that http doesn’t work and your +1 of claas’ statement. This leads me to believe you are having the same problem that class was (which I answered immediately below). If you have read the help for the widget (clicking the ? on the back of the widget) and the URLs the widget is creating for you still do not work, please send me an email so we can actually troubleshoot what problem you seem to be having. (blog at this web site’s address.com)
hi – it seems to work fine for now.
a couple of suggestions: It would be very nice if the URL was immediately trimmed by a shortener service, like http://tr.im or other. in addition to that, it would be even better if that tr.im link where associated with the tr.im account so that it is logged there.
Cheers, Michael
The URL shortening option is a good suggestion.. I’ll look into that for a possible future version. Thanks.
I downloaded Dropbox and it’s in the Widget Bar. When I click on it, the icon appears with a “Dropbox not installed” message on it. There was no further directives after I downloaded it for installation. Help, please.
No luck using this after download. It’s there in my dashboard but can’t set user id or drag any files to it?
I’ve seen your two comments about having problems recently. I’m getting married this week and will be out of town for my honeymoon, so I’m afraid I don’t have time to look into your difficulties just now. If you both could please email dropboxdroplet at wesley reynolds dot com, I can look into what may be going wrong when my life gets a bit more back to normal. Thanks!
Sadly, I posted a link on the Dropbox Forums that was found in the wiki. and that link pointed to your webpage. Whats sad, is that the download link is inoperable.
Can you fix that soon?
thanks
Chris J
Yes, it is fixed! Sorry about that! The file never moved, but the link changed after some slight reconfiguration of my blog.
Hey, I was pretty bored today so I made a demo of your widget (which I love by the way)
http://www.youtube.com/watch?v=wwB-eGeKErY
Not that anyone will need a demo to figure out how this thing works :)
Hi Wesley,
Thanks for the very useful widget!
Regards, Deavy
Great Widget!
Thanks.
I have a feature request/suggestion for future versions: allow dropped files to be placed into a subdirectory of the public folder. For instance, I use “/widget/” as I only use the droplet to quickly share files over IM, and this gives a central location where I know all the files are temporary (and can safely be deleted).
(It’s more of a “suggestion” than a “request,” as I’ve already modified main.js to add ‘ + “/widget/”‘ at lines 291 and 326.)
This is a great add on, can’t believe I wasn’t using it before!
I love (luv) this idea.
But I’m getting incorrect links. Instead of my userID number I’m getting “336149″.
Is that something I can edit, or am I cursed somehow?
Hi Russel, I’m afraid I don’t understand your question.. all user ID links are 6-digit numbers.. if you put “336149″ in your “user ID” text box on the back of the widget, does that work? If you click the small ” i ” on the front of the blue box widget and the ” ? ” on the back of it (once it flips over), there is a help page that will assist you in finding your userID.
Shucks,
I’m not using the widget, I’m using the droplet.
Didn’t realize they were different.
Sorry.
Great app! But we all have a huge need in URL shortening service support!
Do you have any progress or ETA on that?
I just found this page from DropBox forum. Congrats for your work, it looks really nice and useful.
I wanted to edit the droplet, to integrate it into a script I have, and it seems the only version available is in binary format.
Is there any chance that you share the sources, so everyone can improve your version?
Thanks
Thanks. I’m glad you think it’s useful.
You are more than welcome to edit your copy of the widget if you want.. It (like all widgets) is written in javascript, so the source is there.. you just need to right click the Widget file and “Show Package Contents” and you’ll see all of the source files in there and its sub-folders…
The auto-URL shortening suggestion I’ve seen is a great idea.. I just haven’t had the personal time to look into doing that more officially.. ideally I’ll be able to get to it at some point soon, but if you are able to modify my widget, I’d appreciate seeing what you’ve done and giving both of us credit for the collaboration of features.
Cant believe I only just found this widget. Great stuff! Though I would love to see URL-shortening as an option. Keep up the good work.
Mac OS Lion .
Does not work.
File in the folder “Public” is not added.
@Alex, can you provide more information or contact me directly? I and everyone I know using Lion have continued to use this Widget and it has continued to work for us.
DropBox is a great tool. Thank you!
“Mac OS Lion .
Does not work.
File in the folder “Public” is not added.”
Same problem for me. Clean 10.7.3 Lion install. Dropbox 1.2.52.
@Valentin,
Could you please contact me at dropboxdroplet@wesleyreynolds.com? Again, all the testing I have seen verify this works in Lion and I would like to try and see what problem you are having. Is your Dropbox folder in the default location or somewhere else on disk perhaps?
the 1.0.1 version doesn’t add File in the folder “Public”