601 Commits

Author SHA1 Message Date
Jonah Williams
5557e3006e
Fix allocation of JNI byte buffer on API level 22 and below (#5788) 2018-07-17 11:58:42 -07:00
Michael Goderbauer
e02bd92479
Roll buildroot to 7b5fd64b26afe194fa49463bad204b2cfba47fb6 (#5769) 2018-07-16 13:23:58 -07:00
Jason Simmons
316b026807
Handle Android vsync callbacks that occur after the VsyncWaiter has been deleted (#5749)
Fixes https://github.com/flutter/flutter/issues/19159
2018-07-16 12:04:05 -07:00
Jonah Williams
2e57ecd38f
Revert rollback of "add assistiveTechnologyEnabled to window" (#5750) 2018-07-16 09:04:20 -07:00
Jonah Williams
e632fb8160
Expose keyboardAppearance field in iOS FlutterTextInputPlugin.mm (#5714) 2018-07-13 19:59:59 -07:00
Jonah Williams
9af920ef22 Revert "Add assistiveTechnologyEnabled flag to window" (#5746)
Reverts flutter/engine#5740
2018-07-13 15:55:49 -07:00
amirh
80a85e4a17
Implement PlatformViewsController. (#5722)
Each platform view created (by a plugin supplied factory) is attached to
a virtual display.
The virtual displays are controlled by VirtualDisplayController objects.
The PlatformViewsController maintains a mapping from a platform view's
id to its VirtualDisplayController, which allows it to operate on the
virtual display for a given platform view ID when asked so over the
method channel.

This is using API level 20 APIs, on lower API levels all platform views
method channel calls are noops.
We can make this work on API 19 with some refactoring to the
TextureRegistry (allow the engine Java code to recycle a texture entry
id).

This CL also adds a platform view id parameter to the
PlatformViewFactory#create() method. This allows plugins to route
platform channel messages to specific instances of a platform view.

TBD in future CLs:
  * Forward touch events to the platform views.
  * Support accessibility for platform views.

flutter/flutter#19030
2018-07-13 14:08:24 -07:00
Jonah Williams
9ece2752aa
Add assistiveTechnologyEnabled flag to window (#5740) 2018-07-13 13:47:31 -07:00
Ben Konyi
672e587e74
Background Execution Implementation for iOS (#5539) 2018-07-13 10:55:24 -07:00
amirh
4d490275f7
gitignore intellij generated folder (#5729) 2018-07-13 09:23:43 -07:00
Jonah Williams
c5a63d28bf
rollback chrome change (#5721) 2018-07-11 15:28:33 -07:00
amirh
68d81a31f4
Platform Views: Android and MethodChannel APIs, and implementation skeleton. (#5684)
To keep the scope of this CL as small of possible I'm leaving the actual
implementation of the platform view mechanics to a following CL.

This CL introduces:
  * A PlatformViewsController class which will be responsible for creating,
    resizing, and disposing platform views.
  * A PlatformViewRegistry which is exposed through the PluginRegistry
    and allows plugins to register factories for platform views.

Android plugin code will add support for a new platform view type by
implementing PlatformViewFactory, and registering a factory with the
registry, e.g:
```java
registrar.platformViewRegistry().registerViewFactory(
  'webview',
  new FlutterWebViewFactory()
);
```
On the Dart side, the framework will ask the engine to create new
platform views by sending a create message over the platformviews method
channel with the unique platform view type id, dimensions, and a unique
id allocated by the framework for the new platform view instance.
The platformviews method channel is also used for resizing and disposing
platform views.
2018-07-11 14:11:15 -07:00
Jonah Williams
48d6e1f891
Custom accessibility (local context) action support for iOS and Android. (#5597) 2018-07-11 10:27:50 -07:00
Jonah Williams
e89d843497
Swap definitions of SystemChrome apis to match iOS (requires framework change when rolling) (#5609) 2018-07-10 17:36:31 -07:00
Jonah Williams
d5fce84be8
revert change to app delegate that wont build on earlier xcodes (#5702) 2018-07-09 15:22:25 -07:00
Jonah Williams
d217a95126
Remove cullRect calculation on TransformLayers with a perspective transform. (#5693) 2018-07-09 12:52:10 -07:00
Jonah Williams
5724faf86e
ensure that bridge is not destroyed when semantics is still enabled (#5672) 2018-07-03 22:25:40 -07:00
amirh
51785d244d
Remove unused Java imports (#5663) 2018-07-03 09:21:03 -07:00
matthew-carroll
061e899b55
Support all keyboard actions. (#11344) (#5620)
* Support all keyboard actions. (#11344)
2018-07-02 06:58:01 +00:00
Jonah Williams
ce06bbac58
ensure a11y state is communicated back to flutter (#5631) 2018-06-28 13:30:51 -07:00
Jason Simmons
fbb3436eaa
Remove some unused code from the Android host (#5619)
These functions were made obsolete by the engine refactoring
(6baff4c821)
2018-06-27 11:06:15 -07:00
Jason Simmons
2c158b6390
Check for calls to FlutterMain.ensureInitializationComplete before startInitialization (#5614) 2018-06-25 16:32:38 -07:00
Sigurd Meldgaard
3528b4851d
Postpone dart initialization to -viewWillAppear on iOS (#5553) 2018-06-21 12:43:38 +02:00
Jason Simmons
1174a4d9fe
Load the ICU data file asset from the "flutter_shared" path (#5567)
See https://github.com/flutter/flutter/issues/18514
2018-06-19 14:34:13 -07:00
Ryan Macnak
fe9dd64d70
Replace AssetResolver GetAsBuffer with GetAsMapping. (#5546)
Toward no-copy loading of kernel.
2018-06-19 14:24:19 -07:00
Chinmay Garde
0c119932c0
Add explicit casts to pointer data members on Android. (#5558)
This accounts for changes made in https://github.com/flutter/engine/pull/5556
2018-06-18 12:08:11 -07:00
Ian Hickson
824e45e7c1
Remove spurious log messages (#5547)
These are making some of the tests that are sensitive to output flakey.
2018-06-15 14:15:35 -07:00
Maurice Parrish
6afe4c8e51
Added method for receiving Dynamic Links (#5534) 2018-06-15 10:37:47 -07:00
Chris Bracken
be02d0cf09
Revert "Eliminate support for Dart 1 (#5504)" (#5505)
Broke runtime_unittests, which are still running directly from source.

This reverts commit 0ea93c3a3e40426fd222ba22c2f60756c8a32097.
2018-06-11 18:12:10 -07:00
Chris Bracken
0ea93c3a3e
Eliminate support for Dart 1 (#5504)
Eliminates support for running directly from sources or script snapshots. In
debug mode, we run from a kernel snapshot; in profile and release modes, we
link in AOT-compiled code.

Renames --dart-non-checked-mode to --disable-dart-asserts since checked mode
does not make sense in Dart 2.
2018-06-11 17:00:43 -07:00
Chris Bracken
d328f4e64f
Enforce clang-format on all files in commit (#5495)
* Enforce clang-format on all files in commit

This re-enforces clang-format across all files changed in the commit.

In c10c417, we enabled checking only for the lines changed in the diff
in order to reduce the change of merge conflicts with the shell refactor
landed in 58e84c8.

* Reformat sources to match latest clang-format

As part of re-enabling clang-format across the codebase, reformat all
code to match the latest toolchain.
2018-06-08 15:10:54 -07:00
Stanislav Baranov
8c6953f869
Fix compile error introduce in #5473. (#5488)
Fix compile error introduced in #5473.
2018-06-07 15:36:35 -07:00
Stanislav Baranov
f51b6b3b07
Support running bundles from zip file. (#5473)
Support running bundles from zip file.
2018-06-07 15:09:23 -07:00
Sigurd Meldgaard
1b3277268a
App life cycle delegate (#5302)
* Move the handling of delegating AppDelegate callback out of FlutterAppDelegate.

Also moves the plugin registry to FlutterViewController. So each view-controller will handle its
own plugins.

This is intended to simplify including one or more Flutter views in an existing iOS app and giving
more precise control of plugin registration.

Fixes: https://github.com/flutter/flutter/issues/16539

* formatting

* Update license golden file

* Fixed type error

* FREEZE.unindexed

* Fix Header types

* Revert "FREEZE.unindexed"

This reverts commit bebb70056c9bcb90b4321bdc2873896623ed6faa.
2018-06-06 10:49:40 +02:00
Zachary Anderson
a09b4fdcb7
Adds dynamic, interpreter configs to tools/gn (#5446)
Adds --dynamic and --interpreter flags to
tools/gn. These flags result in engines with
properties as follows:

--dynamic:
- JIT targeting native code on Android and
  DBC on iOS

--interpreter
- Target DBC even if running on Android.

For example:

gn --android --dynamic --interpreter --runtime-mode release

Will generate an engine:
- Without Dart asserts
- Without Observatory
- With JIT compililation to DBC

into out/android_dynamic_release_dbc
2018-06-05 14:52:52 -07:00
Stanislav Baranov
cce4fd2279
Remove unused argument. (#5471) 2018-06-05 13:11:18 -07:00
Mikkel Nygaard Ravn
2a4d926ab7
Update FlutterPluginRegistrxxx docs for iOS (#5415) 2018-06-05 08:19:07 +02:00
Chinmay Garde
366d0e3ef7
Fix Dart project configuration for headless Dart runners. (#5461) 2018-06-04 15:01:58 -07:00
Chinmay Garde
16f4da984c
Parse --verbose-logging flag from intent and pass to the engine as args. (#5447) 2018-06-01 17:34:45 -07:00
Mehmet Fidanboylu
d7e3f2d6e7
Fix lint errors to prepare for building Android files in Google (#5440) 2018-06-01 10:16:50 -07:00
Chris Bracken
6cef519598
Eliminate arm64 restriction in iOS framework plist (#5435)
Eliminates the declaration that only arm64 is supported in
Flutter.framework's Info.plist. This causes Xcode's app thinning tools
to remove Flutter.framework in thinned archives for armv7 devices.
2018-05-31 18:51:32 -07:00
Brandon Parrish
8c564ad120
Correctly added application callback for dynamic links (#5385)
* Correctly added application callback for dynamic links

* Misspelling
2018-05-29 13:56:12 -07:00
Chinmay Garde
b537231b7a
Fix build issues for the embedder on Windows. (#5386) 2018-05-25 15:20:36 -07:00
Chinmay Garde
8caa7612f8
Create a shell with no GPU configurations unless explicitly specified by the platform. (#5383) 2018-05-25 14:31:01 -07:00
Chinmay Garde
b067d79ce9
Copy embedder header to the out directory. (#5379)
This allows the stable header to be referenced from a known location. Also reduces the visibility of the framework target so that it is automatically built on the mac.
2018-05-25 12:09:36 -07:00
Brandon Parrish
193d873cae
Revert "Added application callback" (#5377)
* Revert "Added application callback (#5369)"

This reverts commit a1a54ad1f9d845c8cff31e0d5faca2a012213b80.
2018-05-25 11:29:11 -07:00
Brandon Parrish
a1a54ad1f9
Added application callback (#5369)
* Added application callback

* Formatting
2018-05-25 09:55:41 -07:00
Chinmay Garde
e25c70c64c
Explicitly package vm and isolate snapshots on desktop and embedder targets. (#5368)
These snapshots used to be included (from the runtime target) in the executable if AOT mode was disabled. The mobile shells now include this snapshot in the kernel snapshot generated on the host. However the target that run on the host still need this. The tester target was already patched but the desktop embedder targets were overlooked. The unit tests passed on the embedder target because the unit tester exectuable was including the snapshot in addition to the dylib. Now the dylib itself depends on the snapshot directly.
2018-05-24 16:05:39 -07:00
Simon Lightfoot
abd74ed5ed Add support for physical keyboards on Android (#5324)
* Fixes flutter/flutter#7943
* Fixes flutter/flutter#9347
* Fixes flutter/flutter#11177
2018-05-24 15:21:33 -07:00
Ryan Macnak
86d96fd0ce
Reapply "Don't link the core snapshot in the Android engine." (#5353)
Add back the core snapshot to runtime_unittests and embedder_unittests.
2018-05-23 17:09:51 -07:00