SIGN IN SIGN UP

Fix Actions.handler to forward the intent type to maybeFind (#191052)

`Actions.handler` was calling `Actions.maybeFind(context)` without an
explicit type argument or the intent, so downward inference resolved `T`
to `Intent` and the action lookup used the literal `Intent` type instead
of the intent's concrete runtime type. Since apps register actions keyed
by their concrete `Intent` subtype, the lookup always missed and
`handler` returned `null` for every intent. This regressed in #180883
and first shipped in 3.47.0.

The fix forwards the type and intent explicitly:
`Actions.maybeFind<T>(context, intent: intent)`.

## Tests

Adds regression tests for `Actions.handler`: it now finds and invokes
the bound action for the intent's runtime type, and still returns null
when the action is disabled or when no matching action is found. The
first test fails without the fix.

Fixes #191045.

## Pre-launch Checklist

- [x] I read the [Contributor Guide] and followed the process outlined
there for submitting PRs.
- [x] I read the [AI contribution guidelines] and understand my
responsibilities, or I am not using AI tools.
- [x] I read the [Tree Hygiene] wiki page, which explains my
responsibilities.
- [x] I read and followed the [Flutter Style Guide], including [Features
we expect every widget to implement].
- [x] I signed the [CLA].
- [x] I listed at least one issue that this PR fixes in the description
above.
- [ ] I updated/added relevant documentation (doc comments with `///`).
- [x] I added new tests to check the change I am making, or this PR is
[test-exempt].
- [ ] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- [x] All existing and new tests are passing.

<!-- Links -->
[Contributor Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview
[AI contribution guidelines]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#ai-contribution-guidelines
[Tree Hygiene]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
[test-exempt]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement
[CLA]: https://cla.developers.google.com/
[breaking change policy]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
[Data Driven Fixes]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md

Co-authored-by: Victor Sanni <victorsanniay@gmail.com>
O
Omar Alshyokh committed
4adbf280095fd0a48f9ee690723582df958ef933
Parent: a720282
Committed by GitHub <noreply@github.com> on 8/19/2026, 11:49:06 PM