Commit Graph

230 Commits

Author SHA1 Message Date
Martin Kustermann 5c6ebf7994 Enable flutter engine to also work with .*so files on android (#4298)
* Enable flutter engine to also work with .*so files on android

We would like to be able to use native tools (e.g. simpleperf, gdb) with
precompiled flutter apps.  The native tools work much better with *.so
files instead of the custom formats the Dart VM uses by default.

This CL adds support for being able to load the flutter app from an *.so
file on Android.

* Add sanity check to ensure we have either shared library or instruction snapshot (but not both)
2017-11-21 13:14:50 +01:00
Brian Osman 0a7155d4e1 Disable linear blending, use SkColorSpaceXformCanvas instead (#4355)
This retains gamut correction (adjusting colors for screens with different capabilities), but does all blending and interpolation with sRGB-encoded values. That matches the behavior expected by most users, as well as the behavior of nearly all other systems. It also greatly simplifies the EGL code.

A future Skia change will make this behavior more of a first-class citizen, so some of these implementation details will change again, but the behavior will not. The bulk of this change (elimination of complication from the GL surface code) is permanent - it's just the SkColorSpaceXformCanvas that will be replaced.
2017-11-14 13:33:26 -05:00
Zachary Anderson 242ce44af5 [Android] Cleanup in FlutterActivityDelegate (#4357) 2017-11-13 14:13:04 -08:00
Zachary Anderson 7804e8588a View destroy listener (#4347)
[Android] Allow persisting a FlutterNativeView across activities.
2017-11-13 13:56:48 -08:00
Jason Simmons bb55d65085 Delete the native view when destroying the FlutterView (#4356)
Fixes https://github.com/flutter/flutter/issues/12996
2017-11-13 13:16:48 -08:00
Mikkel Nygaard Ravn bc3ac074d2 Make EventChannel survive hot restart on Android (#4350) 2017-11-13 07:47:36 +01:00
Jason Simmons fb6f3e0734 Log stack traces from exceptions thrown by calls from native into Java (#4346) 2017-11-09 13:04:12 -08:00
Zachary Anderson f5bdf9b0fc [Android] Pulls the native platform view out of FlutterView (#4338) 2017-11-09 12:10:00 -08:00
Chris Bracken bc2acf7bdd Revert "Roll Fuchsia buildtools to 85907c59e97527d79bbfdfd849d8e85c24959cc5 (#4331)" (#4340)
With the update to HEAD of the Fuchsia buildtools repo, the new clang
toolchain picked up caused link-time breakage in android x86_64
libFlutter.so builds.

Sample log:
https://build.chromium.org/p/client.flutter/builders/Linux%20Engine/builds/1974/steps/build%20android_debug_x64/logs/stdio

Sample failure:
FAILED: libflutter.so libflutter.so.TOC lib.stripped/libflutter.so
../../third_party/android_tools/ndk/toolchains/x86_64-4.9/prebuilt/linux-x86_64/lib/gcc/x86_64-linux-android/4.9.x/../../../../x86_64-linux-android/bin/ld.gold: error: obj/flutter/shell/platform/android/libflutter/android_context_gl.o: unsupported reloc 42 against global symbol std::__ndk1::num_put<char, std::__ndk1::ostreambuf_iterator<char, std::__ndk1::char_traits<char> > >::id

This reverts commit 8ad42f0dae.
2017-11-08 16:48:00 -08:00
Chris Bracken 8ad42f0dae Roll Fuchsia buildtools to 85907c59e97527d79bbfdfd849d8e85c24959cc5 (#4331)
* Roll Fuchsia buildtools to 85907c59e97527d79bbfdfd849d8e85c24959cc5

This also updates Flutter buildroot to a6e52dbb776c45cc8c57d7143b8eb8b2e762fdfb
which disables -Wtautological-constant-compare temporarily until
https://reviews.llvm.org/D39462 lands in clang. This is in line with
Fuchsia's compiler options.

* Apply clang-format diffs

No logical changes. This applies clang-format from the latest Fuchsia
buildtools to the engine codebase.
2017-11-08 11:18:17 -08:00
Ian Hickson bc30d7bed2 Support multiple values in SystemChrome.setPreferredOrientations (#4320) 2017-11-03 10:28:31 -07:00
Chinmay Garde 9a960f82f5 Add texture support (eg video, camera) (#4159) 2017-11-02 10:57:29 +01:00
Michael Goderbauer 88cf09ffe6 Identify text fields as such to a11y on Android (#4299)
* Identify text fields as such to a11y on Android

* Add focus flag
2017-11-01 12:59:03 -07:00
Chinmay Garde 19e690e84b Add fml::WeakPtr and update users in Shell. (#4296) 2017-10-31 16:55:36 -07:00
Michael Goderbauer b3d345e323 Android SeekBars announce their value (#4289)
* Android SeekBars announce their value

* style
2017-10-31 10:03:30 -07:00
Chinmay Garde eabcf3aaa9 Avoid registering both the platform view and the rasterizer in the shell. (#4293)
Instead, the rasterizer can be accessed via the platform view.
2017-10-30 13:28:39 -07:00
Alexander Aprelev ec19da1c80 Initialize service isolate from kernel file, rather than from embedded sources. (#4263)
* Read core platform kernel file during Dart initialization.

Currently service isolate is initialized from the source code parsed by VM.
This CL changes it so service isolate created during Dart initialization
is created from the kernel platform.dill file if it is present in the application
bundle. Then this platform kernel file is kept in dart_init module and reused
for application sciprt isolates.

* Reformat and merge

* Use accessor method

* Avoid passing running_from_kernel param. Add TODO for cleanup. Rename param.
2017-10-24 19:37:24 -07:00
Michael Goderbauer 91071f817b Support for accessibility label and hint (#4264)
* Support for accessibility label and hint

* review comments
2017-10-23 16:46:01 -07:00
amirh 3d013382e6 Add a semantic isButton flag (#4254)
https://github.com/flutter/flutter/issues/11992
2017-10-20 13:15:20 -07:00
Zachary Anderson 57f361dc6a Pass option to reuse an existing runtime controller (#4253) 2017-10-20 10:17:21 -07:00
Michael Goderbauer b9ad2393cf Set AccessibilityFocus (#4249)
This ensures that accessibility hints are played properly.
2017-10-19 15:09:37 -07:00
5u3it 31585e0def Native keyboard behavior update for multiline input (#4234)
Use sentence capitalization for non-obscuretext fields of TextInputType.text
and TextInputType.multiline on iOS and Android.
2017-10-19 13:56:35 -07:00
P.Y. Laligand 6fcb45991d Move //dart to //third_party/dart. (#4245) 2017-10-19 01:20:38 -07:00
Yegor 23f5ccd25c Add alwaysUse24HourFormat and textScaleFactor (#4202)
* systems/settings channel split

* merge textScaleFactor and alwaysUse24HourFormat into flutter/settings channel

* add debugOverrideAlwaysUse24HourFormat

* implement textScaleFactor on iOS

* address comments

* remove debugOverrideAlwaysUse24HourFormat

* clang-format
2017-10-18 16:13:43 -07:00
Zachary Anderson d3ebce9cf6 Allow a non-main entrypoint (#4238) 2017-10-18 14:19:28 -07:00