Dockdrop 1.5.2 Released

July 27th, 2008

I just pushed out Dockdrop 1.5.2 via Sparkle.

New in this version

  • Major user interface improvements
  • Files are now time stamped if you upload multiple files with the same name
  • Option added in the preferences so you can choose to have Dockdrop put the direct Flickr URL on the clipboard
  • Cancel transfer now deletes partially uploaded files
  • Upload selection and upload progress floating window now shows in all spaces
  • Memory leaks fixed
  • Underlying file transfer framework updated
  • Fixed crash when canceling WebDAV transfers on 10.4

You can also download Dockdrop 1.5.2 here

Have fun and let me know if you come across any bugs.


Dockdrop 1.5 Released

May 31st, 2008

Dockdrop 1.5

It’s finally here. This version features:

  • A much nicer icon
  • Sparkle automatic updating
  • A dock menu with the 10 most recently uploaded items so you can re-copy URLS to the clipboard
  • Auto-close after an upload finishes, so Dockdrop is only open when it’s actually doing something
  • Hot key uploading - this lets you choose a shortcut to use to trigger an upload of the selected item from the Finder, iTunes or iPhoto
  • SCP public key support
  • The upload progress window can now be moved anywhere on the screen and its position is saved
  • Various other bug fixes and improvements

You can download a copy here or from the Dockdrop website

Enjoy the new release and let me know how you like it in the comments.


A less broken GrowlTunes

May 20th, 2008

I am so sick of GrowlTunes. When it tries to find album art for a song that doesn’t have an ‘Album’ tag set it goes ahead and queries Amazon for the album art anyway, this results in a terribly ugly looking ‘Unter Null’ picture displaying in the Growl notification, presumably because it is querying Amazon for ‘Null’.

Ugly Unter Null iTunes

I tried downloading a fresh version from the Growl site and the version available currently (1.1.2) doesn’t seem to suffer the ugliness and instead displays a much more sensible iTunes icon.

Great, I thought. That’s the end of my troubles with GrowlTunes.

Not so.

It seems that this version has a new problem - if a song is played that has no ‘Track Number’ field set then GrowlTunes displays an ugly (null). where the track name should appear.

Null

At this point I’m more than a little peeved. Would it really have killed them to add a simple check to see if the Track Number is null and if so, don’t try and display it. This is an application used by hundreds of thousands of people, I just can’t understand it. Mac software is meant to be built better than this.

A quick Google search shows I am not the only one complaining about this problem and the standard reply seems to be that a replacement version of GrowlTunes is currently being developed and we are meant to wait for that to fix the stupidness.

Since the source for GrowlTunes is freely available I figured I’d download it and fix it. It only took me 10 minutes and 2 lines of code to make it only try and display the track number if a track number is actually set. You can download the version I have fixed here.

Close your current version of GrowlTunes, unzip my one, drag it to your applications folder and replace the existing version. From now on GrowlTunes will only try and display a track number if there is one available to display.


Dockdrop Stuff

March 4th, 2008

First of all, Matthew Harper has posted a blog entry on configuring Dockdrop to work with .Mac.

Secondly, I’ve received a lot of positive feedback and feature requests on this version of Dockdrop. I’m still figuring out which features I’d like to include in the next release, but so far it’s looking like:

  • The ability to upload an entire folder of pictures to Flickr
  • Add an option somewhere to close Dockdrop after an upload completes
  • Needs to prompt before overwriting already existing files or mark subsequent file uploads with a time stamp
  • Possibly the ability to setup multiple FTP or SCP sites, although this will require some significant changes to the configuration panel
  • Some basic Applescript support for specifying an upload method etc.
  • The ability to assign a hot key to trigger an upload on a file selected in the Finder
  • Several minor bug fixes

Thanks for all the comments and feedback. I will post to the blog when I release the next version.


Dockdrop Released

March 2nd, 2008

Dockdrop

After several months of hard development, I’ve finally released Dockdrop. You can find out more about it and grab a copy at http://dockdropx.com

There are many more features I plan on adding including support for even more protocols, Quicksilver integration, Adium/iChat/Mail integration and a whole bunch of other stuff that will have to wait for future releases.

Meanwhile, enjoy version 1 and let me know what you think of it.


iTunes Last.fm Plugin

April 1st, 2007

I’ve just written a contextual menu plugin for iTunes that adds a ‘Play Similar Artist Radio in Last.fm’ item to the menu when you right click on any song - it even works when you right click on albums in cover flow.

First it pauses iTunes if you happen to already be listening to something and then it launches the Last.fm client and automatically tunes into the similar artist station for the artist of the song you right clicked on.

This is an excellent way of discovering new artists similar to ones already in your iTunes library.

iTunes Last.fm plugin demo

You can download a .dmg containing the plugin below, to install it simply drag the ‘iTunes Last.fm Plugin.plugin’ file contained in the disk image to your ‘/Library/Contextual Menu Items’ folder. Then relaunch iTunes and the plugin is installed.

Download now
 

Update - I just added Growl support, so when you change stations it also sends a notification

The plugin has been tested on both PPC and Intel.

You must have the Last.fm client installed for the plugin to work. If you don’t already have it you can download it here

Complete source code for the plugin is available here
Licensed under the GPL.


MythGrowl 0.4.2 Supports PPC

March 19th, 2007

I just released MythGrowl 0.4.2. Those who downloaded what turned out to be Intel only 0.4.1 can do a Check for updates… and will be updated via Sparkle.

This version now properly supports PPC machines, but will not run on any OS X versions earlier than 10.4 and there are no plans at this stage to support earlier versions.

