View Single Post
ShadowOfGed
Travels via TARDIS
 
Join Date: Aug 2005
Location: Earthsea
 
2007-07-18, 23:54

Quote:
Originally Posted by Brad View Post
Not necessarily. Why do you think so?
For one, they'd be strong-armed into using standard Cocoa widgets, so iTunes would be forced to look like a standard app. They haven't done that in a long time, unfortunately.

I'm endlessly infuriated by iTunes' use of modal dialogs for editing song information. If you're going to block my use of the main iTunes window, USE AN EFFING SHEET. At least then it becomes plainly obvious what happened. Sheets, I believe, are a Cocoa thing. On the other hand, I don't think editing song details should block your use of the main window, but that's another issue.

As another example, spell checking in text fields would be nice sometimes. Also, most other features that are available in any NSTextView would also be convenient. Sure, a lot of song and artist names aren't words, but there are many more that are and it'd be fantastic if Command-; would work as I expect. iTunes has always stuck out as an "almost-but-not-quite Mac app" because it has to live in both the Mac and Windows worlds. It's subtly annoying.

Also, it's my understanding that using Cocoa makes it much easier to extend common UI elements. I know a lot of people would like to do this, and maybe it's why Apple avoids Cocoa. They do have all those pesky DRM code paths to lock down, and Cocoa (actually, Objective-C) might make it too easy to inspect the data flow...

Aside from running on Windows, are there any reasons you think it should remain a Carbon / custom-UI app?

EDIT: In my years of iTunes use, I've occasionally seen very strange rendering bugs (text tearing, graphics corruption, etc…). I suspect this is because so much of their UI is custom-rendered. I imagine using standard controls would cure a lot of these rare bugs, not to mention consistency with other Mac apps.

Apparently I call the cops when I see people litter.

Last edited by ShadowOfGed : 2007-07-18 at 23:56. Reason: Another last-minute thought…
  quote