379 Commits

Author SHA1 Message Date
gspencergoog
faabc10178 Support correct keyboards for multi-line text editing. (#4115)
This addresses part of #8028, implementing the Engine-side support for it.
2017-09-26 12:53:19 -07:00
Jason Simmons
77ec0b5f5b Replace a View.getDisplay call that is not supported on API level 16 (#4139)
Fixes https://github.com/flutter/flutter/issues/12235
2017-09-25 11:25:47 -07:00
P.Y. Laligand
fc3cb8fb3b Adjust to new location of lib/tonic. (#4132) 2017-09-21 14:30:28 -07:00
Alexander Aprelev
0a6e415b60 Revert "account for pixel scale when checking against existing buffer storage size (#4103)" (#4133)
This reverts commit 2d530daeca438ca24562d290616c0aec5ab76b88 as it looks
like a potential cause of performance benchmark regressions on
https://flutter-dashboard.appspot.com/benchmarks.html:
 - flutter_gallery_ios__transition_perf average_frame_build_time_millis
 - flutter_gallery_ios__transition_perf missed_frame_build_budget_count
2017-09-21 12:45:16 -07:00
Michael Goderbauer
dd68239b43 Don't crash on iOS if there is only a single SemanticsNode (#4128)
* Don't crash if there is only a single SemanticsNode

Previously, the code assumed that the root SemanticsNode will allways have a child. This is not true as can be seen in the hello_world example app, which would crash when a11y is turned on.

* review comment
2017-09-20 14:17:50 -07:00
Michael Goderbauer
c5602ab197 Three finger a11y scrolling for iOS (#4123)
* Three finger a11y scrolling for iOS

* review comments

* review feedback
2017-09-20 09:59:14 -07:00
Abhishek Amit
bd64e8dc5a Add flags to allow cross compiling to linux arm (#4120) 2017-09-19 14:09:35 -07:00
Abhishek Amit
004d0bdf67 Add API to send platform messages into engine through embedder API (#4112) 2017-09-19 13:57:44 -07:00
Abhishek Amit
aa2437b9f5 Add support for running bundles to embedder API (#4099) 2017-09-19 13:12:51 -07:00
Michael Goderbauer
773dfb549a Silence Wawrning (#4122)
Follow-up to https://github.com/flutter/engine/pull/4110
2017-09-19 10:15:39 -07:00
Michael Goderbauer
af74ea6177 Allow nested semantics on iOS (#4110)
* Allow nested semantics on iOS

* review comments

* review comments
2017-09-18 17:27:14 -07:00
Carlo Bernaschina
2820d0e722 Fix engine on iOS (#4113)
Related https://github.com/flutter/engine/pull/4105
2017-09-15 09:59:53 -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
Ryan Macnak
b5f5377186 Remove use of CADisplayLink targetTimestamp, which was only added in iOS 10.0. (#4108) 2017-09-14 10:48:28 -07:00
xster
2d530daeca account for pixel scale when checking against existing buffer storage size (#4103) 2017-09-13 14:05:45 -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
Michael Goderbauer
952798cc1b More renaming of FTL->FXL (#4092) 2017-09-11 17:29:48 -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
Michael Goderbauer
afcc1d1e1f a11y improvements for iOS (#4079)
* Various iOS a11y fixes

* undo

* review comments

* review comments
2017-09-11 14:44:17 -07:00
Jason Simmons
a44146f13b Log instead of asserting when sending a reply message to a defunct engine (#4084)
Fixes https://github.com/flutter/flutter/issues/12037
2017-09-11 14:05:14 -07:00
Michael Goderbauer
81e3f8b86f refactor accessibility channel to use StandardMessageCodec (#4073) 2017-09-07 15:24:47 -07:00
Michael Goderbauer
ccf68cdcb6 Tell Android which SemanticsNodes are focusable (#4067)
A node is considered focusable if it contains information that is interesing to the user. A node that doesn't add any semantic information of its own should not be focusable. It's expected that such a node has children, who have smeantics information and are therefore focusable.

Fixes https://github.com/flutter/flutter/issues/11179
2017-09-06 16:56:23 -07:00
Michael Goderbauer
ceb6d05c2f Adapt semantics event handling to framework changes (#4066) 2017-09-05 16:31:24 -07:00
Michael Goderbauer
d60d630ec6 Wire up basic a11y channel for a11y events (#4054) 2017-09-01 16:40:04 -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
Sarah Zakarias
e5395796cd fix binaryMessenger in FlutterAppDelegate (#4030) 2017-08-29 13:58:26 +02:00
Ian Hickson
60bce44c9f Implement i18n features in the a11y API. (#4029) 2017-08-28 16:12:39 -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
Michael Goderbauer
32447c72fc Traverse children from top left to bottom right for a11y (#4017)
* order

* comment fix

* review comments
2017-08-28 12:02:07 -07:00
Michael Goderbauer
8cfa97609c Only expose available semantic scroll actions (#4010)
* Only expose available scroll actions

* formatting

* more formatting
2017-08-25 16:12:50 -07:00
Chinmay Garde
217ba07f5d Update ICU to ToT and ensure that slimmed down versions of data files are shipped on the mobile platforms. (#4005)
This reduces the size of the ICU data files from 10.3 MB to 6.6 MB (uncompressed). Also allows us to remove version specific hacks from libTXT and dependencies.
2017-08-24 14:26:07 -07:00
xster
8776c934a2 Let the FlutterAppDelegate's messenger be customizable if the rootViewController isn't a FlutterViewController (#3916)
* Customizable messenger

* rename
2017-08-23 18:50:14 -07:00
Chinmay Garde
def8061d49 Create a window toolkit agnostic Flutter engine API. (#3987)
* The Flutter engine will be shipped as a shared library.
* The engine is renderer and window toolkit agnostic.
* The simple public C API is described in embedder.h.
* ABI breaking changes will be indicated by changing the FLUTTER_ENGINE_VERSION.
* A simple GLFW based example of this API is available at https://gist.github.com/chinmaygarde/8abf44921f7d87f6da7bf026267c4792
2017-08-23 16:05:16 -07:00
xster
51775c77a9 Add animation to Android too (#3981) 2017-08-23 12:57:06 -07:00
Chris Bracken
0062701c7c Disable all rasterizer work while backgrounded on iOS (#4002)
On iOS, backgrounded applications are not permitted to execute GPU work.
See [1].  When backgrounding the application, we now tear down the
underlying iOS render surface, and re-create when the app returns to
foreground.

See [2] for a Technica Q&A on GL-related crashes when rendering is
attempted by a backgrounded application.

[1]: https://developer.apple.com/library/content/documentation/3DDrawing/Conceptual/OpenGLES_ProgrammingGuide/ImplementingaMultitasking-awareOpenGLESApplication/ImplementingaMultitasking-awareOpenGLESApplication.html#//apple_ref/doc/uid/TP40008793-CH5-SW1
[2]: https://developer.apple.com/library/content/qa/qa1766/_index.html
2017-08-22 19:57:52 -07:00
Jason Simmons
e260e35dec Revert to a Jellybean compatible variant of getDrawable (#3997) 2017-08-21 17:25:31 -07:00
Chris Bracken
600567ef15 Fire TextInputClient.updateEditingState on text changes (iOS) (#3995)
For consistency with Android, when the engine receives a
TextInput.setEditingState message from the framework, and the text has
changed, we now send a TextInputClient.updateEditingState message back
to the framework with the updated state from the engine. The framework
currently relies on this behaviour to trigger onChanged events in
certain scenarios (e.g., on tapping Paste in the selection controls).

Note: it may be more desirable for the framework to trigger the
onChanged calls without relying on the return message from the engine,
but this change ensures consistent behaviour across iOS and Android
until we've evaluated the pros/cons of such an approach.
2017-08-21 12:39:56 -07:00
Jason Simmons
0223e293f2 Improve checks for calls into native code made after the platform view has been detached (#3926) 2017-08-17 10:24:12 -07:00
Carlo Bernaschina
1948fef8d5 Avoid race condition into NotifyNextFrameOnce (#3980)
If GPURasterizer::NotifyNextFrameOnce was rapidly invoked twice could
have lead to a null pointer exception.

Also ftp::WeakPtr are not thread safe and should not be dereferenced
from other threads.
2017-08-15 14:35:16 -07:00
Jason Simmons
841cd66712 Remove use of a deprecated getDrawable API (#3979) 2017-08-15 11:54:04 -07:00
xster
08eb72341f Add an explicit user configurable check for whether to keep showing the splash screen. (#3976) 2017-08-15 11:01:12 -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
Sarah Zakarias
2b7a8f1490 Add flutter-driven navigation on iOS (#3865) 2017-08-09 13:01:35 +02:00
Chinmay Garde
b08167ba52 Implement all known blink::PointerData fields on iOS. (#3955) 2017-08-07 15:04:10 -07:00