Log in

No account? Create an account
25 July 2006 @ 08:07 pm
Fixing God's horrible mistake's fix.  
After Gruber (and after him, pretty much all of the Mac blogosphere) bitched about the stupid shift-arrow key selection behaviour in table views, Jim Speth fixed god's mistake through a NSTableView subclass, and released a Mail.app bundle.

Now, that's all good, if you spend all your time in Mail. However, I'd like a system-wide fix. Suddenly, it came to me: an InputManager. After a bit of fiddling, I figured out how to make Jim's .mailbundle into a InputManager without even recompiling: Download the SelectionFix InputManager. (Installation instructions: Copy the folder SelectionFix into ~/Library/InputManagers/, creating that folder if it doesn't exist).

This InputManager will give every Cocoa table view non-stupid shift-arrow key selection. Wohoo! Well, with a small caveat... It only patches Cocoa applications, not Carbon apps. And which two major Apple apps aren't Cocoa? Yep, that's right... Finder and iTunes.

Dear Lazyweb: Find me's a patch that works for Carbon apps as well, even if it involves an APE.

It seems that the InputManager crashes Adium 1.0 Beta. I attached the debugger but the backtrace gave me nothing I understand... Just placing the SelectionFix folder somewhere else, then launching Adium, then replacing it should fix it. Maybe I should remake it into a SIMBL plugin...

Also, it seems that the selection is wonky if you step over the first item you selected and back again or something like that.

It's incompatible with VisualHub for some reason.

It's incompatible with craigotis.com's iProcrastinate. I'm beginning to think some of the overriden methods aren't fulfilling all their obligations... The VisualHub bug was related to selection through scripting, the iProcrastinate one to selection with CoreData.
wootest on July 26th, 2006 07:23 am (UTC)
Re: Debugging output