2315 Commits

Author SHA1 Message Date
Chris Yang
3c2a4ac976
remove unused IOSContext::ResourceMakeCurrent and IOS:Context::ClearCurrent (#18443) 2020-05-15 19:07:44 -07:00
liyuqian
a4fb3de207
Automatically remove old persistent cache dir (#18244)
Fixes https://github.com/flutter/flutter/issues/53445
2020-05-15 14:15:59 -07:00
gaaclarke
2024706f17
Started allowing setting message handlers to nil for dead engines (#18428) 2020-05-15 14:11:10 -07:00
Kaushik Iska
c413b3d743
Update the observatory thread name for profiling thread (#18199) 2020-05-15 12:28:10 -07:00
Kaushik Iska
2494d1ca70
Revert "Remove pipeline in favor of layer tree holder (#18285)" (#18427)
This reverts commit 2cdbc7f92793125d9312138877c05af6ad708683.
2020-05-15 12:27:32 -07:00
gaaclarke
d1b0c46660
Added a unit test for the iOS AccessibilityBridge. (#18281) 2020-05-15 09:43:32 -07:00
egdaniel
dba00b2395
Update flutter skia flush calls to new flush and submit api (#18421)
* Update flutter to use new skia flushing/submit api

This has no functional change, just moving to the new api calls.

* Update vulkan_swapchain.cc

* Update embedder_external_view_embedder.cc
2020-05-15 11:40:21 -04:00
Robert Ancell
69d7200c48
Rename NULL tests to Nullptr for consistency (#18359) 2020-05-15 15:00:11 +12:00
Robert Ancell
474e6f121e
Remove rapidjson from TextInputModel (#18397)
This allows this class to be shared with the Linux plugin.
Also move client_id outside this class as was noted in a TODO.
2020-05-15 14:59:56 +12:00
Robert Ancell
47707965b4
Fix incorrect header for #FlBasicMessageChannel::respond (#18365) 2020-05-15 09:19:00 +12:00
Kaushik Iska
2cdbc7f927
Remove pipeline in favor of layer tree holder (#18285)
go/flutter-pipeline-improvements for more details.
2020-05-14 10:46:14 -07:00
Robert Ancell
5ad4f9ee4a
Add FlJsonMessageCodec (#18221) 2020-05-14 13:49:40 +12:00
Robert Ancell
960035462a
Add FlBasicMessageChannel (#18189) 2020-05-14 12:09:32 +12:00
Jason Simmons
dc93db5ab8
Move FlutterLoader disk I/O to a background thread to comply with Android strict mode (#18241) 2020-05-13 14:17:03 -07:00
Robert Ancell
f321613e5a
Add guards on FlValue methods to check for NULL values (#18226) 2020-05-14 09:02:51 +12:00
Chris Yang
006dbfce2a
Always keep thread merged when there are platform views. (#18245) 2020-05-13 08:53:46 -07:00
Robert Ancell
7b6406720a
Use 'message' as the parameter name in FlMessageCodec::encode_message (#18253)
This is more consistent with the Dart code.
2020-05-13 16:55:20 +12:00
LongCatIsLooong
8b4987382e
add new keyboard types and missing autofill hints (#18202) 2020-05-11 19:41:46 -07:00
Robert Ancell
2f6bcdeb94
Add FlStandardMessageCodec (#18213) 2020-05-12 11:09:21 +12:00
Robert Ancell
72a48bd6ee
Fix incorrect declaration of FlBinaryCodec (#18283) 2020-05-12 09:58:47 +12:00
Kaushik Iska
8d76518011
Fix latest_frame_target_time race (#18279)
There are some cases where onAnimatorDraw gets called before
onAnimatorBeginFrame, in these cases we need to update the
latest_frame_target_time to be the target time for the current frame.

This manifested as an issue in release mode Android builds:
https://firebase.corp.google.com/project/flutter-infra/testlab/histories/bh.27c33c672e9b01f2/matrices/4903344583855476919/executions/bs.ee4f6f7ad8671a34
2020-05-11 14:52:22 -07:00
Robert Ancell
044f2542d4
Use the term 'handler' for registering callbacks. (#18269)
This is the term used in the Dart code and which callback is more commonly used
in GLib matching the Dart code will make developers life easier.
2020-05-12 09:01:10 +12:00
Robert Ancell
ccfec72798
Fix grammar in FlBinaryCodec/FlStringCodec descriptions (#18268) 2020-05-12 09:00:36 +12:00
Marcus Tomlinson
d96f962ca2
Add new FlutterEngineAOTData argument to FlutterProjectArgs (#18146)
Added a new `FlutterEngineAOTData` argument to `FlutterProjectArgs`. Embedders can instantiate and destroy this object via the new `FlutterEngineCreateAOTData` and `FlutterEngineCollectAOTData` methods provided.

If an embedder provides more than one source of AOT data to `FlutterEngineInitialize` or `FlutterEngineRun` (e.g. snapshots as well as `FlutterEngineAOTData`), the engine will error out.

Resolves: https://github.com/flutter/flutter/issues/50778
2020-05-10 10:24:56 -07:00
Jason Simmons
d1725d7f1e
Restore the call to initConfig in FlutterLoader (#18257)
This was accidentally removed in https://github.com/flutter/engine/pull/18182
2020-05-09 11:49:11 -07:00
Gary Qian
e9f1efa280
Add fullscreen padding workarounds to v2 android embedding (#18193) 2020-05-09 04:31:27 -07:00
Kaushik Iska
4418ce8825
Revert "Remove pipeline in favor of layer tree holder (#17688)" (#18242) 2020-05-08 16:09:02 -07:00
Kaushik Iska
983de2c402
Remove pipeline in favor of layer tree holder (#17688)
go/flutter-pipeline-improvements for more details.
2020-05-08 10:51:10 -07:00
xster
40167b68ed
Make robolectric tests run against SDK 29 by default (#17996) 2020-05-07 23:29:02 -07:00
Robert Ancell
9ea2db5bac
Add FlMessageCodec, FlBinaryCodec, FlStringCodec (#18186)
Classs for binary message encoding/decoding that matches the ones in the Flutter services library.
2020-05-08 16:13:54 +12:00
Robert Ancell
403931ff22
Add FlValue (#18185)
FlValue is a lightweight object used to contain the value types that Flutter
uses on platform channels.
2020-05-08 13:48:41 +12:00
stuartmorgan
716dbf00c8
Refactor GLFW embedding to support headless mode (#18205)
This does some long-overdue refactoring of the spaghetti code that grew in the GLFW embedding to begin providing a clearer separation between the engine and the window. It is now possible to register plugins, and run the runloop, on a headless engine, which makes headless mode much more usable. This is useful in some automated testing environments.

There is more refactoring that should be done in the future, but this is a good incremental point to stop as the PR is already large, and it provides useful new functionality as-is.
2020-05-07 17:10:11 -07:00
Kurun
15f72b8c0d
Support EventChannel C++ plugin API for Linux/Windows (#17015)
Fixes https://github.com/flutter/flutter/issues/49398
2020-05-07 15:54:59 -07:00
Robert Ancell
e5a7ca577d
Handle leak of message handle when no engine present (#18157)
* Handle leak of message handle when no engine present
* Move callback in wrong location
2020-05-08 09:05:20 +12:00
xster
d3bde19c15
add docs to platformviewios (and some drive-by changes) (#17593) 2020-05-07 14:01:09 -07:00
Jason Simmons
88b9d42400
Remove the global engine entry timestamp (#18182)
The engine was using a global to store a timestamp representing the
launch of the engine.  This timestamp is initialized with a JNI call
on Android and during shell setup on other platforms.  Later the
timestamp is added to a FlutterEngineMainEnter timeline event used to
measure engine startup time in benchmarks.

This PR removes the global and the JNI call and moves the timestamp
into the settings object.
2020-05-07 11:29:28 -07:00
Kaushik Iska
ede658e2d1
[profiling] CPU Profiling support for iOS (#18087)
See flutter.dev/go/engine-cpu-profiling for details
2020-05-07 08:11:07 -07:00
Wu Zhong
39595c822f
Fix memory leak of FlutterCustomAccessibilityAction (#17954) 2020-05-06 14:08:58 -07:00
Ali Mahdiyar
9cdb5a9b6a
Custom unicode handling for Android backspace via JNI to ICU (#17960) 2020-05-06 14:01:02 -07:00
Robert Ancell
805a8874cb
Add first Linux shell tests (#18159) 2020-05-06 15:33:11 +12:00
Chris Yang
cf13c7f7c1
[iOS platform view] fix active_composition_order_ never cleared (#18153) 2020-05-05 17:59:39 -07:00
Chris Yang
c1068dec0c
gpu_metal_surface submitframe return false when canvas is null (#18154) 2020-05-05 17:59:16 -07:00
Jason Simmons
663bfe8d61
Remove the ResourceCleaner from the Android embedding (#18072) 2020-05-04 16:34:02 -07:00
Robert Ancell
95ecd9a405
Move G_END_DECLS that was in the wrong place (#18116) 2020-05-05 09:11:57 +12:00
Robert Ancell
180a497ee5
Support platform messages in Linux shell (#17995) 2020-05-04 17:03:04 +12:00
gabeschine
72fe227a50
Update Fuchsia ComponentContext constructor call to renamed, but equvalent, method (#18067)
This change is part of an LSC in Fuchsia, and is a functionality no-op.

Fixes fxbug.dev/50759

Co-authored-by: Gabriel Schine <thatguy@google.com>
2020-05-01 15:04:58 -07:00
Gary Qian
7a05fcbdbe
Revert "Remove Samsung workarounds (#17612)" (#18081)
This reverts commit a5e0b2f2f2376cdd87f9c690ae1ab6074321ecc3.
2020-05-01 13:14:27 -07:00
Chinmay Garde
e9f20601f1
Don't depend on an implicit transaction when presenting drawables on the raster thread. (#18076)
The way transactions were added changed in
68fd833488.
This broke rendering using both Metal and OpenGL when no implicit transaction
was present on the transaction stack. The failure models differ based on Metal
vs. OpenGL and iOS/device versions. On older versions of iOS, rendering would
consume memory till exhaustion. On newer iOS versions, rendering would be stuck
(till a timeout). This patch brings transaction management back in line with as
it was earlier and also makes the Metal backend resilient to transactions being
present on the transaction stack at all. Since this is still quite brittle,
transaction management must be moved to IOSSurface as a followup.

Fixes https://github.com/flutter/flutter/issues/55784.
2020-05-01 13:05:23 -07:00
Chris Yang
2622cb9c33
Introduce TaskRunnerChecker, TaskRunnerAffineWeakPtr (#17649) 2020-05-01 11:28:20 -07:00
Alexander Aprelev
1c8ee9856b
Introduce runtime check that it is root isolate that makes UI native calls. (#18050)
* Revert "Do not register UI-related native functions in secondary isolates (#6401)"

This reverts commit 69ae5694de54d2a163743dcec727fcea1c7bc8e1 as it doesn't work when root and secondary isolates run in the same isolate group.

* Confirm it is root isolate that makes UI native calls.

* Fix format, UIDartState reference from Fuchsia source

* No UI isolate check for fuchsia calls

* Fix typo. Remove redundant runtime calls
2020-05-01 09:05:41 -07:00