381 Commits

Author SHA1 Message Date
Ryan Macnak
e8df7055bc Replace AssetResolver GetAsBuffer with GetAsMapping. (flutter/engine#5546)
Toward no-copy loading of kernel.
2018-06-19 14:24:19 -07:00
Chinmay Garde
ac0d77e6ab Use SkImageFilter::MakeMatrixFilter instead of importing an internal Skia header. (flutter/engine#5569)
Part of fixing https://bugs.chromium.org/p/skia/issues/detail?id=7741
2018-06-19 13:26:06 -07:00
Jason Simmons
2c651a9de5 Create images from uncompressed pixel data (flutter/engine#5550)
Fixes https://github.com/flutter/flutter/issues/9184
2018-06-18 11:37:47 -07:00
Andrew Wilson
f03c5ed766 Make window metrics doubles to reduce rounding issues. (flutter/engine#5556) 2018-06-18 10:36:58 -07:00
Andrew Wilson
504172abbe Revert "Make window metrics doubles to reduce rounding issues."
This reverts commit 564095bca0cb6ec993d94b4561ca2733851243d3.
2018-06-18 09:47:37 -07:00
Andrew Wilson
564095bca0 Make window metrics doubles to reduce rounding issues. 2018-06-18 09:43:30 -07:00
Chinmay Garde
87576b3405 On snapshot, perform a device to host transfer for images resident on the GPU. (flutter/engine#5538) 2018-06-14 18:04:13 -07:00
Jason Simmons
97cf68d6c8 Lazily load fonts that are embedded within the application (flutter/engine#5533)
Previously the engine would load all embedded fonts listed in the app's
font manifest during startup.  This change creates a Skia font manager that
is backed by the engine's AssetManager and can load embedded font assets
on demand.
2018-06-14 16:13:56 -07:00
Jason Simmons
3877686f88 Maintain a FontCollection for each engine instance instead of a process-wide singleton (flutter/engine#5521) 2018-06-13 14:28:21 -07:00
Ben Konyi
a3b839a0bf IsolateNameServer reland (flutter/engine#5519)
* Reland "Added IsolateNameServer functionality (#5410)"

This reverts commit 1598c7ad7b830b298647c17a0c85f3648f6b737d.

* Fixed issue with isolate_name_server_test which caused test to timeout

* Disabled thread_annotations on Android as they aren't supported in the
NDK headers for std::mutex. Readded thread annotations to
IsolateNameServer.
2018-06-13 11:57:10 -07:00
Ben Konyi
1598c7ad7b Revert "Added IsolateNameServer functionality (#5410)" (flutter/engine#5516)
This reverts commit 851868ef29597ca8711f2de2e759069e26930c7d.
2018-06-12 17:03:13 -07:00
Ben Konyi
851868ef29 Added IsolateNameServer functionality (flutter/engine#5410)
* Added IsolateNameServer functionality, which allows for the association
of string names with isolate SendPort ids that can be used to establish
inter-isolate communications.
2018-06-12 15:50:48 -07:00
Dan Field
32b1182b0b Expose approximateBytesUsed for Picture (flutter/engine#5378) 2018-06-12 15:34:23 -04:00
Dan Field
5d78c7447b make analyzer happy (flutter/engine#5499) 2018-06-10 12:47:14 -04:00
Dan Field
e90ea73260 Allow custom foreground paint to be used for drawing text (flutter/engine#5395)
* Allow specifying the foreground paint

* fix typo

* doc update

* call paint.reset
2018-06-10 00:21:18 -04:00
Stanislav Baranov
633a89dbb3 Support for saving Dart compilation trace on device. (flutter/engine#5443)
Support for saving Dart compilation trace on device.
2018-06-08 15:26:29 -07:00
Greg Spencer
2681ed21ac Fixing image encoding format conversion. (flutter/engine#5489)
On a Linux host, we were having to convert the type of the bitmap to N32, but we weren't also fixing the channel order to RGBA, so consequently we were getting BGRA when the API was asking for RGBA. This forces the color format to be RGBA when that is what is asked for.

We weren't needing to do conversion on macOS, so macOS was always getting RGBA.
2018-06-07 18:06:47 -07:00
Greg Spencer
614d9a1d10 Fix animation diagram identifiers (flutter/engine#5481)
I forgot that the identifiers need to be unique per page for the animation tags.
This makes them unique.

Doc change only, no code.
2018-06-06 16:15:13 -07:00
Greg Spencer
4d1bb07254 Add diagram links for StrokeJoin and StrokeCap (flutter/engine#5456)
This updates the documentation for StrokeJoin and StrokeCap to contain animated diagrams that describe their function. The actual diagrams reside in the assets-for-api-docs repo.
2018-06-06 14:10:52 -07:00
Greg Spencer
5a4558f9bf Synchronizes analysis_options.yaml files, and turns on Function typedef lint. (flutter/engine#5419)
Addresses flutter/flutter#18028 for the engine repo, and synchronizes the analysis_options.yaml files between the engine and the flutter/flutter repo.
2018-05-30 16:06:05 -07:00
Michael Goderbauer
ccbb31158e Add toString to WindowPadding (flutter/engine#5375) 2018-05-29 14:16:17 -07:00
Yegor
1a56aa9357 remove the no longer used children parameter (flutter/engine#5333) 2018-05-22 12:44:42 -07:00
Todd Volkert
84d3622321 Support single-argument signature in Canvas.scale() (flutter/engine#5334) 2018-05-22 12:10:38 -07:00
Yegor
7df1242691 split children into two ordered lists: traversal and hit test (flutter/engine#5091)
* split `children` into two ordered lists: traversal and hit test

* address comments

* reduce node object byte size

* link to DebugSemanticsDumpOrder
2018-05-21 17:44:23 -07:00
liyuqian
d2b0840de3 Add debug asserts to using SkVertices::Builder (flutter/engine#5292)
Fixes flutter/flutter#9226
2018-05-18 10:32:56 -07:00
Greg Spencer
6351200ae7 Moving assets-for-api-docs links to point to new asset dir. (flutter/engine#5296)
No logic changes, only links in doc comments.
2018-05-18 08:56:34 -07:00
Dan Field
33f650f452 TwoPointConicGradients again (flutter/engine#5299)
* update docs for getBounds

* Add computeMetrics suggestion

* better explanation

* Support for TwoPointConical gradients
2018-05-18 07:43:52 -04:00
Alexander Aprelev
6ef8fbd2a3 Revert "Support for TwoPointConical gradients (#5275)" (flutter/engine#5293)
This reverts commit 6782261b2908e11cb0ec9851b19f9618fc37a881 as it
breaks flutter gradient_test.
2018-05-17 14:10:19 -07:00
Dan Field
9e5c5ac0b9 update docs for Path.getBounds (flutter/engine#5261)
* update docs for getBounds

* Add computeMetrics suggestion

* better explanation
2018-05-17 07:02:28 -04:00
Dan Field
6782261b29 Support for TwoPointConical gradients (flutter/engine#5275) 2018-05-16 19:27:44 -04:00
Matan Lurey
7528e47e84 Fix documentation mistake in painting.dart (flutter/engine#5236)
s/`[red]`/_correct color_.
2018-05-15 08:00:30 -07:00
Jason Simmons
b0d9893494 Allow Canvas.saveLayer without bounds (flutter/engine#5240)
Fixes https://github.com/flutter/flutter/issues/17497
2018-05-11 15:18:35 -07:00
Ben Konyi
4ef87176ae Fixed Windows build after Blink removal (flutter/engine#5230) 2018-05-10 17:21:12 -07:00
Jason Simmons
67381c0c35 Remove Blink code (flutter/engine#5218)
Fixes https://github.com/flutter/flutter/issues/12212
2018-05-10 15:57:29 -07:00
Jason Simmons
a45e210692 Provide an SkPaint that describes the background of a text style (flutter/engine#5153)
Fixes https://github.com/flutter/flutter/issues/11961
2018-05-09 11:36:52 -07:00
Yegor
37876134d9 Roll dart to 011676641a8b4b77bb372384c712709cbf037675 (flutter/engine#5146)
* Roll Dart to 011676641a8b4b77bb372384c712709cbf037675.

Reverts cb86a973a7c96bddf304f611b963064133a5cc8c and uses Dart_NewExternalTypedDataWithFinalizer.

* update license goldens
2018-05-01 17:45:38 -07:00
Ryan Macnak
4089df7bce Define Uri.base as CWD to match the standalone Dart VM. (flutter/engine#5137)
Bug: https://github.com/flutter/flutter/issues/17118
2018-05-01 09:30:30 -07:00
Chinmay Garde
d9405b3004 Use the GPU object constructor to create a gradient shader. (flutter/engine#5136)
Fixes build break introduced in 3d2ae063e98721b31928752adade8e5ca01ef392.
2018-04-30 17:06:59 -07:00
Victor Choueiri
3d2ae063e9 Enable sweep gradients (flutter/engine#4950)
* Enable sweep gradients

* Use _matrix4IsValid

* Add assert for startAngle < endAngle

* Use radians for startAngle and endAngle

* Update AUTHORS

* Better assert on matrix4IsValid
2018-04-30 15:58:53 -07:00
Greg Spencer
4b03aacc53 Adding Color.alphaBlend (flutter/engine#5119)
This is helpful for some Material Design widgets, which are specified as a semi-transparent color over top of a "material". In some cases, the resulting alpha-blended color can be used instead of compositing an additional shape with an opacity.

This new Color.alphaBlend function mimics the alpha blending function, and creates the resulting combined color. The optimization only works for solid color shapes that have the same geometry, of course.
2018-04-30 15:20:29 -07:00
Chinmay Garde
bdaa00232e In case of empty Dart data responses, don’t call the buffer method on null. (flutter/engine#5114)
Fixes regression introduced in https://github.com/flutter/engine/pull/5101.
2018-04-27 15:22:16 -07:00
Jason Simmons
cb86a973a7 Create message response external typed data objects as Uint8Lists (flutter/engine#5101)
PlatformMessageResponseDart will wrap large responses in Dart external typed
data objects in order to avoid copying the data into a new buffer.

Previously these objects were created with the Dart_TypedData_kByteData type.
A weak persistent handle is then associated with the ByteData to provide a
finalizer that deletes the raw buffer.  However, the Dart VM could call
finalizer on the ByteData even if references still existed to the Dart ByteBuffer
object backing the ByteData.  The ByteBuffer would then be referencing a deleted
raw buffer.

This PR prevents that scenario by creating a Dart_TypedData_kUint8 object,
attaching the finalizer to that object, and then wrapping it in a ByteData.
2018-04-26 17:49:51 -07:00
Dan Field
4fc5359abc Path metrics/getBounds/combinations again (flutter/engine#4957)
* add path measure

* fix typo

* getBound and addPathWithMatrix

* Add myself to Authors, add PathOps

* fix linting issues

* update licenses_flutter to add new files

* Use matrix4 instead of matrix3 for consistency/interop

* put pubspec back

* fix bug in getSegment

* fix typo

* Add return value for PathOp

* refactoring from review

* refactoring from review - still TBD on computeMetrics()

* add doc

* lint issue

* fix computeMetrics, add Path.from

* add missing wireup for clone

* change PathMetrics to iterable, fix bug with angle on Tangent

* prefer std::make_unique

* cleanup docs

* add path measure

* fix typo

* getBound and addPathWithMatrix

* Add myself to Authors, add PathOps

* fix linting issues

* update licenses_flutter to add new files

* Use matrix4 instead of matrix3 for consistency/interop

* put pubspec back

* fix bug in getSegment

* fix typo

* Add return value for PathOp

* refactoring from review

* refactoring from review - still TBD on computeMetrics()

* add doc

* lint issue

* fix computeMetrics, add Path.from

* add missing wireup for clone

* change PathMetrics to iterable, fix bug with angle on Tangent

* prefer std::make_unique

* cleanup docs

* fix iterator bug

* remove unnecessary clone for computeMetrics

* fix some doc issues

* fix PathMeasure iterator, extendWithPath, isClosed, and pubspec.lock

* get rid of orElse; use StateException

* StateError, not StateException

* doc improvements and nits

* add unit tests, fix bugs found during testing

* fix two uncommited doc changes

* one more

* change sign of tangent angle, update docs

* update unit tests for inverted angle

* update tangent to include vector

* Doc fixes

* Fix MSVC compilation and unit test
2018-04-25 15:35:01 -07:00
Jason Simmons
13b1f11bfe Throw an exception if a secondary isolate tries to send a platform message (flutter/engine#5069)
Platform messages are only support in the UI isolate.  Secondary isolates
do not have a window that can receive incoming messages, and outgoing messages
are not tagged with a destination isolate and thus will always be dispatched
to the UI isolate.

Fixes https://github.com/flutter/flutter/issues/16846
2018-04-25 10:29:20 -07:00
Chinmay Garde
7293d4cef9 Fixup Fuchsia content handler post shell refactor. (flutter/engine#5072) 2018-04-23 20:16:01 -07:00
Yegor
82678dc356 replace nextNodeId/previousNodeId with hitTestPosition (flutter/engine#5066) 2018-04-23 16:16:17 -07:00
Jason Simmons
21d13e46fa Use the default microtask scheduler on all isolates except the UI isolate (flutter/engine#5068)
See https://github.com/flutter/flutter/issues/16846
2018-04-23 15:02:19 -07:00
Todd Volkert
cf5661d4ae Support different encodings in Image.toByteData() (flutter/engine#5060)
Fixes https://github.com/flutter/flutter/issues/16635
2018-04-20 19:47:27 -07:00
Michael Goderbauer
3034fd831c Add SemanticsFlag.isHidden (flutter/engine#5052) 2018-04-20 10:37:02 -07:00
Jonah Williams
656482af41 AccessibilityBridge support for edge triggered semantics (iOS + Android) (flutter/engine#4901)
AccessibilityBridge support for edge triggered semantics (iOS + Android)
2018-04-19 11:14:47 -07:00