154 Commits

Author SHA1 Message Date
gaaclarke
78657edbb5
Added golden test to make sure that spawn engines work. (#23066) 2020-12-17 09:32:41 -08:00
Chris Yang
5db07805d4
Enable clipRRect for android platform view hybrid composition (#21817) 2020-12-08 09:13:02 -08:00
Chris Yang
dcbc7c20c4
[scenario app] Update golden images for android (#22907) 2020-12-07 13:09:29 -08:00
xster
64d9add1d6
Add a golden scenario test for fallback font rendering on iOS take 3 (#22736) 2020-12-02 09:28:02 -08:00
Chris Yang
74d40c101f
PlatformViewsController: clear composition_order_ in the beginning of each frame. (#22574) 2020-11-19 09:53:03 -08:00
Wu Zhong
cfdcfca152
[iOS] Fix platfotm view called multiple times (#19292) 2020-11-18 11:43:02 -08:00
Emmanuel Garcia
2e05ec36d5
Fix and clean up scenario app for Android (#22540) 2020-11-17 19:27:47 -08:00
Jenn Magder
0abcc93eb3
Add xcframework to ios out (#22506) 2020-11-16 13:58:44 -08:00
Jonah Williams
4b5b496fa6
[null-safety] increase sky engine min sdk (#22322) 2020-11-05 18:24:53 -08:00
Chris Yang
153775bc5b
update golden (#22247) 2020-11-02 08:03:53 -08:00
xster
fa77e68711
disable AppLifecycleTests (#22236) 2020-10-30 15:44:18 -07:00
Chris Yang
172a3930f7
Report image diff status for iOS scenario golden tests (#22230) 2020-10-30 13:05:34 -07:00
Siva
5f0e6dd47e
Manual roll of Dart 1a18fff9ad2e...ba80ed989cc (#22216) 2020-10-29 21:28:01 -07:00
Dan Field
daa0f7a074
Revert "Add a golden scenario test for fallback font rendering on iOS take 2 (#22033)" (#22095)
This reverts commit cde78c162d04e2485dd99ad095ec059ba7746d4b.
2020-10-23 21:10:24 -07:00
xster
cde78c162d
Add a golden scenario test for fallback font rendering on iOS take 2 (#22033) 2020-10-22 17:12:01 -07:00
Greg Spencer
6bc70e4a11
Reland: Migration to PlatformDispatcher and multi-window (#21932)
This re-lands #20496 and #21780 after fixing the semantics-enabling code that was causing the post-submit web_smoke_test to fail.

Below is the description from the original PR:

This is a PR for converting the dart:ui code in the engine to use a multi-window API. The goal here is to convert from the window singleton to an API that has the concept of multiple windows. Also, I'm matching up the new PlatformDispatcher class to talk directly to the PlatformConfiguration class in the engine. I'm not attempting to actually enable creating multiple windows here, just migrate to an API that has a concept of multiple windows. The multi-window API in this PR currently only ever creates one window.

The design doc for this change is here.

The major changes in this PR:

Move the platfom-specific attributes out of Window, and into the new PlatformDispatcher class that holds all of the platform state, so that the platform code need only update the configuration on this class.
Create FlutterView, FlutterWindow, and SingletonFlutterWindow classes to separate out the concepts of a view (of which there may be multiple in a window), a window (of which there may be multiple on a screen, and they host views), and a window where there is only ever expected to be one (this hosts the entire API of the former Window class, and will eventually be the type of the window singleton).
Next step after this PR lands:

Remove the Window class entirely (it is replaced by SingletonFlutterWindow). Some minor changes in the Framework are needed to switch to using SingletonFlutterWindow directly first.

The Window class still exists in this PR, but will be removed as soon as the framework is converted to point to the SingletonFlutterWindow class instead. They share the same API, just have different names (Window is currently a subclass of SingletonFlutterWindow). The intention is that the Window name will be freed up to use as a widget class name in the framework for managing windows. The singleton called window will remain, and keep the same API it has now.
2020-10-22 14:54:25 -07:00
Clement Skau
e78e405e6a
Enable lazy-async-stacks by-default in all modes (Take 4) (#21802) 2020-10-20 10:31:15 +02:00
Yuqian Li
c2938d06b1
Revert "Migration to PlatformDispatcher and multi-window #20496" (#21792)
* Revert "Fix documentation build for window changes. (#21780)"

This reverts commit 931a04683d6eb49fc92059b2384ac5b1618d5422.

* Revert "Migration to PlatformDispatcher and multi-window (#20496)"

This reverts commit 85b0031f73544e448354047dc6a236c0b0808252.
2020-10-12 19:26:41 -07:00
Zachary Anderson
fd1ba9ccf0
Ignore analysis warning for doc comment (#21773)
This is to unblock a Dart -> engine roll.
2020-10-12 10:08:27 -07:00
LongCatIsLooong
f230fded75
Use buildroot clang for scenario app (#21690) 2020-10-12 08:12:02 -07:00
Greg Spencer
85b0031f73
Migration to PlatformDispatcher and multi-window (#20496)
This is a PR for converting the dart:ui code in the engine to use a multi-window API. The goal here is to convert from the window singleton to an API that has the concept of multiple windows. Also, I'm matching up the new PlatformDispatcher class to talk directly to the PlatformConfiguration class in the engine. I'm not attempting to actually enable creating multiple windows here, just migrate to an API that has a concept of multiple windows. The multi-window API in this PR currently only ever creates one window.

The design doc for this change is here.

The major changes in this PR:

Move the platfom-specific attributes out of Window, and into the new PlatformDispatcher class that holds all of the platform state, so that the platform code need only update the configuration on this class.
Create FlutterView, FlutterWindow, and SingletonFlutterWindow classes to separate out the concepts of a view (of which there may be multiple in a window), a window (of which there may be multiple on a screen, and they host views), and a window where there is only ever expected to be one (this hosts the entire API of the former Window class, and will eventually be the type of the window singleton).
Next step after this PR lands:

Remove the Window class entirely (it is replaced by SingletonFlutterWindow). Some minor changes in the Framework are needed to switch to using SingletonFlutterWindow directly first.

The Window class still exists in this PR, but will be removed as soon as the framework is converted to point to the SingletonFlutterWindow class instead. They share the same API, just have different names (Window is currently a subclass of SingletonFlutterWindow). The intention is that the Window name will be freed up to use as a widget class name in the framework for managing windows. The singleton called window will remain, and keep the same API it has now.
2020-10-09 16:29:16 -07:00
Pieter van Loon
85ed656722
Enabled metal on ios simulator (#17881) 2020-10-07 17:47:03 -07:00
Richard Cai
515f339838
Update docs specifying addPlatformView offset param is not used (#21331)
for Android and iOS and remove offset from scenario_app test for iOS and Android.
2020-09-23 10:37:57 -07:00
Chris Yang
678653bfb6
Fix iOS platform view's mask view blocking touch events. (#21286) 2020-09-21 15:22:47 -07:00
xster
257eba9c19
Fix a AppLifecycleTest present time race between the animation and the rest of the test (#21107) 2020-09-14 08:50:16 -07:00
Chris Bracken
08dabe9601
Clean up C++ includes (#21127)
Cleans up header order/grouping for consistency: associated header, C/C++ system/standard library headers, library headers, platform-specific #includes.

Adds <cstring> where strlen, memcpy are being used: there are a bunch of places we use them transitively.

Applies linter-required cleanups. Disables linter on one file due to included RapidJson header. See https://github.com/flutter/flutter/issues/65676

This patch does not cover flutter/shell/platform/darwin. There's a separate, slightly more intensive cleanup for those in progress.
2020-09-11 21:18:35 -07:00
Chris Bracken
6e4af80e7e
Disable iOS application lifetime Scenario tests (#21125)
This speculatively disables the ApplicationLifecycle Scenarios iOS tests
which continue to fail after being re-enabled in flutter/engine#21087.

Related P0 issue: https://github.com/flutter/flutter/issues/61620
2020-09-11 16:12:22 -07:00
xster
397b6c6a93
re-enable scenario tests on iOS (#21088) 2020-09-11 09:21:37 -07:00
Chris Bracken
36f7f3ca82
Copyright header hygiene improvements (#21089)
Add copyright headers in a few files where they were missing.

Trim trailing blank comment line where present, for consistency with
other engine code.

Use the standard libtxt copyright header in one file where it differed
(extra (C) and comma compared to other files in libtxt).

This also amends tools/const_finder/test/const_finder_test.dart to look
for a const an additional four lines down to account for the copyright
header added to the test fixture.
2020-09-11 08:55:37 -07:00
Chris Bracken
bdaac368f8
Re-enable (most) iOS Scenarios tests (#21087)
This re-enables the iOS Scenarios tests which have been flaky in the
last couple days.

Disabling two tests where we've seen the flakes:
* AppLifecycleTests testFlutterViewControllerDetachingSendsApplicationLifecycle
* FlutterViewControllerInitialRouteTest testSettingInitialRoute

This reverts commit 0c6c265a6f38bcacf551690a8fc8f78bb4f2c285.
2020-09-10 22:57:56 -07:00
xster
216a1ab64d
add back a line to build host for scenario tests (#21076) 2020-09-10 21:05:03 -07:00
Chris Bracken
0c6c265a6f
Disable iOS ScenariosTests suite (#21080)
This disables the macOS Scenarios app tests until a fix for the current
flakiness is found.

This also reverts commit 55d447a1c3e124e4b1ae6c8a1230808412657a85 where
one test was previously disabled. However, another started failing soon
after, so instead we disable the whole suite here.
2020-09-10 19:50:03 -07:00
Chris Bracken
55d447a1c3
Disable a flaky Scenarios test (#21075)
This disables the macOS Scenarios app test
testFlutterViewControllerDetachingSendsApplicationLifecycle
until a fix for the flakiness is found.

Related issue: https://github.com/flutter/flutter/issues/61620
2020-09-10 13:21:17 -07:00
xster
7ebab5dc8a
Delete unused iOS test scripts after LUCI change (#18712)
This deletes old LUCI build scripts that have been unused since
https://flutter-review.googlesource.com/c/recipes/+/3160
2020-09-09 18:22:45 -07:00
Zachary Anderson
f7c7b41f0a
Revert "Enable lazy-async-stacks by-default in all modes (Take 3) (#20895)" (#21043)
This reverts commit 575a51948d81756c778352b40f639fa557325fd7.
2020-09-09 09:25:17 -07:00
Clement Skau
575a51948d
Enable lazy-async-stacks by-default in all modes (Take 3) (#20895)
Lazy async stacks were already enabled by-default in AOT mode in [0] - which made the
gen_snapshot invocations use "--lazy-async-stacks --no-causal-async-stacks".

This change does the same with the engine defaults, which makes this be enabled
by-default in JIT mode as well.

See go/dart-10x-faster-async for more information.

This is a re-land: A fix for what we believe to have caused the last revert has landed upstream in Dart in dart-lang/sdk@0004589

[0] flutter/flutter@3478232
2020-09-07 10:55:48 +02:00
Jason Simmons
0f0ae681e8
Update test Dart code to pass the latest Dart analyzer rules (#20986) 2020-09-03 18:09:05 -07:00
Emmanuel Garcia
5e54c707e8
Reland: Enable hybrid composition by default on Android (#20722) (#20864)
This reverts commit 4de62c7c2659607acdc75ab8c1ccd305a3c6f9d1.
2020-08-31 12:17:11 -07:00
Gary Qian
93f17e9ea6
Use Android R (API 30) getInsets() to compute padding (#18339) 2020-08-26 18:15:40 -07:00
Emmanuel Garcia
4de62c7c26
Revert "Enable hybrid composition by default on Android (#20722)" (#20745)
This reverts commit d16ba48e1d79cf0197e96c51c38300ee921baeb0.
2020-08-25 09:54:13 -07:00
Emmanuel Garcia
d16ba48e1d
Enable hybrid composition by default on Android (#20722) 2020-08-24 13:10:23 -07:00
Chris Yang
b6035062ff
Enable ios platform view by default (#20671) 2020-08-20 17:46:01 -07:00
Greg Spencer
d1e9017cd8
Clean up scenario app scripts (#20641)
I just made a pass on the scenario scripts so that they can be more easily run from the scenario directory, set the ANDROID_HOME correctly, and generally fixed lint errors.

Also compile_android_aot.sh didn't appear to work, and I think I fixed it (it builds now).
2020-08-19 19:14:38 -07:00
Greg Spencer
35640af9fa
Convert format script to Dart (#20572)
This converts the ci/format.sh script to a Dart script that uses process_runner and isolates to multi-process the clang-format, diffs, and grepping needed to do the formatting changes.

It also will (by default) only check the formatting of changed files.

The user can optionally check all files (--all-files) or do only some types of checks with --check. --verbose prints the versions of the tools used for Clang format and Java format.

Specifying --fix will cause any formatting errors that would have been detected to be fixed.
2020-08-18 13:25:30 -07:00
Gary Qian
02de4eb7ce
Update to android 30r2 and roll buildroot (#20479) 2020-08-17 16:33:48 -07:00
Emmanuel Garcia
429675d310
Custom Gradle home and add .vpython file (#20425) 2020-08-14 15:01:01 -07:00
xster
0c504da039
Refactor initial route code take 2 (#20468) 2020-08-13 14:18:11 -07:00
gaaclarke
2ac5b3460a
Revert "Refactor initial route code (#19684)" (#20450)
This reverts commit 8d08e6c369e349986831d83204a79af3fcb8d8ca.
2020-08-12 12:43:08 -07:00
xster
8d08e6c369
Refactor initial route code (#19684) 2020-08-11 19:52:04 -07:00
Emmanuel Garcia
8c02e38992
Prepare scenario app to run on Android emulator on LUCI (#20350) 2020-08-10 22:55:43 -07:00