Repository navigation
Open
Labels
P2Important issues not at the top of the work listImportant issues not at the top of the work listcustomer: crowdAffects or could affect many people, though not necessarily a specific customer.Affects or could affect many people, though not necessarily a specific customer.engineflutter/engine related. See also e: labels.flutter/engine related. See also e: labels.f: scrollingViewports, list views, slivers, etc.Viewports, list views, slivers, etc.found in release: 3.19Found to occur in 3.19Found to occur in 3.19found in release: 3.20Found to occur in 3.20Found to occur in 3.20frameworkflutter/packages/flutter repository. See also f: labels.flutter/packages/flutter repository. See also f: labels.has reproducible stepsThe issue has been confirmed reproducible and is ready to work onThe issue has been confirmed reproducible and is ready to work onplatform-webWeb applications specificallyWeb applications specificallyteam-webOwned by Web platform teamOwned by Web platform teamtriaged-webTriaged by Web platform teamTriaged by Web platform team
Description
Steps to Reproduce
Flutter is painted on a canvas and the browser doesn't detect the scroll.
This causes problems when the native browser uses the scroll to perform their own actions.
Current problems:
- Safari and Chrome iOS/Android address and bottom bar navigation doesn't collapse when scrolling:
Issues: [web] Allow Flutter apps to have 13% bigger screen after being scrolled down #64572 Flutter for Web does not hide url bar and navigation bar on scroll in iOS's Safari #68877
| Current behavior | Expected behavior (would also need to scroll) |
|---|---|
![]() |
![]() |
-
iOS scroll to top by tapping on the status bar doesn't work. A feature available for any website in any ios browser or WKWebView
-
iOS GoogleMaps, Google Assistant, Facebook & Facebook Messenger displays in-app websites inside a draggable modal. Because of scroll is not detected, the modal is closed instead of scrolling upwards.
Reacted by Santiago De la Cruz, Zuhair Abdulla, Daniil Lipatkin, Tomas Baran, Clay, Jose Tapizquent, Pedro Massango, Bogdan Lukin, kentaro, Jaime Blasco and 158 more
Reacted by Emir Demirli, Minh Tran, Kirill Chernikov, hussamDana92, ggezuexe, Martin Pellicer and CAN4t4sh4
Reacted by Jaime Blasco, Diogo Guilherme da Silva Santos, Chris Fountoulis, Yuriy Nalivayko, jakusb, Jose Tapizquent, eliezerp3, treestae, hussamDana92, Adam Ghaffarian and 27 more
Metadata
Metadata
Assignees
Labels
P2Important issues not at the top of the work listImportant issues not at the top of the work listcustomer: crowdAffects or could affect many people, though not necessarily a specific customer.Affects or could affect many people, though not necessarily a specific customer.engineflutter/engine related. See also e: labels.flutter/engine related. See also e: labels.f: scrollingViewports, list views, slivers, etc.Viewports, list views, slivers, etc.found in release: 3.19Found to occur in 3.19Found to occur in 3.19found in release: 3.20Found to occur in 3.20Found to occur in 3.20frameworkflutter/packages/flutter repository. See also f: labels.flutter/packages/flutter repository. See also f: labels.has reproducible stepsThe issue has been confirmed reproducible and is ready to work onThe issue has been confirmed reproducible and is ready to work onplatform-webWeb applications specificallyWeb applications specificallyteam-webOwned by Web platform teamOwned by Web platform teamtriaged-webTriaged by Web platform teamTriaged by Web platform team



Activity
pedromassangocode commentedon Nov 2, 2020
Issue reproducible on latest
masterchannel.flutter doctor -v
yjbanov commentedon Dec 4, 2020
I thought we had a duplicate issue for this, but I failed to find one. I'm accepting this as a feature request.
yjbanov commentedon Dec 4, 2020
I've been thinking about some ideas for fixing this. Leaving this idea before I forget: the web engine could use a signal from the framework that there's a scrollable area that the user is interacting with as well as when the start/end has been reached. We could then make the body element (or some other top-level element) scrollable while keeping the Flutter View in a fixed position. The browser will see the element scrolling and react appropriately.
yjbanov commentedon Dec 4, 2020
@jamesblasco Curious how did you get it to behave correctly in the "Expected behavior" screen recording?
141 remaining items
iapicca commentedon Oct 5, 2024
@mncorreia no it doesn't
this is how is supposed to work, focus on chrome's address bar
I don't want to nitpick,
I just want to avoid this issue to be slapped with
label:"workaround available"and forgot forever (like many other
webissues)QoLTech commentedon Oct 7, 2024
Okay, this thread is getting a little hard to follow recently.
Is there a workaround that we can add to an app that enables the behavior of the app bars to hide when a Flutter view is being scrolled? How exactly would someone implement this workaround?
iapicca commentedon Oct 8, 2024
the point is (and always has been afaik) that the browser doesn't detect the scrolling
therefore doesn't hide/reveal the address bar (see original post)
what worries me is
creating the risk that maintainers may accidentally flag the issue with label:"workaround available"
decreasing the priority of the issue
this issue doesn't seem to be actively worked on
cc @huycozy @yjbanov
jongseokleedev commentedon Nov 1, 2024
gusflrnd commentedon Feb 27, 2025
None of the above workarounds (gambiarras) have worked for me as of today's date. I'm in the middle of developing an app that uses Flutter to display high-quality images and videos. I was excited to show it in full screen on mobile devices, but now I'm really frustrated by how long this issue has been open without being addressed. I guess I'll simply use React or another tool that already has this feature easily implemented. This is a HUGE problem in today's modern visual web applications.
fralways commentedon Feb 28, 2025
Flutter mobile web hasn’t been getting much (or any?) love for a long time. this is just one of a few bigger issues which I experienced over past years. and its really strange to me that it is like that considering most of web traffic, in general, goes over mobile.
olof-dev commentedon Mar 1, 2025
Yes, this issue is a frustrating one. But also no: Flutter web has been getting love. They have worked on getting the wasm standards developed to support garbage collection to work better with Dart and Flutter (talk about long-term thinking!), they have implemented building separate framework bundles for different browsers to minimize download times, they've introduced new JS interop features, and I'm sure there's much more (maybe there's a web roadmap somewhere?). My 2 cents are: let's keep these GitHub issues focused on the technical issues (and solutions), let's put thumbs up on the issues we really want to see solved, and let's try to contribute and figure out fixes as best we can.
koji-1009 commentedon Mar 28, 2026
I created a proof-of-concept PR that addresses this for iOS and Android: #184281
It switches touch input handling from Pointer Events to Touch Events, which allows
touch-action: pan-ywithout breaking gestures. The approach is minimal —pointer_binding.dartis unchanged.Feedback on the approach is welcome.
flt-phy commentedon May 6, 2026
Thanks for the PoC!
Any news on a potential fix being merged? 👀
koji-1009 commentedon Oct 24, 2026
Follow-up on #184281: it has been closed, and the reasons are in the PR.
With engine changes in Flutter 3.50, the same approach now works as a package, with no further engine changes. It is published as a new package.
https://pub.dev/packages/web_address_bar
It needs Flutter 3.50 or later, which is on the beta channel as of today.
It covers the address bar collapsing and, with
WebAddressBarScrollToTop, scrolling to the top on an iOS status bar tap.Feedback is welcome.