Skip to content

Sheet destination with background interaction is not dismissed when parent is dismissed on iOS 26 #3783

@autoreleasefool

Description

@autoreleasefool

Description

Given the feature structure:

Parent > Child > Sheet

When the child feature has a sheet destination that is presented with sheet(item:content) and uses presentationBackgroundInteraction, by dismissing the child (not the sheet) directly, the sheet is not correctly dismissed. It will remain presented over top of the parent feature, after the child has been dismissed.

Appears to have been introduced in 1.21.0 by #3729

This worked normally (although with visual glitches also present in vanilla SwiftUI) pre-iOS 26. Continues to work in vanilla SwiftUI in iOS 26

Checklist

  • I have determined whether this bug is also reproducible in a vanilla SwiftUI project.
  • If possible, I've reproduced the issue using the main branch of this package.
  • This issue hasn't been addressed in an existing GitHub issue or discussion.

Expected behavior

Dismissing a feature should dismiss all of its children.

Actual behavior

The presented sheet remains active, though actions are cancelled and purple warnings are reported

Reproducing project

SheetNavigationBug.zip

The Composable Architecture version information

1.21.0+

Destination operating system

iOS 26

Xcode version information

Version 26.0 (17A324)

Swift Compiler version information

swift-driver version: 1.127.14.1 Apple Swift version 6.2 (swiftlang-6.2.0.19.9 clang-1700.3.19.1)
Target: arm64-apple-macosx15.0

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working due to a bug in the library.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions