3788 Commits

Author SHA1 Message Date
xster
e2192a90fc
Remove top mediaquery padding from modal bottom sheets (#13497) 2017-12-12 11:25:20 -08:00
Ian Hickson
9a957e4123
Remove hack for support of old Hebrew language code. (#13309)
See https://github.com/flutter/flutter/issues/11907 and https://github.com/flutter/engine/pull/4411
2017-12-11 13:43:07 -08:00
Fredrik Simón
eed471ea3d Expose textAlign on TextFormField (#13414)
* Expose textAlign on TextFormField

Fixes #11404

* Added name to AUTHORS

* Added a test for TextFormWidget's textAlign
2017-12-11 13:29:22 -08:00
Mehmet Fidanboylu
0c09179b65
Fix for incorrect transparent -> DividerColor animation for ExpansionTile (#13449)
* Fix for incorrect transparent -> DividerColor animation for ExpansionTile

* Add comments and tests. Fix background color too.

* Fix analyzer warnings
2017-12-09 22:04:06 -08:00
Chris Bracken
355ebef5fe
Remove bottom padding in SliverAppBar (#13471)
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.

Fixes flutter/flutter#13458
2017-12-08 18:53:55 -08:00
Ian Hickson
186d1e9b0d
Have the framework in charge of scheduling frames. (#13344)
...instead of the engine.
2017-12-08 16:51:59 -08:00
Seth Ladd
33c66335a8
docs to redirect a user to dart:io.HttpClientOverrides (#13465) 2017-12-08 15:34:37 -08:00
Ian Hickson
d25e0eb0d3
Fix tapping on a test in flutter run (#13397)
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.
2017-12-08 14:37:24 -08:00
Yegor
b80751cdc3
Make time picker accessible (#13152)
* 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
2017-12-08 14:29:28 -08:00
xster
ecf5041807
Let translucent Cupertino bars have its scaffold children automatically pad their heights - second try (#13440)
* 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
2017-12-08 09:00:20 -08:00
Michael Goderbauer
52d06b8213 a11y cursor movement (#13405) 2017-12-07 19:06:16 -08:00
Chris Bracken
276cbb1c27
Apply media bottom padding in BottomNavigationBar (#13431)
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.
2017-12-07 18:15:29 -08:00
xster
6f773944ae
Remove dangling MediaQuery paddings for non-fullscreen dialogs - 2 (#13438)
* 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.
2017-12-07 17:58:50 -08:00
Chris Bracken
6ff844a9c0
Scaffold resizeToAvoidBottomPadding uses view insets (#13437)
Now that keyboard height is modelled as a (bottom) view inset, migrate
scaffold bottom resizing to use view insets instead of bottom padding,
which, after an engine roll, will only be used for safe areas.

Until the aforementioned engine roll, the keyboard height is still
included in both bottom padding and view insets. As such
resizeToAvoidBottomPadding still drives bottom padding removal until
that roll lands.

Renames _ScaffoldLayout.bottomPadding to bottomViewInset
2017-12-07 17:49:11 -08:00
Chris Bracken
60effb993c
Extract a shared MediaQueryData for padding and viewInsets (#13434)
Also adds a TODO that should have landed with flutter/flutter#13423.
2017-12-07 16:19:58 -08:00
Jason Simmons
3979dafaed
Fix calculation of downstream caret location at the end of a string (#13426) 2017-12-07 15:34:42 -08:00
Ian Hickson
44e228eb9e
Move image logic from services/ to painting/. (#13409)
This allows the scheduler library to depend on the services library
and the painting library to depend on the scheduler library without
the services library having to depend on the scheduler library.

While I was at it I also cleaned up some of the binding logic: the
licenses logic can now be overridden (and the test library does so),
and the image cache can now be overridden as well.
2017-12-07 14:53:08 -08:00
Chris Bracken
71021b4706
Use greater of viewInsets, padding for Scaffold bottom padding (#13423)
Scaffold bottom padding now applies the maximum of window
viewInsets.bottom (typically used for iOS safe areas) and padding.bottom
(typically used for keyboard height).
2017-12-07 12:59:26 -08:00
Jacob Richman
ed54868c22
Change enum properties to use camel case instead of dash separated names
Make regular Alignment values look more like enumProperties while
leaving more complex AlignmentDirectional values unchanged.
2017-12-07 10:32:56 -08:00
xster
53c470ddf0
Add helper function to create cylindrical projection matrices (#13376)
* Add a cylindrical projection helper matrix

* specify tangential

* more doc clarifications

* reshuffle arguments

* more code comments

* add some sanity tests

* review

* review 2

* added one more caveat for consideration in docs
2017-12-06 15:57:50 -08:00
Michael Goderbauer
045ee5fd0a
Do not show handles when changing text selection via keyboard (#13338)
This contains a breaking API change to `SelectionChangedHandler`.

This is part of making text input accessible on Andriod (https://github.com/flutter/flutter/issues/12785).
2017-12-06 13:37:15 -08:00
Chris Bracken
324ef1d1f6
Apply media bottom padding to CupertinoTabBar (#13372)
This adjusts the CupertinoTabBar height in the presence of bottom
padding. On the iPhone X, this will increase the height to account for
the home indicator widget.
2017-12-05 19:17:58 -08:00
xster
9db8966f94
Make drawer demo header not scroll away (#13337)
* Make drawer demo header not scroll

* Add test for gallery drawer demo and fix user accounts drawer header overflow
2017-12-05 11:58:03 -08:00
Yegor
ffb24eda56
Accessibility API for CustomPainter (#13313)
Summary:

- Add `key` field to `SemanticsNode`, while moving key into `foundation` library so it can be used by the render layer.
- Introduce `SemanticsProperties` and move many of the `Semantics` fields into it.
- Introduce `CustomPaintSemantics` - a `SemanticsNode` prototype created by `CustomPainter`.
- Introduce `semanticsBuilder` and `shouldRebuildSemantics` in `CustomerPainter`

**Breaking change**

The default `Semantics` constructor becomes non-const (due to https://github.com/dart-lang/sdk/issues/20962). However, a new `const Semantics.fromProperties` is added that still allowed creating constant `Semantics` widgets ([mailing list announcement](https://groups.google.com/forum/#!topic/flutter-dev/KQXBl2_1sws)).

Fixes https://github.com/flutter/flutter/issues/11791
Fixes https://github.com/flutter/flutter/issues/1666
2017-12-04 19:49:14 -08:00
krisgiesing
898646f0f0
Separate focus management by build owner (#13334)
Separate focus management by build owner

Currently the focus manager is held by the singleton WidgetBinding.
This change places a focus manager in each build owner object,
which allows clients to run offscreen pipelines without disturbing
focus management for the main UI.
2017-12-04 15:04:41 -08:00
Ian Hickson
c44f15e6e9
Add a showBottomSheet for consistency with showModalBottomSheet. (#13314)
Also, extra docs.

Fixes https://github.com/flutter/flutter/issues/13279
Fixes https://github.com/flutter/flutter/issues/2115
2017-12-04 13:43:09 -08:00
Ian Hickson
d6f496cab8
Localize the Chip delete button's default tooltip (#13312)
...and document what I did.
2017-12-04 12:59:48 -08:00
xster
2d6f268df6 Revert "Let translucent Cupertino bars have its scaffold children automatically pad their heights (#13194)" (#13317)
This reverts commit 5c4ffa13a6c4f00ea6f752866e9393ee6395d469.
2017-12-01 21:18:36 -08:00
Hans Muller
8ebd45d3bd
Workaround for TextPainter.computeDistanceToActualBaseline when the text is empty (#13305) 2017-12-01 15:06:03 -08:00
Chris Bracken
3efbe00fa6
Correct handling for alwaysUse24HourFormat in MediaQuery (#13287)
1. Ensure that this value is defaulted to the value associated with the
   context rather than re-defaulted to false.
2. Add this value to operator==, hashCode, toString methods.
2017-11-30 18:26:07 -08:00
Chris Bracken
a1b22b17de
Don't remove view insets in removePadding ctor (#13286)
This will be followed by a patch that supports independently removing
padding and view insets.
2017-11-30 17:41:09 -08:00
xster
5c4ffa13a6
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
2017-11-30 13:55:30 -08:00
Chris Bracken
d957c8f040
Add EdgeInsets, MediaQuery support for view insets (#13272)
* Add MediaQuery support for view insets

Also updates EdgeInsets documentation to reflect WindowPadding's use for
both padding and view insets.

See engine commits:
  flutter/engine#4403
  flutter/engine#4406
2017-11-30 13:29:59 -08:00
Ian Hickson
4a4fa2a7c7
Cupertino RTL (#13273)
Fixes the remaining known issues with widgets supporting RTL.
2017-11-30 12:24:40 -08:00
Michael Goderbauer
6493c8b43d
Adapt markNeedsSemanticsUpdate algorithm to new semantics tree compiler (#13274)
* ensures that only semantics boundaries will be added to owner._nodesNeedingSemantics as expected by compiler.
* no longer throws assert if markNeedsSemanticsUpdate is called on non-semantic-boundary render object with a non-semantic-boundary parent.
* Fixes #13109.
* removes onlyLocalUpdates from markNeedsSemanticsUpdate as its no longer needed.
2017-11-30 12:18:33 -08:00
Yegor
a78c9f70da
remove the unused dispatchDidChangeDependencies (#13224) 2017-11-30 12:17:25 -08:00
xster
738e62cb2e
Let iOS have a minimum scroll movement threshold to break before motion starts (#13166)
* Add a minimum distance that needs breaking on iOS each time scrolls stopped.

* Testing and tests

* tweak docs

* review
2017-11-30 11:11:52 -08:00
Alexandre Ardhuin
c358898a76
try lint avoid_unused_constructor_parameters (#13250) 2017-11-30 09:20:53 +01:00
Yusuke Konishi
a46679f758 Implements FlatButton debugFillProperties (#13217)
* Implements FlatButton debugFillDescription

* Fix doc comment

* Override debugFillProperties instead of debugFillDescription

* Remove child debug property
2017-11-29 15:35:37 -08:00
Alexandre Ardhuin
1d7a22fba0
sort lints to make maintenance easier (#13231) 2017-11-29 07:54:44 +01:00
Greg Spencer
02517b8b13
Fix some minor typos/grammar issues (#13230) 2017-11-28 16:27:26 -08:00
Jacob Richman
277001d1a8
Inspector JSON protocol to support Flutter IntelliJ Plugin tree view. (#12932) 2017-11-28 15:06:16 -08:00
Devon Carew
792e7ce872
add an assert to validate the RefreshIndicator.onRefresh result (#13198)
* add an assert to validate the RefreshIndicator.onRefresh result

* add a test for RefreshIndicator.onRefresh assert

* switch to using FlutterError.reportError, FlutterErrorDetails, and FlutterError
2017-11-28 11:00:36 -08:00
Devon Carew
bdbe53be01
remove unused constants (#13199) 2017-11-24 19:13:18 -08:00
Ian Hickson
4c9013b71b
BottomNavigationBar RTL (#13167) 2017-11-22 18:55:07 -08:00
Ian Hickson
9afc853f75
Revert "Reenable fade transition for Material page transition (#13048)" (#13172)
This reverts commit e73d406106aefb5b1d4d06bb209d19618bd0e6ac.

It caused major performance regressions.
2017-11-22 18:54:15 -08:00
Ian Hickson
2bda59a1fe
TabBar RTL (#13164) 2017-11-22 18:53:42 -08:00
amirh
78e044f5ec
Cancel the animated image stream timer if all listeners were removed. (#13158)
This is a bug in my previous CL: instead of cancelling the timer if
there are no more listeners, I canceled it if there were listeners (I
can claim I just missed a not :) ).

Not cancelling the timer when removing the last listener was not that bad, as
the timer callback is guarded by a check to see if there are listeners.
So the animation will not continue.

But in the case there were multiple listeners on the same stream, and
one of them is removed, this bug will stop the animation for all other
listeners.
I added a test case for this scenario.
2017-11-22 15:27:26 -08:00
Ian Hickson
2db0c25f82
Dismissible RTL (#13137)
Fix the dismissible demo in the gallery (make it actuall update when you pick something from its menu; give it a better affordance for resetting once you've dismissed everything).

Improve some docs.

Fix various flinging bugs with dismissible. Add tests for those cases.

Add a feature to flutter_test to support a drag-then-fling gesture (used by the flinging tests).
2017-11-22 15:20:15 -08:00
Alex
e6119282b7 feat: add optional headers param to network image (#13128)
* feat: add optional headers params to network image

* fix: addressed comments

* feat: add test

* style: format code
2017-11-22 15:19:52 -08:00