Skip to content

Conversation

@veronicasalas
Copy link
Contributor

@veronicasalas veronicasalas commented Dec 18, 2025

Platforms Impacted

  • iOS
  • visionOS
  • macOS

Description of changes

In iOS 26, the bottom sheet’s content is designed to align concentrically with the sheet’s rounded corners. However, the presence of the resizingHandleView introduces a visible gap between the content and the corner, breaking this concentric alignment.

To address this, the resizingHandleView needs to overlap the bottom sheet’s content, so I’m introducing the new property, shouldResizingViewOverlayContent, which enables this behavior when set to true (the default is false). Additionally, the resizingHandleView is moved to become a subview of bottomSheetContentView

When this option is enabled, the constant between the resizingHandleView bottomAnchor and the stackView topAnchor is the resizing handle height so that the resizing handle overlays the content.

Binary change

(how is our binary size impacted -- see https://github.com/microsoft/fluentui-apple/wiki/Size-Comparison)

Verification

Visual Verification
Before After
shouldResizingViewOverlayContent set to false shouldResizingViewOverlayContent set to true
resizing_handle_before resizing_handle_after

Pull request checklist

This PR has considered:

  • Light and Dark appearances
  • iOS supported versions (all major versions greater than or equal current target deployment version)
  • VoiceOver and Keyboard Accessibility
  • Internationalization and Right to Left layouts
  • Different resolutions (1x, 2x, 3x)
  • Size classes and window sizes (iPhone vs iPad, notched devices, multitasking, different window sizes, etc)
  • iPad Pointer interaction
  • SwiftUI consumption (validation or new demo scenarios needed)
  • Objective-C exposure (provide it only if needed)
Microsoft Reviewers: Open in CodeFlow

@veronicasalas veronicasalas marked this pull request as ready for review December 18, 2025 20:06
@veronicasalas veronicasalas requested a review from a team as a code owner December 18, 2025 20:06
stackView.bottomAnchor.constraint(equalTo: bottomSheetContentView.bottomAnchor)
])

if let headerContentView {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

combine with the if let on line 706

@joannaquu
Copy link
Contributor

nit: update view hierarchy on line 470

if let headerContentView {
resizingHandleContentOverlapConstraints = headerContentView.topAnchor.constraint(equalTo: resizingHandleView.bottomAnchor, constant: -currentResizingHandleHeight)
} else {
resizingHandleContentOverlapConstraints = expandedContentView.topAnchor.constraint(equalTo: resizingHandleView.bottomAnchor, constant: -currentResizingHandleHeight)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

we'll need to account for new height in expandedSheetHeight/collapsedSheetHeight

@veronicasalas veronicasalas force-pushed the user/vsalas/fixingBottomSheetConcentricity branch from 0a30dbf to c1c93b5 Compare January 7, 2026 21:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants