fwcd / distributed-chat

Distributed peer-to-peer messaging app using Bluetooth LE mesh networks
Mozilla Public License 2.0
73 stars 11 forks source link

Migrate to new SwiftUI navigation types and make ChatChannel non-optional #31

Closed fwcd closed 3 months ago

fwcd commented 3 months ago

This migrates to iOS 16's navigation types (NavigationSplitView and NavigationStack), along with representing the global channel with ChatChannel.global instead of nil, since this plays better with the new navigation types[^1] and is better design anyway. Unfortunately, it is also a breaking change in the protocol, since attaching a channel to messages is now mandatory, since the protocol is considered unstable, however, this shouldn't be too big of an issue.

[^1]: Otherwise the navigation links will appear grayed out