485 Commits

Author SHA1 Message Date
Callum Moffat
b92b9bdb6a Add discrete scale pointer signal (flutter/engine#36342) 2022-09-27 15:30:14 +00:00
gaaclarke
e41c775200 Removed instances of unnecessary values (flutter/engine#36221) 2022-09-26 21:28:04 +00:00
Alexander Biggs
6751734343 [fuchsia] Add run_unit_tests.sh script. (flutter/engine#36308)
This is a convenience script for running unit tests locally.

To make this script work, I had to move several test exclusions
from test_suites.yaml (which controls running tests on CQ)
to the tests themselves. I think this is for the best because
it makes running the tests locally with behavior that matches
CQ easier.

Also added fuchsia_tests to build_and_copy_to_fuchsia.sh
so it builds the unit tests .far packages by default.

Tested: Ran `run_unit_tests.sh`, all tests pass. Ran
`build_and_copy_to_fuchsia.sh`, it still builds.
2022-09-21 10:40:20 -07:00
gaaclarke
6b2a14d348 Isolate platform channels for desktop (flutter/engine#35893) 2022-09-20 23:56:04 +00:00
Jason Simmons
a4543ccec9 Use a linker script to export only the required symbols in the Linux embedder library (flutter/engine#36187) 2022-09-16 22:09:09 +00:00
Jason Simmons
6e87e08277 Populate dart_library_sources_kernel in the embedder library in JIT mode (flutter/engine#36059) 2022-09-10 00:20:02 +00:00
Loïc Sharma
0c2a1361e6 Remove noisy log from startup (flutter/engine#35954) 2022-09-07 21:18:22 +00:00
yaakovschectman
e2e7168850 Honor mixed state of tristate Checkbox in Semantics (flutter/engine#35868)
* Honor mixed state

* Add to unit test

* Add state enums

* Fix delimiter

* Add enums

* Scope subtests, rename enum

* Rename enums

* Comment specification

* Tidy up comments

* Rename java enum

* Trailing whitespace
2022-09-06 10:59:25 -04:00
Loïc Sharma
837d8f1736 Queue all semantic nodes & actions before completing batch (flutter/engine#35792) 2022-08-30 20:00:01 +00:00
Kaushik Iska
7cdcb0f837 Do not override partial repaint support globally (flutter/engine#35539) 2022-08-19 18:41:46 +00:00
Jim Graham
5f9579eae8 Display list multiplexer (flutter/engine#35421) 2022-08-16 05:34:52 +00:00
Chinmay Garde
88bf841fa6 Fix race in PushingMutlipleFramesSetsUpNewRecordingCanvas. (flutter/engine#35412) 2022-08-15 21:28:30 +00:00
Bernardo Eilert Trevisan
d9da8e0d2e Enable dirty region management within the Embedder API (flutter/engine#35022) 2022-08-12 10:52:54 -07:00
Loïc Sharma
a015114478 [Embedder API] Add next frame callback (flutter/engine#35244) 2022-08-08 23:19:04 +00:00
Zachary Anderson
ab33453a89 Roll mac clang, ignore spurious lints (flutter/engine#35196) 2022-08-05 15:50:08 -07:00
Jim Graham
1413379354 Embedders use DisplayListBuilder for compositing (flutter/engine#35170) 2022-08-04 22:23:04 +00:00
Kaushik Iska
c4498028d7 Fix data race in VerifyB143464703WithSoftwareBackend (flutter/engine#34722) 2022-07-18 20:54:04 +00:00
Hannes Winkler
6c940139ae Support configurable pixel formats for the embedder API sofware rendering backend (flutter/engine#26995)
- add sw rendering pixel format support
- add new backing store type that contains struct_size and pixel format
- add new public pixel format enum with the common pixel formats supported by skia
2022-07-18 08:22:48 -04:00
Callum Moffat
0941daa6de Reland "Add new pointer signal for cancelling scroll inertia" (flutter/engine#34537) 2022-07-14 03:14:04 +00:00
Javon Thomas
43cf716d03 Create blanket backdrop filter mutator (flutter/engine#34408) 2022-07-13 22:08:05 +00:00
Bernardo Eilert Trevisan
a08a568e0a Relanded "Implement support for explicit specification of JIT snapshots (#34244)"
This reverts commit b989d4723510771017ef598403a2366a8f1bcac7.
2022-07-08 15:19:30 -04:00
Tong Mu
25490eb3b5 Revert "Add new pointer signal for cancelling scroll inertia (#34402)" (flutter/engine#34535)
This reverts commit 0a1ee488baaddc9429c75e4a463d73ac5a4e2330.
2022-07-08 04:45:23 -07:00
Callum Moffat
0a1ee488ba Add new pointer signal for cancelling scroll inertia (flutter/engine#34402) 2022-07-08 01:32:05 +00:00
Jason Simmons
b989d47235 Revert "Implement support for explicit specification of JIT snapshots (#34244)" (flutter/engine#34517)
This reverts commit 042ee2546c1569850f628e33e34385299e2df3c7.
2022-07-07 16:59:07 -07:00
Bernardo Eilert Trevisan
042ee2546c Implement support for explicit specification of JIT snapshots (flutter/engine#34244) 2022-07-07 22:48:05 +00:00
Zachary Anderson
3c6820dc68 Move embedder_a11y_unittests to its own binary (flutter/engine#34377) 2022-06-29 12:38:26 -07:00
Tong Mu
ee0e8303fb [Keyboard] Mark generated file names with infix .g. (flutter/engine#34123)
* Impl

* Format
2022-06-23 20:02:33 -07:00
Dan Field
f7163f555c Roll SwiftShader, ANGLE, use SwANGLE in test harnesses (flutter/engine#33814)
Roll Swiftshader, ANGLE, and Vulkan deps.

Updates license bot for new locations of licenses and new files
in roll.

Converts unit test harnesses to use SwANGLE, which is the
supported way of using SwiftShader as a software backend for GLES.

Updates goldens due to swiftshader changes.

Fixes up include paths to avoid directly including third_party
code by that name, which is unlikely to work in other build
environments.

Includes upstream patches to ANGLE and SwiftShader to build in our
windows environments, as well as patches to Skia to support
defining the location of VulkanMemoryAllocator and a patch to ANGLE
to support opting into a newer version of VMA.
2022-06-23 16:43:39 -07:00
Kaushik Iska
af6bbe756d Move the args for GLContextPresent into a struct (flutter/engine#33758)
This refactor enables easier additions to the method
for fields that can be optionally consumed by various
platforms.
2022-06-01 23:11:37 -04:00
Tong Mu
78adf103bf Reland No.2 "Hardware Keyboard: Android" (flutter/engine#33686)
* Original code

* Changes

* Fix and test

Better formatted tests
2022-05-31 13:00:39 -07:00
Chris Bracken
56fbdd0232 [lint] Enforce k prefix for global constants (flutter/engine#33666)
Enforces that all global constants are prefixed with a 'k' as per the
style guide and updates the codebase into conformance where necessary.

This does not change any public API.

Additional testing provided by the addition of the lint rule.

Ref: https://github.com/flutter/flutter/wiki/Style-guide-for-Flutter-repo#begin-global-constant-names-with-prefix-k
2022-05-27 18:33:38 -07:00
Zachary Anderson
8e85a8d270 Fixes a few asan errors (flutter/engine#33632) 2022-05-26 07:29:50 -07:00
Tong Mu
861b51a5a1 Revert "Reland "Hardware Keyboard: Android" (#33567)" (flutter/engine#33589)
This reverts commit 8cb40595dc05cd094a1cc27ede4ab59d19365070.
2022-05-24 11:02:28 -07:00
Tong Mu
8cb40595dc Reland "Hardware Keyboard: Android" (flutter/engine#33567) 2022-05-24 09:49:23 -07:00
Dan Field
a73d5b5fbe Reland Enable MSAA behind a flag for iOS (flutter/engine#33505) 2022-05-19 23:58:05 -07:00
Tong Mu
a8696c0ef2 Revert "Hardware Keyboard: Android (#33113)" (flutter/engine#33507)
This reverts commit 2555d53f05a058bd20c290ab44eaaf11f02afc73.
2022-05-19 23:28:33 -07:00
Tong Mu
2555d53f05 Hardware Keyboard: Android (flutter/engine#33113)
* Impl

* First test passed

* Runnable and more tests

* Use constants

* static import

* modifier keys

* nonUsKeys

* order test, duplicate/abrupt test

* Synthesize pressing keys

* WIP

* New sync algorithm

* Sync with synonym

* Add all pressing goals and mask constants

* Test all modifiers

* Add tests for capslock

* Gen

* Docs

* mutable

* Extract CharacterCombiner, docs

* doc

* License

* Doc for keydata

* Apply suggestions from code review

Co-authored-by: Greg Spencer <gspencergoog@users.noreply.github.com>

* Use &

* Format

* Fix tests

Co-authored-by: Greg Spencer <gspencergoog@users.noreply.github.com>
2022-05-19 15:03:42 -07:00
Dan Field
fd6330c745 Revert "Enable MSAA behind a command line flag for iOS (#33461)" (flutter/engine#33481)
This reverts commit ce9f6b2e43e2d88934345ac96bcb366a144b3408.
2022-05-19 09:23:58 -07:00
Dan Field
ce9f6b2e43 Enable MSAA behind a command line flag for iOS (flutter/engine#33461) 2022-05-18 17:07:05 -07:00
Chinmay Garde
7df5e81ea8 [impeller] Wire up the OpenGL ES Backend. (flutter/engine#33405) 2022-05-17 13:16:25 -07:00
Zachary Anderson
00607f96ea Reland: Roll clang and buildroot (flutter/engine#33339) 2022-05-14 06:04:14 -07:00
Chris Bracken
09285aac02 Use empty in place of size checks vs 0 (flutter/engine#33151) 2022-05-06 13:09:04 -07:00
Chris Bracken
1af24ccf62 Set Platform.executable on startup (flutter/engine#33127)
Previously, using Platform.executable (from dart:io) returned null (if
non-null-by-default was disabled) or threw an exception (if NNBD was
enabled) since we weren't setting it.

We now pass the executable name to Dart during VM startup based on the
first value in the FlutterProjectArgs::command_line_argv array passed to
FlutterEngineRun (or FlutterEngineInitialize) on startup. argv[0] (if
specified) is explicitly documented as being required to be the
executable name in embedder.h. In the case where no argv[0] is
specified, we instead set Platform.executable to "Flutter" in order to
avoid violating the (non-nullable) type annotation on
Platform.executable.

Note that dart::bin::SetExecutableName() does NOT make a copy of the
input string, so that value needs to be available for the entire lifetime
of the VM.

This also adds EmbedderConfigBuilder::SetExecutableName() to support
setting a fake executable name in unittests. By default, we continue to
set the name "embedder_unittest" unless overridden using this method.

See: https://api.flutter.dev/flutter/dart-io/Platform/executable.html
See: https://github.com/dart-lang/sdk/issues/48427

Issue: https://github.com/flutter/flutter/issues/83921
2022-05-05 11:14:16 -07:00
Chris Bracken
d19ef3092c [embedder] Fix typo in EmbedderA11yTest (flutter/engine#33120) 2022-05-04 18:19:05 -07:00
Tong Mu
d5820083a5 [Linux, Keyboard] Derive keyboard layout using printable information from system (flutter/engine#32665)
* Workable layout deduction

* Compilable test

* Tests

* Remove print, format

* Use new way to pass logical key

* Use unique_ptr

* Format

* Fix matrix format

* Format

* Cleanup

* Remove duplicate

* Remove printf

* Update shell/platform/linux/fl_keyboard_manager.cc

Co-authored-by: Greg Spencer <gspencergoog@users.noreply.github.com>

Co-authored-by: Greg Spencer <gspencergoog@users.noreply.github.com>
2022-04-21 00:48:22 -07:00
Dan Field
ec99c09baf Soft revert of 3a0d0b6e36deebc6d477daee9a3cc4dbd09a7900 (flutter/engine#32465) 2022-04-07 09:22:08 -07:00
Swift Kim
72ff6875fb Sync accessibility flags in embedder.h (flutter/engine#32332)
The following enum types in `embedder.h` must match with the corresponding Dart/C++ classes in `dart:ui` but some values are missing.

- `FlutterAccessibilityFeature`
- `FlutterSemanticsAction`
- `FlutterSemanticsFlag`

The comments say

5a43c7cb8e/shell/platform/embedder/embedder.h (L83)

5a43c7cb8e/lib/ui/window.dart (L784-L785)

Issue: https://github.com/flutter/flutter/issues/101217
2022-04-06 10:01:22 -07:00
Kevin Lubick
cdd2946003 Fix includes of SkColorSpace et al (flutter/engine#32382) 2022-04-01 10:59:23 -07:00
Chinmay Garde
351494f717 Add support for images in display lists. (flutter/engine#32268) 2022-03-30 13:31:37 -07:00
godofredoc
c1b58c4c22 Targets to generate macos gen snapshot. (flutter/engine#31950) 2022-03-28 18:25:03 -07:00