Apple does not follow their own Human Interface Guidelines for "Preferences" windows in macOS and their own apps

Originator:sindresorhus
Number:rdar://49553393 Date Originated:2019-04-03
Status:Open Resolved:
Product:macOS + SDK Product Version:macOS 10.14.4
Classification:Bug Reproducible:Always
 
Area:
Preferences

Summary:

Apple is known for prioritizing consistency and quality. You have a very well written and comprehensive Human Interface Guidelines that you expect third-party developers to follow. However, Finder and many of Apple's apps do not properly follow these guidelines, setting a bad example for third-party developers, and weakening your reputation of caring about quality.

Read through https://developer.apple.com/design/human-interface-guidelines/macos/app-architecture/preferences/

I have compiled a list of apps that don't follow the HIG and what they need to fix:

- Finder.app shows "Finder Preferences" as the window title for all the panes.
	Which is a violation of:
	> Update the window's title to reflect the currently visible preference pane.
- Messages.app has the minimize button enabled.
	Which is a violation of:
	> Disable the Minimize and Zoom buttons.
- Mail.app has the minimize button enabled.
	Which is a violation of:
	> Disable the Minimize and Zoom buttons.
- iTunes.app doesn't apply the changes immediately.
	Which is a violation of:
	> Apply preference changes immediately.
- Dictionary.app has the zoom button enabled.
	Which is a violation of:
	> Disable the Minimize and Zoom buttons.
- Books.app uses the tab title and the word "Preferences" as the window title, for example, "General Preferences".
	Which is a violation of:
	> For example, if your preferences window has a General preference pane, the window’s title should be General when that pane is active.
- TextEdit.app uses the window title "Preferences".
	Which is a violation of:
	> If your window doesn’t have multiple preference panes, then its title should be App Name Preferences.
- FaceTime.app uses the window title "Preferences".
	Which is a violation of:
	> If your window doesn’t have multiple preference panes, then its title should be App Name Preferences.
- Keychain Access.app uses the window title "Preferences".
	Which is a violation of:
	> If your window doesn’t have multiple preference panes, then its title should be App Name Preferences.
- Script Editor.app has the minimize button enabled.
	Which is a violation of:
	> Disable the Minimize and Zoom buttons.
- Audio MIDI Setup.app has the minimize and zoom button enabled.
	Which is a violation of:
	> Disable the Minimize and Zoom buttons.

This could have been all solved if Apple provided an official Preferences window controller that worked exactly like the Human Interface Guidelines describes. Lots of third-party apps also get it wrong when implementing a Preferences window.


Steps to Reproduce:

Open one of the mentions apps and click "Preferences…" in the app menu.


Expected Results:

Expected the Preferences window to follow the HIG.


Actual Results:

The window does not follow the HIG.


Version/Build:
macOS 10.14.4

Configuration:

Comments


Please note: Reports posted here will not necessarily be seen by Apple. All problems should be submitted at bugreport.apple.com before they are posted here. Please only post information for Radars that you have filed yourself, and please do not include Apple confidential information in your posts. Thank you!