Now that the embedders depend on FML, migrate assertions to FML_DCHECK,
which allows for an explanatory log message to be emitted along with the
assertion.
No tests since no semantic changes are made.
* Generate zip archives for Windows following target platform.
* Add CI builder for windows-arm64.
All packages can be cross compiled from an x64 machine.
Unittests are disabled, as they require an arm64 machine.
* Add windows-arm64 to CI.
`AddLocalChild(LocalComponent*)` is deprecated.
It was replaced by:
`AddLocalChild(LocalComponentFactory)`, which is a type alias for a
lambda that returns a `std::unique_ptr<LocalComponentImpl>`.
This change addresses problems that arised due to object lifetime
management of the components, and allows RealmBuilder to model the
component lifecycle of local components in a way that's more consistent
with other components.
The RealmBuilder-built `Realm` now owns the lifetime of the local
components, instead of the client, and those objects are valid until
the `Realm` is destroyed.
Bug: fxbug.dev/109804
* Undo axes flipping when using scroll wheel with shift key
* Formatting
* ++
* Fix test
* Fix for test
* Update shell/platform/darwin/macos/framework/Source/FlutterViewControllerTest.mm
* ++
* Fix format
* Review feedback
* Generate zip archives for Windows following target platform.
* Add CI builder for windows-arm64.
All packages can be cross compiled from an x64 machine.
Unittests are disabled, as they require an arm64 machine.
* Add windows-arm64 to CI.
* Revert "Revert "Started using FlutterEngineGroups by default on Android (#37822)" (#38351)"
This reverts commit b0a282e0cc7e0ceb22ce75258c2b9c22266b7f47.
* fixed the entrypoint test
* updated old test
* coldpalelight's suggestion
* added entrypoint args
Eliminates raw C asserts in the iOS and macOS embedders, replacing them
with FML_DCHECK for consistency with the rest of the codebase.
No semantic change so no changes to tests.
* Sped up reading with FlutterStandardCodec.
* added missing license diff
* put the IsStandardType in the header so it's closer to where it should change
* added unittest for subclassing codecs
* fixed lints
* fix keyboard inset not collapsing when expected
* fix some formatting
* fix issue with rotating with undocked and split keyboard
* fix formatting
* fix behavior on slide over view
* fix formatting
* refactor to make logic more clear
* move enum to header file, remove unneeded parameters, syntax fixes, remove rotation logic
* ignore notification if app state is not active, change way it checks if keyboard intersects with screen to accomodate for repeating decimals, format
* fix leaking unit test
* use viewIfLoaded and update tests to fix mocking
* change ignore logic related to application state to be more specific
* add more comments
* add more comments
* change function name to be more clear, add warning log if view is not loaded, update a comment
This is a minor cleanup that exposes the test metal surface to tests via
EmbedderTestContextMeta::GetTestMetalSurface for parity with the
GetTestMetalContext method which exposes the test metal context. This
eliminates the need for the more specific GetTextureInfo method since
the texture info is accessible via the test context.
This is a test refactoring with no semantic differences to the engine.
Issue: https://github.com/flutter/flutter/issues/116381
This is a followup to flutter/engine#38038.
In that patch, a destruction callback for textures created via the
FlutterRendererConfig callbacks (as opposed to by the FlutterCompositor
callbacks) was added and passed through to the texture info attached to
the SurfaceFrame generated in
GPUSurfaceMetalSkia::AcquireFrameFromMTLTexture (called via
GPUSurfaceMetalSkia::GetMTLTexture, which invokes the
get_next_drawable_callback), however, in order for the destruction
callback to make it to the presented Skia texture, it needs to be passed
through to the present callback here:
960af0a350/shell/gpu/gpu_surface_metal_skia.mm (LL233)
which is invoked by the submit callback passed to Skia:
960af0a350/shell/gpu/gpu_surface_metal_skia.mm (LL239)
The present callback is implemented in EmbedderSurface::PresentTexture,
which invokes the present callback registered in
FlutterMetalRendererConfig.present_drawable_callback. This patch ensures
that the destruction callback is passed through to Skia's present
callback so destruction occurs in the right place.
Issue: https://github.com/flutter/flutter/issues/116381