73 Commits

Author SHA1 Message Date
Alexandre Ardhuin
0fb84e96c7
Prefer void to null (#22977)
* Future<void> main

* Future<void>.delayed

* prefer_void_to_Null

* address review comments
2018-10-16 22:03:06 +02:00
Jonah Williams
fb7a5937ba
Basic scroll semantics support (#21764) 2018-10-09 14:16:28 -07:00
Yegor
3184b7cb66
Revert "Use mixin syntax for Flutter's super-mixins (#22435)" (#22748)
This reverts commit 3c56e6c77dc5c351d610d5c2a11d86e8be88519f.

It breaks the AOT build.
2018-10-05 15:09:38 -07:00
Yegor
3c56e6c77d
Use mixin syntax for Flutter's super-mixins (#22435)
* first pass

* revert WidgetsBindingObserver

* disable prefer_mixin

* docs and more mixins

* newer engine; binding fixes

* upgrade dependencies

* fix test binding

* remove whitespace

* remove the obsolete `enableSuperMixins: true`

* upgrade dartdoc to 0.22.0

* temporarily use git version of dartdoc

* fix pub global activate syntax

* use dartdoc 0.23.0
2018-10-05 14:54:41 -07:00
Alexandre Ardhuin
f62afdcf57
add missing type parameter on methods (#22096) 2018-10-01 21:29:08 +02:00
Alexandre Ardhuin
a07d3719a1
enable lint prefer_generic_function_type_aliases (#21680) 2018-09-14 21:06:19 +02:00
Alexandre Ardhuin
d927c93310
Unnecessary new (#20138)
* enable lint unnecessary_new

* fix tests

* fix tests

* fix tests
2018-09-12 08:29:29 +02:00
Jonah Williams
908de76c17
Remove value listener from semantics bindings (#21296) 2018-09-07 09:24:08 -07:00
Jonah Williams
f2442b8a13
Fix traversal order issues caused by intersecting or overlapping child rects (#21235) 2018-08-30 19:55:07 -07:00
Jonah Williams
0e9cfe7df1
Address follow up to https://github.com/flutter/flutter/pull/20354 (#21181) 2018-08-29 16:48:23 -07:00
Jonah Williams
e235ccd76f
Support disabled animations (#20354) 2018-08-23 11:50:04 -07:00
Jonah Williams
e56a73e42c
Add support for by word movement granularities to semantics (#19949) 2018-08-17 12:17:34 -07:00
Jonah Williams
b32c77a012
Use scrollPhysics.allowImplicitScrolling to configure scrollable semantics (#20210) 2018-08-07 17:09:14 -07:00
Jonah Williams
55c7e6e3f8
Support customizing standard accessibility action hints on Android. (#19665) 2018-08-02 10:20:47 -07:00
Jonah Williams
ee396272d3
Fix dropdown button semantics (#19932) 2018-07-30 15:36:26 -07:00
Todd Volkert
78a00cb13a
Revert "Revert "roll engine to 6f7bdc9fabef810b14577deef5cf330029fd290e" (#19878)" (#19880)
This reverts commit e52eeba3674b1c5cc6ee46c1088f1f0b997a311c.
2018-07-27 09:02:44 -07:00
Todd Volkert
e52eeba367
Revert "roll engine to 6f7bdc9fabef810b14577deef5cf330029fd290e" (#19878)
* Revert "Revert flutter/flutter#19592 (#19861)"

This reverts commit 00aac68e2da653920aac8c82d52b9382d3743895.

* Revert "roll engine to 6f7bdc9fabef810b14577deef5cf330029fd290e (#19848)"

This reverts commit 8b05629658c17011394451b0997433d7068d719e.
2018-07-27 09:01:15 -07:00
Jonah Williams
8b05629658
roll engine to 6f7bdc9fabef810b14577deef5cf330029fd290e (#19848) 2018-07-26 19:12:04 -07:00
Jonah Williams
810a29d663
Semantics framework updates (#18758)
Changes:

- Move the SemanticsConfiguration update from RenderToggleable to each subclass, so that Switch can use toggled.
- Add image, liveRegion, toggled properties to Semantics, SemanticsConfiguration, SemanticsNode
- Added semanticsLabel and excludeFromSemantics to Image (the latter so that we avoid creating a semantics node)
- Added onDismiss semantics action which maps to the modal escape on iOS and dismiss action on Android.
- Added dismiss and liveRegion to snackbar widget
- Updated custom painter semantics to handle image, liveRegion, toggle
- Updated relevant tests to use correct flag/action
2018-07-24 13:10:17 -07:00
Alexandre Ardhuin
27018359d2
re-enable lint unnecessary_const (#19592)
* re-enable lint unnecessary_const

* remove trailling whitespaces

* remove unnecessary const (after merge)
2018-07-23 08:31:48 +02:00
Greg Spencer
1cc036519c
Removes trailing whitespace from source files. (#19329) 2018-07-19 23:03:58 -07:00
Jonah Williams
d2d17abeec
Add support for custom semantics actions to Android and iOS. (#18882) 2018-07-19 20:47:21 -07:00
Jonah Williams
1793ed79b1
invert children for real (#18489) 2018-06-15 11:22:15 -07:00
Chris Bracken
2ae48845a8
Revert elimination of Dart 1 (#18460)
fuchsia_tester.dart still assumes Dart 1. Previously, it ran tests directly
from source, flutter_platform.dart automatically runs a kernel compile when
operating in Dart 2 mode, but this assumes a functional Dart SDK is available
in the artifacts directly, and fuchsia_tester.dart mocks out the artifacts
directory with an empty temp dir.

Remaining work is:
1. Get the frontend server building as a dependency on Fuchsia.
2. Patch fuchsia_tester.dart to use a valid Dart SDK and frontend server.

This also reverts migration to Dart 2 typedef syntax.

This reverts commit 6c56bb2. (#18362)
This reverts commit 3daebd0. (#18316)
2018-06-13 12:46:39 -07:00
Greg Spencer
6c56bb2420
Update typedef syntax to use Function notation and turn on lint for old notation. (#18362)
Now that Dart 1 is turned off, reapplying my change to turn on the prefer_generic_function_type_aliases analysis option, and fix all the typedefs to Dart 2 preferred syntax.

Also eliminated the unused analysis_options_repo.yaml file and turned on public_member_api_docs in analysys_options.yaml.

No logic changes, just changing the typedef syntax for all typedefs, and updating analysis options.
2018-06-11 15:51:45 -07:00
Alexandre Ardhuin
09276bea25
enable lint prefer_equal_for_default_values (#18156) 2018-06-05 08:50:40 +02:00
Greg Spencer
b921fdc58e
Revert "Update typedef syntax to use Function notation and turn on lint for old notation. (#18035)" (#18041)
This reverts commit 3258602073c6a05b1b051fddf644cba92116694b.
2018-05-30 13:51:14 -07:00
Greg Spencer
3258602073
Update typedef syntax to use Function notation and turn on lint for old notation. (#18035)
Fixes #18028

Just changes typedef declarations, no logic changes.
2018-05-30 12:13:58 -07:00
Jonah Williams
b6ceff552b
re-add semantic service events for tap and longPress (#17918) 2018-05-25 18:42:02 -07:00
Yegor
4beb57c324
Roll engine; pass semantics child orders (#16970)
* pass semantics children in traversal and hit test orders

* explain why we are inverting _children

* Roll engine
2018-05-21 20:55:28 -07:00
Michael Goderbauer
7984f6e043
Implicit a11y scrolling for iOS (and caching in Viewports) (#17021) 2018-05-04 10:48:06 -07:00
Chris Bracken
322eb81a79
Revert longPress/Tap and Gallery changes (#17269)
Revert longPress/Tap and Gallery changes
2018-05-03 16:51:45 -07:00
Jonah Williams
50bd39a913
Add longPress/Tap event to SemanticService (#16945) 2018-05-03 11:04:43 -07:00
Jonah Williams
f0c4bc30c6
Add SemanticService.tooltip method for Android tooltips (#16978) 2018-04-27 20:02:11 -07:00
Yegor
d354096299
a11y traversal: sort locally; use new sorting algorithm (#16253)
New a11y traversal:

- sort direct sibling SemanticsNodes only
- use new sorting algorithm
- implement RTL
- test semantics in traversal order by default
- add AppBar traversal test
- breaking: remove nextNodeId/previousNodeId from the framework
- breaking: remove DebugSemanticsDumpOrder.geometricOrder
2018-04-23 14:23:49 -07:00
Michael Goderbauer
2eb290e718
Wire up SemanticsFlag.isHidden (#16772) 2018-04-20 17:10:40 -07:00
Jonah Williams
034a663d33
Semantics object support for edge triggered semantics (#16081)
Semantics object support for edge triggered semantics
2018-04-19 17:59:19 -07:00
Ian Hickson
aba0379dcc
Clean up the existing Navigator API. (#15718)
This is not a grand refactor yet, it's just cleaning up what we have
already, so that people who keep using this API (e.g. dialogs) have
something coherent to deal with.

The major changes are that Navigator and NavigatorState have the same
API now, that most of the examples use `<void>` instead of `<Null>`,
that the navigator observer can see replaces, and that the `settings`
is moved from ModalRoute to Route. I also cleaned up some of the API
documentation.
2018-03-22 13:21:07 -07:00
Alexandre Ardhuin
cc1cf9e12a
apply upcomming lint avoid_renaming_method_parameters (#15526) 2018-03-20 12:53:41 +01:00
Michael Goderbauer
619ebd67a9
Support password fields for a11y (#15497)
* Support password fields for a11y

* rename to obscured

* Roll engine to c3ab0c9143029f0267a05b99effbfbd280a4901b
2018-03-20 00:26:10 -07:00
Yegor
9c49255f3e
a11y: remove SemanticsSortOrder; sort locally only; semanticsOwner post-test check (#15537)
* a11y: remove SemanticsSortOrder; sort locally only; semanticsOwner post-test check

* update accessibility test framework

- default nextNodeId/previousNodeId to -1
- stop treating null as opt-out from value testing
- add `id`, `TestSemantics.root`, and `tags` to the suggested code in the TestSemantics failure message
- fix a small bug with raw string escaping
- update all tests accordingly

* fix sortKey doc

* prefer const over final
2018-03-18 22:18:52 -07:00
Michael Goderbauer
3a40d0ee4e
Support SemanticsFlag for Header (#15255) 2018-03-09 13:32:01 -08:00
Michael Goderbauer
f002839d44
Better print-out of semantics tree (#15302) 2018-03-08 19:14:43 -08:00
Josh Soref
c5a5945e92 Spelling (#15229)
* spelling: accommodate

* spelling: allotted

* spelling: anonymous

* spelling: artificial

* spelling: associated

* spelling: asset

* spelling: button

* spelling: canvas

* spelling: compatibility

* spelling: coverage

* spelling: condition

* spelling: decoration

* spelling: deferring

* spelling: diameter

* spelling: direction

* spelling: displacement

* spelling: dropdown

* spelling: needing

* spelling: environment

* spelling: exited

* spelling: expansion

* spelling: explore

* spelling: families

* spelling: horizontal

* spelling: increment

* spelling: indices

* spelling: internationalization

* spelling: labrador

* spelling: localizations

* spelling: midflight

* spelling: milliseconds

* spelling: minimum

* spelling: multiple

* spelling: multiplication

* spelling: navigator

* spelling: overridden

* spelling: package

* spelling: performance

* spelling: platform

* spelling: porsche

* spelling: position

* spelling: preceded

* spelling: precede

* spelling: precedence

* spelling: print

* spelling: property

* spelling: readily

* spelling: reproducibility

* spelling: rounded

* spelling: scroll

* spelling: separate

* spelling: separator

* spelling: services

* spelling: specific

* spelling: specify

* spelling: synchronously

* spelling: through

* spelling: timeout

* spelling: triangle

* spelling: trivial

* spelling: unusual

* spelling: then

* spelling: vertically

* spelling: visible

* spelling: visited

* spelling: voice
2018-03-06 21:36:03 -08:00
Yegor
e9c982c39f
[semantics]: minor docs & style clean-up (#15181)
* [semantics]: minor docs & style clean-up

* remove a
2018-03-05 17:01:42 -08:00
Ian Hickson
10393a12fa
Add some more documentation. (#14717) 2018-02-15 14:06:25 -08:00
Todd Volkert
8a65872ef9
Re-apply "Send nextId in addition to previousId for traversal order" (#14694)
Re-apply "Send nextId in addition to previousId for traversal order (#14676)"
2018-02-13 23:32:28 -08:00
Todd Volkert
e9d7bf8ce1
Revert "Send nextId in addition to previousId for traversal order" (#14691) 2018-02-13 21:50:44 -08:00
Michael Goderbauer
58689c796c
Send nextId in addition to previousId for traversal order (#14676) 2018-02-13 17:14:04 -08:00
Greg Spencer
7be0bd1ce9
Move geometric sort for semantics to the framework side. (#14539)
This adds geometric sort ordering back in for semantics nodes that don't have a sort order defined.

With this change, widgets that either have no sort order, or have an equivalent sort order, will be compared geometrically. The comparison is between the two starting corners, so it is TextDirection-aware: parent nodes that are set to have LTR text will compare upper left corners of their children, and upper right when set to RTL.

Also fixed a bug in the Transform widget that didn't mark modified nodes as needing a semantics update.
2018-02-12 20:53:32 -08:00