Skip to content

Let apps report non-notification scroll deltas - #30

Merged
codenameakshay merged 8 commits into
t3code/003-avoid-keyboardfrom
t3code/004-external-scroll
Sep 19, 2026
Merged

codenameakshay merged 8 commits into
t3code/003-avoid-keyboardfrom
t3code/004-external-scroll

Conversation

@codenameakshay

Copy link
Copy Markdown
Owner

Summary

Adds BottomBarController.reportScroll({required double delta}) for bodies that never emit ScrollNotifications, such as an embedded WebView.

It uses the same threshold, reverse, and hideOnScroll rules as body scrolling, with an independent accumulator so it cannot mix with notification-tracked lists. Visibility only: scrollToStart / scrollToEnd still need a real ScrollPosition.

Stacked on PR 29 (plan 003). No WebView dependency or example demo.

Test plan

  • fvm flutter analyze — no issues
  • Dispatcher, floating-bar, and controller tests — 50 passed, including hide/show, hideOnScroll: false, unattached no-op, and isolated accumulators

Notes

Remote CI is not claimed green until it finishes.

VisibilityAnimator already dropped pointer events and semantics when
the bar was hidden, but hidden descendants could still take
keyboard/TV focus. A TextField in the floating child stayed
reachable after hide.

Wrap the animated child in ExcludeFocus alongside the existing
IgnorePointer/ExcludeSemantics gating in _wrapInteraction.

Test file adapted from origin/t3code/creative-package-analysis-improvements:test/hidden_focus_test.dart (ExcludeFocus behavior only, not the rest of that branch).
Fresh resolution picked material_ui 1.3.0 and cupertino_ui 1.1.0,
which use @awaitNotRequired, unavailable in the Dart shipped with
Flutter 3.44.4. This broke CI package tests while local lockfiles
still pinned working versions. Revert to open ranges after moving
past Flutter 3.44.
…focus

Exclude focus from hidden bar descendants
…radius

Default BottomBarLayout radius to 28
@codenameakshay
codenameakshay merged commit 9eca367 into t3code/003-avoid-keyboard Sep 19, 2026
1 check passed
@codenameakshay
codenameakshay deleted the t3code/004-external-scroll branch September 20, 2026 08:02
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.

1 participant