Adopting Liquid Glass, Part III (NetNewsWire iOS)

Adopting Liquid Glass, Part III (NetNewsWire iOS)

NetNewsWire has an experimental branch with work-in-progress Liquid Glass changes. These changes cover the Mac, iPad, and iPhone apps. This post covers changes to the iPad and iPhone app.

iPad

The Sidebar (Feeds view) has had a significant refresh.

What was previously a UITableView is now a UICollectionView. While this gives more flexibility in terms of custom layout, it was a change that was needed in order to adopt modern styling across iPad and iPhone. iPad uses the .sidebar style, and iPhone uses .insetGrouped. This is similar the behaviour you see in Mail.

Modern Sidebar (left), Classic Sidebar (right)

From top-to-bottom, the following modernising changes have been made:

  • The current *refresh *status is now located in the navigation bar as a subtitle, having previously been the footer
  • Toolbar buttons follow Liquid Glass standards
  • Like the Mac refresh, the Feeds view floats and allows Timeline content to slide underneath
  • Smart Feeds and Account headers now adopt modern secondary styling
  • Selected feeds have a modern capsule background and the text is **bold **(note: there is little consistency in Apple’s apps—Files makes text bold while Reminders doesn’t)
  • Folders have been entirely redesigned to match modern standards—they now have the same indentation as any other feed, but the enclosed feeds are indented further
  • Folders will highlight when Feeds are being dragged and dropped into them
  • Separators have been removed
  • Unread counts are larger and are no longer backed by a filled capsule
  • Unread counts for folders are only displayed when the folder is closed
  • Swipe actions reveal icons instead of named labels due to space constraints
  • Users can resize the sidebar (within reason 😃)

When side-by-side, you can see that there are less feeds on screen as the modern cells have larger vertical margins.

Timeline

Modern Timeline (left), Classic Timeline (right)

Again, from top-to-bottom:

  • Navigation bar images have been removed
  • Unread counts are now located in the navigation bar subtitle
  • The search bar has been moved to the app-wide toolbar and behaves similar to the Mac search
  • The Timeline width is user adjustable (again, within reason 😄)
  • Timeline cells have been redesigned in Interface builder and now have the rounded corner selection style
  • The Mark All as Read image (on both iPad and iPhone) has had alignment changes to make sure it sits in the middle of an englassified button

Articles

Modern Article (left), Classic Article (right)

There aren’t many changes to the Article view:

  • Articles can be read in three-pane view without hiding the Sidebar
  • The top toolbar inherits search capabilities
  • The bottom toolbar buttons have been grouped in a 2-1-2 formation with the *Next Unread *button sitting in the throne seat

iPhone

Similar to the iPad, the iPhone *Feeds view *has had a significant lick of paint.

Modern Feeds (left), Classic Feeds (right)

As mentioned above, the overall design adopts an .insetGrouped style. Comparatively:

  • Inline navigation titles are used
  • The latest refresh status has moved to the navigation bar subtitle from the bottom toolbar
  • Smart Feeds and Account headers now adopt modern styling
  • Disclosure indicators have moved from left to right
  • Similar to the iPad updates:
  • Folders will highlight when Feeds are being dragged and dropped into them
  • Unread counts are larger and are no longer backed by a filled capsule
  • Unread counts for folders are only displayed when the folder is closed
  • Swipe actions reveal icons instead of named labels due to space constraints

Timeline

Modern Timeline (left), Classic Timeline (right)

Timeline changes on the iPhone are slightly different to those of the iPad:

  • The navigation bar makes use of the subtitle to display either the current unread count or, if the unread count is zero, the latest refresh time
  • Images and capsule-backed unread counts have been removes from the navigation bar
  • The search bar has been moved to the bottom of the screen and is no longer hidden under the navigation bar
  • Cells have modern rounded corner selection style

Articles

Modern Article (left); Classic Article (right)

There are almost no changes to the iPhone’s Article view other than adopting modern bar and button styling. Phew!

Adopting Liquid Glass, Part II (NetNewsWire Mac)

Adopting Liquid Glass, Part II (NetNewsWire Mac)

NetNewsWire has an experimental branch with work-in-progress Liquid Glass changes. These changes cover the Mac, iPad, and iPhone apps. This post covers changes on the Mac, which, in comparison to the iPad and iPhone app, are relatively minor.

The Sidebar adopts standard Liquid Glass behaviours which means it floats and allows timeline content to slide underneath.

0:00
/0:05

Unread indicators are no longer backed by a filled capsule. They are now just a simple unread count.

Old (left), New (right)

Toolbar

The Toolbar has seen a minor reorganisation which moves the sidebar toggle from the timeline into the sidebar. In addition, toolbar buttons adopt the standard Liquid Glass button look-and-feel.

NetNewsWire Toolbar

Timeline and Article Views

The Timeline and Article view have seen no changes other than to remove code that is no longer required.

Context Menus

Context Menus have been updated with icons where appropriate.

Old (left), new (right)

About NetNewsWire

Lastly, the About NetNewsWire panel has been modernised in full:

  • Changed from a vertical to horizontal layout
  • Changed font from Lucida Grande to San Francisco
  • Adopts a *glass effect *background

The Betas 6 Are Out

The Betas 6 Are Out

