1068 Commits

Author SHA1 Message Date
Ian Hickson
824042f9b2
Catch cases in tests where people try to tap on widgets that aren't reachable. (#74798) 2021-02-03 16:11:02 -08:00
Anas35
091a74dab6
removed new keyword (#75049) 2021-02-01 09:59:53 -08:00
Yegor
791edc230d
always pass filterQuality specified in the Image widget to canvas (#74854) 2021-01-28 21:54:03 -08:00
Ian Hickson
37a0189773
Don't leak exceptions thrown by message channels (#74446) 2021-01-27 11:19:04 -08:00
Jia Hao
8a5ace25a5
Improve performance of Widget Tests (#70730) 2021-01-12 17:29:03 -08:00
creativecreatorormaybenot
508c4b4d29
Correct flutter_test flutter_test_configuration.dart documentation (#70862) 2020-11-25 13:38:05 -08:00
Greg Spencer
2d836a99b6
Remove some unnecessary casts, now that changes have rolled from the engine (#70491) 2020-11-13 16:28:06 -08:00
Michael Goderbauer
cca1215939
Properly initialize RestorationManager in the TestBinding (#70398) 2020-11-12 13:59:05 -08:00
Greg Spencer
86f9ab511e
Revert usages of the binding's platformDispatcher to use window instead (#70319)
This reverts usages of the binding's platformDispatcher to use window again temporarily, because there isn't a TestPlatformDispatcher yet, and so some tests were failing because they mocked the TestWindow to return certain things (locales) that were returning the real values instead of the test values.

Once I've created a TestPlatformDispatcher to allow fake data to be passed to it, we can go back to using the platformDispatcher in all of these places
2020-11-12 11:17:00 -08:00
Greg Spencer
0937207f5b
Fix Platform channel errors in web tests (#70252) 2020-11-12 10:24:07 -08:00
Greg Spencer
bbc0161669
Remove references to Window, and switch usages to PlatformDispatcher or SingletonFlutterWindow (#69617)
* Remove references to dart:ui.Window, and point usages to PlatformDispatcher or SingletonFlutterWindow, as appropriate

* remove new test platform dispatchers

* Amend documentation
2020-11-09 15:26:29 -08:00
Greg Spencer
88809aa247
Standardize dartdoc macro names (#69445) 2020-11-02 13:28:05 -08:00
Alexander Brusher
099ae9b417
Re-enables tests previously failing due to new semantics flag. (#66916) 2020-10-22 15:32:03 -07:00
puelo
24d3999783
Generate RawKeyEvents for iOS 13.4+ (#65193)
* Added RawKeyEvent support for iOS

* Removed unused remnant

* added some missing keys

* Removed trailing whitespaces

* commit for build

* Added mapping names

* Made iOS keycodes generatable and collectable

* Fixed naming and formatting issues

* fixed raw_keyboard_test
2020-10-22 13:33:51 -07:00
Michael Goderbauer
42f3709a5a
Sound null safety for framework and flutter_test (#68642) 2020-10-21 10:09:11 -07:00
Greg Spencer
8c03ff8c1d
Mark keys that match a shortcut, but have no action defined as "not handled". (#67359)
- - When I added notification of key events before processing them as text, it made it so that shortcut key bindings like the spacebar would prevent spaces from being inserted into text fields, which is obviously not desirable (and so that change was reverted). At the same time, we do want to make it possible to override key events so that they can do things like intercept a tab key or arrow keys that change the focus.

This PR changes the behavior of the Shortcuts widget so that if it has a shortcut defined, but no action is bound to the intent, then instead of responding that the key is "handled", it responds as if nothing handled it. This allows the engine to continue to process the key as text entry.

This PR includes:

- Modification of the callback type for key handlers to return a KeyEventResult instead of a bool, so that we can return more information (i.e. the extra state of "stop propagation").
- Modification of the ActionDispatcher.invokeAction contract to require that Action.isEnabled return true before calling it. It will now assert if the action isn't enabled when invokeAction is called. This is to allow optimization of the number of calls to isEnabled, since the shortcuts widget now wants to know if the action was enabled before deciding to either handle the key or to return ignored.
- Modification to ShortcutManager.handleKeypress to return KeyEventResult.ignored for keys which don't have an enabled action associated with them.
- Adds an attribute to DoNothingAction that allows it to mark a key as not handled, even though it does have an action associated with it. This will allow disabling of a shortcut for a subtree.
2020-10-19 11:26:50 -07:00
Xavier Chrétien
f26fbb6bdd
Set slider semantics flag for sliders (#68019) 2020-10-19 08:12:03 -07:00
Dan Field
12f54e17f4
reland List queue search optimization (#68214)
* Revert "Revert "Improve performance of collectAllElements (#68065)" (#68207)"

This reverts commit 46ff57d6f19360da1da5fbdf0db70c49a716734a.

* use fewer elements for benchmark
2020-10-15 13:46:50 -07:00
Jonah Williams
46ff57d6f1
Revert "Improve performance of collectAllElements (#68065)" (#68207)
This reverts commit 8ba5732c4c874f08d853f30b10f1912efc992cc3.
2020-10-15 08:04:59 -07:00
Dan Field
8ba5732c4c
Improve performance of collectAllElements (#68065) 2020-10-14 21:32:04 -07:00
Jonah Williams
bdfb07dffd
[flutter_test] export fake from flutter_test (#68032)
Fake has been moved from mockito to test to facilitate NNBD, re-export this from flutter_test
2020-10-13 11:38:00 -07:00
Alexandre Ardhuin
4acc790252
enable lint cast_nullable_to_non_nullable (#67629) 2020-10-08 21:05:43 +02:00
Alexandre Ardhuin
0d8d4f77aa
unnecessary null comparison (#67525) 2020-10-08 09:26:30 +02:00
Alexandre Ardhuin
f551178408
migrate material to nullsafety (#67166)
* migrate material to nullsafety

* address review comments

* address review comments

* fix build
2020-10-06 11:36:50 +02:00
Michael Goderbauer
8998167d0f
Make FlutterErrorDetails.exception non-nullable as documented (#67364) 2020-10-05 18:07:02 -07:00
Ming Lyu (CareF)
277a72e3fe
move resampler to handlePointerEvent and fix complex_layout_android__scroll_smoothness with PointerEvent (#66745) 2020-10-05 17:17:03 -07:00
Tong Mu
2cdf2f0059
Treat hover events as normal pointer events, and bring them back to Listener (#63834) 2020-10-05 12:12:04 -07:00
Dan Field
2cdec25877
Reland dispose images when done (#67100) (#67177)
* Reland dispose images when done (#67100)

Changes since last time:

- Test for CanvasKit image rendering
  (https://github.com/flutter/flutter/pull/67176)
- Fix CanvasKit dispose impl
  (https://github.com/flutter/engine/pull/21555)
- Update internal google3 customer with a problematic ImageStream
  Listener impl (cl/335091311, cl/335459002)

This reverts commit 473358d93dd9522970afa82512a4d05685345b3b.
2020-10-05 12:03:27 -07:00
Dan Field
473358d93d
Revert dispose images when done (#67100)
* Revert "docs for image disposal (#67066)"

This reverts commit bcb2ac5a55b90b2ccfd50de4684c0cbb8aca9290.

* Revert "Dispose of images after using them (#66688)"

This reverts commit a7954691dad4788f985cf17e81ce6c474a72e84e.
2020-10-01 16:53:50 -07:00
Kate Lovett
d1178ae73b
Fix local gold output for flutter/flutter (#66139) 2020-10-01 11:17:03 -07:00
Dan Field
a7954691da
Dispose of images after using them (#66688)
* Dispose of images after using them
Adds ImageInfo.clone, ImageInfo.dispose, and ImageInfo.isCloneOf.
Makes all stateful holders of ui.Image objects properly clone and dispose of them.
Behavior change for ImageStreamCompleter: Removing the last listener after registering at least one listener results in the object being disposed, and new listeners cannot be added, unless a keepAlive handle is created.
Makes all non-stateful holders of ui.Image (i.e. paintImage and RawImage) assert that whoever gave the image to them has not disposed it on them.
2020-10-01 09:48:54 -07:00
Michael Goderbauer
19e07d2beb
Migrate flutter_test (#66663) 2020-09-30 17:03:40 -07:00
Mehmet Fidanboylu
95d72bf9d8
Clarify the docs on what scrollUntilVisible does (#65817) 2020-09-30 14:58:13 -07:00
Ming Lyu (CareF)
3c321ac80f
cleanup (#66743) 2020-09-29 15:32:03 -07:00
Alexandre Ardhuin
c2e43403af
apply upcoming lint cast_nullable_to_non_nullable (#66455)
* apply upcoming lint cast_nullable_to_non_nullable

* make RenderObjectElement.renderObject non-nullable
2020-09-27 21:29:42 +02:00
Dan Field
7eb8447485
Allow new methods to be added to ui.Image for tests (#65876)
Remove fake image implementations, add createTestImage to flutter_test
2020-09-22 11:55:39 -07:00
Mouad Debbar
5024e1ea02
[web] Inform the engine when read-only flag is flipped (#65499) 2020-09-17 15:52:04 -07:00
Christian Mürtz
1415078828
Find text containing in tests (#65072) 2020-09-16 16:32:03 -07:00
Michael R Fairhurst
7f3c9b6bda
Remove unused 'dart:async' imports. (#65568) 2020-09-16 14:14:06 -07:00
Tong Mu
a48e14308e
Expose GestureBinding.handlePointerEvent, replacing dispatchEvent as the preferred way to dispatch events (#64846) 2020-09-15 22:17:06 -07:00
Greg Spencer
199a7c1964
Fix the character field of the RawKeyEvent to hold correct data on non-Android platforms. (#65667)
This fixes a problem where the character field of the RawKeyEvent was not being set at all for non-Android platforms.

I also updated the key maps, and corrected a problem with the Windows key map where the backquote character wasn't correctly mapped.
2020-09-15 13:02:16 -07:00
Yuqian Li
e1eddb401d
Revert the revert (#65602) 2020-09-11 16:20:03 -07:00
Ming Lyu (CareF)
28de49e358
Revert "Reland #61998 and update complex_layout ios files (#64885)" (#64990)
This reverts commit df83398687b63762c742e35fbb608d16fee50a7a.
2020-08-31 18:47:08 -07:00
Ming Lyu (CareF)
df83398687
Reland #61998 and update complex_layout ios files (#64885) 2020-08-31 17:23:06 -07:00
Shi-Hao Hong
34541c3073
Revert "A benchmark test case for measuring scroll smoothness (#61998)" (#64883)
This reverts commit 12b7355da11f4a1401492b16677f6e90ce0118b8.
2020-08-30 18:42:10 +08:00
Ming Lyu (CareF)
12b7355da1
A benchmark test case for measuring scroll smoothness (#61998) 2020-08-29 04:28:03 -07:00
Ian Hickson
8a6a76a334
migrate rendering to nullsafety (#64621) 2020-08-27 16:38:10 -07:00
Jonah Williams
41e553bbfc
[flutter_tools] migrate flutter_goldens, flutter_goldens client to null-safety (#64201) 2020-08-24 15:31:05 -07:00
Greg Spencer
041a3eaa84
Standardize the nullability of arguments to raw key data constructors. (#63523)
This standardizes the handling of nullability for the LogicalKeyboardKey.keyLabel and RawKeyEventData.keyLabel accessors so that they are non-nullable, but can be empty.

Before this change, the keyLabel could be either null or an empty string to indicate that there wasn't a label, which makes it harder to test for, since both need to be checked for. Since an empty string is sufficient, there is no need for it to be nullable.

Also, in raw_keyboard.dart, the web and Windows implementations wouldn't accept null values for parameters in the Map coming from the message, but tests were supplying null for some of them. This makes web and Windows creation of events match the other platforms, and makes the migration of tests to non-nullability easier.
2020-08-19 15:03:17 -07:00
Greg Spencer
d1eff0b413
Hook up soft keyboard "next" and "previous" buttons so that they move the focus by default (#63592)
Focus will be moved automatically if onEditingComplete is not specified, but must
by moved manually if onEditingComplete is specified.
2020-08-18 16:46:58 -07:00