56 Commits

Author SHA1 Message Date
Adam Barth
9c09565712 Update paths to account for buildroot 2016-08-09 13:52:15 -07:00
Adam Barth
5f75e0bf30 Remove more //base dependencies from //sky/shell (#2889)
This patch hides the base::SingleThreadedTaskRunner, which pulls a big
switchover to ftl::WeakPtr and std::function.
2016-08-08 20:00:37 -07:00
Chinmay Garde
cebfd92d5b Give the mac desktop its own VSync provider. (#2877) 2016-08-05 16:37:12 -07:00
Chinmay Garde
ace8307aab Asynchronous texture upload. (#2837) 2016-08-01 16:05:45 -07:00
Adam Barth
11dd5cada9 Add trace events to swap buffers (#2823) 2016-07-26 12:16:32 -07:00
Chinmay Garde
fe69b034c0 Remove dependencies on ui, third_party/mesa and mojo/convertors. Provide simple alternatives. (#2783) 2016-07-12 14:47:44 -07:00
Chinmay Garde
bb9865538b Rename uri_launcher.mojom to url_launcher.mojom. (#2773) 2016-06-22 17:15:51 -07:00
Chinmay Garde
0b31c01843 Add platform/uri_launcher.mojom with an iOS backend. (#2759) 2016-06-15 12:17:50 -07:00
Adam Barth
81ae27ab61 Remove startup flicker on Android (#2733)
According to hackbod on Stack Overflow, we're supposed to block in the
surfaceCreated callback until we've actually drawn into the surface:

http://stackoverflow.com/questions/8772862/surfaceview-flashes-black-on-load/8888108#8888108
2016-06-02 21:01:02 -07:00
Adam Barth
b6ad88501f Roll mojo2 (#2722)
* Update to mojo 7d579155cc597aa3befcbfad66eef54bda06b57c

* Update to new API
2016-05-27 17:06:21 -07:00
Adam Barth
d178eafa74 Don't call Dart_TimelineGetMicros during startup on Mac (#2696)
It crashes. We either need to make it safe to call before
Dart_Initialize on Mac or we need to use some other way of measuring
startup time.

Fixes #4006
2016-05-18 09:55:11 -07:00
Yegor
a1f4a12baa report engine_main_enter_ts during iOS startup (#2640) 2016-05-13 15:35:10 -07:00
Chinmay Garde
ed3634e207 Add a switch that disables redirecting standard streams to syslog. (#2684)
When developing the engine from Xcode, it is useful to see log output in Xcode's UI. We were redirecting streams away so that the tools could pick read these logs. With the change to the scheme, when running from Xcode, the logs will show up in Xcode's UI. When, running from the tools, that flag will not be present and the tools will work as they always have.
2016-05-13 13:46:51 -07:00
Adam Barth
4c3f297b1e Fix build 2016-05-09 12:04:09 -07:00
Adam Barth
1035e5e60b Roll Mojo to 9a791294e429f9f2ca4f427796a284edb6f6768e (#2663)
* Update to mojo 9a791294e429f9f2ca4f427796a284edb6f6768e

* Update to account for Mojo API changes
2016-05-09 10:56:47 -07:00
Matt Perry
f608c94934 Add mojo service for accessing the system clipboard. (#2659)
* Add mojo service for accessing the system clipboard.

Hooked up for iOS and Android.

BUG=https://github.com/flutter/flutter/issues/1567
2016-05-09 13:26:19 -04:00
Adam Barth
7af714532d Make iOS Flutter apps extensible (#2654)
This patch switches us to building Runner.app on the end-developer's machine,
which will eventually let them customize their app.
2016-05-06 11:16:04 -07:00
Adam Barth
1d23f210d2 Add support for app messages to iOS (#2651)
Fixes https://github.com/flutter/flutter/issues/3256
2016-05-05 16:58:27 -07:00
Adam Barth
6740388a4a Remove legacy interfaces from activity.mojom (#2638)
These are now offerred by the Flutter platform services (e.g., SystemChrome,
SystemSound, HapticFeedback).
2016-05-02 14:24:40 -07:00
Chinmay Garde
cc3801a431 Leak the embedder message loop on Mac. (#2585)
Dart has the tendency to call `exit()` on arbitrary threads. This causes
the assertion to trip. Since this should only happen when Dart is
running the shell in non-interactive mode, we leak the message loop
without proper shutdown.

We should never hit this path on iOS.
2016-04-08 11:00:07 -07:00
Chinmay Garde
520a563545 Dont destroy the platform message loop on the Mac because the message pump is still not collected when the embedder state goes away. 2016-04-06 17:13:24 -07:00
Adam Barth
6c43bd904f Fix Mac build 2016-03-28 15:55:05 -07:00
Adam Barth
c4e182743e Teach SkyShell about .packages files
SkyShell now supports --packages instead of --package-root.
2016-03-28 12:51:56 -07:00
Adam Barth
944b2eeca9 Move Keyboard and RawKeyboard to view services
These services are relative to the current view, which means they should come
in through the view services.
2016-03-18 12:37:30 -07:00
Adam Barth
678d5f9bac Cleanup MojoServices in dart:ui
This patch cleans up the way we expose Mojo services into Dart. It also adds a
service provider for "view services," which will evetually contain the raw
keyboard service.
2016-03-18 10:52:13 -07:00
Adam Barth
410aac589b Flutter apps in Mozart should have reasonable Uri.base
Previously this value was the temp directory that we used to store the FLX
bundle. Now it's the URL given to us by MojoShell.
2016-03-18 09:53:44 -07:00
Chinmay Garde
d1376fc93c Allow PlatformMacMain to be called multiple times
It is called each time the embedder initializes a Flutter view controller. The Mac shell (which does not have a view controller), calls it before NSApplicationMain.

Common items like the base::AtExitManager and the platform message loop are stored in `EmbedderState`
2016-03-09 17:49:17 -08:00
Chinmay Garde
274f98ef0d If a custom ICU data file path is specified, attempt loading from that instead of loading from the default path. 2016-03-09 11:27:52 -08:00
Chinmay Garde
a6464d0298 Allow PlatformMacMain to be called mutliple times by third party flutter embedders
If we control the embedder, we call it just once and have it wrap UIApplicationMain.
2016-03-08 17:12:18 -08:00
Adam Barth
95b5d5dfa8 Update uses of Mojo to new interfaces 2016-03-02 14:14:55 -08:00
Chinmay Garde
f9281a1edf Allow specification of the FLX bundle (containing no Dart snapshot) outside the iOS/Mac application bundle.
Allows launching of apps without having any Xcodebuild step in the simulator.
2016-02-29 13:16:01 -08:00
Adam Barth
94dac511f6 Fix the mac build 2016-02-03 09:58:47 -08:00
Chinmay Garde
a7349a1142 Allow dynamic service resolution in the iOS shell 2016-02-02 16:55:35 -08:00
Chinmay Garde
7fe880d89f iOS: Implement service providers for flutter.platform 2016-02-02 11:37:18 -08:00
Adam Barth
bdacb56cdd Improve IME interface
Instead of providing a stream of mutations, we now provide a the client with
the complete state of the editing control to prevent the two from getting out
of sync.

As a side-effect, we can now move the cursor around when editing a text field.
2016-02-01 20:41:48 -08:00
Chinmay Garde
7cc0e03ba5 Remove the mojo::Close call because the desctructor will automatically be called when the handle goes out of scope 2016-02-01 13:14:34 -08:00
Chinmay Garde
2854f56be1 Add an assertion in debug if the application requests an unknown service 2016-02-01 12:56:02 -08:00
Chinmay Garde
0d446703bf iOS: Implementation of ::activity::Activity from activity.mojom 2016-01-27 15:01:53 -08:00
Adam Barth
142c5dc5ec Remove almost all uses of base::scoped_ptr
We now use std::unique_ptr more consistently.
2016-01-27 01:05:47 -08:00
Chinmay Garde
278af8d155 Path service implementation for iOS 2016-01-15 16:33:02 -08:00
Chinmay Garde
4c8a138a29 Add a startup instant marker 2015-12-04 14:50:58 -08:00
Chinmay Garde
40bda43619 Name the main thread on mac 2015-12-04 14:25:11 -08:00
Chinmay Garde
95ba64b711 Allow enabling tracing in base without an instance of the tracing controller 2015-12-03 15:08:20 -08:00
Chinmay Garde
abe709013c Start tracing in base before a tracing controller instance is available 2015-12-03 14:56:55 -08:00
Adam Barth
68dfad8e92 Add --flx flag to load FLX files
Also, remove the --snapshot flag because using FLX files is the path we're
paving.
2015-11-27 23:14:07 -08:00
George Kulakowski
e60e50386a Add fnl build configuration 2015-11-18 13:07:19 -08:00
Chinmay Garde
9497a37460 Initialize the window_ ivar in PlatformView to gfx::kNullAcceleratedWidget 2015-11-17 12:04:03 -08:00
Adam Barth
4e0ec4c23b Fix the units for Pointer events
The time_stamp is supposed to be in microseconds. Previously we were using
milliseconds.
2015-11-17 11:21:58 -08:00
Collin Jackson
0904164fd6 Fix https://github.com/flutter/flutter/issues/371 renaming "sky" and "chromium" to "flutter" in logs and Mac Shell UI 2015-11-16 14:54:18 -08:00
Adam Barth
9dc71cb51f Refactor how we wire up platform services
Now the control flow for wiring up platform services starts in the
platform-specific code. Previously we started in shared code, which was
imposing constraints on the startup sequence for all platforms. Now that we
start in platform-specific code, we'll be able to add better support for Mojo
in a future patch.
2015-11-16 12:24:28 -08:00