If you haven’t downloaded MythGrowl yet, or are a PPC user then go grab the shiny new universal binary here

For non PPC users, the update won’t mean a whole lot, it does update the icon and enabling some build optimization options has slightly reduced the size of the binary though.

Many thanks to Mike Daley for his help building making this release work under PPC as well as Intel.


MythGrowl 0.4.1 Released

March 18th, 2007

MythGrowl

For those of you watching the blog for a new release of MythGrowl, it’s finally here. I have moved the project to Sourceforge, got it a website, checked the code into SVN etc.

The new version has Sparkle support and some new features you will hopefully like. I could go on about how great I think the new version is but the easiest thing is probably just for you to head over to:

http://mythgrowl.sourceforge.net

Download it, and try it for yourself. The site also has details on obtaining the source code, reporting bugs etc.

Major credits goto Paul William for thinking up great new ideas for features to add to improve MythGrowl.

A number of people have emailed me and said that my so called universal binary doesn’t actually work on PPC Macs. I am looking into this and will hopefully release a version shortly that works on both PPC and Intel.

Have fun!


Enabling keyboard shortcuts with NSStatusItems

January 4th, 2007

It all started when a friend who has been helping me out with testing and ideas for improving MythGrowl noticed that it was not possible to paste into either the ‘MythTV Server IP/Hostname’ or ‘MythTV Port’ box which are both NSTextFields. When you push APPLE+V the system would just make it’s standard ‘ding’ noise and whatever was on the clipboard wouldn’t appear, I imagined that changing some property of the NSTextFields would fix the problem right up.

As it happened I couldn’t have been more wrong and a seemingly simple problem took me an entire morning to solve. The next thing I noticed was that if you right clicked in the field and clicked paste from the menu then whatever text that was currently on the clipboard would appear in the text field just fine. Strange, copy and pasting is working fine, but the shortcuts aren’t working at all. After some more reading and fiddling around I figured out that modifier key shortcuts (Apple+whatever, Option+whatever, Ctrl+whatever) are handled a long time before they get to an NSTextField.

OK, fine, so why aren’t they being handled and why aren’t the blasted shortcuts working?

The one major thing different about my application (and any application with only an NSStatusItem) is that it has no main application menu with an ‘Application’, ‘File’ and ‘Edit’ etc. menu showing along the top. Now, the application ‘Edit’ menu is the one with the ‘Copy’ and ‘Paste’ operations and corresponding key shortcuts. If your application has no ‘Edit’ menu with the operations you need under it then, believe it or not, the keyboard shortcuts won’t work anywhere in your application.

So, I tried dragging an ‘Edit’ menu onto my MythGrowl status item menu using the interface builder and then tried running my app and copying and pasting into the boxes. And it works! But now I have a problem, I don’t want my app to have an ugly, unneeded ‘Edit’ menu, I just want to enable the keyboard shortcuts. So, I created a ‘dummy’ menu with an ‘Edit’ menu in it and added it as an outlet, now I just needed to figure out a way to tell my application that my ‘dummy’ menu will be taking over the role of my main application menu. After some more messing around I found that you can do this with [NSApp setMainMenu:yourDummyMenuName]; which I called when setting up my NSStatusItem.

I recompiled and to my absolute joy all the keyboard shortcuts worked. I could copy and paste in and out of the NSTextfields using the keyboard to my hearts content. Problem solved. The dummy menu seems a but of hack, but I really cannot see how it is to be avoided if you don’t want a visible ‘Edit’ menu.

I imagined that this must be a problem that other Cocoa developers using an NSStatusItem would have had and surely there would be a better way to fix this somehow. Expecting some enlightenment I checked to see if I was able to copy the text in the about boxes of Jumpcut and Alarm Clock 2 (two of my favorite OS X applications) to the clipboard using only the keyboard shortcuts. To my amazement I heard the familiar ‘ding’ noise and the text wouldn’t copy, I right clicked and copied some text to the clipboard using the mouse and it worked just fine. So it would seem I’m not the only developer who has had this problem. The creators of both Jumpcut and Alarm Clock 2 either:

1) Didn’t notice the problem or
2) Didn’t think it was enough of a problem to fix (I have to agree) given that both Alarm Clock 2 and Jumpcut hardly use any NSTextFields and copying text from the about boxes is not something a lot of people would need to do

How many other applications with an NSStatusItem have this problem I wonder? Was I really the first to find it? All of this sure seems totally insane to make something so trivial as copy and pasting from a couple of text fields work.

So, next time you open the preferences window of MythGrowl, be sure to copy and paste in out of the fields a couple of times, it will make all my efforts that much more worth while :-) and I sure hope this post saves some other Cocoa developer a lot of pain.


MythTV Symlinking Script

January 2nd, 2007

Here’s a really handy script one of my friends wrote that creates a directory of symlinks in your MythTV recordings directory with the show name and date. It is great for when you want to take a copy of some shows on the road with you or give them to someone who missed an episode of something. This may explain what it does better:

root@myserver:/mnt/mythtv-recordings/symlinks# ls -lh

5th Gear - 2006-11-12 14:25 - 15:07.nuv -> ../1001_20061112142500.nuv
5th Gear - 2006-11-19 14:20 - 15:07.nuv -> ../1001_20061119142000.nuv
5th Gear - 2006-11-26 14:20 - 15:07.nuv -> ../1001_20061126142000.nuv
5th Gear - 2006-12-10 14:20 - 15:07.nuv -> ../1001_20061210142000.nuv

You can download it here, just put in your mysql server username and password, MythTV database name and recordings directory at the top and run it. It should do the rest for you, you should set it up to run under a cron job every hour or so and it will keep the symlinks directory updated for you.