Commit Graph

560 Commits

Author SHA1 Message Date
chunhtai
d35671c6d1
Fix FlutterError.onError in debug mode (#53843)
* Fix FlutterError.onError in debug mode

* update

* fix comments

* add license header

* fix analyzer

* update

* another attempt

* fix test

* fix comment
2020-04-22 17:17:42 -07:00
Jacob MacDonald
6399be62d2
remove flutter_test quiver dep, use fake_async and clock instead (#54125)
## Description

Removes the `flutter_test` dependency on `quiver`, instead using the more targeted `clock` and `fake_async` packages.

## Related Issues

https://github.com/flutter/flutter/issues/53908

## Tests

No changes to tests

## Checklist

Before you create this PR confirm that it meets all requirements listed below by checking the relevant checkboxes (`[x]`). This will ensure a smooth and quick review process.

- [x] I read the [Contributor Guide] and followed the process outlined there for submitting PRs.
- [x] I signed the [CLA].
- [x] I read and followed the [Flutter Style Guide], including [Features we expect every widget to implement].
- [x] I read the [Tree Hygiene] wiki page, which explains my responsibilities.
- [x] I updated/added relevant documentation (doc comments with `///`).
- [x] All existing and new tests are passing.
- [x] The analyzer (`flutter analyze --flutter-repo`) does not report any problems on my PR.
- [x] I am willing to follow-up on review comments in a timely manner.

## Breaking Change

Did any tests fail when you ran them? Please read [Handling breaking changes].

- [ ] No, no existing tests failed, so this is *not* a breaking change.
- [x] Yes, this is a breaking change. *If not, delete the remainder of this section.*
   - [x] I wrote a design doc: https://docs.google.com/document/d/1EkkLbECNBwHgddBQAZqEy7iQLTIxR1rgChKzxcLwhio/edit
   - [x] I got input from the developer relations team, specifically from: @RedBrogdon
   - [x] I wrote a migration guide:  https://github.com/flutter/website/pull/3932

<!-- Links -->
[issue database]: https://github.com/flutter/flutter/issues
[Contributor Guide]: https://github.com/flutter/flutter/wiki/Tree-hygiene#overview
[Test Coverage]: https://github.com/flutter/flutter/wiki/Test-coverage-for-package%3Aflutter
[Flutter Style Guide]: https://github.com/flutter/flutter/wiki/Style-guide-for-Flutter-repo
[Features we expect every widget to implement]: https://github.com/flutter/flutter/wiki/Style-guide-for-Flutter-repo#features-we-expect-every-widget-to-implement
[CLA]: https://cla.developers.google.com/
[Tree Hygiene]: https://github.com/flutter/flutter/wiki/Tree-hygiene
[Handling breaking changes]: https://github.com/flutter/flutter/wiki/Tree-hygiene#handling-breaking-changes
2020-04-15 12:10:26 -07:00
Greg Spencer
c7b10df765
Fix initial value for highlight mode on desktop platforms. (#54306)
This fixes the initial value of FocusManager.highlightMode so that it gets initialized correctly on desktop platforms.

My recent update of this code (#52990) broke things so that the highlight mode never changed from the initial default of touch, which meant that focus highlights didn't show unless you set FocusManager.highlightStrategy to something (even automatic, the default: setting it caused the mode to be updated).
2020-04-10 13:23:55 -07:00
Jacob MacDonald
efdce3cf72
drop image package dependency for goldens (#54144) 2020-04-09 11:21:23 -07:00
Francisco Magdaleno
a0f7f6ca6d
[windows] Adds support for keyboard mapping. (#54227) 2020-04-08 10:07:02 -07:00
Michael Goderbauer
d47ad7ec0d
Reverse dependency between services and scheduler (#54212) 2020-04-08 09:12:03 -07:00
cjng96
d62c7ecce5
Ignore key events on edit control on web platform (#52656) (#52661) 2020-04-01 00:31:03 -07:00
adityapstar
a57feac62e
fixed typo in HttpClient failure message (#53211) 2020-03-25 15:26:01 -07:00
Yegor
5ea13b8493
fix KeySet.hashCode; enable multiple web tests (#52861)
fix KeySet.hashCode; enable multiple web tests
2020-03-20 08:49:19 -07:00
Chris Yang
b05210c707
Move ios screenshot test to flutter gold. (#52553) 2020-03-19 16:27:41 -07:00
Greg Spencer
c5dd3ec47a
Fix stuck keys when shift is released before the letter. (#51095)
This fixes a problem where if you press "Shift" and then "A", then release "Shift" and then "a", then the "A" key will be "stuck" on because the logical key for the key down message is different (capital "A") from the logical key for the key up message (lowercase "a").

This PR changes the pressed keys logic so that it uses the physical key to add/remove keys from the list of pressed keys, but keeps the associated logical key.

This does mean that after the "Shift" key goes up, the pressed keys contains a capital "A" and it doesn't switch to be a lowercase "a", but there isn't currently any mechanism we can use to do that remapping. This is far less surprising than the current behavior, but is still not quite correct.

I fixed the event simulation code to take a physicalKey so that it could be matched with the logical key, but the event simulation code isn't up to the task, since it can only simulate keys that appear in the key maps. The new platform key event design should fix that (added TODOs).
2020-02-21 14:13:38 -08:00
Albertus Angga Raharja
aad941e3fa
Avoid using FlutterError.fromParts when possible (#43696)
This PR is a follow up of https://github.com/flutter/flutter/pull/42640
Some changes of that PR includes redundant changes using FlutterError.fromParts constructor even though it's not necessary.

Some minor changes are:

- Remove one unnecessary todo
- Fix indent consistencies
2020-02-20 07:51:53 -08:00
Alexandre Ardhuin
f15c887c63
change quote to avoid escapes (#50368) 2020-02-11 20:58:27 +01:00
Emmanuel Garcia
8c398a8ddd
Reland: Skia gold driver test (#50160) 2020-02-06 17:14:50 -08:00
Emmanuel Garcia
9b3e1639db
Revert "Reland: Skia gold driver test (#49905)" (#50127)
This reverts commit e03f439145.
2020-02-04 13:28:55 -08:00
Emmanuel Garcia
e03f439145
Reland: Skia gold driver test (#49905) 2020-01-31 14:50:50 -08:00
Emmanuel Garcia
1eb5bb653c
Revert "Use skia golden files in driver test (#49750)" (#49900) 2020-01-31 12:14:08 -08:00
Emmanuel Garcia
a50743f658
Use skia golden files in driver test (#49750) 2020-01-31 11:05:29 -08:00
Alexandre Ardhuin
b5f328e37e
remove unnecessary string interpolations (#49622) 2020-01-31 18:30:21 +01:00
Dan Field
b2a27c109c
Be clearer about when and why we override HttpClient in tests (#49844) 2020-01-31 09:22:30 -08:00
ZichangG
0be9127dfd
add preserveHeaderCase for classes extends HttpHeaders (#49766) 2020-01-30 11:43:02 -08:00
Dan Field
fabeb2a16f
Revert string interp (#49602) 2020-01-28 07:56:51 -08:00
Dan Field
8b2993337a
revert #48985 (#49572) 2020-01-27 14:36:02 -08:00
Alexandre Ardhuin
92cbaa3efe remove unnecessary string interpolations (#49352) 2020-01-23 20:43:01 -08:00
Tianguang
e2aa9e13ce Achieve Color Contrast Accessibility for Menu Demo (#49099) 2020-01-23 18:43:01 -08:00
Tong Mu
d3a835e661 Fix template syntax error in WidgetController doc (#49255) 2020-01-21 19:58:02 -08:00
Alexandre Ardhuin
3800bb7b10 fix missing spaces in adjacent strings (#49159) 2020-01-21 16:43:03 -08:00
Anthony
b67d5ec6e9 [a11y] Make sure RenderFractionalTranslation updates its semantics after the translation field is set (#48985) 2020-01-17 15:13:01 -08:00
Alexandre Ardhuin
003541499b use isA<Xxx>() matcher (#48482) 2020-01-16 12:43:03 -08:00
Greg Spencer
fabf4e3d0d Reverse the sense of the terms snippet and sample. (#48254) 2020-01-08 15:28:02 -08:00
Sam Rawlins
5005824763 Mark unused but desired private constructors as such (#46200) 2020-01-07 12:03:03 -08:00
Alexandre Ardhuin
4f9b6cf017
enable lint prefer_final_in_for_each (#47724) 2020-01-07 16:32:04 +01:00
Greg Spencer
19b9206add
Add variant testing to testWidgets (#45646)
This adds the ability to define variants of tests with different environmental values for a particular testWidgets test.

This allows you to run the same test multiple times with a different test environment. One test variant has been implemented that allows running a test with different settings of the TargetPlatform.
2019-12-20 15:00:16 -08:00
Dan Field
4ad8271bf5 Reland text state (#47464) 2019-12-19 13:43:02 -08:00
Lau Ching Jun
d51956a9ea
Revert "Call setEditingState when text changes. (#47177)" (#47397)
This reverts commit d4b49ce9fc.
2019-12-18 18:03:24 -08:00
Kate Lovett
c281369356 Fix subdirectory output (#47256) 2019-12-18 16:33:01 -08:00
Shouichi Kamiya
0764548231 s/v-sync/Vsync/g (#46660) 2019-12-17 19:43:03 -08:00
Dan Field
d4b49ce9fc
Call setEditingState when text changes. (#47177) 2019-12-17 14:03:04 -08:00
Lau Ching Jun
535526b03c
Enable web for some of the golden tests (#46820)
* Make golden test timeout longer, some tests are flaky if the timeout is too short

* Enable some golden tests for web
2019-12-12 10:36:41 -08:00
Tong Mu
a4f7a0dfb9
Revert changes to TestPointer; MouseTracker no longer relies on Add events (#46285)
* Revert test pointer

* Synthesize new state
2019-12-09 15:12:11 -08:00
Lau Ching Jun
c2eb0681ce
Implement screenshot test for flutter web. (#45530) 2019-12-06 14:25:39 -08:00
Michael Goderbauer
1ac17c14fc Re-land "Add option to delay rendering the first frame (#45135)" (#45941) 2019-12-03 19:48:01 -08:00
Kate Lovett
cd052a56cb
Revert "Re-land "Add option to delay rendering the first frame (#45135)" (#45588)" (#45939)
This reverts commit c59151b1cd.
2019-12-02 15:08:35 -08:00
Michael Goderbauer
c59151b1cd Re-land "Add option to delay rendering the first frame (#45135)" (#45588) 2019-12-02 13:33:45 -08:00
Tong Mu
afb8f38211
Improve MouseTracker lifecycle: Move checks to post-frame (#44631)
This PR rewrites MouseTracker's lifecycle, so that mouse callbacks are all triggered in post frame, instead of the current one where some are triggered during the build phase. This PR also changes the onExit callback to MouseRegion, RenderMouseRegion, and MouseTrackerAnnotation, so that it is no longer triggered on dispose.
2019-12-02 13:00:48 -08: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
a60bf8e23a
Spell check of Flutter docs (#45200)
No code changes, just comments: I spell-checked all the comments in the repo.
2019-11-22 08:43:55 -08:00
chunhtai
314eb3bae3
Moving pointer event sanitizing to engine. (#44217) 2019-11-20 13:04:29 -08:00
Alexandre Ardhuin
4bf03c6cf8
implicit-casts:false in flutter_test (#44996) 2019-11-19 08:10:24 +01:00
Jonah Williams
e77c24ef91
Update package test (#44882) 2019-11-14 09:31:36 -08:00
LongCatIsLooong
62db22d152
CupertinoDynamicColor improvements (#44317) 2019-11-07 13:14:08 -08:00
Greg Spencer
028ed7122a
Synchronize modifier keys in RawKeyboard.keysPressed with modifier flags on events. (#43948)
Currently, we listen to keyboard events to find out which keys should be represented in RawKeyboard.instance.keysPressed, but that's not sufficient to represent the physical state of the keys, since modifier keys could have been pressed when the overall app did not have keyboard focus (especially on desktop platforms).

This PR synchronizes the list of modifier keys in keysPressed with the modifier key flags that are present in the raw key event so that they can be relied upon to represent the current state of the keyboard. When synchronizing these states, we don't send any new key events, since they didn't happen when the app had keyboard focus, but if you ask "is this key down", we'll give the right answer
2019-11-06 14:52:55 -08:00
Nurhan Turgut
97cf355b9d
Adding handling of TextInputClient.onConnectionClosed messages handli… (#43466)
* Adding handling of TextInputClient.onConnectionClosed messages handling to Framework

* Adding more test cases for closing connection to editable_text_test

* fixing analyze error.

* Fixing analyze error in the test file

* Fixing comments on the new method

* Adding more closing connection examples.

* Indentation change

* Remove auto-add white space

* Changing the oncloseconnection behaviour to stop editing. Updating the tests

* Addressing PR comments. Added explicit log for method channnels to the tests. Added comments to the interfaces.

* add more documentation
2019-11-04 13:35:18 -08:00
liyuqian
40670c09dc
Allow multiple TimingsCallbacks (#43676)
This fixes https://github.com/flutter/flutter/issues/39277

The following tests cover this change:
- packages/flutter/test/foundation/service_extensions_test.dart
- packages/flutter/test/scheduler/scheduler_test.dart
2019-10-30 19:02:13 -07:00
LongCatIsLooong
4ac2daf337
CupertinoTheme & CupertinoTextTheme dark mode updates (#41859) 2019-10-28 15:50:08 -07:00
Albertus Angga Raharja
b31ca1aaca
Add more structure to errors (continuation of #34684) (#42640)
* Add structured errors in Animations, TabView, ChangeNotifier

* Add structured error on MaterialPageRoute, BoxBorder, DecorationImagePainter, TextSpan

* Add structured errors in Debug

* Fix test errors

* Add structured errors in Scaffold and Stepper

* Add structured errors in part of Rendering Layer

* Fix failing test due to FloatingPoint precision

* Fix failing tests due to precision error and not using final

* Fix failing test due to floating precision error with RegEx instead

* Add structured error in CustomLayout and increase test coverage

* Add structured error & its test in ListBody

* Add structured error in ProxyBox and increase test coverage

* Add structured error message in Viewport

* Fix styles and add more assertions on ErrorHint and DiagnosticProperty

* Add structured error in scheduler/binding and scheduler/ticker

Signed-off-by: Albertus Angga Raharja <albertusangga@google.com>

* Add structured error in AssetBundle and TextInput

Signed-off-by: Albertus Angga Raharja <albertusangga@google.com>

* Add structured errors in several widgets #1

Signed-off-by: Albertus Angga Raharja <albertusangga@google.com>

* Remove unused import

Signed-off-by: Albertus Angga Raharja <albertusangga@google.com>

* Add assertions on hint messages

Signed-off-by: Albertus Angga Raharja <albertusangga@google.com>

* Fix catch spacing

Signed-off-by: Albertus Angga Raharja <albertusangga@google.com>

* Add structured error in several widgets part 2 and increase code coverage

Signed-off-by: Albertus Angga Raharja <albertusangga@google.com>

* Add structured error in flutter_test/widget_tester

* Fix floating precision accuracy by using RegExp

Signed-off-by: Albertus Angga Raharja <albertusangga@google.com>

* Remove todo to add tests in Scaffold showBottomSheet

Signed-off-by: Albertus Angga Raharja <albertusangga@google.com>

* Fix reviews by indenting lines and fixing the assertion orders

Signed-off-by: Albertus Angga Raharja <albertusangga@google.com>

* Fix failing tests due to renaming class

Signed-off-by: Albertus Angga Raharja <albertusangga@google.com>

* Try skipping the NetworkBundleTest

Signed-off-by: Albertus Angga Raharja <albertusangga@google.com>

* Remove leading space in material/debug error hint

Signed-off-by: Albertus Angga Raharja <albertusangga@google.com>
2019-10-28 11:00:49 -07:00
Kate Lovett
7bc02037e3
Re-land Local & Pre-Submit Support for Skia Gold (#43371) 2019-10-25 15:05:21 -07:00
Kate Lovett
3a3939a7fa
Revert "Skia Gold Support for Local & PreSubmit Testing in package:flutter (#40710)" (#43227)
This reverts commit 8df0d6556d.
2019-10-21 17:31:54 -07:00
Kate Lovett
8df0d6556d
Skia Gold Support for Local & PreSubmit Testing in package:flutter (#40710) 2019-10-21 16:45:56 -07: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
Yegor
ebfe6020b8
Enable more web tests; use blacklist to filter them out (#41922)
Add more web tests;use blacklist instead of whitelist
2019-10-07 15:05:24 -07:00
Greg Spencer
0509791663
Fix mouse hover to not schedule a frame for every mouse move. (#41014)
This fixes the mouse hover code to not schedule frames with every mouse move.

Before this, it would schedule a post frame callback, and then schedule a frame immediately, even if there was nothing that needed to be updated. Now it will schedule checks for mouse position updates synchronously, unless there's a new annotation, and skip scheduling a new frame in all cases. It has to be async in the case of a new annotation (i.e. a new MouseRegion is added), since when the annotation is added, it hasn't yet painted, and it can't hit test against the new layer until after the paint, so in that case it schedules a post frame callback, but since it's already building a frame when it does that, it doesn't need to schedule a frame.

The code also used to do mouse position checks for all mice if only one mouse changed position. I fixed this part too, so that it will only check position for the mouse that changed.
2019-09-26 13:13:42 -07:00
Mehmet Fidanboylu
c19e553d64 Allow test beds to override defaultTestTimeout (#40806) 2019-09-24 16:53:40 -07:00
Greg Spencer
0e6cb28dbe
Add fake keyboard key generation to the testing framework (#40706)
There were four or five different implementations in various tests for sendFakeKeyEvent, which roughly all did the same thing. I was going to add yet another one, and decided that it needed to be generalized and centralized. This replaces those instances with something that just takes a LogicalKeyboardKey so that it's self-documenting, and can be used with multiple platforms.

This adds two functions to widget tester: sendKeyDownEvent and sendKeyUpEvent which simulate key up/down from a physical keyboard. It also adds global functions simulateKeyDownEvent and simulateKeyUpEvent that can be called without a widget tester. All are async functions protected by the async guard.
2019-09-24 08:14:38 -07:00
Michael Goderbauer
4373a31971
Reapply "Revert "Propagate textfield character limits to semantics (#40468)" (#40767) 2019-09-18 14:55:37 -07:00
Michael Goderbauer
b4324aed59
Revert "Propagate textfield character limits to semantics (#40468)" (#40714)
This reverts commit 6ad88bd5c0.
2019-09-17 16:37:11 -07:00
Michael Goderbauer
6ad88bd5c0
Propagate textfield character limits to semantics (#40468) 2019-09-17 14:39:50 -07:00
Alexandre Ardhuin
df4bf453ab
more UI-as-code (#35516) 2019-09-17 16:23:44 +02:00
Kate Lovett
e62c68c243
Fix for broken LocalFileComparator output (#40399)
* Fixing LocalFileComparator output

* Fixing path separators for windows failures

* Windows path issues

* Testing

* ++

* ++

* Fixing base directory - windows

* Clean up
2019-09-16 13:14:46 -07:00
Jonah Williams
18ffb0fbc3
place conditions on same line (#40391) 2019-09-12 18:30:24 -07:00
Jonah Williams
8504f3ae13
Update the supported library set for Flutter for web (#39983) 2019-09-10 17:27:30 -07:00
chunhtai
57d714ebb8
fix widget built twice during warm up frame (#39079) 2019-09-06 09:46:18 -07:00
Michael Goderbauer
e2325600ea
Do not render any frames when just initializing Bindings (#39535) 2019-09-05 17:08:50 -07:00
Ian Hickson
a415c76b5b
Docs (#39198)
* Minor improvements to framework documentation.

* maybePop documentation fix

* Mark some flutter_test arguments required.

Without these set, we get a crash.

* Minor correction to ListView docs
2019-09-05 15:11:50 -07:00
liyuqian
7c0dfd5362
Revert "Replace deprecated onReportTimings w/ frameTimings (#38861)" (#39778)
This reverts commit 6ef80b447f.
2019-09-05 09:58:08 -07:00
Kate Lovett
c8af729d1c
Golden Doc Updates (#39082) 2019-09-03 08:45:51 -07:00
Jonah Williams
7bc4074ff3
use dpr and window size from binding (#39577) 2019-09-01 23:57:32 -07:00
liyuqian
6ef80b447f
Replace deprecated onReportTimings w/ frameTimings (#38861)
This is the continuation of https://github.com/flutter/engine/pull/11041 and https://github.com/flutter/flutter/pull/38574

This is not a breaking change as we're not removing `onReportTimings` API.
We're simply removing the use of it in our framework.
2019-08-28 15:25:06 -07:00
adazh
5667b78291
Added a Driver wait condition for no pending platform messages (#39196) 2019-08-27 14:26:31 -07:00
Shi-Hao Hong
3b7410476f
Add MediaQuery.systemGestureInsets to support Android Q (#37416)
* Wire Window.systemGestureInsets to MediaQuery.systemGestureInsets

* Add systemGestureInsets property to TestWindow
2019-08-22 00:34:11 -04:00
adazh
93c32c4ff6
Moved the default BinaryMessenger instance to ServicesBinding (#38464)
* Moved the default BinaryMessenger instance to ServicesBinding

This reverts commit 821602aef3.

* Added assertion in defaultBinaryMessenger. Also fixed the devicelab tests.
2019-08-21 16:47:42 -07:00
James D. Lin
b2f8d3a668
Instrument pending timers in tests (#37646)
Flutter widget tests assert if a test completes with timers still
pending.  However, it can be hard to diagnose where a pending timer
came from.  For example, a widget might consume a third-party library
that internally uses a timer.

I added a FakeAsync.pendingTimersDebugInfo getter to quiver
(https://github.com/google/quiver-dart/pull/500).  Make flutter_test
use it.

Additionally modify Flutter's debugPrintStack to take an optional
StackTrace argument instead of always printing StackTrace.current.

Fixes #4237.
2019-08-20 10:28:49 -07:00
Kaushik Iska
d2bc74aa6d
Fix analyzer issues for onReportTiming to frameTiming (#38840)
Filed: https://github.com/flutter/flutter/issues/38838
to track these usages.

This was introduced by: https://github.com/flutter/engine/pull/11041
2019-08-19 14:56:22 -07:00
Kate Lovett
6ff212b328
Comparing pixels instead of bytes with GoldenFileComparator (#38473) 2019-08-19 09:06:22 -07:00
Yegor
34c692659e
Teach render objects to reuse engine layers (#36402)
Teach Layer and its implementations, RenderObject and its implementations, and PaintingContext to reuse engine layers. The idea is that a concrete RenderObject creates a Layer and holds on to it as long as it needs it (i.e. when it is composited, and the layer type does not change). In return, each Layer object holds on to an EngineLayer and reports it to the engine via addRetained and oldLayer. This allows the Web engine to reuse DOM elements across frames. Without it, each frame drops all previously rendered HTML and regenerates it from scratch.
2019-08-16 15:27:12 -07:00
Kate Lovett
cac8fa5da0
Re-land 'Adding physicalDepth to MediaQueryData & TestWindow' (#38546) 2019-08-16 13:34:23 -07:00
Nurhan Turgut
c2e2f093ec
Navigator change backup (#38494)
* Broadcasting popRoute and pushRoute methods via SystemChannels.navigation. These messages will be used in flutter_web to detect the route

* Broadcasting popRoute and pushRoute methods via SystemChannels.navigation. These messages will be used in flutter_web to detect the route

* Reverting all unrelated formatting changes.

* Adding unit tests. Adding more comments.

* Changing string method names with constant strings.

* Fixing a constant strings.

* Fixing analyzer error.

* Fixing more white space.

* Changing the method names. Adding comments to the SystemChannels

* Comment and code name fixes

* replacing the comment with reviewer suggestion.

* addinf systemchannels.navigation mock to test bindings

* Adding a new class for sending route change notrifications. The nottifications are only sent on web. This should fix breaking android/ios

* using new class RouteNotificationMessages in navigator

* Fixing analyzer issues.

* fixing cycle dependency

* fixing github analyze error

* dartfmt two new classes. trying to fix anayze errors

* Update route_notification_messages.dart

* trying to fix white space errors
2019-08-16 13:17:45 -07:00
Michael Klimushyn
821602aef3
Revert "Moved the default BinaryMessenger instance to ServicesBinding (#37489)" (#37983)
This reverts commit 92ef2b9ce1.

This requires either runApp() or
WidgetsFlutterBinding.ensureInitialized() to have been called before
using any MethodChannels. Plugins broadly rely on MethodChannels and
right now there's no general requirements that they be constructed
within the runApp call, so the ecosystem breakages from this are broader
than originally thought. Reverting for now.
2019-08-09 16:30:30 -07:00
Kate Lovett
f3dbefd3ce
Revert "Adding physicalDepth to MediaQueryData & TestWindow (#37718)" (#37938)
This reverts commit 3a2d30813a.
2019-08-09 12:58:59 -07:00
adazh
92ef2b9ce1
Moved the default BinaryMessenger instance to ServicesBinding (#37489) 2019-08-09 10:13:40 -07:00
Jonah Williams
ba8f0bbb0d
remove references to solo flag (#37856) 2019-08-08 16:37:18 -07:00
Kate Lovett
3a2d30813a
Adding physicalDepth to MediaQueryData & TestWindow (#37718) 2019-08-07 13:52:16 -07:00
Dan Field
84fe2adedb
Nosuchmethod window (#37417) 2019-08-01 20:04:49 -07:00
Kate Lovett
616794fca7
Re-land "Part 1: Skia Gold Testing" (#36103) 2019-07-28 12:26:06 -07:00
Lau Ching Jun
677b7c15c3
Load assets during test from file system instead of manifest. (#36553) 2019-07-19 14:54:24 -07:00
Mouad Debbar
9c9b71a0fb
Add multi-line flag to semantics (#36297) 2019-07-18 10:36:22 -07:00
chunhtai
1166015931
Enable widget load assets in its own package in test (#35991) 2019-07-16 09:47:42 -07:00
Kate Lovett
8809f698cb
Revert "Part 1: Skia Gold Testing (#33688)" (#36094)
This reverts commit eb0b179028.
Skia Gold post-submit test were failing due to the service account not being found on Cirrus.
2019-07-12 13:35:36 -07:00
Kate Lovett
eb0b179028
Part 1: Skia Gold Testing (#33688)
* Fresh PR for Gold integration.

* Nits

* WIP

* Artifacts from merge

* Changed some platform dependencies for web, added library prefix notation for Skia Gold test names.

* Updating for CI implementation

* Write out service account

* Writing to skip out

* WIP

* ++

* Fixing depot tools deps

* Windows depot_tools

* Fixing setup scripts

* ++

* depot tools

* ++

* WIP

* Tracing depot_tools clone

* WIP

* ++

* analyzer

* WIP

* chrome typo

* copy artifact

* Working on tests

* Code cleanup

* ++

* Code cleanup, updated tests

* ++ review feedback

* Review

* Analyzer

* Review feedback

* Nits from review

* PRogress

* ++

* Fixing tests

* ++

* Testing repo route

* Just needing documention around new structures.

* cleanup

* Analyzer

* Documentation updates

* Documentation updates

* Cirrus updates

* cirrus nit

* Review feedback

* Review feedback

* Fixing skip comparator

* Fix base directory for Skia Gold case

* ++

* Feedback

* ++

* Fixed uri assertion

* Made GoldensClient abstract, altered SkiaGoldClient constructor

* Analyzer
2019-07-12 12:23:04 -07:00