15657 Commits

Author SHA1 Message Date
skia-flutter-autoroll
9abbdc81e5 Roll Fuchsia Linux SDK from UPWdoQziF... to hhFGKobVD... (flutter/engine#30279) 2021-12-10 23:49:09 -08:00
Greg Spencer
e7c6deaef6 Revert "Accessibility number formatting improvements for Windows (#29773)" (flutter/engine#30267) 2021-12-10 13:09:10 -08:00
skia-flutter-autoroll
6dc1b49528 Roll Skia from a964a72174e8 to 4d35c0d31d79 (16 revisions) (flutter/engine#30269) 2021-12-10 12:59:09 -08:00
MiracleSoul
0d7ba05d34 Fix eglPresentationTimeANDROID is no effective (flutter/engine#30182)
* Fix eglPresentationTimeANDROID is no effective

* Update android_environment_gl.cc

Co-authored-by: Dan Field <dfield@gmail.com>
2021-12-10 11:05:25 -08:00
skia-flutter-autoroll
2df8400d72 Roll Fuchsia Linux SDK from 3rLypXNTd... to UPWdoQziF... (flutter/engine#30266) 2021-12-10 10:29:09 -08:00
Jenn Magder
3eb35a2df7 Add iOS version to scenario golden images (flutter/engine#30263) 2021-12-10 10:24:10 -08:00
Emmanuel Garcia
dceed9cd73 Migrate to Mockito 4.1.0 (flutter/engine#30257) 2021-12-10 10:19:10 -08:00
skia-flutter-autoroll
76633447f0 Roll Skia from 44c81d149273 to a964a72174e8 (9 revisions) (flutter/engine#30255) 2021-12-10 10:14:06 -08:00
Gary Qian
84773ccee9 Cleanup old ndk CIPD upload script (flutter/engine#30253) 2021-12-10 10:09:11 -08:00
Chris Bracken
2474482021 Override FlutterPlatformNodeDelegate::GetUniqueId (flutter/engine#30261)
The default implementation of GetUniqueId on ui::AXPlatformNodeDelegate
always returns ID 1. We had previously implemented this on the windows
platform node delegate, but for consistency's sake, and because the
default implementation is surprising, we're promoting this to the
FlutterPlatformNodeDelegate base class.

Issue: https://github.com/flutter/flutter/issues/77838
2021-12-10 10:05:00 -08:00
chunhtai
95eab38132 Android accessibility bridge also fire selection change event when it predict selection change. (flutter/engine#30199) 2021-12-10 10:04:08 -08:00
Chris Bracken
f5dc978476 Test shell/platform/common a11y code on Windows (flutter/engine#30262)
This enables unittests for the accessibility bridge in
common_cpp_unittests, when running on Windows. Previously, we only
tested on macOS.

Issue: https://github.com/flutter/flutter/issues/77838
2021-12-09 22:49:50 -08:00
Chris Bracken
82f25e5da7 Fix TestAccessibilityBridgeDelegate event caching (flutter/engine#30260)
TestAccessibilityBridgeDelegate::accessibility_events previously held
values of type ui::AXEventGenerator::TargetedEvent. TargetedEvent
contains an AXNode pointer and a const reference to a
ui::AXEventGenerator::EventParams object, and as such it's unsafe to
make or read copies of TargetedEvent values outside the scope of the
AccessibilityBridgeDelegate::OnAccessibilityEvent callback.

In this patch, we update the accessibility_events vector to simply hold
EventType values since this is the only part of the value we use in our
existing tests. If in future we need the full TargetedEvent, we'll need
to properly copy these values.

This patch also fixes a typo in the accessibility_events identifier and
converts an EXPECT_EQ to an ASSERT_EQ in a case where the following
test expectations are meaningless/could crash if the
accessibility_events size isn't as expected.

Issue: https://github.com/flutter/flutter/issues/77838
2021-12-09 22:08:58 -08:00
Chris Bracken
616ed57c9b Simplify win32 platform node delegate GetParent (flutter/engine#30258)
In the Win32 accessibility tree, each AXTree node has an associated
IAccessible object. In WindowWin32, our WM_GETOBJECT handler returns the
IAccessible associated with the root node of the tree (node 0). On other
platforms, we often add our root accessibility object as a subnode of
some existing accessibility object associated with the view. On Windows,
the root IAccessible _is_ the accessibility object associated with the
view (on Windows, and HWND).

In the previous implementation, AccessibleObjectFromWindow actually just
returns the root IAccessible object, which is equivalent to just
returning GetNativeViewAccessible. Instead, we just return null once we
hit the root of the tree.

Issue: https://github.com/flutter/flutter/issues/77838
2021-12-09 19:29:11 -08:00
Chris Bracken
01b8db3de9 Call IAccessible::accFocus to move a11y focus (flutter/engine#30256)
On receipt of a FOCUS_CHANGED event from the AX tree, call
IAccessible::accFocus to tell screen readers to move the accessibility
focus to that node. This is in addition to setting the keyboard focus
via the EVENT_OBJECT_FOCUS event.

Issue: https://github.com/flutter/flutter/issues/77838
2021-12-09 15:58:07 -08:00
Jason Simmons
7fd4a58766 Revert the latest rolls of the Fuchsia SDK (flutter/engine#30254) 2021-12-09 14:46:11 -08:00
Chris Bracken
5992275cdb Win32: Handle OnAccessibilityEvent (flutter/engine#30176)
Implements OnAccessibilityEvent, which translates events from the AXTree
into Windows MSAA event notifications.

This also eliminates the UIA root object lookup in response to
WM_GETOBJECT, since our initial implementation, like Chromium's default
implementation, is based on MSAA.

Issue: https://github.com/flutter/flutter/issues/77838
2021-12-09 14:38:24 -08:00
Amanda
6819f18463 [fuchsia] Use network-legacy-deprecated pkg in embedder test (flutter/engine#30244) 2021-12-09 13:34:05 -08:00
Greg Spencer
3911c3d5d8 Accessibility number formatting improvements for Windows (flutter/engine#29773)
This adds some accessibility improvements for reading out numbers. Currently this code is only used on Windows.

Fixes flutter#78460
2021-12-09 13:04:00 -08:00
skia-flutter-autoroll
42e1552621 Roll Skia from c95c53ed0fcf to 44c81d149273 (2 revisions) (flutter/engine#30248) 2021-12-09 12:29:06 -08:00
skia-flutter-autoroll
30b5246022 Roll Skia from ca916f705fc5 to c95c53ed0fcf (2 revisions) (flutter/engine#30245) 2021-12-09 11:09:05 -08:00
Rulong Chen(陈汝龙)
915625716a [android] Fix unexpected behavior in |detachFromFlutterEngine|. (flutter/engine#30202) 2021-12-09 10:44:04 -08:00
skia-flutter-autoroll
23ae2eb08e Roll Fuchsia Linux SDK from 3rLypXNTd... to dNYehjXUM... (flutter/engine#30241) 2021-12-09 09:59:04 -08:00
skia-flutter-autoroll
c87595ca98 Roll Skia from 5d1d92c505c0 to ca916f705fc5 (2 revisions) (flutter/engine#30243) 2021-12-09 09:49:05 -08:00
skia-flutter-autoroll
1c77fd60aa Roll Skia from b4d01cbe41b1 to 5d1d92c505c0 (1 revision) (flutter/engine#30238) 2021-12-09 06:29:06 -08:00
Gary Qian
f1b058072c Merge NDK and licenses into Android dependencies script (flutter/engine#30230) 2021-12-09 01:54:04 -08:00
skia-flutter-autoroll
50b8eacafe Roll Skia from 3bcc80e9c387 to b4d01cbe41b1 (2 revisions) (flutter/engine#30233) 2021-12-08 23:19:06 -08:00
skia-flutter-autoroll
4a2fda76dc Roll Skia from d2eb1d90b3b9 to 3bcc80e9c387 (1 revision) (flutter/engine#30232) 2021-12-08 21:59:05 -08:00
eggfly
d459933b42 [Android] Fix mEditable NullPointerException in TextInputPlugin (flutter/engine#30145) 2021-12-08 20:19:05 -08:00
skia-flutter-autoroll
f77616202d Roll Skia from 4898ac10f0ac to d2eb1d90b3b9 (1 revision) (flutter/engine#30229) 2021-12-08 18:14:06 -08:00
skia-flutter-autoroll
9044b7b1c2 Roll Fuchsia Linux SDK from s03VQc7lX... to 3rLypXNTd... (flutter/engine#30228) 2021-12-08 17:49:05 -08:00
skia-flutter-autoroll
26d3a4e685 Roll Skia from 22960eb7b2a6 to 4898ac10f0ac (4 revisions) (flutter/engine#30225) 2021-12-08 16:54:05 -08:00
skia-flutter-autoroll
c0d93da7d5 Roll Skia from c307c5566d11 to 22960eb7b2a6 (1 revision) (flutter/engine#30218) 2021-12-08 14:14:01 -08:00
skia-flutter-autoroll
d98820943e Roll Skia from 3856a5854e20 to c307c5566d11 (2 revisions) (flutter/engine#30216) 2021-12-08 12:54:05 -08:00
skia-flutter-autoroll
83dc551688 Roll Skia from 21b8ccb7393c to 3856a5854e20 (6 revisions) (flutter/engine#30214) 2021-12-08 11:34:02 -08:00
Chris Bracken
0d41ebed6a Implement GetUniqueId on Windows node delegates (flutter/engine#30204)
`AXPlatformNodeDelegate` provides a default implementation of
`GetUniqueId()` which returns the same value (1) for all nodes.
`AXPlatformNodeWin` relies on a unique ID being returned from this
method in its `GetTargetFromChildID` method.

In the world MSAA accessibility, each `HWND` may have a root
`IAccessible` object associated with it. Events are fired by calling the
`NotifyWinEvent` Win32 call and specifying:

1. The `HWND` (in our case, the one associated with our `WindowWin32`)
2. The target object (`OBJID_CLIENT` for the root `IAccessible`
   associated with that `HWND`)
3. A child identifier that uniquely identifies the target node in the
   tree

This child identifier can be one of:

* `CHILDID_SELF` for events targeting the root `IAccessible`.
* A positive integer that specifies the index of a direct child of the
  root.
* A negative integer which, when negated, specifies the unique ID of a
  child within the tree.

On receipt of an accessibility event, `AXPlatformWin` (our `IAccessible`
implementation) looks up the target `IAccessible` from the child ID
specified on the event using its `GetTargetFromChildID` method and
delegates the appropriate method call to that object.

So, why is this implemented on our `AXPlatformNodeDelegate` subclass and
not on `AXPlatformNodeWin` itself? Because the implementation of
`AXPlatformNode::GetUniqueId()` delegates this lookup to the node
delegate.

As background, `AXUniqueId` automatically assigns itself a
globally-unique value in its constructor; it tracks all used values in
an internal static pool.

Issue: https://github.com/flutter/flutter/issues/77838
2021-12-08 09:41:46 -08:00
skia-flutter-autoroll
7720146b12 Roll Skia from 00edeefab7f4 to 21b8ccb7393c (3 revisions) (flutter/engine#30206) 2021-12-08 02:44:02 -08:00
skia-flutter-autoroll
f24e5bf2ce Roll Skia from 543b8681c7f2 to 00edeefab7f4 (1 revision) (flutter/engine#30200) 2021-12-07 21:54:01 -08:00
keyonghan
dc16a5ebbb renew cirrus key (flutter/engine#30186) 2021-12-07 20:51:23 -08:00
Chris Yang
22693e2599 [ios platform view] fix overlay zPosition (flutter/engine#29930) 2021-12-07 16:04:01 -08:00
skia-flutter-autoroll
670277d11c Roll Skia from 1c4cf27965bd to 543b8681c7f2 (1 revision) (flutter/engine#30198) 2021-12-07 15:54:00 -08:00
Chris Bracken
4fd686f454 Document rationale for Dart VM flag prefix match (flutter/engine#30195)
Dart VM flags are passed to Flutter via an fml::CommandLine::Option that
looks something like:

   {"dart-flags, "--max_profile_depth 1,--trace_service"}

We perform a prefix match to handle cases where Dart VM options take
arguments.

Adding the comment since in a recent review I found myself wondering why
we're using a prefix match to begin with. While the original author had
forgotten, the good news is, he wrote a test that covers this exact
case. This comment just removes one level of indirection for future
readers.
2021-12-07 14:36:33 -08:00
skia-flutter-autoroll
5c27f5db99 Roll Skia from 06f3d68627c2 to 1c4cf27965bd (2 revisions) (flutter/engine#30194) 2021-12-07 14:29:01 -08:00
Brandon DeRosier
68fde39542 Add length guard to fix Windows build with VS2019 16.11.7 headers (flutter/engine#30189)
The shell tests are failing on Windows against the latest VS2019 headers due to a new safety assert.
2021-12-07 13:28:39 -08:00
skia-flutter-autoroll
cbb1fce944 Roll Skia from f333f5614a9b to 06f3d68627c2 (24 revisions) (flutter/engine#30192) 2021-12-07 13:04:02 -08:00
skia-flutter-autoroll
7fe64f4895 Roll Fuchsia Linux SDK from WGMjaVH60... to s03VQc7lX... (flutter/engine#30191) 2021-12-07 12:59:01 -08:00
Chinmay Garde
35a2ccb79a Add unconditional waits on fml::Semaphore. (flutter/engine#30165) 2021-12-07 12:49:01 -08:00
Jenn Magder
99c86eecb5 Revert "Run iOS scenario apps on iPhone 11 and iOS 14 (#30104)" (flutter/engine#30193)
This reverts commit be166e754a8e430d26aa16dea4619186867e2181.
2021-12-07 12:42:21 -08:00
Chris Bracken
0189aaaca1 Win32: Implement DispatchAccessibilityAction (flutter/engine#30187)
Implements DispatchAccessibilityAction: a pass-through method that
forwards to the engine, which calls through the Embedder API back to the
framework.

Issue: https://github.com/flutter/flutter/issues/77838
2021-12-07 11:07:45 -08:00
Chris Bracken
74e90fc817 Don't run curl in verbose mode when --verbose set (flutter/engine#30170)
In download_dart_sdk.py, we previously ran curl with the --verbose flag
when the --verbose flag was passed to the script. This generates vast
quantities of output that is unlikely to be valuable except if we're
attempting to debug a curl download issue. In such a case we could
perhaps pass a separate --verbose-download flag as well.

Issue: https://github.com/flutter/flutter/issues/94492
2021-12-07 11:06:58 -08:00