Skip to content

fix(modal): allow pull-to-refresh with a custom scroll host - #31339

Open
ShaneK wants to merge 2 commits into
mainfrom
fix/31332
Open

fix(modal): allow pull-to-refresh with a custom scroll host#31339
ShaneK wants to merge 2 commits into
mainfrom
fix/31332

Conversation

@ShaneK

@ShaneK ShaneK commented Aug 7, 2026

Copy link
Copy Markdown
Member

Issue number: resolves #31332


What is the current behavior?

Currently, pulling down inside a sheet or card modal dismisses the modal instead of triggering the refresher when the content uses a custom scroll host.

What is the new behavior?

With this change, the gesture resolves the refresher from the enclosing ion-content when the swipe target is a custom scroll host, so pulling down runs the refresher and leaves the modal alone. The new findRefresherInContent util only reports a refresher for the scroll host that refresher actually scrolls with, which is the first one in the content, so a second unrelated scroll host still swipes the modal normally. The expandToScroll: false path now runs the same check.

Does this introduce a breaking change?

  • Yes
  • No

Other information

Test coverage is 4 e2e tests on the new page:

Test page (iOS)
Test page (MD)

Current dev build:

8.8.18-dev.11786109471.1285bcfb

@ShaneK
ShaneK requested a review from a team as a code owner August 7, 2026 13:08
@ShaneK
ShaneK requested a review from OS-jacobbell August 7, 2026 13:08
@vercel

vercel Bot commented Aug 7, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
ionic-framework Ready Ready Preview Aug 7, 2026 1:26pm

Request Review

@github-actions github-actions Bot added the package: core @ionic/core package label Aug 7, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

package: core @ionic/core package

Projects

None yet

Development

Successfully merging this pull request may close these issues.

bug: The refresher is not working properly in the virtual scrolling list of the sheet modal

1 participant