3263 Commits

Author SHA1 Message Date
Alexander Biggs
8abfaf3edf [fuchsia] Add missing protocols to V2 runner. (flutter/engine#29290) 2021-10-21 16:11:31 -07:00
gaaclarke
c40f7670e7 Android Background Platform Channels (flutter/engine#29147) 2021-10-21 16:08:02 -07:00
moko256
463e6ff6e1 Fully inplement TaskRunner for UWP (flutter/flutter#70890) (flutter/engine#28013) 2021-10-21 16:03:02 -07:00
Kaushik Iska
dc905faa2d VSyncWaiter on Fuchsia will defer firing until frame start time (flutter/engine#29287)
* 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
2021-10-21 18:56:19 -04:00
Wu Zhong
b9c37424dc [iOS] Fixes FlutterUIPressProxy leaks (flutter/engine#29156) 2021-10-21 13:14:56 -07:00
Wu Zhong
69b26c89ec [iOS] Fixes key press related memory leaks (flutter/engine#29127) 2021-10-21 13:14:33 -07:00
Chris Bracken
9d6070dd18 Win32: Enable semantics on accessibility query (flutter/engine#29269)
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
2021-10-21 11:42:45 -07:00
Emircan Uysaler
0dac69cfbd [fuchsia] Keep track of all child transforms in FlatlandExternalViewEmbedder (flutter/engine#29184)
* [fuchsia] Keep track of all child transforms in FlatlandExternalViewEmbedder

(cherry picked from commit 0adc38c375cbc982c481771e76b0a464ce95ee79)

* [fuchsia] HandleRemoveview cleanup
2021-10-21 08:13:05 -07:00
Chris Bracken
746ed52a12 Add FlutterWindowsEngine::DispatchSemanticsAction (flutter/engine#29278)
Adds method for dispatching a semantics action received from the OS to
the matching node in Flutter's semantics tree.

Issue: https://github.com/flutter/flutter/issues/77838
2021-10-20 23:33:19 -07:00
Jaeheon Yi
44761762e3 [fuchsia] Implement fuchsia.ui.pointer.MouseSource (flutter/engine#29034)
fxbug.dev/64381
fxbug.dev/64377
2021-10-20 19:13:12 -07:00
Jason Simmons
6e16f8ecd2 Call rapidjson::ParseResult::IsError to check for JSON parsing errors (flutter/engine#29270) 2021-10-20 16:53:01 -07:00
utzcoz
824d6575f6 Refactor FlutterViewTest with extracting common test code to methods (flutter/engine#29226) 2021-10-19 21:18:01 -07:00
Rich Kadel
b4e2f34518 Improving support for AOT builds of Fuchsia packages
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.
2021-10-19 17:06:29 -07:00
Callum Moffat
cd18e95d73 [iOS] Fix duplicated keys when typing quickly on HW keyboard (flutter/engine#29113)
* [iOS] Fix duplicated keys when typing quickly on HW keyboard

* Address review (refactor constant)

* Change message loop constant name

* Apply suggestions from code review

Co-authored-by: Tong Mu <dkwingsmt@users.noreply.github.com>

Co-authored-by: Tong Mu <dkwingsmt@users.noreply.github.com>
2021-10-19 14:57:11 -07:00
LongCatIsLooong
7102d778c1 [ios key handling] Return the correct physical key when the keycode isn't mapped (flutter/engine#29197) 2021-10-18 18:03:02 -07:00
Ren You
1ca163b449 Revert "Set system bar appearance using WindowInsetsControllerCompat instead of the deprecated View#setSystemUiVisibility (#29060)" (flutter/engine#29206)
This reverts commit 4a20ae9ca503214f62afe22acc92721d7f648fec.
2021-10-15 05:25:14 -07:00
Alexander Biggs
f8d6431176 [fuchsia] Create CF v2 Flutter runner. (flutter/engine#29142) 2021-10-14 16:23:01 -07:00
Wyte Krongapiradee
4a20ae9ca5 Set system bar appearance using WindowInsetsControllerCompat instead of the deprecated View#setSystemUiVisibility (flutter/engine#29060) 2021-10-14 13:08:03 -07:00
moko256
28b5d6b9a4 [UWP] Remove 1px offset to make root widget fully shown (flutter/engine#27922) 2021-10-14 13:03:01 -07:00
Callum Moffat
3329abdb4a [iOS] Hardware keyboard text editing shortcuts (flutter/engine#28971)
* [iOS] Hardware keyboard text editing shortcuts

* Remove useless declarations
2021-10-13 18:11:39 -07:00
Chris Bracken
794db8c01b Correct file line-endings from CRLF to LF (flutter/engine#29164) 2021-10-13 12:58:01 -07:00
gaaclarke
bb884f3cd8 updated the docs for platform_message_callback (flutter/engine#29117) 2021-10-13 10:51:39 -07:00
Chris Bracken
5e2464a14d Cancel IME composing on clear text input client (flutter/engine#29146)
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
2021-10-13 10:29:29 -07:00
utzcoz
1309cb66c2 Bump maximum supported sdk to 30 for Robolectric (flutter/engine#28886) 2021-10-12 17:58:01 -07:00
ColdPaleLight
fabfb41f6c Calculate the frame target time based on targetTimestamp in VsyncWaiterIOS (flutter/engine#29131) 2021-10-12 14:22:29 -07:00
freiling
dc6834552d [fuchsia][flatland] Correct present credit accounting in FlatlandConnection (flutter/engine#29057)
* [fuchsia][flatland] Test for present credit exhaustion

* [fuchsia][flatland] Correct management of present credits in FlatlandConnection
2021-10-12 13:54:39 -07:00
Gary Qian
3eb6488fa3 Always increment response_id for Android platform messages (flutter/engine#29090) 2021-10-11 23:03:02 -07:00
Jason Simmons
f30e10db45 Map the Android VsyncWaiter frame start time to the clock used by fml::TimePoint (flutter/engine#29093) 2021-10-11 13:13:01 -07:00
James Clarke
d3f3b7368e Fix build flags for WinUWP (flutter/engine#29100) 2021-10-11 09:58:02 -07:00
Alexander Biggs
3dc63f83c0 [fuchsia] Add Launcher & Resolver to Dart JIT CMX. (flutter/engine#29091) 2021-10-08 17:33:01 -07:00
Dan Field
293ef51fc6 Reland Android systrace (flutter/engine#29080)
* 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
2021-10-08 15:55:50 -07:00
Alexander Biggs
069625d26a [fuchsia] Rename, move some CF v1 runner code. (flutter/engine#29072)
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.
2021-10-08 15:01:15 -04:00
linxuebin
9d9e1246a8 Macos external texture metal support yuv (flutter/engine#28341) 2021-10-08 10:58:01 -07:00
Zachary Anderson
a7660964b4 Revert "Use the systrace recorder if systracing is enabled at startup, and enable systracing in release mode on Android (#28903)" (flutter/engine#29071)
This reverts commit 79063b3c6105c3cf8be757ed6d31dd9a055060d9.
2021-10-07 22:08:10 -07:00
Dan Field
79063b3c61 Use the systrace recorder if systracing is enabled at startup, and enable systracing in release mode on Android (flutter/engine#28903) 2021-10-07 15:59:46 -07:00
Kate Lovett
96c6b95d33 Update contrast enforcement for null values (flutter/engine#29055) 2021-10-07 09:48:01 -07:00
Emmanuel Garcia
c47526067a Remove some deprecated APIs from the Android embedding (flutter/engine#28977) 2021-10-06 15:38:02 -07:00
Tong Mu
e565b58d65 [Linux] Reset keyboard states on engine restart (flutter/engine#28877)
With this PR, the state of the keyboard system will be reset when the engine is reset (typically during a hot restart.)
2021-10-06 12:26:33 -07:00
Jaeheon Yi
eec35470ff fuchsia: fix build (flutter/engine#29035) 2021-10-05 17:47:02 -07:00
Alexander Biggs
46d879a563 [fuchsia] CML files for Flutter runner CF v2. (flutter/engine#28982)
Bug: 50694
2021-10-05 13:13:44 -04:00
Emmanuel Garcia
93ca319487 Expose updateSystemUiOverlays in FlutterActivity and FlutterFragment (flutter/engine#29013) 2021-10-04 19:03:02 -07:00
freiling
6d0920a925 [fuchsia][flatland] Fix for AwaitVsync race (flutter/engine#28980)
* [fuchsia][flatland] regression test for AwaitVsync race problem

* [fuchsia][flatland] minimal fix for AwaitVsync race
2021-10-04 17:54:04 -07:00
Chase Latta
951c5f2e64 Pass argmuent list to dart_runner v2 main invocation. (flutter/engine#28998)
Tested by running integration tests in fuchsia.git.
2021-10-04 14:03:34 -07:00
Tong Mu
638b129319 [Windows] Add restart hooks, and reset keyboard (flutter/engine#28970)
With this PR, the state of the keyboard system will be reset when the engine is reset (typically during a hot restart.)
2021-10-04 14:02:22 -07:00
Tong Mu
2e334c1134 Keyboard guarantee non empty events (flutter/engine#28648)
* 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>
2021-10-04 14:01:51 -07:00
Tong Mu
e65e21f021 MacOS keyboard: RawKeyboard uses filtered modifier (flutter/engine#28666)
Removes the uninterested bits from the modifiers sent to the framework to keep consistency.
2021-10-04 14:01:36 -07:00
Chase Latta
fb1d646e61 make dart_runner cmx files have valid json (flutter/engine#28997) 2021-10-04 13:28:01 -07:00
Jason Simmons
79c7cfdc91 Defer setup of the default font manager if the embedding prefetched the font manager (flutter/engine#28987) 2021-10-04 13:23:02 -07:00
Chase Latta
afd577c733 [fuchsia] publish dart runner v2 protocol (flutter/engine#28993) 2021-10-04 13:18:03 -07:00
Emircan Uysaler
27ff3352fb fuchsia: Change flatland present's release fence logic (flutter/engine#28850)
* fuchsia: Change flatland present's release fence logic

(cherry picked from commit a9a370252276df6c379c25bc809467d64b11beac)
(cherry picked from commit 74c559d424d35e45e619a7da1d87e3d3dec57ec1)

* fuchsia: Use runner_services to connect to Flatland

(cherry picked from commit 685493e7f01aaf9cc03f6e8ca66946203b20f880)
2021-10-01 12:02:48 -07:00