* VSyncWaiter on Fuchsia will defer firing until frame start time
The common vsync waiter implementation expects this invariant to be
held.
* Add a test for vsync_waiter
Windows does not provide a system notification the embedder can
subscribe to to determine when a screen reader or other assistive
technology that requires the semantics tree has been enabled. [1]
In the absence of such a notification, we watch for queries for the
IAccessible COM object representing the root node of the semantics tree,
and on receipt of such queries we enable the semantics tree. For the
time being, we assume that if accessiblity is enabled, it will be
enabled for the duration of the application lifetime. In a future patch
we can optimise this by adopting the approach taken by Chromium, which
is to disable semantics if we haven't received a query within some
reasonable timeout.
This patch enables Flutter's semantics tree; a follow-up patch wires in
the AccessibilityBridge which maintains the AXTree of COM objects that
is the Windows representation of the Flutter SemanticsTree.
Issue: https://github.com/flutter/flutter/issues/77838
[1]: https://docs.microsoft.com/en-us/windows/win32/winauto/screen-reader-parameter
* [fuchsia] Keep track of all child transforms in FlatlandExternalViewEmbedder
(cherry picked from commit 0adc38c375cbc982c481771e76b0a464ce95ee79)
* [fuchsia] HandleRemoveview cleanup
The integration test works in debug/jit mode only, and building in
`profile` and `release` modes was not working, breaking some builders.
The workaround was to disable the test.
This PR will enable release/aot mode so it will build, and unblock both
the debug-mode version of the test (tested by CI) and release mode
builds of the repo.
Due to the request to unblock, this PR does not yet build packages in
`profile` mode that will run in Fuchsia, but it should at least build
without errors. Ongoing work is in progress to also support running in
release mode.
When a text input client is cleared, such as when the user changes focus
from one text input widget to another, or when the window itself loses
focus, cancel IME composing mode, close the composing candidates window
(if any), and reset the composing text.
Issue: https://github.com/flutter/flutter/issues/90503
* Reland "Use the systrace recorder if systracing is enabled at startup, and enable systracing in release mode on Android (#28903)" (#29071)"
This reverts commit a7660964b41f64991369341364a43c93317a4a51.
* More logcat
* more logs
* Remove wait
* Avoid plugin registrar exception
* DEFAULT instead of LAUNCHER
* use am instead of monkey
* Update android_systrace_test.py
Bug: fxb/50694
Tested: Ran Spinning Square with the JIT runner.
Some small non-destructive cleanups that should make the CF v2
Flutter runner easier to read in a follow-up PR. No logic is
changed, only naming and location.
Renames Application -> Component. This matches the filename and
Fuchsia's naming.
Moves FileInNamespaceBuffer and related utilities into a separate
file from component.cc. This will enable reusing these utilities
in the CF v2 FLutter runner. Also adds documentation for them.
Renames CreateWithContentsOfFile helper -> LoadFile since that's
what the FML_EVENT_TRACE calls it.
Removes undefined UnregisterApplication method. There are no
usages of this method in our codebase.
Move fields after methods to follow the C++ style guide.
* Web
* macos
* Linux
* Easier web impl
* doc and format
* Better linux impl
* Format
* Better impl mac
* Format
* Windows
* Format
* Apply suggestions from code review
Co-authored-by: Greg Spencer <gspencergoog@users.noreply.github.com>
Co-authored-by: Greg Spencer <gspencergoog@users.noreply.github.com>