827 Commits

Author SHA1 Message Date
gaaclarke
494e4e7e21
Added a more complete docstring for SemanticsFlags (#19817) 2020-07-16 13:13:26 -07:00
Zachary Anderson
72d0c364a7
Revert "Avoid a copy in EncodeImage (#19504)" (#19739)
This reverts commit f9acd080b3cb27342dd1f15da12635457ef6830a.
2020-07-14 10:29:34 -07:00
David Worsham
9353692cdb
fuchsia: Enable most unittests (#19583)
Tweak the primary flutter build rule so that fuchsia is more similar to
other platforms in how tests and the shell are built.

Only embedder_unittests and GLFW tests are disabled on Fuchsia now.

TEST: Ran unittests on host/fuchsia; workstation on fuchsia
BUG: fxb/53847, fxb/54056
2020-07-13 17:36:19 -07:00
Zachary Anderson
f9acd080b3
Avoid a copy in EncodeImage (#19504) 2020-07-10 14:36:13 -07:00
Andre
69fdf6d1b5
Use identical in hashValues instead of operator== (#19615) 2020-07-09 20:29:33 -04:00
Jason Simmons
a48f05f833
Clarify the relationship between PictureRecorder and Canvas (#19393) 2020-07-09 11:06:03 -07:00
Kaushik Iska
110a57983b
Track motion events for reuse post gesture disambiguation (#19484)
This change makes it so that we track all the motion events encountered by `FlutterView` and all of its subviews in the `MotionEventTracker` class, indexed by a unique `MotionEventId`. This identifier is then passed to the Flutter framework as seen in https://github.com/flutter/flutter/pull/60930. Once the gestures take part in gesture disambiguation and are sent back to the engine, we look-up the original motion event using the `MotionEventId` and dispatch it to the platform.

Bug: https://github.com/flutter/flutter/issues/58837
2020-07-06 22:22:37 -07:00
Guruji Panda
01345f5372
Fix paths in source and yaml files to minimize changes in google3 (#19414) 2020-07-01 16:13:03 -07:00
Alexandre Ardhuin
218d98f4d8
Operator equals (#19303)
* use Object for operator==

* apply style guide for operator==
2020-06-30 23:16:31 +02:00
liyuqian
e9e59f4e2b
Use FixtureTest to remove duplicate code (#19219)
Fixes https://github.com/flutter/flutter/issues/59109
2020-06-30 10:55:38 -07:00
David Worsham
220a831028
Move fuchsia/scenic integration behind #define (#19003)
Additionally create "_next" permutations for all of the test binaries
on Fuchsia, in order to test both code-paths.

Using the #define follow-up CLs can also create a flutter_runner_next
binary that does not contain any legacy integration code.

BUG: 53847
2020-06-26 14:03:18 -07:00
Gary Qian
637a8e7cd0
Revert method channel platform resolved locale (#19136) 2020-06-19 17:40:22 -07:00
Jason Simmons
9fcfec39c0
Avoid creating a vector when constructing Dart typed data objects for platform messages (#18838) 2020-06-18 09:58:03 -07:00
Dan Field
5157a6b210
Parameterize upscaling for image decoding (#19067)
Adds an `allowUpscale` parameter to the Dart interfaces for instantiateImageCodec and decodeImageFromPIxels. If set to false, the image bounds will be clamped at their intrinsic dimensions.

A later commit will change the default to true.
2020-06-18 09:42:08 -07:00
zljj0818
f9eeee310c
Poor video scaling quality #53080 (#18814)
Use bilinear instead of nearest filter to draw surface texture

Related Issues:
https://github.com/flutter/flutter/issues/53080

Tests:
- TextureLayerTest
2020-06-17 11:14:05 -07:00
Dan Field
71cb701080
Instantiate image codec doc fix (#19062)
Correctly describe the way aspect ratio is managed when one parameter is not specified.
2020-06-16 15:14:04 -07:00
Gary Qian
3a96741247
Platform resolved locale and Android localization refactor (#18645) 2020-06-16 04:29:50 -07:00
Yegor
194acdfaed
apply null safety syntax to mobile dart:ui (#18933)
* apply null safety syntax to mobile dart:ui
2020-06-12 12:42:12 -07:00
liyuqian
369e0a9b91
Add ui_benchmarks (#18945) 2020-06-11 10:55:03 -07:00
Brian Osman
925943b74d
SkMatrix::MakeFoo is deprecated, use SkMatrix::Foo instead (#18934) 2020-06-09 16:55:13 -04:00
Yegor
f581f428e9
nullability clean-ups (#18880)
* nullability clean-ups
2020-06-08 10:55:24 -07:00
Yegor
ff6462e457
null-annotate remaining engine code (#18852)
* null-annotate remaining engine code
2020-06-05 21:00:07 -07:00
Yegor
2230d18612
add nullability annotations to lib/ui/painting.dart (#18374)
* add nullability annotations to lib/ui/painting.dart
2020-06-05 10:26:14 -07:00
Yegor
612568c67b
add nullability annotations to ui/text.dart (#18400)
* add nullability annotations to ui/text.dart
2020-06-05 08:19:14 -07:00
Dan Field
7e38261e1a
Record path memory usage in SkPictures (#18827) 2020-06-04 15:48:25 -07:00
Yegor
fe80dff37b
null annotate window.dart (#18789) 2020-06-04 14:31:08 -07:00
Yegor
4ce831e469
null-annotate semantics.dart (#18791) 2020-06-04 11:35:24 -07:00
Dan Field
343af33344
Live region announcements for iOS (#18798) 2020-06-03 19:13:04 -07:00
Dan Field
25054fb470
Implement GetAllocationSize for Vertices (#18756)
* Implement GetAllocationSize for Vertices

* Reflect vertex buffer size in pictures
2020-06-03 10:35:14 -07:00
stuartmorgan
77617e47cf
Revert "null-annotate SemanticsUpdateBuilder.updateNode (#18552)" (#18785)
This reverts commit cc08940e6262ca6675eda145d7caf635e9774b4a.
2020-06-03 09:54:06 -07:00
Dan Field
f46dde1f06
Make images contribute to Picture allocation size, more aggressively release references when dispose is called (#18706)
SkImage references get held by both our Image and Picture objects. The GC has no idea about this, and so sometimes pictures look very small when they're actually holding a reference to a large chunk of memory. This patch helps make sure that the GC can more adequately catch the real size impact of Picture objects, and combined with an upstream patch in Dart allows for much more aggressive collection of unused image related memory.
2020-06-02 15:12:06 -07:00
Chris Bracken
cc08940e62
null-annotate SemanticsUpdateBuilder.updateNode (#18552)
The underlying _updateNode call requires that all parameters be set
non-null. There's a single call site in the framework in
lib/src/semantics/semantics.dart in SemanticsNode.updateWith(). At that
call site, all parameters are either asserted non-null in the
constructor of SemanticsData or defaulted to null, with the sole
exception of textDirection.

The ergonomics of this method are currently pretty ugly and we should
consider migrating most of the defaulting and assertions that we apply
at the call site up to the definition in dart:ui. That work is filed as
https://github.com/flutter/flutter/issues/57720.
2020-06-02 14:42:36 -07:00
Chris Bracken
90eb48956c
null-annotate lib/ui/hooks.dart (#18555) 2020-06-02 09:49:50 -07:00
Dan Field
c9e51d074a
Make GetAllocationSize const (#18713) 2020-06-01 15:58:03 -07:00
chenjianguang
89cf074d37
Setup default font manager after engine created, to improve startup performance (#18225) 2020-05-28 17:53:04 -07:00
Chris Bracken
9f4468602c
null-annotate semantics.dart (#18553)
Covers the remaining API surface of the semantics library.
2020-05-21 14:24:08 -07:00
Yegor
f6847b1c17
sync ui geometry.dart into web_ui geometry.dart; add null safety annotations (#18356)
sync ui geometry.dart into web_ui geometry.dart; add null safety
2020-05-15 17:09:14 -07:00
Chris Bracken
af2b806700
null-annotate native calls in lib/ui/semantics.dart (#18436)
Also covers counterparts of these calls in web_ui.
2020-05-15 16:28:00 -07:00
Chris Bracken
fb21b34f02
null-annotate native calls in lib/ui/window.dart (#18430) 2020-05-15 15:38:57 -07:00
Chris Bracken
dc7e24e15a
null-annotate lib/ui/natives.dart (#18349) 2020-05-15 09:33:11 -07:00
Yegor
b37427eaaf
null-annotate compositing.dart (#18351) 2020-05-14 19:16:28 -07:00
Chris Bracken
7e12824978
null-annotate lib/ui/pointer.dart (#18354) 2020-05-14 15:17:29 -07:00
Chris Bracken
4afc2b4d65
null-annotate lib/ui/plugins.dart (#18353) 2020-05-14 15:16:28 -07:00
Chris Bracken
b415c239f7
null-annotate lib/ui/isolate_name_server.dart (#18352) 2020-05-14 15:15:05 -07:00
Chris Bracken
08b61ce561
Delete unused decode UTF-8, JSON functions (#18360)
These were added in 7e5d63513a7ae854605dbd38582cead55594e9f0 for use in
_handleNavigationMessage. That function was deleted in
f37aafd456fc6a1c2dba5bc1b63123b0e665e6cd, but the support methods were
left in the code. `// ignore: unused` annotations were added to all
private native entry points by dnfield (to work around what is arguably
a bug) in 6179ac637724e8f93b7f3c8dcfda93a6b9b7995e, and were applied to
these two methods, I suspect unintentionally.

In any case, they appear entirely unused at present.
2020-05-14 09:12:28 -07:00
Yegor
bf1287c120
null-annotate lerp.dart, annotations.dart, channel_buffers.dart, hash_codes.dart (#18348) 2020-05-13 16:35:22 -07:00
Alexander Aprelev
1c8ee9856b
Introduce runtime check that it is root isolate that makes UI native calls. (#18050)
* Revert "Do not register UI-related native functions in secondary isolates (#6401)"

This reverts commit 69ae5694de54d2a163743dcec727fcea1c7bc8e1 as it doesn't work when root and secondary isolates run in the same isolate group.

* Confirm it is root isolate that makes UI native calls.

* Fix format, UIDartState reference from Fuchsia source

* No UI isolate check for fuchsia calls

* Fix typo. Remove redundant runtime calls
2020-05-01 09:05:41 -07:00
Jason Simmons
01cf8c36ce
Disable the import_internal_library analyzer check for dart:ui (#18009)
The latest version of dartanalyzer does not support disabling this for a
specific line of code.
2020-04-28 13:45:47 -07:00
Gary Qian
8dc91229b4
PlatformResolvedLocale localization message channel (#17755) 2020-04-21 15:34:44 -07:00
Brian Osman
fb208b486e
Convert semantics_node from SkMatrix44 to SkM44 (#17763)
* Convert semantics_node from SkMatrix44 to SkM44
2020-04-17 07:24:40 -04:00