59 Commits

Author SHA1 Message Date
Alexandre Ardhuin
4f9b6cf017
enable lint prefer_final_in_for_each (#47724) 2020-01-07 16:32:04 +01:00
Ian Hickson
449f4a6673
License update (#45373)
* Update project.pbxproj files to say Flutter rather than Chromium

Also, the templates now have an empty organization so that we don't cause people to give their apps a Flutter copyright.

* Update the copyright notice checker to require a standard notice on all files

* Update copyrights on Dart files. (This was a mechanical commit.)

* Fix weird license headers on Dart files that deviate from our conventions; relicense Shrine.

Some were already marked "The Flutter Authors", not clear why. Their
dates have been normalized. Some were missing the blank line after the
license. Some were randomly different in trivial ways for no apparent
reason (e.g. missing the trailing period).

* Clean up the copyrights in non-Dart files. (Manual edits.)

Also, make sure templates don't have copyrights.

* Fix some more ORGANIZATIONNAMEs
2019-11-27 15:04:02 -08:00
Greg Spencer
89d6c8d90b
Enables setting of semantics focused and focusable attributes within Focus widgets. (#41814)
This adds a Semantics node to the Focus and FocusScope widgets, setting the focused and focusable attributes so that the accessibility subsystem can be told when a control has the input focus.

Includes an engine roll to flutter/engine@77252d2, and the following 8 engine changes:

flutter/engine@77252d2 Greg Spencer Add missing focusable testing info (flutter/engine#13013)
flutter/engine@0e42a29 skia-flutter-.. Roll src/third_party/skia 54548626a977..e27a503a0a21 (1 commits) (flutter/engine#13024)
flutter/engine@6b56ed7 gaaclarke Refactor: FlutterDartProject (flutter/engine#13006)
flutter/engine@393480c skia-flutter-.. Roll src/third_party/skia 77dde599c98a..54548626a977 (1 commits) (flutter/engine#13023)
flutter/engine@080b89d skia-flutter-.. Roll src/third_party/skia 2b1a25a4d324..77dde599c98a (1 commits) (flutter/engine#13021)
flutter/engine@90b0f30 Ben Konyi Roll src/third_party/dart f4a72bfc64..bb04f145b2 (18 commits) (flutter/engine#13020)
flutter/engine@049fb89 skia-flutter-.. Roll fuchsia/sdk/core/linux-amd64 from q_uYX... to cknsi... (flutter/engine#13019)
flutter/engine@6925b2a skia-flutter-.. Roll fuchsia/sdk/core/mac-amd64 from wuAtw... to u0JpE... (flutter/engine#13018)

Related Issues
Addresses #40101

Landing on red in order to fix the build: it's red because of the needed engine roll.
2019-10-09 14:45:42 -07:00
Kate Lovett
1ec44a0c36
Incorporating Link Semantics (#41327) 2019-10-08 18:16:11 -07:00
Alexandre Ardhuin
f0553ba58e
Missing trailing commas (#41473)
* add missing trailing commas

* add more missing trailing commas

* add more and more missing trailing commas
2019-09-30 18:48:23 +02:00
Yegor
ea32385162
Fix some tests now that the isMultiline flag is added to values (#37328) 2019-08-01 07:33:20 -07:00
Mouad Debbar
9c9b71a0fb
Add multi-line flag to semantics (#36297) 2019-07-18 10:36:22 -07:00
Dan Field
3eb40925e5
Always test semantics (#35110)
Default `semanticsEnabled` to true for `testWidgets` and fix associated bugs
2019-06-28 12:40:23 -07:00
chunhtai
c8c20fbc1f
add read only semantics flag (#34683) 2019-06-19 14:41:44 -07:00
Jonah Williams
9d724d4c44
Compatibility pass on flutter/widgets tests for JavaScript compilation. (8) (#33377) 2019-06-11 14:51:03 -07:00
chunhtai
3f92640521
Visual selection is not adjusted when changing text selection with TalkBack (#32832) 2019-05-16 14:41:39 -07:00
Alexandre Ardhuin
a0d1f93b07
fix block formatting (#29051) 2019-03-09 09:03:11 +01:00
Alexandre Ardhuin
440ce8fde6
Fix indentations of statements in BlockFunctionBody (#28933)
* fix indentof statements in BlockFunctionBody

* fix indentof statements in BlockFunctionBody in tests
2019-03-07 21:09:28 +01:00
Alexandre Ardhuin
387f885481
Add missing trailing commas (#28673)
* add trailing commas on list/map/parameters

* add trailing commas on Invocation with nb of arg>1

* add commas for widget containing widgets

* add trailing commas if instantiation contains trailing comma

* revert bad change
2019-03-01 08:17:55 +01:00
Jonah Williams
cdf1cec902
add ability to match child semantics data (#22001) 2018-10-05 17:44:26 -07:00
Alexandre Ardhuin
f62afdcf57
add missing type parameter on methods (#22096) 2018-10-01 21:29:08 +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
b32c77a012
Use scrollPhysics.allowImplicitScrolling to configure scrollable semantics (#20210) 2018-08-07 17:09:14 -07:00
liyuqian
57d8930d5b
Roll engine to 7f083e54fe75 (#20310)
* Roll engine to 7f083e54fe75

7f083e54f Don't implicitly fall through in switch statement (flutter/engine#5964)
c7ce6dd69 Apply translation to accessibility tree when in landscape (flutter/engine#5950)
aef94b73d Reland "Updated background execution implementation for Android" (flutter/engine#5954)
3421bca7a Roll src/third_party/skia 36216fb0acbc..177742435e52 (15 commits) (flutter/engine#5963)
9d1e67399 Temporarily add travis/analyze.sh back for Chrome bot (flutter/engine#5961)
4386afdaa Roll src/third_party/skia e6d0618f677c..36216fb0acbc (11 commits) (flutter/engine#5960)
7cef3da03 Roll src/third_party/skia 01d9a344b575..e6d0618f677c (1 commits) (flutter/engine#5958)
ad82cb154 Roll src/third_party/skia fdf05f4ff4e9..01d9a344b575 (1 commits) (flutter/engine#5957)
6ea410cfe Revert "Roll Dart to 17b54c76ce9b945c6f013ad08c19268409c0694a (flutter/engine#5955)" (#5956)
f20c58f65 Roll Dart to 17b54c76ce9b945c6f013ad08c19268409c0694a (flutter/engine#5955)
ed1938e99 Roll src/third_party/skia 641ac7daa81c..fdf05f4ff4e9 (3 commits) (flutter/engine#5953)
5f04e00d7 Remove travis directory (flutter/engine#5935)
5442c0a7d Revert "Updated background execution implementation for Android" (flutter/engine#5949)
a5215ce50 Add hasImplicitScrolling SemanticFlag and support in Android bridge (flutter/engine#5941)
4681351af Roll src/third_party/skia 6e487e67a3f3..641ac7daa81c (16 commits) (flutter/engine#5948)
bc885f319 Updated background execution implementation for Android
5770cbd2a Roll src/third_party/skia 12fb9cfeee07..6e487e67a3f3 (8 commits) (flutter/engine#5946)
f4464a8d9 Roll src/third_party/skia 2e77f54f46e8..12fb9cfeee07 (1 commits) (flutter/engine#5945)
c6baaaf75 Replace acquire+release thread annotation with excludes (flutter/engine#5944)
63ede2e35 Roll src/third_party/skia 59aabbcf3b0d..2e77f54f46e8 (1 commits) (flutter/engine#5943)
97aea093e Roll src/third_party/skia 71fe8baccc01..59aabbcf3b0d (1 commits) (flutter/engine#5942)
aaf4a9a24 Roll src/third_party/skia 4c3b63e289c5..71fe8baccc01 (3 commits) (flutter/engine#5940)

* Sync framework changes
2018-08-07 16:10:29 -07:00
Jonah Williams
55c7e6e3f8
Support customizing standard accessibility action hints on Android. (#19665) 2018-08-02 10:20:47 -07:00
Alexandre Ardhuin
eda03e2586
re-re-enable lint unnecessary_const (#20103) 2018-08-02 12:02:32 +02:00
Jonah Williams
7ba2a84af1
roll engine to 91ff524e63298a2d0e15c2a0d47e0a005524c51c (#20055) 2018-07-31 18:15:37 -07:00
Todd Volkert
00aac68e2d
Revert flutter/flutter#19592 (#19861)
It was causing problems rolling Flutter into Fuchsia
2018-07-27 08:44:39 -07:00
Jonah Williams
d098dc3408
Add excludeSemantics flag to semantics widget (#19650) 2018-07-25 14:33:36 -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
Jonah Williams
e154298e0b
Roll engine to 96f5f5b96c7220ffc8c4ce22ed895616a15ad3a0 (#19615) 2018-07-21 00:45:16 -07:00
Ian Hickson
f630f90d6d
Revert "enable lint unnecessary_const (#19342)" (#19423)
This reverts commit cc1cf13eec6752af992d3db0265cf04cc90bfd13.
2018-07-16 13:30:27 -07:00
Alexandre Ardhuin
cc1cf13eec
enable lint unnecessary_const (#19342) 2018-07-16 21:43:48 +02:00
Jonah Williams
579d2fba99
Roll engine to c5a63d (#19288) 2018-07-13 10:35:23 -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
Jonah Williams
eb1fd78601
Roll engine to 3405e23a32af4ea3655e5d1a78955066b2573331 (#16755)
* update engine version, ignore scopesRoute and namesRoute flags until framework support is added
2018-04-19 12:35:24 -07: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
Alexandre Ardhuin
3961306bad enable lints prefer_const_declarations and prefer_const_literals_to_create_immutables (#14848) 2018-03-09 14:37:06 -08:00
Michael Goderbauer
3a40d0ee4e
Support SemanticsFlag for Header (#15255) 2018-03-09 13:32:01 -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
Greg Spencer
bfc6833459
Swap nextNodeId for previousNodeId, since setTraversalBefore is broken. (#14607)
It seems that setTraversalBefore doesn't work as well as setTraversalAfter for some reason, although I'm using them the same way. Some apps would lock up TalkBack when traversing if setTraversalBefore was set, but not with the equivalent setTraversalAfter.

It's not entirely clear why this is, but I'm going with this to at least get it fixed for apps we know about.

Fixes #14600
2018-02-12 14:10:39 -08:00
Michael Goderbauer
04d3ecb87e
Add accessibilityFocus and loseAccessibilityFocus as a11y actions (#14603) 2018-02-09 19:57:02 -08:00
Greg Spencer
14309b9311
Adds the semantic node traversal API. (#14060)
This adds an API for defining the semantic node traversal order.

It adds a sortOrder argument to the Semantics widget, which is a class that can define a list of sort keys to sort on. The keys are sorted globally so that an order that doesn't have to do with the current widget hierarchy may be defined.

It also adds a shortcut sortKey argument to the Semantics widget that simply sets the sortOrder to just contain that key.

The platform side (flutter/engine#4540) gets an additional member in the SemanticsData object that is an integer describing where in the overall order each semantics node belongs. There is an associated engine-side change that takes this integer and uses it to order widgets for the platform's accessibility services.
2018-02-06 13:24:16 -08:00
Michael Goderbauer
c9215e6be6
Wiring for semantic actions copy, cut, paste (#14295)
* Roll engine to 6921873c71e700235c0f68f0359be2332f93c8bc
2018-01-26 15:44:34 -08:00
Michael Goderbauer
671c1101a4
Change text selection (or cursor position) via a11y (#14275)
Roll engine to 7c34dfafc9acece1a9438f206bfbb0a9bedba3bf
2018-01-26 10:44:41 -08:00
Michael Goderbauer
d04c906e0b
Add arguments to SemanticsActions; implement extend selection for a11y (#13490)
**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.
2017-12-12 16:59:35 -08:00
Michael Goderbauer
52d06b8213 a11y cursor movement (#13405) 2017-12-07 19:06:16 -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