198 Commits

Author SHA1 Message Date
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
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
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
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
Ian Hickson
34ba6be93a
Popup menus RTL (#13110)
This fixes the popup menu code to do a better job of expanding
smoothly regardless of which side of the screen it's on. It still
results in a bidirection growth when positioned at the bottom of the
screen, so maybe we'll need to animate menus differently, but that's
a problem for another patch.

Also, improve some docs and provide RelativeRect.toSize which I needed
at one point while building this patch (though it didn't survive all
the way to the end).
2017-11-22 15:15:21 -08:00
Greg Spencer
0259be90b8
Fix spelling errors in all the dartdocs. (#13061)
I got tired of drive-by spelling fixes, so I figured I'd just take care of them all at once.

This only corrects errors in the dartdocs, not regular comments, and I skipped any sample code in the dartdocs. It doesn't touch any identifiers in the dartdocs either. No code changes, just comments.
2017-11-17 10:05:21 -08:00
Greg Spencer
c15c021e6c
Adding accomodations to ListTile for scaleTextFactor. (#12973)
This makes ListTile expand vertically when text is scaled, or really when whatever is placed inside it is larger than the available space.

In order for UnconstrainedBox to be useful here, I needed for it to only unconstrain the child Row in one dimension, so I added a "constrainedAxis" parameter to the UnconstrainedBox.

Also, changed one enum test to use a switch instead.

I modified the ListTile test to be more representative of the intention of the spec: we were testing with text in the leading and trailing sections, and the design wants icons there. Because there was leading text, and the dense mode only changes the font size on the text lines, the leading text was propping up the minimum size of the tile, making so that the test wasn't really testing any changes in dense mode.
2017-11-15 09:00:36 -08:00
Greg Spencer
3541ad0a64
Add an UnconstrainedBox and factor out debug overflow indicator. (#12856)
UnconstrainedBox will allow its child to size itself as if it had no constraints, and then attempt to fit around that object, until its own constraints are exceeded, in which case it will clip and display an overflow warning.

I also factored out DebugOverflowIndicator, which will draw overflow indicators on containers which overflow but aren't expected to.
2017-11-08 20:15:06 -08:00
Ian Hickson
e064d6cbc9
RenderFlex with MainAxisSize.min RTL (#12875)
There was a left-bias when MainAxisSize.min couldn't be honoured.
2017-11-03 17:50:11 -07:00
amirh
616a2ad6da
Move semantics stuff from rendering to a top-level semantics/ library (#12793) 2017-11-02 17:38:28 -07:00
Michael Goderbauer
1d4607ff04
Identify text fields as such to a11y (#12804)
* Identify text fields as such to a11y

* focus

* make travis happy

* review comments
2017-11-02 10:08:56 -07:00
amirh
6161d54eb6
Move AbstractNode to lib/foundation. (#12789)
(in preparation for moving the semantics stuff out of rendering)
2017-11-01 09:24:30 -07:00
Michael Goderbauer
9184dfba14
Support value announcement for increase/decrease (#12741)
* Support value announcment for increase/decrease

* ++

* review comments about docs
2017-10-31 14:22:33 -07:00
Michael Goderbauer
c3e049613d Support for accessibilityHint and accessibilityValue (#12677)
* Support accessibility labels and hints

* more tests

* ++

* review comments

* fix merge

* test fix
2017-10-24 11:17:51 -07:00
Michael Goderbauer
141a6355ce Performance improvements for semantics tree compilation (#12682)
* Without checking compatibility

* ++

* ++

* ++

* more docs
2017-10-23 17:33:46 -07:00
amirh
ce4a45779d Add an isButton flag to the Semantic widget,use it for MaterialButton (#12657)
https://github.com/flutter/flutter/issues/11992
2017-10-23 14:52:41 -07:00
Alexandre Ardhuin
1fce14a31c enable lint prefer_single_quotes (#12665) 2017-10-22 18:11:36 +02:00
Ian Hickson
faf44b592a Factor out painting logic for DecorationImage (#12646)
This avoids some code duplication that existed before and will make
further modifications easier.
2017-10-20 16:58:16 -07:00
Jason Simmons
5e8634a625 libtxt: make a paragraph selection test handle equivalent libtxt and blink output (#12606) 2017-10-20 12:54:36 -07:00
Michael Goderbauer
f8a2bd20e9 Redesign Semantic Tree Compilation Algorithm (#12605)
* Oct 12 10:12am

* implicit_semantics_test.dart passes

* refactoring

* works in nice

* minor rename

* more doc comments

* to be explicit check better

* fix test

* ++

* ++

* semantics_9_test (BlockSemantics) and implicit_semantics_test are passing

* doc updates

* tiny refactor

* fix static errors in tests

* fix gesture detector

* ++

* ++

* geometry

* ++

* remove noGeometry

* revert test

* +

* all tests but scrolling/clipping pass

* clipping works

* scrolling halfway

* sliver tests pass

* ALL TESTS PASS

* SemanticsNode changed

* docs and tiny fixes

* card test

* more doc comments

* remove missed print

* more tests

* make test pass on Linux

* remove changes to intellij proj file

* review comments
2017-10-18 16:28:24 -07:00
Jason Simmons
264cbf6145 libtxt: adapt a selection rectangle test (#12612)
libtxt's implementation of Paragraph.getBoxesForRange returns the full line
height for all characters in a line.  Blink had been returning a tighter
enclosing rectangle for each individual character.
2017-10-18 14:48:20 -07:00
Ian Hickson
0e34c7f28c CircleBorder (#12570) 2017-10-17 13:38:06 -07:00
Adam Barth
a13320253c Don't attempt to draw invisible overflow indicator (#12534)
If the flex is empty, there's no space in which to draw the overflow indicator,
so we shouldn't bother trying to draw it.

Fixes #12532
2017-10-17 11:17:08 -07:00
Ian Hickson
4e48a737eb Fix flex floating point error causing unnecessary striped warnings (#12424)
Also:

 * Provide a better message when you lerp from infinity to finity
   constraints.

 * Make the striped marker support RTL.

 * By popular demand, dump a warning to the console the first time
   a particular Flex overflows. (Resets on hot reload.)
2017-10-06 19:24:34 -07:00
Adam Barth
a30b109c9e Add RTL support to ListBody (#12414)
Fixes #11930
2017-10-05 09:45:41 -07:00
Ian Hickson
cd3715a854 Border RTL (#12407) 2017-10-05 01:12:21 -07:00
Chris Bracken
0189696e4b Roll engine to 459f722b86415da01386fe41f37bafa842f11ae8 (#12413)
Eliminates Invocation.typeArguments override recently introduced and removed in upstream Dart SDK commit:
https://dart-review.googlesource.com/c/sdk/+/10702
2017-10-04 19:44:48 -07:00
Ryan Macnak
dfa13a14f9 Roll engine to f7685ddf16ccf9e5f6c4386c23061b02ed0e37d4. 2017-10-04 14:44:44 -07:00
Michael Goderbauer
49499457f2 Drop invisible SemanticsNodes from tree (#12358)
* Drop invisible SemanticsNodes from tree

A node is invisible if it is outside of the bounds of the screen and if it is not merged into its (partially) visible parent.

Also in this PR: only set `wasAffectedByClip` to true if the nodes has actually been clipped.

* Fix other failing tests

* renaming

* review feedback

* more doc
2017-10-03 09:52:36 -07:00
Alexander Aprelev
fd04d4d126 Revert "Roll flutter engine (#12307)" (#12365)
This reverts commit f6fe8dc7e3e961c067432e74f8a5fc089d7559b7.

This breaks coverage test
https://travis-ci.org/flutter/flutter/jobs/282472585
2017-10-02 16:01:09 -07:00
Alexander Aprelev
f6fe8dc7e3 Roll flutter engine (#12307)
* Roll engine

* Pick up updated engine with analyzer fix

* Add new typeArguments override

* Update engine dep

* Up dartdoc version to fix name resolution issues
2017-10-02 15:28:09 -07:00
gspencergoog
18f0d3aef7 Add framework support for system text scale factor. (#12180)
* Add framework-side support for system text scale factor.

* Rolling engine to e3404b81a53ba3180c7623a6f2190ebb28518f30
  Additional changes rolled in with engine change:
    libtxt: implementation of GetRectsForRange that processes a line at a time - e3404b8
    Provide an entropy source to the Dart engine (#4161) - e1aa867
    libtxt: search for fallback fonts that can match emoji and CJK characters - 8061df1
    Roll skia to e4679fa06a. (#4157) - 267e7a8
    Update buildroot to 53fea9aebbcc39c6522731471a1a45960ee0685e (#4160) - 02ea7ae
    Revert engine Dart roll. (#4158) - 14aab33
    Add support for system text scale factor. (#4124) - b2a7f4b
    Include _http into sky_engine libraries for analyzer (#4154) - b930f10
    libtxt: Remove postprocess_line and improve tracking of X offsets - 86f95f0
    libtxt: remove redundant line_widths (#4152) - 14bf515
    Roll dart to ade37f931e90b0fdb8fe16d6bf6f089545da55b6 (#4151) - 6f1264f
2017-10-02 14:18:18 -07:00
Michael Goderbauer
437e4c089b Make "mergeIntoParent" information available during compile of semantics tree (#12332)
* ++

* Allow unmerging of SemanticsNodes

* test passing

* ++

* remove prints

* doc comments

* rectify comment

* review comments
2017-10-02 09:49:04 -07:00
Adam Barth
2b126bcd0d Add Alignment, which will replace FractionalOffset (#12342)
Unlike FractionalOffset, Alignment uses the center as the zero of the
coordinate system, which makes the RTL math work out much cleaner.

Also, make FractionalOffset into a subclass of Alignment so that clients
can continue to use FractionalOffset.
2017-10-01 23:06:18 -07:00
Ian Hickson
e04bf3285d Image RTL (#12230) 2017-09-24 16:14:55 -07:00
Ian Hickson
953dabc70b Fix some typos (#12233) 2017-09-24 01:40:42 -07:00
Adam Barth
1a0bdb9619 Add RTL support to Table (#12225)
Also, fix asserts in TableBorder#paint to match documentation.

Fixes #12009
2017-09-23 12:31:55 -07:00
Alexandre Ardhuin
cde6b669b3 unnecessary statements (#12189) 2017-09-21 08:33:56 +02:00
Ian Hickson
d15907b50b Uniform rectangular borders were drawing in the wrong place. (#12179)
I inflated instead of deflating. Oops.
2017-09-20 16:08:03 -07:00
Ian Hickson
9d59fb0c30 Split TableBorder from Border (#12104)
This will enable both to be RTL'ed.

Also, factor out common border painting code into paintBorder.
Also, make Border paint uniform non-rounded borders using drawRect.
Also, add some documentation about an issue that wasted an hour of my life.
Also, factor out all the border painting code into TableBorder.paint.
2017-09-15 14:08:44 -07:00
Jacob Richman
f2ab841ac4 Add DiagnosticLevel used to filter how verbose toStringDeep output for (#11995)
Diagnostics object is.
2017-09-11 19:01:05 -07:00
Jacob Richman
0229711ba1 Refactor SemanticsData and SemanticsNode to use Diagnosticable. (#11957)
* Refactor SemanticsData and SemanticsNode to use Diagnosticable.

* Switch toStringDeep to take named parameters.
2017-09-11 09:25:58 -07:00
Ian Hickson
e7fbee6624 Fix clip debugPaint (TextPainter RTL fallout) (#12026) 2017-09-10 22:59:26 -07:00
Ian Hickson
fad36baa6f Fix WidgetsApp to wrap its contents in a Directionality (#12018)
...rather than only wrapping the children.

Also, improvements to Banner to better support RTL, and mock_canvas to
make debugging things easier.
2017-09-08 14:29:35 -07:00
Adam Barth
c46347b6df Add RTL support to Stack (#11973)
Notice that the default alignment for Stack needs to know the
directionality.
2017-09-07 22:52:36 -07:00
Ian Hickson
ca7d2d23cf TextPainter RTL (#11888) 2017-09-07 16:57:38 -07:00
Adam Barth
8eb6ad2776 Add RTL support to GridView (#11921)
Fixes #11855
2017-09-05 11:29:20 -07:00
Michael Goderbauer
7ee0b6a574 Clear tags on SemanticsNode.reset() (#11903) 2017-09-05 10:37:53 -07:00
Jason Simmons
d77955fb1a Pass the width constraint to the text layout engine if ellipsizing is enabled (#11877) 2017-08-31 14:51:11 -07:00
Alexandre Ardhuin
bb4f4070f9 Prefer const constructors (#11853)
* upgrade to linter-0.1.35

* re-enable lint prefer_const_constructors

* address review comments
2017-08-31 08:55:21 +02:00