Is AppKit causing you frustration? Instead of just complaining about it, lets try to make it better by compiling a list of specific problems with AppKit. Leave a comment below, and I'll include it in the list. The list will be sorted according to the number of comments for a problem.
- The use of cells in specific controls such as
NSTextFieldandNSButtonmake them difficult to customize. - AppKit controls need image-based customization properties like their UIKit counterparts.
NSTableViewhas odd animation artifacts when scrolling with the keyboard with a fast key repeat.NSCollectionViewis horrible. No view recycling, and terrible API design.NSClipViewhas performance issues. (RBLClipViewattempts to fix this)NSWindows are really difficult to customize. (INAppStoreWindowattempts to fix this).NSWindowanimation is pretty bad without the use of some not-so-nice hacks.
A couple more minor to add:
NSBrowserhas not been updated to be view based likeNSTableViewandNSOutlineViewNSSplitViewhas a very difficult to use API. Simple things like setting priorities and min/max sizes for views is unnecessarily complex.NSSlider's drawing is impossible to customize without overriding a private method (- (BOOL)_usesCustomTrackImage). Without this override, it'll draw the default bar regardless of how you override the drawing methods.NSProgressIndicatoralso draws the default progress bar even if you override the drawing in a subclass.NSTextFieldCell's text isn't vertically centered. It requires a subclass like this to get that working properly.