42 Commits

Author SHA1 Message Date
Jason Simmons
6f4eb92020 libtxt: support the use_test_font flag required by framework tests (#4216)
This registers a test font manager that maps all fonts to the Ahem font
2017-10-13 11:31:35 -07:00
Zachary Anderson
555ccfc030 [Android] Lazily create the rasterizer and platform surface (#4207) 2017-10-12 15:38:28 -07:00
Alexander Aprelev
a5e26f1f79 Fix RunBundleAndSource to run from kernel. (#4184)
* Fix RunBundleAndSource to run from kernel.

This is needed to accommodate restarting(rather than reload) of Flutter app from kernel.

* Fix formatting
2017-10-11 16:04:57 -07:00
gspencergoog
b2a7f4bf8f Add support for system text scale factor. (#4124)
Adds support for system text scale factor, including hooks for Android system settings changes.  iOS hooks will be added in another PR.
2017-09-29 13:19:06 -07:00
George Kulakowski
3aa7522c11 Rename ftl to fxl in Fuchsia specific code (#4090) 2017-09-11 15:58:48 -07:00
Chinmay Garde
a0f9084f48 Wire up support for multiple font managers in txt::FontCollection. (#4042) 2017-09-01 11:56:38 -07:00
Ryan Macnak
ffbefaf477 Initial implementation of idle notification. (#4012)
- Assumes only the Dart VM is interested in idle notification.
 - Gives the VM the time remaining in each frame.
 - Gives the VM 100ms if there is no pending frame.

Issue flutter/flutter#9594
2017-09-01 11:11:25 -07:00
Jason Simmons
42f5bc5fdf Fixes related to usage of std::weak_ptr to hold PlatformViews (#3949)
* Call weak_ptr.lock(), which returns a null shared_ptr and does not throw
* IsViewInvalid was inverted
2017-08-03 10:53:17 -07:00
Alexander Aprelev
ba9a525bdc Update Flutter engine kernel-loading logic. (#3886)
* Fix Flutter loading from dill files.

* Remove disable of causal async stacks.

* Include mirrors patch files as they are needed for release/profile gen_snapshot

* Free the bytes

* Add FTL_DCHECK
2017-07-24 09:47:23 -07:00
xster
aeaefbaddf Always schedule a frame on app did become active (#3910) 2017-07-20 10:54:08 -07:00
Carlo Bernaschina
8ba522eeae Avoid to freeze the system if hot reloading during debug (#3833) 2017-07-12 10:25:42 -07:00
Sarah Zakarias
a87d15d62e Send AppLifecycleState notifications on FlutterViewController lifecycle events. (#3801) 2017-06-21 14:39:05 +02:00
Sarah Zakarias
f37aafd456 Add setInitialRoute on FlutterView. (#3727) 2017-06-06 10:59:41 +02:00
Chris Bracken
75c74dc463 Add inactive, suspending ApplicationLifecycleState values (#3713)
**This is a breaking change on iOS**

Previously, the `paused` state was entered when the application resigned
active status. `inactive` now maps to this status. `paused` now maps to
an app that has been backgrounded.

`inactive` is currently emitted on iOS only and corresponds to iOS's
foreground inactive state.

Current state transitions are:
`resumed` <--> `inactive` <--> `paused`

suspending is currently emitted on Android only and corresponds to the
transition to Android's stopped state.

Current state transitions are:
`resumed` <--> `paused` --> `suspending` --> `resumed`

These transitions may change in future.
2017-05-24 16:34:34 -07:00
P.Y. Laligand
2e7e40c5a7 Fix -Wmissing-field-initializer warning on Fuchsia. (#3624) 2017-04-24 14:06:37 -07:00
Ryan Macnak
1084a83f11 AOT for Fuchsia. (#3570) 2017-04-11 14:53:14 -07:00
Mikkel Nygaard Ravn
68194b8df8 Distinguish between null platform message and one with zero-byte payload (#3577) 2017-04-09 00:07:28 +02:00
Chinmay Garde
1c07ea530f Remove uses of //base from all //flutter projects and replace them with //fml variants. (#3492) 2017-03-22 15:42:51 -07:00
Dan Rubel
481049f9cd add kernel support (#3369) 2017-02-16 10:11:38 -05:00
Jason Simmons
8e7d68f823 Return an exit code from sky_shell representing what kind of error occurred (#3368)
This is intended to match the exit codes returned by the Dart command line tool
2017-01-27 09:59:08 -08:00
Jason Simmons
fdcd65eedd Exit the non-interactive sky_shell on Linux when the Dart script has completed (#3358)
The script will be finished when the microtask queue has been drained and
Dart_HasLivePorts is returning false for the main isolate
2017-01-24 15:39:30 -08:00
Chinmay Garde
e133b4fb17 Add option to desktop test shells to use an embedded font for consistent unit tests. (#3301)
* This allows the tests to add their own FLX files but still use consistent fonts.
* The test fonts are only embedded on the desktop test shells. The option is not available on mobile platforms.
* Right now, all fonts will resolve to the test font. If we want tests to be able to use the fonts they embed in FLX files but use the test font for platform fallbacks, we will need to add font selector fallbacks. I can do this in an another patch. So far, there are no users of this functionality.
2016-12-09 14:47:49 -08:00
Adam Barth
63e71803de Unlink from mojo (#3187)
After this patch, we no longer link with Mojo. We still use some gn definitions
from //mojo to create Dart packages.
2016-10-28 15:01:07 -07:00
Adam Barth
4b8c9051e5 Remove last mojom interface (#3184)
We no longer use mojom to transport messages. We still use the Mojo EDK
to spin the event loop, however.
2016-10-28 11:46:57 -07:00
Adam Barth
e26bf9a813 Unify the various run methods on engine (#3183)
Now they all flow through some common routines.
2016-10-27 17:03:32 -07:00
Adam Barth
9eaedb0677 Migrate ViewportMetrics away from Mojo (#3180)
Now we just pass the data directly.
2016-10-27 13:12:55 -07:00
Adam Barth
7e5d63513a Move lifecycle, navigation, and localization to platform messages (#3172)
Previously, these signals were sent over Mojo. Now we send them through
platform messages.
2016-10-25 15:51:27 -07:00
Adam Barth
d4f67e6b75 Migrate vsync away from Mojo services (#3169)
Instead, just use JNI and Objective-C directly.
2016-10-24 16:14:37 -07:00
Adam Barth
0aea498f61 Remove MojoServices from dart:ui (#3161)
We no longer offer mojo handles via this mechanism.
2016-10-20 20:27:07 -07:00
Adam Barth
b1c0ea79ca Switch engine over to platform messages (#3153)
This patch removes the use of the host messages mojom and switch all
message routing over to platform messages.
2016-10-19 22:36:00 -07:00
Adam Barth
6aab8f2c60 Add assets plugin (#3151)
This plugin is implemented internally by the engine to integrate with the asset
system.
2016-10-19 16:57:32 -07:00
Adam Barth
ae5d521e54 Switch from char to uint8_t to represent memory (#3147)
Previously we had a mix of the two.
2016-10-19 16:49:36 -07:00
Adam Barth
82728570b7 Response messages (#3134)
Add plunbing for Host-to-Dart platform messages

We'll use the plumbing in this direction for things like key events.
2016-10-14 15:51:25 -07:00
Adam Barth
6042580f9e Rewire platform messages to work like semantics (#3118)
After this patch, platform messages now take the same path through the system
that semantics data does (on Android). Support on iOS will be in another patch.
2016-10-11 19:02:04 -07:00
Adam Barth
e8f57e74a1 Improve new semantics backend (#3113)
TalkBack still isn't fully working, but this patch gets us much closer.
2016-10-11 13:27:11 -07:00
Adam Barth
2dc88cc6a5 Switch backend to consume new semantics API (#3103) 2016-10-11 10:52:48 -07:00
Adam Barth
166f44c0f7 Remove pointer.mojom (#3102)
This patch moves the rest of the clients to use the new PointerData
transport.
2016-10-06 10:59:30 -07:00
Adam Barth
f97caf271c Expose SemanticsUpdate and SemanticsUpdateBuilder (#3098)
This patch prepares us to switch sending semantics information over mojom to
using dart:ui directly. Currently the recorded information is dropped on the
floor, but that will improve in future patches.
2016-10-05 12:22:03 -07:00
Adam Barth
862d9e9f6b Android should use PointerDataPackets (#3092)
We now use JNI rather than Mojo to transport pointer data from Java to Dart.
Also, fill in a few more of the pointer data fields from information in Java.
2016-10-03 21:02:46 -07:00
Adam Barth
30d87519b1 Stop dispatching pointer packets (#3080)
Long live pointer data packets.
2016-09-29 21:59:44 -07:00
Adam Barth
5f7b060522 Switch to manually encoded pointer data (#3073)
Rather than using mojom to encode pointer data, we now encode and decode it
manually. A future patch will remove the mojom codepath once the framework is
updated.
2016-09-28 15:50:09 -07:00
Chinmay Garde
9eb446e0d5 Move shell to //flutter and split shell/BUILD.gn into smaller pieces for each subcomponent. (#3053)
* Namespaces have been updated to reflect the move from //flutter/sky/shell to //flutter/shell.
* shell/BUILD.gn file has been split into smaller GN files for each subcomponent of the shell (common, GPU, diagnostic, testing).
* GN dependencies have been rewritten to stop exposing common shell dependencies as public. Duplicates have also been removed.
* GPU subcomponent has been updated make it more suitable for Vulkan integration.
* The GLFW backend has been resurrected.
2016-09-23 15:33:25 -07:00