This reverts the change to `user_accounts_drawer_header.dart`
(and the associated test), as it was causing regressions in layout
of the drawer header.
https://github.com/flutter/flutter/issues/13743
* Create CupertinoScrollbar
* handle main axis margin
* Adaptive material scrollbar and tests
* Small tweaks
* reapply changes on head
* Docs
* start
* Refactored ScrollbarPainter to be more immutable
* fix tests
* fix bug: one animationcontroller pointed to multiple painters
* some docs tweak
* remove unused import
* review
* review
* add dispose
**tl;dr:** A `RenderObject` can only be an effective semantics boundary if it actually owned a `SemanticsNode` in the previous tree generation.
When using the `BlockSemantics` widget it is possible to introduce `RenderObject`s that are configured to be a semantics boundary, but because their semantics are blocked by `BlockSemantics` they will not (immediately) end up owning a `SemanticsNode`. When now a descendant of such a node-less semantics boundary marks itself as needing a semantics update we walk up the tree until we find the closest semantics boundary (which is our node-less `RenderObject`). We now incorrectly assume that this semantics boundary has a valid `SemanticsNode` and only regenerate the semantics subtree below this node. However, because the identified semantics boundary doesn't actually own a valid `SemanticsNode` asserts are throwing (e.g. `Child with id xx is invisible and should not be added to tree.`).
To fix this problem, we can just abort the walk if we reach a semantics boundary without a semantics node because (for now) we know that the semantics information of this branch will not make it into the final semantics tree.
If the semantics block is ever removed, the current algorithm re-generates the semantics for the entire branch and the semantics will be up-to-date then despite the abort. I've added a test to verify this to make sure it continues to work even when we change the algorithm.
Fixes https://github.com/flutter/flutter/issues/13326.
/cc @gavindoughtie FYI
Prevent header from thinking it can wrap and then overflowing.
Fix default footer string which lost its colon (localized values are fine).
Make the "rows per page" drop-down include at least one value even when the table lacks many items. (Previously it would assert if your table was too short.)
Make the footer scrollable.
Fix some todos and improve some debug output.
Tests for much of the above.
Applies any additional bottom, left, and right media padding inside the
snackbar, if present. This accounts for the iPhone X home indicator
widget and horizontal padding for the sensor housing notch in landscape
orientation.
* make date picker accessible
* make test file lookup location-independent
* address some comments
* always wrap in IgnorePointer
* no bitmasks for flags and actions
* recommend List<*>
Applies top, left, right media padding for iOS safe area insets. This is
a follow-up to the media padding applied to large titles in
flutter/flutter#13550.
Applies media padding (e.g. iOS safe area insets) around the list tile
children inside the InkWell.
Also adds safe area around gallery section titles for consistency with
surrounding list tiles.
We've added a bunch of non-animatable properties to DefaultTextStyle.
This adds them to AnimatedDefaultTextStyle so that you can use them
even when your text style is animating.
* Revert "Include a directory with Flutter assets (#12944)"
This reverts commit 3af6b9cbf5787b4db6b4bad7494fe41addf5703d.
* Revert "Upgrade project.pbxproj to include flutter_assets (#13011)"
This reverts commit 08128cb29b28db00c2301f546bc59de33017074a.
* Revert "Upgrade complex_layout project.pbxproj to include flutter_assets (#13544)"
This reverts commit 35f1a04195e69afb5cc1e6588abad5476db3a5d8.
* mark complex_layout_ios__start_up as flaky
**This PR contains a breaking API change:**
`SemanticsConfiguration.addAction()` has been removed and replaces by action-specific setters (`onTap`, `onLongPress`, etc.) to take care of the fact that some action handlers (those, who take arguments) have different signatures.
Removes bottom padding from the child AppBar in SliverAppBar. Scaffold
already does this for its own app bars, but sliver app bars in the body
should also apply the bottom padding removal.
Fixesflutter/flutter#13458
Also:
* Remove find.byIcon since it's identical to find.icon. (I sent mail to flutter-dev about this.)
* Fix IconData's operator== and hashCode, which had not been updated when we added fields.
* Add the byTooltip finder to the list of suggested finders.
* Make the suggested Key finder prettier.
* make time picker accessible
* use new CustomPaint a11y API
* flutter_localizations tests; use bigger distance delta
* fix am/pm control; selected values
* fix translations; remove @mustCallSuper in describeSemanticsConfiguration
* exclude AM/PM announcement from iOS as on iOS the label is read back automatically
* Let translucent Cupertino bars have its scaffold children automatically pad their heights (#13194)
* Let lists automatically add sliver padding from media query. Translucent nav and tab bars leave behind media query paddings in scaffolds.
* tests
* const lint
* Rename base abstract class to generalized ObstructingPreferredSizeWidget
* review
* More docs and comments from #13317
Updates scaffold to expose bottom padding to the associated
BottonNavigationBar (if present). BottomNavigationBar is now responsible
for adjusting itself to account for bottom padding.
This change is necessary to support the updated BottomNavigationBar
layout for the iPhone X.
* Remove MediaQuery padding for various PopupRoutes that don't extend to the edge of the screen
* bottom sheet doesn't actually need handling. Scaffold does it already. Add test for others.