353 Commits

Author SHA1 Message Date
Alexander Brusher
523c8c8883
Adds a mechanism for announce events to be forwarded to a11y. (#23499) 2021-01-25 13:24:05 -08:00
Chase Latta
2707c21c4f
use a single clang toolchain (#23842) 2021-01-25 13:23:04 -08:00
Daco Harkes
920a33a0fc
add ffi_allocation_patch.dart to libraries.yaml (#23808) 2021-01-20 16:44:02 -08:00
kevinsakuma
6dec80630e
Removes deprecated WLAN API dependency. (#23726) 2021-01-20 09:24:02 -08:00
Jody Sankey
23a9a0f4fb
[fuchsia] Add missing static binding check. (#23731) 2021-01-15 22:19:02 -08:00
Alexander Brusher
6cbdd9a46a
Populates fuchsia a11y toggled state. (#23704)
This change ensures that flutter accessibility updates include toggled
state as appropriate.
2021-01-15 10:32:19 -08:00
Chase Latta
a1e74242ff
[dart-runner] Avoid calling Destroy on nullptr (#23608) 2021-01-12 13:14:02 -08:00
Filip Filmar
3b3d8e67d3
[fuchsia][input] Migrate Flutter to "input3" (#23262) 2021-01-07 15:39:03 -08:00
David Worsham
b304148d46
fuchsia: Shutdown Dart VM properly (#23243) 2020-12-28 18:16:27 -08:00
Gary Qian
1c975f1e7c
AssetResolver updating in AssetManager for Dynamic features (#23130) 2020-12-23 17:39:55 -08:00
Jody Sankey
6e54f0d2df
[fuchsia] Add wrapper for zx_clock_get_monotonic. (#23128)
Bug: https://github.com/flutter/flutter/issues/72321

Co-authored-by: Jody Sankey <jsankey@google.com>
2020-12-17 10:55:29 -08:00
Siva
76310c4264
Add missing sdk constriant in pubspec.yaml files. (#23124)
* Add missing sdk constriants in pubspec.yaml files.

* Update tools/android_lint/pubspec.yaml

Co-authored-by: Zachary Anderson <zanderso@users.noreply.github.com>
2020-12-17 09:45:26 -08:00
Tamir Duberstein
6b4d4a39df
[fuchsia] Remove fuchsia.netstack.Netstack (#23082) 2020-12-15 09:48:01 -08:00
freiling
bbed7c6ab8
warmup memory reland (#23009) 2020-12-14 13:18:02 -08:00
freiling
164696619b
Revert "Freiling warmup memory (#22984)" (#23007)
This reverts commit 062cbd8cc8026ac8cdda48a29dc60e50535877b5.
2020-12-10 15:35:46 -08:00
freiling
062cbd8cc8
Freiling warmup memory (#22984)
* [fuchsia] enable boot time shader warmup even when LEGACY_FUCHSIA_EMBEDDER is defined

* [fuchsia] decouple shader warmup from embedder api

* [fuchsia] change warmup context flush() to flushAndSubmit() to reduce memory footprint of warmup

* [fuchsia] Fix GPU resource lifecycle issue with shader warmup

This fixes an issue with the shader warmup where gpu resources could end
up deleted before the gpu work that needed them was complete, leading to
GPU page faults. This was because although the sk_sp<SkSurface> will normally
keep resources alive throughout its lifetime, the SurfaceProducerSurface will
call VkDestroyMemory on the memory backing the SkSurface when it is deleted,
even if the SkSurface wrapping that VkMemory is still alive.

This change also deletes some related but unused code from
CompositorContext that I noticed while refactoring.
2020-12-10 15:27:44 -08:00
Chase Latta
96927bb756
add ffi_struct_patch.dart to libraries.yaml (#23000) 2020-12-10 13:32:49 -08:00
Gary Qian
8d4b7f3a68
Add split AOT loading unit failure/error code path (#22857) 2020-12-08 22:58:01 -08:00
Gary Qian
fcbfa9f527
Split AOT Engine Runtime (#22624) 2020-12-02 13:28:01 -08:00
chandarrengoog
bcc8832c1f
Cleanup dart_runner examples & tests. (#22769) 2020-11-30 12:48:02 -08:00
David Worsham
7b5f79f1a1
fuchsia: Ensure full-screen input interceptor (#22687) 2020-11-25 19:10:29 -08:00
freiling
f2803ac017
[fuchsia] shader warmup fixes (#22439)
This change contains a couple of changes that should have been in
github.com/flutter/engine/commit/3105db8ee856ffef281d018774d21a6164c81236
but fell through the cracks

First one lifts the initialization of the flutter::RunConfiguration so that
the asset manager gets set on the persistant cache before the shader
warmup happens. I'm not sure how this didnt end up in the first PR I
think it got mangled during merge conflict resolution. no test coverage
for that code because its in the middle of a 400 line constructor

Second one fixes a race condition that the tests dont catch because the
tests are single threaded. This change restructures the test that missed
this bug so that it would have caught that bug and will catch comparable
bugs.
2020-11-19 19:46:13 -08:00
Gary Qian
53fc019aab
Split AOT Android Embedder and shell (#22179) 2020-11-19 17:22:26 -08:00
David Worsham
4a5cf14d6f
fuchsia: Clamp compositor surface size (#22593) 2020-11-18 15:46:21 -08:00
gaaclarke
1c3bc02649
started providing the GPU sync switch to external view embedders (#22302) 2020-11-17 18:43:01 -08:00
Kaushik Iska
1ff237fdca
Reland "remove surface dependance on external view embedder (#22468)" (#22470) 2020-11-12 15:37:12 -08:00
Kaushik Iska
021ff04336
Reverts 2 commits that remove surface dependance on external view embedder (#22468)
* Revert "Remove GetExternalViewEmbedder from surface (#22272)"

This reverts commit 5419f70f173db1c9f2d5db4c289560e68ce9b77b.

* Revert "Rasterizer is initialized with an external view embedder (#22405)"

This reverts commit f95df42e6e3d80f17c2024e9956768be9416717f.
2020-11-12 08:41:11 -08:00
Kaushik Iska
5419f70f17
Remove GetExternalViewEmbedder from surface (#22272)
This decouples surfaces from view embedders.
2020-11-11 13:45:24 -08:00
Kaushik Iska
caf678d30f
Move common graphics utils to //flutter/common/graphics (#22320) 2020-11-10 12:34:02 -08:00
Kaushik Iska
6e95e005f1
Platform views have CreateExternalViewEmbedder (#22214) 2020-11-06 05:30:48 -08:00
freiling
3105db8ee8
SKP based shader warmup (#20643) 2020-11-04 23:19:02 -08:00
Daco Harkes
ccdb6819ce
WeakPersistentHandle migration (#19843)
and roll Dart to 52783837369de45d3372cb6c6b7cdd63e71cd829.
2020-11-03 13:06:53 +01:00
mikaelpessa
7a7804b6d3
Add "input shield" to capture pointer input for reinjection (#22067) 2020-10-29 15:23:02 -07:00
Alexander Brusher
0270632d85
Includes roles for links, checkboxes, and radio buttons in semantics (#22061) 2020-10-28 18:02:02 -07:00
Kaushik Iska
326b202cc7
Reland fuchsia external view embedder will be shared with platform view (#22008)
* Reland fuchsia external view embedder will be shared with platform view

This reverts commit 9b752790f4d25ab238576c719208d7a38c6293f3.

* wait for the external view embedder to be initialized before creating
shell
2020-10-22 13:48:36 -07:00
Adam Barth
638c182366
[fuchsia] zx::vmar::map migration (#22003)
The new map() method receives its arguments in the same order as the
underlying C system call. This patch should not change any behavior.
2020-10-20 21:59:46 +00:00
Chase Latta
8a5b423445
[fuchsia] opt-out null-safety in standalone scripts (#22009) 2020-10-20 14:47:01 -07:00
Clement Skau
e78e405e6a
Enable lazy-async-stacks by-default in all modes (Take 4) (#21802) 2020-10-20 10:31:15 +02:00
Chinmay Garde
fa11ee6e2a
Fix native constructor of list of zircon handles and remove unused list factory specializations. (#21980) 2020-10-19 19:42:01 -07:00
Chris Bracken
49c35b6177
Eliminate unnecessary linter opt-outs (#21935)
Eliminates FLUTTER_NOLINT where they can be landed without triggering
lint failures.
2020-10-16 17:24:23 -07:00
Ren You
9b752790f4
Revert "[fuchsia] External view embedder will be shared with platform view (#21850)" (#21924)
This reverts commit 1bc025d6cbf1136c2e96c6fb041d24202ea47ff0.
2020-10-16 15:25:13 -07:00
Chinmay Garde
5bd7260a1e
Enable loading snapshots with sound null safety enabled. (#21820)
Snapshots compiled with sound null-safety enabled require changes to the way in
which isolates are launched. Specifically, the `Dart_IsolateFlags::null_safety`
field needs to be known upfront. The value of this field can only be determined
once the kernel snapshot is available. This poses a problem in the engine
because the engine used to launch the isolate at shell initialization and only
need the kernel mappings later at isolate launch (when transitioning the root
isolate to the `DartIsolate::Phase::Running` phase). This patch delays launch of
the isolate on the UI task runner till a kernel mapping is available. The side
effects of this delay (callers no longer having access to the non-running
isolate handle) have been addressed in this patch. The DartIsolate API has also
been amended to hide the method that could return a non-running isolate to the
caller.  Instead, it has been replaced with a method that requires a valid
isolate configuration that returns a running root isolate. The isolate will be
launched by asking the isolate configuration for its null-safety
characteristics.

A side effect of enabling null-safety is that Dart APIs that work with legacy
types will now terminate the process if used with an isolate that has sound
null-safety enabled. These APIs may no longer be used in the engine. This
primarily affects the Dart Convertors in Tonic that convert certain C++ objects
into the Dart counterparts. All known Dart Converters have been updated to
convert C++ objects to non-nullable Dart types inferred using type traits of the
corresponding C++ object. The few spots in the engine that used the old Dart
APIs directly have been manually updated. To ensure that no usage of the legacy
APIs remain in the engine (as these would cause runtime process terminations),
the legacy APIs were prefixed with the `DART_LEGACY_API` macro and the macro
defined to `[[deprecated]]` in all engine translation units. While the engine
now primarily works with non-nullable Dart types, callers can still use
`Dart_TypeToNonNullableType` to acquire nullable types for use directly or with
Tonic. One use case that is not addressed with the Tonic Dart Convertors is the
creation of non-nullable lists of nullable types. This hasn’t come up so far in
the engine.

A minor related change is reworking tonic to define a single library target.
This allows the various tonic subsystems to depend on one another. Primarily,
this is used to make the Dart convertors use the logging utilities. This now
allows errors to be more descriptive as the presence of error handles is caught
(and logged) earlier.

Fixes https://github.com/flutter/flutter/issues/59879
2020-10-16 14:53:26 -07:00
Kaushik Iska
1bc025d6cb
[fuchsia] External view embedder will be shared with platform view (#21850) 2020-10-15 17:22:02 -07:00
Adlai Holler
8ec9b3a162
Update more class names from GrContext to GrDirectContext (#21864)
This name change has to do with SkDeferredDisplayList, which Flutter
does not use. As far as Flutter is concerned, this is a no-op.
2020-10-15 16:14:23 -07:00
egdaniel
d95a5dc6ad
Update flutter to pass Skia the VkImageUsageFlags and Samples (#21842)
Previously Skia did not require the clients to pass in the usage flags and Skia would just assumed they contained specific ones depending on how the client wrapped the VkImage. Now Skia allows the client to pass in the specific usage flags used so that Skia knows exactly what type of operations are legal without having to guess/assume what the client did.

Also update to set the sample count as well while I'm in here.
2020-10-14 13:55:09 -07:00
Felipe Archondo
8772365537
[fuchsia] add intercept_all_input flag support (#21821)
[fuchsia] add intercept_all_input flag support

This change also fixes an issue where FlutterRunnerProductConfiguration
crashes when a field is missing, when building with --unopt.

Test: Added unit tests
Bug: fxb/61466, fxb/61942
2020-10-13 22:11:24 -04:00
Alexander Markov
0d151816c3
Remove uses of Dart VM bytecode mode from Flutter engine (#21741) 2020-10-09 16:34:08 -07:00
Jason Simmons
b474a508a7
Remove dependencies on _product variants of libdart from the Fuchsia release mode build (#21668) 2020-10-08 09:55:43 -07:00
David Worsham
d5dddf32e7
fuchsia: Don't send ViewportMetrics w/ 0 DPR (#21392) 2020-10-06 17:57:28 -07:00
Sanjay Chouksey
bede93e532
Hookup view connected/disconnected events for platform view codepath (#21576)
This change adds support for forwarding scenic's viewConnected,
viewDisconnected and viewStateChanged events to flutter. The
corrensponding change on fuchsia side is at:
https://fuchsia-review.googlesource.com/c/topaz/+/434356

Test: Includes unittest to verify the events are forwarded.

Co-authored-by: Sanjay Chouksey <sanjayc@google.com>
2020-10-05 22:09:38 -07:00