pointfreeco / swift-navigation

Bringing simple and powerful navigation tools to all Swift platforms, inspired by SwiftUI.
http://pointfree.co
MIT License
1.96k stars 123 forks source link

Delay `UIAlertController.onDismiss` #201

Closed stephencelis closed 1 month ago

stephencelis commented 1 month ago

Currently, onDismiss is called before the UIAlertAction is processed, which generally isn't an issue, but if you care about the order of operations, this can be a bit thorny. In the case of highly generalized navigation patterns in TCA, the order is what we use to emit warnings when invalid actions are received (like a dismiss action is received for an already-dismissed feature), so let's address the problem with a quick tick.

We could do this thread hop unconditionally if it makes sense to, but let's localize to UIAlertController for now.