186 Commits

Author SHA1 Message Date
Mehmet Fidanboylu
abdc8d3853
Forward Error objects to uncaught exception handler if there is one. (#21806) 2020-10-16 08:21:04 -07:00
Jason Simmons
c7e5d546f2
Prevent a race between SurfaceTexture.release and updateTexImage (#21777) 2020-10-14 15:02:02 -07:00
Dan Field
48687ca3ca
Forbid android.util.Log (#21696) 2020-10-08 14:52:05 -07:00
Jason Simmons
88fd4cea43
Extract the WindowInsetsAnimation.Callback subclass into a separate class that will be lazily loaded (#21548)
WindowInsetsAnimation.Callback was introduced in API level 30.  This
PR moves the text input plugin's WindowInsetsAnimation.Callback subclass
into a class that will only be loaded if the embedding has checked for a
sufficient API level.

See https://github.com/flutter/flutter/issues/66908
2020-10-02 11:23:42 -07:00
Emmanuel Garcia
db9991279d
Support dragging native platform views (#21396) 2020-09-25 17:46:34 -07:00
xster
88e53777d1
Enforce exclusivity for activity and fragments attached to the FlutterEngine (#21272) 2020-09-22 10:34:52 -07:00
xster
5f49a95499
Add auto plugin registration to FlutterFragmentActivity as well (#20865) 2020-08-31 13:43:46 -07:00
xster
15f5696c41
Add a java injector for testing (#20789) 2020-08-29 22:29:23 -07:00
Greg Spencer
88fd13fcd3
Reland: Implement delayed event synthesis key event handling for Android (#20736)
This re-lands the key event synthesis implementation for Android (Original PR: #19024, Revert PR: #19956). The only difference is sending the synthesized key events to the root view instead of the current view.

Without sending it to the root view, the system doesn't have any chance of handling keys like the back button. The event will still not be sent to the framework twice, since we turn off event propagation while re-dispatching the event.
2020-08-28 14:45:38 -07:00
Justin McCandless
33015c6c7a
hasStrings on Android (#20393)
hasStrings message for checking for pasteable clipboard contents without actually reading them, for iOS14 clipboard alerts.
2020-08-14 08:45:18 -07:00
Mehmet Fidanboylu
dd2c5a1b8b
Plumbing for setting domain network policy (#20218) 2020-08-13 07:26:43 -07:00
Siva
b955e15ee9
Manual roll of Dart from 24c7666def...40fd1c456e (#20092)
* Manual roll of Dart from 24c7666def...40fd1c456e

dart-lang/sdk@40fd1c456e Revert "[dart:io] Add Abort() on HttpClientRequest"
dart-lang/sdk@17d7296a42 [vm/nnbd/bytecode] Fix reuse of type arguments in bytecode
dart-lang/sdk@58b6f40c73 Issue 42797. Understand in legacy libraries that a function returning Never (in Null Safety library) never returns. (reland)
dart-lang/sdk@fc8a6d9f9b [VM/compiler] Dereference TypeRef literal when propagating constants.
dart-lang/sdk@0689ec527a Move "test.dart" (well, most of its contents) into pkg/test_runner.
dart-lang/sdk@1094b3c61d Prepare static error test updater tool to handle web tests.
dart-lang/sdk@b258585f2f [observatory] Migrate from deprecated isInstanceOf to isA.
dart-lang/sdk@dfe1d9b682 Disable OverrideContributor for Cider.
dart-lang/sdk@aea99b2f5c scope debug property assist to Diagnosticables
dart-lang/sdk@4b96f20a79 [dart:io] Add Abort() on HttpClientRequest
dart-lang/sdk@1b1a39708c [build] Use frameworks instead of libs
dart-lang/sdk@3fef522496 Revert "Reland "[vm] Replaces fuchsia.deprecatedtimezone""
dart-lang/sdk@8c664d4f3f Revert "Issue 42797. Understand in legacy libraries that a function returning Never (in Null Safety library) never returns."
dart-lang/sdk@2efb5bebc7 [ dart:_http ] Fix typo in HTTP response timeline event
dart-lang/sdk@0884dae36c Revert "Fix the #include path for ICU headers"
dart-lang/sdk@5171534e81 Scope tweaks. Report REFERENCED_BEFORE_DECLARATION in more places.
dart-lang/sdk@6bba75079a Issue 42797. Understand in legacy libraries that a function returning Never (in Null Safety library) never returns.
dart-lang/sdk@b4ebbb7f5c [build] Update gn to match Fuchsia
dart-lang/sdk@cb428a7a02 [dart2js] Remove old bug work around in collector.
dart-lang/sdk@08663c20ab Change flutter patch to match existing DEPS on master branch
dart-lang/sdk@146ad014d9 update js/meta for the 2.10 dev sdk
dart-lang/sdk@488c718793 [co19] Roll co19 to d79951e06e443213243e54c2c32694b79a221b65
dart-lang/sdk@ba20edd7be Add patch for flutter-engine when changing to version 2.10

* Rev buildroot to latest version.

* Update license.

* update.

* Update gn revision.

* Format BUILD.gn files as the gn revision has been updated.
2020-07-29 13:10:15 -07:00
chunhtai
db8c40b3f3
fix FlutterViewUpdateCustomAccessibilityActions uses correct string list (#19623)
* fix FlutterViewUpdateCustomAccessibilityActions uses correct string list

* add test to ci

* format

* add license file

* fix test

* fix lint
2020-07-28 09:49:59 -07:00
Greg Spencer
18200e7e8e
Revert "Implement delayed event synthesis key event handling for Android (#19024)" (#19956)
This reverts commit 8825f9178d884d07b43590ef52bb929ac9a3773f because it breaks flutter_gallery__back_button_memory and a customer test.
2020-07-22 12:36:26 -07:00
Greg Spencer
8825f9178d
Implement delayed event synthesis key event handling for Android (#19024)
This implements the design in flutter.dev/go/handling-synchronous-keyboard-events for Android.

I started with Android, but this will be used for all platforms as we add them.

The related framework PR is: flutter/flutter#59358 (which has already landed)
2020-07-17 11:03:19 -07:00
Kaushik Iska
3dc81635db
[android] Pass synthesized eventType to VirtualDisplay platform views and fix memory leak (#19620) 2020-07-09 18:06:02 -07:00
Kaushik Iska
110a57983b
Track motion events for reuse post gesture disambiguation (#19484)
This change makes it so that we track all the motion events encountered by `FlutterView` and all of its subviews in the `MotionEventTracker` class, indexed by a unique `MotionEventId`. This identifier is then passed to the Flutter framework as seen in https://github.com/flutter/flutter/pull/60930. Once the gestures take part in gesture disambiguation and are sent back to the engine, we look-up the original motion event using the `MotionEventId` and dispatch it to the platform.

Bug: https://github.com/flutter/flutter/issues/58837
2020-07-06 22:22:37 -07:00
Chris Yang
cc9ccf98ae
Implement mutator stack on Android hybrid composition platform view (#19426) 2020-07-04 13:03:04 -07:00
Gary Qian
559d93d978
Android native locale resolution algorithm (#19266) 2020-06-26 02:48:33 -07:00
Maurice Parrish
1913040ebe
Creates a new RenderMode for FlutterView (#19143) 2020-06-22 14:40:00 -07:00
Emmanuel Garcia
b990ad11bd
Implement external view embedder on Android (#19033)
The external view embedder allows to embed Android views in a Flutter app.
2020-06-20 12:51:55 -07:00
cg021
2c60d87c39
createOverlaySurface JNI method (#19076)
* createOverlaySurface JNI

* update imports

* remove unused method

* license

* deleted unused file

* remove wrong function call

* removed duplicate createOverlaySurface
2020-06-17 15:21:41 -05:00
Emmanuel Garcia
99442c6c18
Revert add createOverlaySurface JNI #19040 (#19075) 2020-06-16 14:06:15 -07:00
Gary Qian
3a96741247
Platform resolved locale and Android localization refactor (#18645) 2020-06-16 04:29:50 -07:00
cg021
de063512c5
Add createOverlaySurface JNI (#19040) 2020-06-15 19:49:29 -07:00
Michael Goderbauer
f7d241fd8a
Wire up channel for restoration data (#18042) 2020-06-12 16:31:25 -07:00
Emmanuel Garcia
e5845af424
Put JNI functions under an interface (#18903) 2020-06-10 18:40:58 -07:00
xster
5edd766628
Fix intent builder visibility (#18875) 2020-06-08 12:08:04 -07:00
Emmanuel Garcia
fafccf8a3a
Refactor AndroidContextGL, AndroidSurface and AndroidSurfaceGL (#18670) 2020-06-05 09:18:03 -07:00
Tong Mu
b3e7732cf9
System mouse cursor: Android (#18569)
Adds system mouse cursor to the Android engine.
2020-06-01 18:08:43 -07:00
xster
f3b7ed4078
Let run_tests.py just stream output (#18534) 2020-05-20 21:38:37 -07:00
Mehmet Fidanboylu
6c5f2396e1
Add tests for StandardMethodCodec (#18521) 2020-05-20 21:02:03 -07:00
xster
40167b68ed
Make robolectric tests run against SDK 29 by default (#17996) 2020-05-07 23:29:02 -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
Emmanuel Garcia
eed05dd00d
Add initial unit tests for the android embedding (#17921) 2020-04-26 20:45:28 -07:00
Emmanuel Garcia
b1c51cfe78
Extend external view embedder on Android (#17839) 2020-04-21 19:14:38 -07:00
Jonah Williams
6e1d7f8883
[a11y] Support TalkBack reading by word, character, and paragraph (#17626) 2020-04-15 19:07:12 -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
3190d54a69
Add the Android SDK lambda stub library to the classpath (#17508)
Previously the build scripts obtained the lambda support classes from rt.jar,
which is no longer provided by recent versions of the JDK.
2020-04-07 11:24:52 -07:00
Emmanuel Garcia
025e2d82dd
Migrate embedding to AndroidX (#17075) 2020-03-13 21:19:24 -07:00
Edman P. Anjos
9beac71a2e
Add support for software text editing controls (#15560)
* Add support for software text editing controls

Includes selection, copy, cut, paste, as well as partial support for up
and down movement.

Text editing controls can be accessed in GBoard by:
  top-left arrow > three dots menu > text editing

Partial fix for flutter/flutter#9419 and flutter/flutter#37371.

* Introduce InputConnectionAdaptor tests

Run with:
  testing/run_tests.py --type=java --java-filter=io.flutter.plugin.editing.InputConnectionAdaptorTest

* Fix BUILD.gn comment on run_tests.py --java-filter flag
2020-02-28 20:18:04 +01:00
Justin McCandless
02aa865da3
Fix the newline on some keyboards (#16560) 2020-02-20 10:36:03 -08:00
Matt Carroll
f39bc73d6a
Exposes FlutterSurfaceView, and FlutterTextureView to FlutterActivity and FlutterFragment. (#41984, #47557) (#16552) 2020-02-12 19:21:00 -08:00
Matt Carroll
95468839a0
Added API guards to flags in PlatformPlugin that were introduced after Flutter's min SDK version. (#13965) 2020-02-03 16:25:27 -08:00
Chinmay Garde
f7b78e001d
Remove all uses of the redundant flutter_root variable. (#16311)
This was only necessary when the Engine had to build in multiple buildroots
where the sources where checked out at different paths relative to the
buildroot. This is no longer the case and there are already cases GN rules
have been written that mix and match variable usage with the direct
specification of the path to the Flutter sources relative to the sole buildroot.
2020-01-31 21:49:48 -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
Matt Carroll
4513205b13 Make BackgroundMode public. (#45747) (#14673) 2020-01-08 21:41:34 -08:00
Matt Carroll
687a1a7541
Add support for --dart-flags in FlutterShellArgs. (#44855) (#13855) 2019-11-14 04:09:08 +00:00