Wow, I tried it just now and you are right. It's really weird because I compared the version of Disk Utility on the Install Disc with the one that's on the hard drive and I can't see any differences. The main executable file, all of the plugins, and all of the nibs are exactly the same. I opened the nibs and found that it's the "DUOutlineView" that appears to only use the default table view behavior when it was running from the install disc. The default behavior in a table view when you drag is to select the rows. To get drag and drop behavior, you have to implement a couple of methods to conform to NSDraggingSource protocol.
Hah, that's it. I was wondering if Disk Utility was checking whether it was running from the DVD or whether it was running from the hard drive, and doing different things depending on what it found. For example, I noticed that the Preferences menu item isn't shown when you're running it from the DVD.
I did a class dump on the Disk Utility executable and found the following:
@interface DUAppDelegate : NSObject {
BOOL runningFromCD;
}
- (BOOL)runningFromCD;
- (BOOL)checkRunningFromCD;
@end
So, sure enough, it looks like it's checking to see whether it's running off the CD, and if so, will set itself up differently. (Translated to "English", that stuff above basically means that that main helper/controller object has a true/false property for whether or not Disk Utility is running from the CD, and two "methods", or functions that it executes, that set/get the value of that property).
I'll submit an official bug against this when I get a chance, and I'd encourage you to send feedback about it as well. If you want, you can copy and paste the information above and include it as more technical information that might help the engineers know what's going on.
Not sure what to suggest in the meantime....
Dual 2.7GHz PowerPC G5 w/ 2.5 GB RAM; 17" MacBook Pro w/ 2 GB RAM - Mac OS X (10.4.6)