124 Commits

Author SHA1 Message Date
P.Y. Laligand
5fae5d52cf Allow the project to be mapped to a location other than //flutter. (#4203)
This is for Fuchsia where we would like it to be located at //third_party/flutter.
2017-10-13 17:00:58 -07:00
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
P.Y. Laligand
fc3cb8fb3b Adjust to new location of lib/tonic. (#4132) 2017-09-21 14:30:28 -07:00
Carlo Bernaschina
0c1e217287 Add anchor events for developer centric timeline (#4105)
By adding these events the new developer centric timeline will be able
to identify and correlate events related to the different stages of the
drawing pipeline.

Roll Dart to 62045a4590a333ae557f8f261a909ee75449cd70
2017-09-14 20:18:07 -07:00
Carlo Bernaschina
57a1445a45 Add --trace-skia parameter to flutter run (#4100)
Skia tracing is extremely useful for internal debug, but reduces the
amount of space available in the Dart Timeline buffers.
Disable skia tracing by default and expose them via the --trace-skia
flag.
2017-09-13 10:18:45 -07:00
Michael Goderbauer
08961f8ec5 Format all c-like sources with clang-format (#4088)
* format

* license script adaptions

* updated licenses

* review comments
2017-09-12 15:36:20 -07:00
George Kulakowski
6502090278 Fix remaining ftl->fxl conversions (#4091)
* Fix remaining ftl->fxl conversions

The previous scripting pass at this did not account for objective c file endings

* Update tonic DEPS reference to the post-fxl version
2017-09-11 16:31:18 -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
Adam Barth
73554a1c32 Add //garnet (#4043)
This repository contains FTL now in the Fuchsia build.
2017-08-31 16:47:13 -07:00
Ryan Macnak
cfb8975e72 Fix truncation of frame time on 32-bit Android. (#4040) 2017-08-31 09:46:34 -07:00
Jason Simmons
0fc962f0dc Rebase the libtxt integration by @GaryQian onto the current engine head (#4022)
See https://github.com/flutter/engine/pull/3964
2017-08-28 13:01:15 -07:00
Zachary Anderson
23036e515a Fixes for gypi -> gni change in Dart (#3977) 2017-08-15 07:44:27 -07:00
xster
f187a5c219 Create platform API for first frame callback. Use for defer hiding splash screens on Android and iOS (#3956)
* Add back launch screen view until first frame on iOS

* improvements

* Move callback plumbing from ios surfaces to the gpu rasterizer. Didn’t wire java JNI yet.

* Android JNI

* Fix ios reference count and let android engine manage a view on top with launch screen

* Hook up Android activity and view

* review notes

* review notes

* Move thread switching upstream. Use weak references for callbacks.

* Some clean up
2017-08-14 15:44:52 -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
Chinmay Garde
f2af347363 Always consume items from the pipeline in the null rasterizer. (#3937)
Now, frame requests past the pipeline depth will never be deferred due
to back pressure. This backend is only used in the test runner.
2017-07-31 15:16:48 -07:00
Chinmay Garde
ddaa125ca7 When the surface does not support SRGB, render to an offscreen texture. (#3930) 2017-07-28 12:48:32 -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
Chinmay Garde
5fcfb995bb Reduce layer tree pipeline depth to 2. (#3909) 2017-07-19 17:47:44 -07:00
Carlo Bernaschina
53c9a70282 Add waitUIThreadIdle service RPC (#3898)
In https://github.com/flutter/engine/pull/3833 the `_flutter.listViews` RPC moved from thread based to lock based synchronization.
The thread based synchronization side effect was used by flutter benchmarks in https://github.com/flutter/flutter/blob/master/packages/flutter_tools/lib/src/vmservice.dart#L1223 and
https://github.com/flutter/flutter/blob/master/packages/flutter_tools/lib/src/run_hot.dart#L156 to ensure the completeness of the restart/reload and so correct timing.

A new RPC `_flutter.flushUIThreadTasks` is introduced to allow the flutter benchmarks to reintroduce thread based synchronization.

Related https://github.com/flutter/flutter/issues/11241
2017-07-19 15:48:32 -07:00
Brian Osman
de00757ddb Revert "Revert "Reland "Run Flutter on iOS and Android with color correct Skia (#3826)" (#3878)" (#3895)
This reverts commit 1db18a40da855b102e391cb11189e73f9c2ec40d.
2017-07-18 15:58:35 -04:00
Brian Osman
569de1e6d5 Revert "Revert "Switch to new encode API on SkPixelSerializer"" (#3896)
* Revert "Accumulate a batch of Skia objects that will be destructed later on the IO thread (#3888)"

This reverts commit dd2fb3c04bb090915b698266ace8680d2747c9db.

* Revert "Revert "Switch to new encode API on SkPixelSerializer (#3892)" (#3894)"

This reverts commit bd2294381078dddb12cd95a6b0bd681c6c5de54a.
2017-07-18 15:44:13 -04:00
Brian Osman
bd22943810 Revert "Switch to new encode API on SkPixelSerializer (#3892)" (#3894)
This reverts commit aabc95df8c93625be74c8413816f54d6f71bae94.
2017-07-18 13:58:56 -04:00
Brian Osman
aabc95df8c Switch to new encode API on SkPixelSerializer (#3892)
Previous API is deprecated, soon to be deleted.
2017-07-18 13:04:51 -04:00
Collin Jackson
1db18a40da Revert "Reland "Run Flutter on iOS and Android with color correct Skia (#3826)" (#3878)
This reverts commit 2d9155e174d83e9646c951dbbc85fe1eda8b20e9.

Fixes a regression with semitransparent images (flutter/flutter#11169)
2017-07-13 14:22:25 -07:00
Carlo Bernaschina
354d90a957 Add missing virtual methods in PlatformView (#3867) 2017-07-12 13:06:02 -07:00
Carlo Bernaschina
8ba522eeae Avoid to freeze the system if hot reloading during debug (#3833) 2017-07-12 10:25:42 -07:00
Brian Osman
2d9155e174 Reland "Run Flutter on iOS and Android with color correct Skia (#3826)
* Revert "Revert "Reland "Run Flutter on iOS and Android with color correct Skia" (#3818)" (#3823)"

This reverts commit db8d8a9979901d05b011368226ad5bf61b1da13f.

* Fix test code to match internal API change
2017-06-27 13:30:10 -04:00
Brian Osman
db8d8a9979 Revert "Reland "Run Flutter on iOS and Android with color correct Skia" (#3818)" (#3823)
This reverts commit 2650f529a138de9cc9116bb9194dbe22f8e0df25.
2017-06-23 20:28:24 -04:00
Brian Osman
2650f529a1 Reland "Run Flutter on iOS and Android with color correct Skia" (#3818)
* Revert "Revert "Run Flutter on iOS and Android with color correct Skia (#3743)" (#3775)"

This reverts commit cfe70e07d386d6052267fe3772bbd641c8413a54.

* Enable sRGB on IO thread, too

* Add 4444 as a fallback rendering mode

* Use bare ptr to SkColorSpace (not sk_sp) in PrerollContext
2017-06-23 20:21:29 -04:00
Sarah Zakarias
a87d15d62e Send AppLifecycleState notifications on FlutterViewController lifecycle events. (#3801) 2017-06-21 14:39:05 +02:00
P.Y. Laligand
76397e98b4 Update to newer version of the FTL. (#3804) 2017-06-20 16:53:14 -07:00
Chris Bracken
fffe502d43 Revert libtxt integration (#3802)
* Revert "Fix licenses_lib golden file (#3798)"

This reverts commit d8ac43c3c9123fead15af3004d1e445834115bbd.

* Revert "Remove ParagraphConstriants (#3796)"

This reverts commit 8ccf767ff71c781588fb1e79cf3369604099a7cc.

* Revert "Reland "Initial integration of libtxt with Flutter alongside Blink." (#3793)"

This reverts commit 3c049219e1429c8e08632889b6c9e7b070bba534.
2017-06-20 09:59:56 -07:00
Chris Bracken
25c7a86a53 Eliminate ASL stdout forwarding on iOS (#3797)
ASL was deprecated in iOS 10 and started causing SIGPIPE issues in iOS
10.3. Under the iOS 8 SDK, syslog() stopped working as of iOS 10.3
devices, with the result that ASL stdout/stderr forwarding was the only
means of logging. The engine now builds against the iOS 10 SDK, with
deployment target of iOS 8. Under this SDK, syslog() works correctly
across all supported OS versions.

NOTE: This is a temporary fix to get developers unblocked. While this
does fix the SIGPIPE issue and put iOS logging on par with the Android
solution, the intent is to move to a dedicated communication channel
with flutter_tools that isn't log-based.
2017-06-19 18:10:30 -07:00
Gary Qian
3c049219e1 Reland "Initial integration of libtxt with Flutter alongside Blink." (#3793)
* Transition to Hybrid lib/txt and blink text system.
2017-06-19 15:21:41 -07:00
Chris Bracken
14f2ffaeaa Revert "Update to newer version of the FTL. (#3786)" (#3792)
This reverts commit 1e9e134d7d7444506f3103d673fcd26e4066e80a.
2017-06-19 15:02:52 -07:00
P.Y. Laligand
1e9e134d7d Update to newer version of the FTL. (#3786) 2017-06-19 12:48:23 -07:00
Ian McKellar
d2c77f973d Revert "Initial integration of libtxt with Flutter alongside Blink." (#3785)
* Revert "Enable line join styles and miter limit. (#3777)"

This reverts commit 5403f65bcad98bd0d434cae590e2a337a1ea218c.

* Revert "Revert "Update switches to use StringView." (#3784)"

This reverts commit 80f039ff324b827cc17567867bd17c788277b0cf.

* Revert "Initial integration of libtxt with Flutter alongside Blink. (#3771)"

This reverts commit c548c65b5020653087b63f1f156741a1f95b5117.
2017-06-16 15:15:48 -07:00
P.Y. Laligand
80f039ff32 Revert "Update switches to use StringView." (#3784)
* Revert "Initial integration of libtxt with Flutter alongside Blink. (#3771)"

This reverts commit c548c65b5020653087b63f1f156741a1f95b5117.

* Revert "Call Selection.removeSelection if the framework has cleared the selection (#3782)"

This reverts commit e5b79ba63b92aa0c4299836f4433ec0de23b7cb3.

* Revert "Update switches to use StringView. (#3781)"

This reverts commit 07d4357b1ac4c7aa8c13f1627071e43096ef3cc5.
2017-06-16 14:32:09 -07:00
Gary Qian
c548c65b50 Initial integration of libtxt with Flutter alongside Blink. (#3771) 2017-06-16 14:15:53 -07:00
P.Y. Laligand
07d4357b1a Update switches to use StringView. (#3781)
See https://fuchsia-review.googlesource.com/#/c/31931/.
2017-06-16 12:51:26 -07:00
Sarah Zakarias
f37aafd456 Add setInitialRoute on FlutterView. (#3727) 2017-06-06 10:59:41 +02:00
Gary Qian
796259c089 Allow switching to the software rendering backend on Android. (#3719)
* Enable software rendering backend on android. Add "enable-software-rendering" flag.

* Fix variable naming and threading.
2017-05-31 17:27:47 -07: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
Todd Volkert
f5d92bee15 Add ipv6 flag to shell. (#3646)
It controls whether the observatory and diagnostic server will
bind to the IPv6 loopback address rather than the IPv4.

Fixes https://github.com/flutter/flutter/issues/9813
2017-05-04 19:35:59 -07:00