2532 Commits

Author SHA1 Message Date
Dan Field
3d104f4364
remove obsolete check on FlutterPlatformViewsController::OnCreate (#19819)
* remove obsolete check

* FML_DCHECK flutter_view_ in methods that actually use it
2020-07-16 15:37:10 -07:00
chunhtai
5a25a28174
Makes IOS dispatch showOnCcreen action for header semantics nodes (#19788)
* Makes IOS dispatchs showOnCcreen action for header semantics nodes

* update

* format
2020-07-16 11:00:28 -07:00
Stanislav Parshin
bce3451ac8
Fix NullPointerException in FlutterTextView (#19501) 2020-07-16 08:06:04 -07:00
Gary Qian
e55af0ebfb
Desktop embedder ComputePlatformResolvedLocale entrypoint (#19597) 2020-07-16 04:48:02 -07:00
rekire
f21cd8aedf
Prevent that removeActivityResultListener() is causing an ConcurrentModificationException (#19702) 2020-07-15 17:59:08 -07:00
Tong Mu
fbef051f5c
Add all system cursors (engine) (#19550)
* Support all system cursors in WIn, Linux, mac, Web and Android.
2020-07-15 15:37:18 -07:00
Jonah Williams
5d757690d5
[null-safety] update use of dot packages to package_config.json (#19780)
Work towards flutter/flutter#60999

All usage of .packages must eventually be replace with package_config.json to support language versioning.
2020-07-15 15:26:34 -07:00
Kaushik Iska
1832613e09
[android] Childview will process its motion events (#19662) 2020-07-14 19:18:14 -07:00
David Reveman
f6113f6aee
[fuchsia] Fix use-after-free due to raster cache (#19740)
Co-authored-by: David Reveman <reveman@google.com>
2020-07-14 19:06:45 -04:00
Jonah Williams
c6f0b4b43a
[null-safety] add null assertions to dart-flags allowlist (#19746)
Will allow enabling the null-safety asserts flag for flutter/flutter#61042
2020-07-14 13:27:07 -07:00
Michael Goderbauer
518fbd1652
Add flag to indicate whether the platform supports state restoration (#19717) 2020-07-14 11:01:25 -07:00
Jonah Williams
4a2bf61a30
switch kernel_compiler to package_config (#19582)
Update the kernel compiler target to be compiled with a package_config, eventually needed for null safety.

Work towards flutter/flutter#60999
2020-07-14 09:16:36 -07:00
David Worsham
fef0fccb79
Fix Mac / iOS builds (#19728) 2020-07-13 18:34:49 -07:00
David Worsham
9353692cdb
fuchsia: Enable most unittests (#19583)
Tweak the primary flutter build rule so that fuchsia is more similar to
other platforms in how tests and the shell are built.

Only embedder_unittests and GLFW tests are disabled on Fuchsia now.

TEST: Ran unittests on host/fuchsia; workstation on fuchsia
BUG: fxb/53847, fxb/54056
2020-07-13 17:36:19 -07:00
David Reveman
d024ae4009
[fuchsia] Use memory_requirements_2 extension. (#19678)
This is required by some Vulkan 1.0 drivers. For example,
MoltenVK through goldfish ICD when running in the emulator.

Co-authored-by: David Reveman <reveman@google.com>
2020-07-13 17:37:20 -04:00
Sebastian Roth
4a3aa4dc8a
Fixes typo in android_context_gl.h (#19700) 2020-07-13 21:45:27 +01:00
Tong Mu
7a95e32fc5
Linux: Use a hash table to map cursors (#19561)
Refactors the process of looking up system mouse cursor value, so that instead of a linear search it uses a hash table.
2020-07-13 13:32:13 -07:00
Gary Qian
8d241e4926
[Android] Prevent FlutterRenderer listener from calling JNI after detach (#19558) 2020-07-13 06:29:30 -07:00
Andy Weiss
015f2ea765
Use the main bundle if the App bundle is not found (#18749)
It looks like half the code in this function was updated to use the
main bundle but this one line was still only using the _dartBundle. I am
pretty sure that is a mistake and instead we want to use the mainBundle
as a backup both to find the plist and to find the assets.
2020-07-11 21:08:27 -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
gaaclarke
9345347587
Added the ability to set properties in interface builder for FlutterViewController. (#19458) 2020-07-09 17:23:32 -07:00
Robert Ancell
f3ab78dc1f
Fix clipboard paste functionality not working (#19489) 2020-07-10 11:34:23 +12:00
Robert Ancell
c479b93708
Fix documentation of unset platform view ID (#19320) 2020-07-10 11:17:14 +12:00
Robert Ancell
160b268ef1
Set locale in Linux shell (#19470) 2020-07-10 11:16:50 +12:00
stuartmorgan
6726a467a8
Implement cursor support for Windows (#19459)
Implements the basic engine support for Windows for
https://github.com/flutter/flutter/issues/31952
2020-07-09 11:18:39 -07:00
Justin McCandless
033c373730
Make DPAD movement consider grapheme clusters (#17420)
Moving the caret with the software Dpad now correctly considers complex characters.
2020-07-08 13:59:58 -07:00
gaaclarke
41c503cc23
Changed iOS channels to start cleaning up the accessibility handler when the bridge is deleted (#19556)
Started cleaning up the accessibility handler when the bridge is
deleted and made nilling out channels safer by making sure they don't
overwrite newly setup handlers.
2020-07-08 13:26:29 -07:00
Kaushik Iska
40d3f7c64e
Propoagate Tap events on Android hybrid views (#19608)
Translate the coordinate from global flutterview to the specific embedded sub-view.
2020-07-08 13:19:17 -07:00
Dan Field
eab9b7f2a4
Call Dart_NotifyLowMemory more on iOS (#19289) 2020-07-08 04:44:03 -07:00
Chinmay Garde
0dc86cda19
Only attempt surface creation in viewDidLayoutSubviews if the application is active. (#19592)
UIKit does not guarantee that the application is in the active state when it
lays out it subviews. However, in `viewDidLayoutSubviews`, Flutter attempts to
create the render surface and wait for the first frame. These operations require
GPU access which is forbidden when in the background on iOS. This layout while
in the background only seems to happen under very specific circumstances as
described in the reproducible test case. Notably, this behavior cannot be
reproduced when the application is just launched with the "Background Fetch"
XCode run scheme. The other instance of invocations to create the rendering
surface have been audited and I can confirm that those are already in the
correct lifecycle callbacks. This was the only instance where the surface
creation was in a non-lifecycle callback.

Fixes https://github.com/flutter/flutter/issues/55969
(This issue has a clear reproducible test case and was used as the basis for
verification.)
Fixes https://github.com/flutter/flutter/issues/57676
(This is significantly harder to reproduce but the issue looks to be the same. I
tried this patch on multiple devices overnight and could not reproduce this.)

This underlying cause here was identified by the enhanced GPU error reporting
introduced in iOS 14. I am not able to submit those patches because the Beta
builders are not available on infra. I will submit those when available so that
issues like this have more actionable error messages in the future.
2020-07-07 17:14:01 -07:00
Chase Latta
b919945af8
include list_libraries.dart as a snapshot for fuchsia (#19567) 2020-07-07 11:16:50 -07:00
James Clarke
d0d6a4c236
Refactor Win32FlutterWindow in preparation for UWP windowing implementation (#18878)
* Add flutter_windows_view and window_binding_handler

Switch input handling infra to FlutterWindowsView

win32_flutter_window implement WindowBindingHandler

Strip unneeded functionality from win32flutterwindow

Fulfill WindowBindingHandler interface in Win32FlutterWindow

Add implementations for missing input handling in Win32FlutterWindow

Cleanup dead code

Correctly hook up rendering again

Fix resizing

clang-format

Fix clipboard

Cleanup

Rename

Add comments

cleanup

* clang-format

* CR Feedback

* clang-format; gn format

* Fix licensing

* CR feedback

* CR feedback

* CR feedback

* Git rid of unnecessar :: prefixes

* Extract WindowBindingHandlerDelegate as an interface

* Missing file

* Extract physical window bounds as a struct

* CR Feedback

* CR feedback

* clang-format

Co-authored-by: Stuart Morgan <stuartmorgan@google.com>
2020-07-07 06:49:51 -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
Emmanuel Garcia
5f8e91cc40
Resubmit frame when the surface is switched (#19555) 2020-07-06 21:55:52 -07:00
Emmanuel Garcia
0e9b250843
Add @Keep annotation to FlutterMutatorsStack (#19560) 2020-07-06 18:23:47 -07:00
Emmanuel Garcia
d1f3037c4c
Switch to FlutterSurfaceView if no Android view is in the frame (#19487) 2020-07-06 14:51:46 -07:00
Chris Yang
cc9ccf98ae
Implement mutator stack on Android hybrid composition platform view (#19426) 2020-07-04 13:03:04 -07:00
renyou
cee437e8d1
Revert "Add tests & --unopt to build_fuchsia_artifacts (#18625)" (#19494)
This reverts commit fae8141f9f5f64bd9aad8d53f031f2416bf82ec8.
2020-07-03 13:26:19 -07:00
renyou
6184f62897
Revert "fuchsia: Fix profile build (#19399)" (#19493)
This reverts commit a974b78117dca341473207eb63b8d6ccb06587c3.
2020-07-03 13:26:00 -07:00
Robert Ancell
acd026ed3f
Use the X visual from the EGL configuration when making an FlView. (#19438) 2020-07-03 09:37:51 +12:00
Kaushik Iska
f8bbcc396b
Synthesize touch events for hybrid views (#19427)
Co-authored-by: Kaushik Iska <kaushikiska@google.com>
2020-07-02 12:31:30 -07:00
Kaushik Iska
f74c0f0e83
FlutterView will hadle dispatching all touch events to sub-views (#19482) 2020-07-02 12:31:10 -07:00
Guruji Panda
01345f5372
Fix paths in source and yaml files to minimize changes in google3 (#19414) 2020-07-01 16:13:03 -07:00
Robert Ancell
480afb30ad
Show EGL configuration debugging when fail to create surface/context (#19397) 2020-07-02 09:35:00 +12:00
Emmanuel Garcia
6e1f795f87
Revert unintended change (#19435) 2020-06-30 19:48:01 -07:00
Emmanuel Garcia
0e82628caf
Update scenario UI screenshoots (#19421) 2020-06-30 18:38:06 -07:00
Alexandre Ardhuin
218d98f4d8
Operator equals (#19303)
* use Object for operator==

* apply style guide for operator==
2020-06-30 23:16:31 +02:00
Jason Simmons
2dc202d823
Basic support for resizing overlay surfaces in hybrid composition (#19402) 2020-06-30 14:08:04 -07:00
liyuqian
e9e59f4e2b
Use FixtureTest to remove duplicate code (#19219)
Fixes https://github.com/flutter/flutter/issues/59109
2020-06-30 10:55:38 -07:00
David Worsham
a974b78117
fuchsia: Fix profile build (#19399) 2020-06-29 17:35:35 -07:00