135 Commits

Author SHA1 Message Date
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
LongCatIsLooong
8b4987382e
add new keyboard types and missing autofill hints (#18202) 2020-05-11 19:41:46 -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
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
Ali Mahdiyar
9cdb5a9b6a
Custom unicode handling for Android backspace via JNI to ICU (#17960) 2020-05-06 14:01:02 -07:00
Jason Simmons
663bfe8d61
Remove the ResourceCleaner from the Android embedding (#18072) 2020-05-04 16:34:02 -07:00
Wings006
84093e844c
make "flutter run --trace-systrace" work. (#18052) 2020-04-30 09:30:24 -07:00
LongCatIsLooong
1df760024d
add missing case for TextInput.requestAutofill (#17857) 2020-04-23 10:52:47 -07:00
Gary Qian
8dc91229b4
PlatformResolvedLocale localization message channel (#17755) 2020-04-21 15:34:44 -07:00
LongCatIsLooong
cf3d738f50
Android text input autofill (#17465) 2020-04-16 03:41:23 -07:00
Shi-Hao Hong
63f40903de
Revert getSystemGestureExclusionRects and setSystemGestureExclusionRects (#17613)
* Revert getSystemGestureExclusionRects and setSystemGestureExclusionRects 

* Remove references to removed PlatformChannelTest.java file
2020-04-09 20:44:37 -07:00
Jason Simmons
288b66b1b6
Disconnect from platform views and virtual displays before detaching from the engine (#17379) 2020-04-02 18:16:05 -07:00
Emmanuel Garcia
025e2d82dd
Migrate embedding to AndroidX (#17075) 2020-03-13 21:19:24 -07:00
xster
1ff81bc117
Make a pass through all the embedding javadocs (#17109) 2020-03-13 16:34:34 -07:00
Michael Klimushyn
7c67573896
Fix multiline Javadoc code blocks (#16565)
The formatter didn't understand what was going on here and broke the
text. Changed these to use `<pre>{@code }</pre>` instead.
2020-02-12 15:07:16 -08:00
Matt Carroll
270421c103
Fix ensureInitializationCompleteAsync callback when already initialized. (#39675) (#16503) 2020-02-11 15:25:58 -08:00
Gityuan
5041ff1b1e
support endless trace buffer (#16520) 2020-02-11 15:08:03 -08:00
Michael Klimushyn
077918dcfd
Apply Google Java format (#16501)
This shouldn't result in any logical changes. I've done a quick smoke
test by building a local Android engine and running Flutter gallery, no
compile errors or other obvious issues.

Applied by running `/ci/format.sh | patch -p0` with the altered script
added in flutter/engine#16500. I did locally modify the script slightly
further so it would run against all Java files in the repo instead of
just modified ones.
2020-02-07 16:10:46 -08:00
Jason Simmons
7c95cdada4
Ensure that Android embedding initialization always uses an application context (#16204)
Some parts of the embedding (e.g. VsyncWaiter) may hold global references to
system services obtained through the context used during initialization.
These must not be associated with an activity or other non-application context.

Fixes https://github.com/flutter/flutter/issues/49612
2020-01-31 12:09:38 -08:00
Matt Carroll
eecb5e5c25
Notify PlatformViewsController within FlutterEngine when a hot restart occurs. (#48518) (#16230) 2020-01-30 12:58:41 -08:00
Michael Klimushyn
6fa1fcda8f
Register plugins at the right time, once (#15979)
Currently we're automatically registering plugins both when the
FlutterEngine is constructed and in the `flutter create` template, when
FlutterActivity#configureFlutterEngine is called. The initial
registration is too early to contain a reference to the activity and the
second registration can cause problems in some plugins.

This alters the flow so automatic registration happens in two discrete
places, and contains the `activity` in its first and only call for most
apps.

1. We're no longer automatically registering plugins on `FlutterEngine`
in any of our activities/fragments at construction time. But since the
FlutterEngine default constructor still automatically registers plugins,
anyone constructing the engine themselves (for example, in a service) is
still going to get automatic registration at `FlutterEngine`
instantiation time.
2. We now automatically register plugins in the base `FlutterActivity`'s
`configureFlutterEngine` hook. Anyone using `FlutterActivity` (or
`FlutterFragment`) should be automatically registered once that hook is
called. Right now the `flutter create` template overrides the base class
method with a subclass that registers everything manually in the same
spot. But with this in place we can safely recommend to remove the
subclass and rely on this hook to automatically register going forward.
Registering at this time means `activity` is set correctly.
2020-01-25 00:34:52 -08:00
Matt Carroll
fec9573786
Prevent duplicate plugin registration in FlutterEnginePluginRegistry. (#49365) (#15956) 2020-01-24 15:57:51 -08:00
Michael Goderbauer
0615f45623 Remove unused Imports and private method (#15872) 2020-01-21 17:53:02 -08:00
xster
006e44d1d0 Reduce default verbosity of Android embedding (#15164) 2020-01-18 23:49:05 -08:00
Matt Carroll
687a1a7541
Add support for --dart-flags in FlutterShellArgs. (#44855) (#13855) 2019-11-14 04:09:08 +00:00
Todd Volkert
9a3042cb50
Remove unused import (#13832) 2019-11-13 14:12:46 -08:00
chunhtai
1f1e2ba58e
reland add lifecycle enum (#13767)
This reverts commit 8ebb318401344793daa10c3bec97c34891cf7cc8.
2019-11-13 11:26:25 -08:00
Matt Carroll
e19ee72f31
Expose asset lookup from plugin binding. (#42019) (#13743) 2019-11-12 07:14:27 +00:00
Matt Carroll
55c64a92d8
Point old plugin registry accessors to new embedding plugin accessors. (#44225) (#13739) 2019-11-09 01:55:59 +00:00
Matt Carroll
6fd58edd3e
Removed scary experimental warnings for new embedding. (#44314) (#13738) 2019-11-07 22:54:10 +00:00
chunhtai
8ebb318401
Revert "Issues/39832 reland (#13642)" (#13720)
This reverts commit 1bfb928e071674a21779cee94908fbcae1c2e657.
2019-11-06 11:41:36 -08:00
Matt Carroll
58a6d6554f
Fix plugin registrant reflection path. (#44161) (#13698) 2019-11-05 23:36:35 +00:00
chunhtai
1bfb928e07
Issues/39832 reland (#13642)
* Reland "Added new lifecycle enum (#11913)"
2019-11-05 14:52:16 -08:00
Jason Simmons
76312eefdd
Fix Class.forName unchecked call warning (#13695) 2019-11-05 13:45:57 -08:00
chunhtai
fe0838e948
Revert "Added new lifecycle enum (#11913)" (#13632)
This reverts commit 02a479007420b05df8e075978ecdd15442ea520f.
2019-11-04 13:40:20 -08:00
chunhtai
02a4790074
Added new lifecycle enum (#11913) 2019-11-04 12:33:41 -08:00
xster
7aa40556a4
Release shim bindings when detaching (#13432) 2019-11-01 17:53:15 -07:00
Dan Field
ced6c63d1e
Request a reattach when creating the text input plugin on Android (#13474) 2019-11-01 15:29:33 -07:00
Matt Carroll
c882439cb3
Automatically register plugins in FlutterEngine. (#43855) (#13455) 2019-10-31 14:10:45 -07:00
Matt Carroll
e96f8603f0
Converted ActivityAware and ServiceAware Lifecycles to opaque objects (#43670) (#13402) 2019-10-28 21:41:07 -07:00
Matt Carroll
55e9ad77ec
Remove multiplexed Flutter Android Lifecycle. (#43663) (#13394) 2019-10-28 16:22:11 -07:00
Matt Carroll
3ebf006904
Deprecated DartExecutor as BinaryMessenger and added a getBinaryMessenger() method. (#43202) (#13349) 2019-10-25 20:07:13 -07:00
Matt Carroll
74d18bce34
Android embedding API updates for plugin ecosystem - plugin facade, split Lifecycle, save state callbacks to plugins (#43241, #43242, #43295) (#13280) 2019-10-24 19:10:05 -07:00
Justin McCandless
7071dc7061
NO_SUGGESTIONS keyboard flag in Android (#13099)
Add the enableSuggestions parameter to control Android's keyboard suggestions
2019-10-23 10:47:19 -07:00
Jacek Fedoryński
748b64049c Add repeatCount to FlutterKeyEvent (#13176)
Adds repeatCount field to KeyEventChannel.FlutterKeyEvent. We set it
to the value returned by KeyEvent.getRepeatCount() and add it to the
message passed through the channel with the intention of exposing it
in RawKeyEventDataAndroid on the framework side.

flutter/flutter#42855
2019-10-18 10:39:19 -07:00
Erick (CptBlackPixel)
49a8e451b8 Adding deviceId to KeyEventChannel enconding method (#12958)
This Pull Request simple adds the deviceId property to the encoding method, I am preparing a next PR on the flutter repository that reads this info and add a property to RawKeyEventDataAndroid on the Flutter side.

This is necessary so we can support multiple gamepads on Android, in order to be possible to make a local multiplayer game with Flutter.
2019-10-14 17:47:15 -07:00
Michael Klimushyn
531a9cfb8e
Fire PlatformViewController FlutterView callbacks (#13015)
Fixes a bug where `PlatformViewController` was not being notified of `FlutterView` attachment changes.
2019-10-14 14:03:25 -07:00
Matt Carroll
9acec4102a
Move initialization into FlutterEngine (#12806) 2019-10-11 16:15:55 -07:00
liyuqian
df0e911c67
SkSL precompile (#12412)
For https://github.com/flutter/flutter/issues/40686

Unit tests added:
- CacheSkSLWorks
- VisitFilesCanBeCalledTwice
- CanListFilesRecursively
2019-10-08 11:51:28 -07:00
Emmanuel Garcia
edee1fea58
Add @Keep annotation (#11893) 2019-09-05 13:23:04 -07:00