* Switch ui.window.devicePixelRatio to browser dpi
* Add integration test for multi res image loading
* Update cirrus for new integration test
* update canvas golden test root transform
* Update compositing golden test with dpr transform
* use web drivers as a library only. do not fetch/clone web_installers
* fixing comments
* addressing reviewer comments
* adding a trim to output. otherwise last fails
* adding arguments to felt for running different type of tests
* adding test type enums to felt
* more changes to felt for testing branches
* more additions to code
* more changes to felt
* adding code for cloning web_drivers
* validating test directories. running the integration tests. update the readme file partially
* Removing todo lists used for development
* addressing reviewers comments
* remove unused imports
* addressing more reviewer comments
* addressing more reviewer comments
* addressing reviewer comments.
* addressing reviewer comments.
* fixing typos
* using chromedriverinstaller as a library. Fixing the commit number used from web_installers repo
* clean drivers directory after tests finish
* addressing more reviewer comments
* throwing all critical exceptions instead of logging and returning boolean flags
* adding todos for items we can do for making felt easier to use for local development
* do not run integration tests on CIs. Added an issue to the TODO.
* changing todo's with issues.
This moves the Metal `GrContext` creation utilities from `GPUSurfaceMetal` into
a separate `IOSContext` object subclass. An analogue of this object was used in
the GL regime for the management of onscreen and offscreen contexts that were
not tied to the lifecycle of the `GPUSurface`. This pattern has now been
generalized for use with all backends that need a resource context
(`IOSContextGL` and `IOContextMetal`).
The platform views controller management in the `ExternalViewEmbedder` interface
implementation was repeated three times for [Metal][metal], [OpenGL](opengl) and
[Software](software) rendering. This repetition has been removed and a single
implementation present in the base `IOSSurface` and used on all platforms.
Addition of new client rendering APIs should not affect how the engine renders
into the platform view interleaving levels.
All rendering API selection logic has been moved into a single set of utilities
in `rendering_api_selection.h`. This enables the removal of a lot of code blocks
guarded by `FLUTTER_SHELL_ENABLE_METAL`. The remaining uses of this will be
removed when unified builds are enabled.
The Metal backend now also adds traces similar to the GL backend.
The `IOGLContext` has been renamed to `IOContextGL` to be more in line with the
convention used in this library.
Fixes https://github.com/flutter/flutter/issues/41827
Adds https://github.com/flutter/flutter/issues/52150
[metal]: 1194ba2b21/shell/platform/darwin/ios/ios_surface_metal.mm (L55)
[opengl]: 1194ba2b21/shell/platform/darwin/ios/ios_surface_gl.mm (L95)
[software]: 1194ba2b21/shell/platform/darwin/ios/ios_surface_software.mm (L146)
This reverts 619acd58ca55b2a85cf70d0f7861e3c98058972d and re-lands 6cfa7fcad64e2fe70bca01cfbc4598ecd24613b1. The 6cfa7fcad64e2fe70bca01cfbc4598ecd24613b1 was good. The screenshot changes were expected.
Fixes https://github.com/flutter/flutter/issues/32215
Broke golden file tests in the framework. Reverting to unblock the
engine roll to the framework.
This reverts commit 6cfa7fcad64e2fe70bca01cfbc4598ecd24613b1.
We believe this may be implicated in a Windows-specific crash during the
Flutter Gallery integration test.
See:
https://github.com/flutter/flutter/issues/51896
This reverts commit f9b78c5db2bc3087e1793947b11ca643c2d747cf.