Mouad Debbar d778ed25a4
[web] Detect scrollable semantics nodes more reliably (#164491)
When a text field is inside a scrollable, and the virtual keyboard shows
up, it (sometimes) makes the scrollable semantics node have a 0 extent.
In that case, the scrollable node has no scroll actions attached. In the
web engine, we detect that as a change of roles (from scrollable to
generic) which causes a DOM mutation above the text field, so the
browser shifts focus to the `<body>`.

In order to avoid this bug, this PR changes how we detect a scrollable
node by checking for the
[`hasImplicitScrolling`](https://api.flutter.dev/flutter/dart-ui/SemanticsFlag/hasImplicitScrolling-constant.html)
flag.

Fixes https://github.com/flutter/flutter/issues/154741
2025-03-06 14:56:27 +00:00
..
.gn

OpenSSF Scorecard

buildroot

Build environment for the Flutter engine

This repository is used by the flutter/engine repository. For instructions on how to use it, see that repository's CONTRIBUTING.md file.

To update your checkout to use the latest buildroot, run gclient sync.

To submit patches to this buildroot repository, create a branch, push to that branch, then submit a PR on GitHub for that branch.

To point the engine to a new version of buildroot after your patch is merged, update the buildroot hash in the engine's DEPS file.