652 Commits

Author SHA1 Message Date
Ryan Macnak
755dbeef4a
Roll Dart to a5c11d7d0329432ca37e35bb249b20f60aa0aa31. (#5259)
Update engine for removal of Dart_ReadKernelBinary and refactored build targets.
2018-05-15 12:57:01 -07:00
Chinmay Garde
73a0014b7e
Create an empty group that the Fuchsia bots use to determine the root_out_dir. (#5265)
The Fuchsia bots seem to reference this target to figure out the root_out_directory https://fuchsia.googlesource.com/build/+/master/dart/dart_test.gni#67. Note that the presence of the flutter_tester binary location itself is not depended on. Instead, the target is used to infer the directory containing the flutter_tester after a build.

Patching the //build repository in Fuchsia would mean making the tree red till a //topaz patch lands. To avoid doing this, we add back the missing reference.
2018-05-15 12:50:10 -07:00
Jason Simmons
c7ab033f9e
Support a model where the application creates a FlutterNativeView that is never destroyed (#5256)
This allows applications to start a Flutter engine instance during app startup
and keep it running throughout the app process' lifetime.

FlutterActivity subclasses can override createFlutterNativeView to provide a
preinitialized FlutterNativeView instance and override retainFlutterNativeView
to signal that the FlutterNativeView should be kept alive when the activity
is destroyed.
2018-05-15 12:05:54 -07:00
Chinmay Garde
c3c6c369ae
Create a session presentation backed Vsync waiter on Fuchsia. (#5255) 2018-05-14 16:51:19 -07:00
Chinmay Garde
613abf2d8a
Terminate the engine immediately if there are isolate launch errors. (#5244) 2018-05-11 18:32:35 -07:00
Jonah Williams
87da608a95
swap brightness definition on iOS to match android (#5239) 2018-05-11 14:01:29 -07:00
Jason Simmons
3ec12d4c3f
Detach from JNI before exiting the GPU thread. (#5231)
The GPU thread calls into Java via JNI in order to update external textures.

Fixes https://github.com/flutter/flutter/issues/17329
2018-05-11 11:42:19 -07:00
Jason Simmons
4a4cff96d4
Remove Blink code (#5218)
Fixes https://github.com/flutter/flutter/issues/12212
2018-05-10 15:57:29 -07:00
Todd Volkert
fade83ce3e
Bypass the raster cache when screenshotting (#5227)
Fixes https://github.com/flutter/flutter/issues/17448
2018-05-10 12:32:17 -07:00
Ryan Macnak
e9fb4761a6
[fuchsia] Add dependencies needed to build the test shell. (#5216) 2018-05-09 13:43:27 -07:00
Chinmay Garde
61b5028195
Read/apply settings that apply process wide before creating any shell components. (#5203) 2018-05-08 11:56:31 -07:00
Chinmay Garde
d97b6d859a
Allow explicit specification of the isolate snapshot. (#5193)
The mobile shells all use the same isolate snapshot. This is also the snapshot used by the service isolate. This works towards a world where the isolate snapshot is no longer a member variable of the DartVM instance. Instead, all snapshots must be specified in the run configuration. For now, the new `Shell::Create` overload will only be used by Fuchsia till I refactor `dart_vm.cc`.

There are no API updates to the mobile shells.
2018-05-07 17:28:31 -07:00
Jonah Williams
57f53b98a4
Re-land Enables system chrome customization on Android O/N and greater (#5171) 2018-05-07 15:45:59 -07:00
Jason Simmons
02bc5788f2
Use the rasterizer's compositor context and texture registry to capture screenshots (#5180)
Fixes https://github.com/flutter/flutter/issues/16412
2018-05-04 16:07:10 -07:00
Jonah Williams
e1cd506187
add onStart hook which places flutter in an inactive state (#5177) 2018-05-04 14:46:57 -07:00
Jonah Williams
3c583f81d9
Revert "Enables system chrome customization on Android O and greater" (#5167)
* Revert "Roll dart sdk to e6d7d67f4b35556805dd083fed15bf3ed41f7e33. (#5165)"

This reverts commit 9e4c5d0e1f9daf0c46fdc7e5d1e81ce9c36b65c4.

* Revert "Enables system chrome customization on Android M/O and greater (#5112)"

This reverts commit f2db5dfd30f12407acab57f04acc8af7c6158891.
2018-05-03 15:38:25 -07:00
Jonah Williams
f2db5dfd30
Enables system chrome customization on Android M/O and greater (#5112) 2018-05-03 13:10:44 -07:00
Jonah Williams
93b85ee68a
Add Android accessibility bridge support for "longPress" and "tap" semantic events 2018-05-02 17:24:29 -07:00
xster
d48ba4c034
Increase the GPU thread priority and add error logging (#5117) 2018-04-30 17:18:33 -07:00
Jason Simmons
7004e0654c
Re-land "Hold a global reference to the AssetManager Java object backing the APKAssetProvider" (#5132)
Fixes https://github.com/flutter/flutter/issues/16222
2018-04-30 12:29:40 -07:00
Jason Simmons
5b4ab0dc80
Detach from JNI during shutdown of the UI thread on Android (#5120)
The APKAssetProvider will hold a reference to its Java peer
(see ac682632d7)

After dropping this reference, the UI thread must detach from JNI before exiting.
2018-04-30 10:44:01 -07:00
Yegor
cf026b098d
Revert "Hold a global reference to the AssetManager Java object backing the APKAssetProvider (#5078)" (#5116)
This reverts commit ac682632d7b050463e0461cbb416aaedbcba4bcf.

It causes engine crashes in some Android Espresso tests.
2018-04-27 13:47:26 -07:00
Jonah Williams
e11905c6e5
Add tooltip method to Android AccessibilityBridge (#5103) 2018-04-26 15:03:47 -07:00
Ben Konyi
e44e1b49f3
Initial plugin support for background downloads + content fetching (#5082)
* Added handleEventsForBackgroundURLSession and
performFetchWithCompletionHandler handlers in FlutterAppDelegate to
allow for plugins to perform background downloads and fetch small
amounts of data opportunistically.
2018-04-25 13:35:01 -07:00
Ryan Macnak
78f8a0f45a
[fuchsia] Changes for running Dart 2 on flutter_runner. (#5080)
- Remove assumption that we're in Dart 2 mode only if there's a platform kernel.
 - Load core snapshots from the package instead of linking them in.
2018-04-25 13:31:13 -07:00
Jason Simmons
ac682632d7
Hold a global reference to the AssetManager Java object backing the APKAssetProvider (#5078)
Fixes https://github.com/flutter/flutter/issues/16222
2018-04-24 15:50:52 -07:00
Chinmay Garde
79b9ffb14b
Fixup Fuchsia content handler post shell refactor. (#5072) 2018-04-23 20:16:01 -07:00
Yegor
ec611470b5
replace nextNodeId/previousNodeId with hitTestPosition (#5066) 2018-04-23 16:16:17 -07:00
Yegor
96af3b29e7
ios: remove geometric order; it will be supplied by framework (#4937) 2018-04-23 13:17:25 -07:00
Jason Simmons
232060828a Fix syntax error in AccessibilityBridge (#5059) 2018-04-20 13:54:27 -07:00
Jason Simmons
944b7dceae
Prevent multiple calls to FlutterMain.startInitialization (#5058)
See https://github.com/flutter/flutter/issues/16748
and https://github.com/flutter/flutter/issues/16456
2018-04-20 11:38:10 -07:00
Michael Goderbauer
995633ef49
Add SemanticsFlag.isHidden (#5052) 2018-04-20 10:37:02 -07:00
Jason Simmons
adee351424
Throw an error or return null if FlutterView.getBitmap fails (#5051)
getBitmap had been doing FXL_CHECK assertions to check memory allocation
failures and other errors.  getBitmap will now return null to the caller
instead.
(The VM may throw OutOfMemoryError or other exceptions if JNI APIs fail)

Fixes https://github.com/flutter/flutter/issues/16750
2018-04-19 16:12:22 -07:00
Jason Simmons
637e921d6f Use the raster cache when rendering screenshots as bitmaps (#5050)
This matches the behavior from before the shell refactoring.

Fixes https://github.com/flutter/flutter/issues/16754
2018-04-19 13:32:00 -07:00
Chinmay Garde
a23fa923c2
Look for an assets path specification in the Info.plist. (#5049) 2018-04-19 12:01:46 -07:00
Jonah Williams
3405e23a32
AccessibilityBridge support for edge triggered semantics (iOS + Android) (#4901)
AccessibilityBridge support for edge triggered semantics (iOS + Android)
2018-04-19 11:14:47 -07:00
Chinmay Garde
3cc8d82895
Fix more Linux unittest targets. (#5045) 2018-04-18 18:15:50 -07:00
Chinmay Garde
d4729abaf7
Update the embedder GN target to use a source set instead of a complete static library. (#5040)
Creating a dylib from a “complete” static library does not propagate symbol visisbility definitions. I also got rid of the static library and used a source set instead because we don’t need to do the extra work for other targets.
2018-04-18 12:50:22 -07:00
Jason Simmons
572c5844aa
Configure kernel paths in the embedder if the asset directory contains the kernel assets (#5039)
"flutter build bundle" in Dart 2 mode now builds an assets directory
containing the application and platform kernels along with the app's other
assets.

With this patch, embedders can run these bundles by setting
FlutterProjectArgs.assets_path to the bundle directory.  In this scenario,
FlutterProjectArgs.main_path and packages_path will be ignored.
2018-04-18 12:12:39 -07:00
Chinmay Garde
a0804f3738
Simplify weak pointer factories and allow vending weak pointers on multiple threads. (#5029) 2018-04-18 11:07:16 -07:00
Chinmay Garde
5822b6e578
Clear the canvas when attempting to render to the surface. (#5036) 2018-04-17 19:04:52 -07:00
Chinmay Garde
d8eb659b15 Make the rasterizer own the compositor context. (#5034)
This allows the texture registry to be accessed before render surface acquisition.
2018-04-17 18:45:58 -07:00
Chinmay Garde
00911b2a85
Don't send platform messages to isolates that are not running. (#5031)
Isolates may be launched and awaiting snapshot association. We don't
want to send such isolates any messages before their "main" method is
called. In such cases, the engine may intercept and store certain
launch specific information.
2018-04-17 17:10:17 -07:00
Chinmay Garde
5c857ee5bd
Set the start timestamp in the contructor of the first shell. (#5030) 2018-04-17 16:02:06 -07:00
Michael Goderbauer
e654557320
Enable 'Speak Screen' and 'Switch Control' for iOS (#5016) 2018-04-17 09:16:24 -07:00
Mikkel Nygaard Ravn
3393c17901
Fix Android platform channels (#5025) 2018-04-17 16:02:10 +02:00
Chinmay Garde
4b45a53ed5
Only make ERROR and FATAL log levels visible by default. (#5022)
Adds the --verbose-logging flag to enable logging at all other severities.
2018-04-16 21:34:11 -07:00
Alexander Aprelev
98f6c2d573
Fix shell launcher test (dart2 compliant and stop polling) (#5009)
* Make test Dart2 compliant

* Use service and debug events instead of polling to wait for isolate to start, run and resume.

* Refactor into _onServiceEvent. Wait for 'paused' event instead of 'isolate runnable'.
2018-04-16 19:31:43 -07:00
Chinmay Garde
9495a52d59
On iOS, try to use ES3, then fall back to ES2. (#5006) 2018-04-16 16:41:45 -07:00
Jonah Williams
0b7d6be976
Re-land "do not pause rendering when android view loses focus" (#5004)
* do not pause rendering when android view loses focus
2018-04-13 17:08:00 -07:00