This commit focuses on the `ArticleViewController`:
- Adds an "Aa" menu to the article view that allows for theme changes and full screen article toggling on iPhone, and theme changes on iPad.
- Removes separate Settings option for full screen availability on iPhone.
- Removes tap target in nav bar to enable full screen mode.
- Only appears in Settings when notifications are authorised.
- Both Settings/NotificationsViewController monitor for return to foreground and update based on notification settings
- `try` added where applicable to ArticleTheme inits
- `ArticleThemePlist` has fixed spelling of theme identifier and conforms to Equatable
- `ArticleTheme` now uses `ArticleThemePlist`
- `ArticleThemeDownloader` is now a class
- `ArticleThemeDownloader` will now download themes to Application Support/NetNewsWire/Downloads on macOS and iOS.
- `ArticleThemeDownloader` will remove downloaded themes from the Download folder when the application is closed.
- macOS app delegate now observes for theme download fails
- Error display code moved from SceneDelegate to SceneCoordinator so that it can use existing presentError on rootVC.
Adds app defaults option for controlling link opening preferences.
Adds browser logic and images.
Browser Manager Updates
- Handles deletion of current browser
- Fixes detection of installed browsers by moving URL Types to LSApplicationQuery
- Updates icons to glyphs
- Context menus update
tidy up
- removes browser specific options and offers in-app or default browser options (can be enabled via a bool)
- adds 1Password as an option
- removes custom wording on context menus
Fixes
- makes sure browser options are available on iPad
- uses VibrantCell
- Changes Settings title to "Open Links In"