Juli Clover, MacRumors:

There are changes to Liquid Glass, tweaks to navigation, new ringtones, and more.

Importantly, the issues I have been experiencing in the previous betas are all fixed:

  • FB18767040: Hiding a tabViewBottomAccessory resulted in a view not extending into the safe area (fixed in beta 5)
  • FB19194379: Label text not responding to dark mode changes
  • FB19041811: Leading Swipe Actions in a Supplementary Controller are Offset by the Primary Controller’s (Sidebar) Width

I Can't Get Ghost 6 ActivityPub To Work When Using Ghost(Pro)

I Can't Get Ghost 6 ActivityPub To Work When Using Ghost(Pro)

A quick follow-up to yesterday’s post about the issues I faced getting Ghost’s ActivityPub—Network—functionality up and running: I’m now trying with Ghost(Pro) on my normal domain, and I’m still running into problems.

This time, the issue is slightly different: Network is enabled in Ghost’s settings, but when I open the Network tab I get an “Account suspended” warning. Looking in the Web Inspector, I see a host of 403 errors in the console, and using RapidAPI I get the following error:

{"error":"Forbidden","code":"SITE_MISSING"}

My current theory is that this is happening because my site was previously hosted on WordPress, which had ActivityPub enabled. If that’s the case, this could be an issue for anyone migrating between platforms.

Here’s hoping Ghost support can sort this out next week.

I Can't Get Ghost 6 ActivityPub To Work When Self-Hosting

I Can't Get Ghost 6 ActivityPub To Work When Self-Hosting

I love Ghost, but I simply can’t get their ActivityPub functionality to work in a self-hosted configuration.

I have done extensive testing:

  • using the New Install (i.e., Docker) option
  • on both Digital Ocean and Vultr
  • with this domain and fresh domain
  • using self-hosted and Ghost’s own ActivityPub infrastructure
  • using a Ghost admin domain at site.tld/ghost and admin.site.tld
  • proxying and not proxying using Cloudflare

Nothing works.

When using Ghost’s infrastructure, I receive Policy Violation errors. When I use my server’s own ActivityPub service at :8080 I get HTTP 403 errors. It’s a little disappointing.

However, when self-hosting, the native analytics with TinyBird worked as advertised and were really well presented, though not as in-depth as Plausible.

When not self-hosting I tried one of the fresh domains above with Ghost(Pro) and the ActivityPub functionality worked. It was marvellous.

I’m really hoping these issues are just early 6.0 bugs for self-hosters.

Some credit to Cathy Sarisky for helping the community.

The Betas 5 Are Out

The Betas 5 Are Out

Juli Clover, MacRumors:

Apple seeded the fifth developer beta of iOS 26 today, and while the number of significant changes has dropped, there are quite a few smaller tweaks. Apple is continuing to refine button placement, animations, and design in preparation for launching ‌iOS 26‌ in September.

Disappointingly, I am still seeing the same issues that I had in betas 3 and 4.

Ghost 6.0 Ships

Ghost 6.0 Ships

From the Ghost blog:

  • Ghost publications are now connected with an open network. People can discover, follow, like and reply to your posts across Bluesky, Flipboard, Threads, Mastodon, WordPress, Ghost, and any other social web platform. Distribution is now built-in.
  • We’re introducing a native analytics suite for Ghost, giving you detailed insights into how your content performs across web traffic, newsletters, and member subscriptions – all in real-time, all from the same place you publish everyday.

I am sorely tempted to return to Ghost for these two features and the anti-faff nature of the platform versus (for example) WordPress. What’s keeping me on WordPress is the ability to customise RSS feeds and include a JSON feed. While I was able to do this in the past with Ghost, my customisations that enabled it were removed every time I updated to the latest Ghost version.

The Betas 4 Are Out

The Betas 4 Are Out

Juli Clover, MacRumors:

Apple today provided developers with the fourth betas of iOS 26 and iPadOS 26 for testing purposes, with the updates coming two weeks after Apple seeded the third betas.

I am still left with two bugs on iPad that I can’t get to the bottom of.

Sidebar

The first, above, is a sidebar that doesn’t react to light and dark mode changes, always leaving text looking black. (I’ve registered for trait changes to try and force it to white, but it doesn’t make a difference.)

Swipe Action

The second issue is leading swipe actions where the content of the cell is offset by the size of the sidebar (but only when the sidebar is visible).

iOS 26 Beta 3 Bugs

iOS 26 Beta 3 Bugs

I’m working through feature updates for both Singapore Buses and NetNewsWire and I’m hitting a few persistent bugs I can’t seem to workaround.

  • Text in cells doesn’t adapt to dark mode appearance changes: label.textColor = .label is ineffective. (UIKit)
  • Navigation title and navigation subtitle text doesn’t adapt to dark mode appearance changes (same as above). (UIKit)

Secondary View Controller (in a 3 column layout):

  • Unable to stop a table or collection view cell’s selected background from extending under the sidebar. Countless hours have been wasted on this: UIScrollEdgeEffect, UIBackgroundExtensionView, hacking away at a cell’s contentView frame with a chisel (followed by hammer smashing into my MacBook). (UIKit)

Sheets

  • Navigation bar title text in a presented .sheet doesn’t adapt to dark mode appearance changes. (SwiftUI)