1210 Commits

Author SHA1 Message Date
Chinmay Garde
e356dbca2c
Merge flutter/synchronization contents into fml. (#8525)
When flutter/synchronization was first authored, we did not own fml (it was called fxl then). Now we do, so use a single spot for such utilities. The pipeline was meant to be a general purpose utility that was only ever used by the animator (it even has animator specific tracing), so move that to shell instead (where the animator resides).
2019-04-09 19:18:51 -07:00
Chinmay Garde
39e1d00f39
Remove redundant specification of the |flutter| namespace in the engine. (#8523) 2019-04-09 17:50:06 -07:00
Chinmay Garde
56052c70af
Rename the shell namespace to flutter. (#8520) 2019-04-09 17:10:46 -07:00
Matt Carroll
5279132687
Android Embedding PR27: Fix SurfaceView flicker in Fragment transactions (#8504) 2019-04-09 13:45:25 -07:00
Chinmay Garde
86ab45cd5c
Remove the unused EnableBlink flag. (#8518)
This used to be when we had two text shaping engines.
2019-04-09 13:26:48 -07:00
Chinmay Garde
eec74e5c92
Rename the blink namespace to flutter. (#8517)
Some components in the Flutter engine were derived from the forked blink codebase. While the forked components have either been removed or rewritten, the use of the blink namespace has mostly (and inconsistently) remained. This renames the blink namesapce to flutter for consistency. There are no functional changes in this patch.
2019-04-09 12:44:42 -07:00
nathanrogersgoogle
8a46559653
Route FlutterEventTracer events to Fuchsia tracing for Fuchsia (#8499)
When running on Fuchsia, "fml/trace_event.h" sends trace events towards
Fuchsia's tracing system, rather than its own |fml::tracing::*| one.  Do
the same thing for |FlutterEventTracer|, in order to unlock category
"skia" trace events when running on Fuchsia.

The reason this was not working before is because |FlutterEventTracer|
was directly using |fml::tracing::*| functions, rather than the
TRACE_EVENT_* macros.

In the future, we can look into having the skia event tracer enabled by
default on Fuchsia, controlling the presence of Skia events by
enabling/disabling the "skia" category, once we measure the performance
cost of doing so.
2019-04-08 22:54:06 -04:00
Chinmay Garde
612abee90b
Wire up support for Dart fixtures in shell_unittests. (#8497) 2019-04-08 15:36:07 -07:00
Matt Carroll
dbcfc504cc
Android Embedding PR26: Offer an async version of FlutterMain's ensure initialization complete. (#8465) 2019-04-08 14:46:41 -07:00
KyleWong
0bf708ee1a Refactor ios play input sound logic. (#7783)
As there are extra requirement to use playInputClick in iOS, use AudioServicesPlaySystemSound instead to play input sound.
2019-04-08 11:31:23 -07:00
Alan Doubleday
075b4899d0 Support ContextWrapper when FlutterView is instantiated within a Fragment. (#7776) 2019-04-08 10:30:36 -07:00
Matt Carroll
d3fbaea9a4
Android Embedding PR25: Prevent black rectangle when launching FlutterActivity (#8460) 2019-04-05 15:59:12 -07:00
Chinmay Garde
ce7c21ce9b
Log the correct function on error in the embedder. (#8461) 2019-04-05 15:16:07 -07:00
Chinmay Garde
424045c3f2
Enable shutting down all root isolates in a VM. (#8457)
This reverts commit 800ea0a40397d53311715e0de94f0340195bfcea.
2019-04-05 13:34:40 -07:00
Matt Carroll
6bc33b5e14
Android Embedding PR24: Allow FlutterActivity to provide an engine, also adjust FlutterFragment timing to avoid Activity launch lag. (#8448) 2019-04-05 13:04:17 -07:00
xster
8b74cba20b
Make sure FlutterViewController flushs all pending touches when no longer active (#8400) 2019-04-04 16:22:37 -07:00
stuartmorgan
a40adfdf4a
Add window title/icon support to GLFW shell (#8435)
The GLFW shell used a hard-coded title and default icon for the window,
but these are things that a client should be able to control.
2019-04-04 13:54:07 -04:00
Chinmay Garde
800ea0a403
Revert "Enable shutting down all root isolates in a VM. (#8402)" (#8431)
This reverts commit b59c4436ce9fb8aa09bad6eb5ca729350a3ab272.
2019-04-03 17:08:56 -07:00
Chinmay Garde
b59c4436ce
Enable shutting down all root isolates in a VM. (#8402) 2019-04-03 15:44:29 -07:00
Chris Bracken
9acdf1837f
Make AccessibilityViewEmbedder final (#8429)
Since this class implements equals() and hashCode() it should either be
final or handle subclasses in equals(); given this is unlikely to be
subclassed, making it final is the simpler option.
2019-04-03 15:06:11 -07:00
Chris Bracken
804d54ddff
Eliminate unused displayBounds parameter (#8427)
Use of this parameter was eliminated in 37947f9.
2019-04-03 14:28:29 -07:00
Chinmay Garde
7e38b0aa23
Revert "Revert "Separate the data required to bootstrap the VM into its own class. (#8397)" (#8406)" (#8414)
This reverts commit f7b4903d7c9913447af3aaebc4308d1a1e2a4dde.
2019-04-03 13:38:12 -07:00
stuartmorgan
a650790e44
Add scroll wheel support to desktop GLFW shell (#8416)
Sends scroll events from GLFW to the Flutter engine, allowing scrolling
of Scrollables via a scroll wheel.
2019-04-02 18:17:23 -04:00
Zachary Anderson
f27c5730ae
[fuchsia] Exclude glfw from the Fuchsia host build (#8407) 2019-04-02 09:49:14 -07:00
Zachary Anderson
f7b4903d7c
Revert "Separate the data required to bootstrap the VM into its own class. (#8397)" (#8406)
This reverts commit c991647404f8117dab2ca4ed49aa3ba48a634240.
2019-04-02 09:12:56 -07:00
Chris Yang
cfe8675ff5
Delay platform view removal to submitFrame. (#8380)
Remove platform views inside OnDispose might cause issue if it happens before SubmitFrame and the active_composition_order has not been updated.
We will be left at a situation where the active_composition_order still contains the old view, but the view is actually removed from the UIView hierarchy.

We now cache the views need to be removed in OnDispose and actually remove them in SubmitFrame. At the same time, we remove stop detaching the subviews if they were disposed. 

As a side effect, this update will also fix flutter/flutter#30220
2019-04-01 17:06:32 -07:00
Chinmay Garde
c991647404
Separate the data required to bootstrap the VM into its own class. (#8397)
When attempting to shutdown and subsequently restart the VM, having the
VM own this data introduces lifecycle issues due to circular references.
2019-04-01 14:58:05 -07:00
Dan Field
40eb74c50b
Make the resource context primary on iOS (#8387)
* Make resource context primary on iOS
2019-04-01 12:46:28 -07:00
Amir Hardon
82071e9161
Don't access a11y APIs with reflection starting Android P. (#8393) 2019-03-31 23:21:51 -07:00
Chinmay Garde
131cc625a1
Allow native entrypoint registration for runtime unittests. (#8379) 2019-03-29 17:53:49 -07:00
Jason Simmons
ca7623eb39
Handle null values in TextInputConfiguration.actionLabel JSON (#8377)
Fixes https://github.com/flutter/flutter/issues/29798
2019-03-29 17:15:04 -07:00
Jason Simmons
71d59cde9e
Check for hover motion events in AndroidTouchProcessor (#8376)
Fixes https://github.com/flutter/flutter/issues/30122
2019-03-29 15:42:11 -07:00
Zachary Anderson
fdcbb40fe9
[flutter_tester] Accept --icu-data-file-path (#8374) 2019-03-29 14:57:40 -07:00
Chinmay Garde
86f4b741b8
Move libdart selection into its own target in //flutter/runtime. (#8373)
Cleanup repeated rules.
2019-03-29 14:29:09 -07:00
stuartmorgan
8412c199a5
Enable Linux shell build (#8233)
Enables building of the GLFW shell and the related unit tests.
2019-03-29 16:34:02 -04:00
Chinmay Garde
a1a2129bc4
GN Format all files in the engine. (#8369) 2019-03-29 12:44:57 -07:00
Jason Simmons
930033d95c
Create a new resource loading EGL context for each PlatformView instance on Android (#8330)
Using one global resource loading context will fail if two PlatformViews are
running concurrently with two different IO threads.
2019-03-28 11:33:56 -07:00
Chinmay Garde
8d56284cda
Remove the standalone a11y test runners and merge its tests into embedder_unittests. (#8338)
Also cleans up the a11y unittests to use the new builder API and avoids polluting the global namespace with state for assertions.
2019-03-28 11:22:06 -07:00
Chinmay Garde
975fe8776c
Reset min log levels on each engine launch. (#8343) 2019-03-28 11:21:25 -07:00
stuartmorgan
84c62b4c7d
Build Windows shell (#8331)
Enables the build of the Windows shell, based on the same GLFW code used
by the current Linux shell.
2019-03-27 23:38:44 -04:00
stuartmorgan
5c99138fa8
Build GLFW from source for Linux shell (#8327)
Instead of requiring a system-level GLFW, build it from source and
statically link it into the Linux shell.
2019-03-27 20:22:50 -04:00
Chinmay Garde
68002458f4
Fix Windows build. (#8336) 2019-03-27 16:43:08 -07:00
stuartmorgan
6d8b836777
Remove use of epoxy from Linux shell (#8334)
Simplifies the build and runtime requirements for the Linux shell.
Since the engine does GL extension lookup manually anway, an extension
loader library isn't necessary.
2019-03-27 19:24:03 -04:00
Chris Bracken
4efc32163c
Add super call in FLEView reshape (#8335)
NSOpenGLView reshape is annotated with NS_REQUIRES_SUPER. This avoids
build failures when building with `-Wobjc-missing-super-calls`.
2019-03-27 16:22:12 -07:00
Chinmay Garde
cb8eb801a4
Allow embedders to specify their own task runner interfaces. (#8273)
Currently, all Flutter threads are managed by the engine itself. This works for
all threads except the platform thread. On this thread, the engine cannot see
the underlying event multiplexing mechanism. Using the new task runner
interfaces, the engine can relinquish the task of setting up the event
multiplexing mechanism and instead have the embedder provide one for it during
setup.

This scheme is only wired up for the platform thread. But, the eventual goal
is to expose this message loop interoperability for all threads.
2019-03-27 16:16:59 -07:00
Amir Hardon
37947f961a
Allow delegation of a11y events from nodes that were not yet traversed (#8333)
The AccessibilityViewEmbedder was not delegating a11y events coming virtual nodes(of the embedded view) that were not previously traversed by the a11y framework.

It turns out the a11y framework might leave parts of the tree untraversed in some circumstances, changed the behavior to create an originId<-->flutterId mapping on the fly when an event is delegated from a not previously traversed node.

Fixes flutter/flutter#30010.
2019-03-27 15:49:15 -07:00
Matt Carroll
7620056277
Android Embedding PR22: Polish - FlutterActivity Intent factories, FlutterFragment control of render modes, FlutterSurfaceView transparent until rendering is ready. (#8317) 2019-03-27 14:57:23 -07:00
nathanrogersgoogle
6bd697dd4c
Fix "PointerEvent" flow end event (#8319)
"DispatchPointerDataPacket" should have been "PointerEvent".
2019-03-27 14:34:01 -07:00
Chinmay Garde
3a3f707d5a
Reland "Allow specification of std::functions as native entrypoints from Dart code." (#8329)
This reverts commit 7e77d5c484a08cc1c189619e80ae71a7f1df62fb after fixing Windows issues.
2019-03-27 12:22:48 -07:00
Chris Yang
fd7d7fa5a0
Add a11y support for embedded iOS platform view (#8156)
Follow up the framework change in flutter/flutter#29304.
Inject the accessibility element tree in the semantic node if the node is for platform views.

flutter/flutter#29302
2019-03-26 16:04:42 -07:00