released 2025-07-20
This is a 20th anniversary edition!
🚲 Changes
- Distribute Vienna in .dmg disk images instead of .tgz archives
- Use Command-Control-0 to Command-Control-2 shortcuts for layout selection (these replace Control+Number shortcuts which are reserved)
- Update some translations (Traditional Chinese, Swedish, Danish, Dutch)
- Modify article view in Unified layout to be borderless
- Disable back/forward navigation in main tab's article web views
🤷🏻 Bugfix
- Fix crashes and other potential problems caused by folder cache being emptied during refresh
- Work around incorrect support of palette-color icons by newer macOS versions (15 and +); reorganize the code used for fetching and caching websites' favicons
⚙️ Internals improvement
- Rebalance AppController role:
- move parts of the layout code to ArticleController
- modify handling of keyboard events to avoid doing everything in AppController
- diminish ArticleListView and UnifiedDisplayView reliance on AppController
- move Sparkle Updater controller to ViennaApp
- Use an Application.storyboard as the starting point in "Interface Builder" for the design and the main menu; connect Preferences and Downloads storyboards to it.
- Remove ExtendedTableViewDelegate in favor of NSMenuDelegate
- Remove NSKeyedArchiver/NSKeyedUnarchiver methods which were needed for macOS 10.12 backwards compatibility
- Remove unnecessary debugging code using some private properties of WKWebView
🛤️ Infrastructure updates
- Simplify our version of Autorevision
- Clarify the directories used for derived files during build process