4827 Commits

Author SHA1 Message Date
Ben Konyi
d3f45828bf Reland "Remove references to Observatory (#38919)" (flutter/engine#39139)
This reverts commit 5dd945442b230a2c0549ee6d798fda71e031a4a9.
2023-01-30 09:50:09 -05:00
Miguel
f1bbb90589 [fuchsia] Diagnostics directory rights are R* (flutter/engine#39203) 2023-01-27 17:44:24 -05:00
Tamir Duberstein
15f53d515e [fuchsia] Migrate to new RealmBuilder API (flutter/engine#39205)
See https://fxrev.dev/793422.

Missed in 92fca42e0667969b3a78815c77afca9c6acd1c83,
3bfa5c5b1db5391d49cc58f9a23f1b4cd802d3e3 and
d429b674f1dd60590fda077fd893a4493c2b5455.
2023-01-27 15:42:15 -05:00
Zachary Anderson
54e53b326e Fix for downstream C++20 compiler (flutter/engine#39197) 2023-01-27 10:12:19 -08:00
Tamir Duberstein
d429b674f1 [fuchsia] Migrate to new RealmBuilder API (flutter/engine#39196)
See https://fxrev.dev/793422.

Missed in 92fca42e0667969b3a78815c77afca9c6acd1c83 and
3bfa5c5b1db5391d49cc58f9a23f1b4cd802d3e3.
2023-01-27 13:01:28 -05:00
Tamir Duberstein
3bfa5c5b1d [fuchsia] Migrate to new RealmBuilder API (flutter/engine#39175)
See https://fxrev.dev/793422.

Missed in 92fca42e0667969b3a78815c77afca9c6acd1c83.
2023-01-26 17:54:43 -08:00
Hannes Winkler
7e99ce795b properly namespace flutter software pixel formats (flutter/engine#38847)
- rename `kGray8 --> kFlutterSoftwarePixelFormatGray8`
- rename `kRGB565 --> kFlutterSoftwarePixelFormatRGB565`
- etc.
2023-01-26 22:30:17 +00:00
Zachary Anderson
56a4d347ae Revert "[macos] Move TextInputPlugin outside of visible area (#39031)" (flutter/engine#39176)
This reverts commit d06ef7a5bfbed4cba6eb98f47b618803ac6c8a53.
2023-01-26 13:47:58 -08:00
Matej Knopp
d06ef7a5bf [macos] Move TextInputPlugin outside of visible area (flutter/engine#39031)
* [macos] Move TextInputPlugin outside of visible area

* Make plugin empty and add test
2023-01-26 21:12:44 +00:00
J-P Nurmi
d7963e6fa1 [Linux][FlView] fix rendering on startup when shown after plugin registration (flutter/engine#38982)
* [FlView] fix rendering on startup when shown after plugin registration

* Add clarifying comment
2023-01-26 21:11:20 +00:00
Tamir Duberstein
92fca42e06 [fuchsia] Migrate to new RealmBuilder API (flutter/engine#39163)
See https://fxrev.dev/793422.
2023-01-26 11:15:23 -08:00
Tong Mu
02a18907ce Reland "[macOS] Formalize FlutterViewController's initialization flow, and prohibit replacing" (flutter/engine#39145)
* Revert "Revert "[macOS] Formalize FlutterViewController's initialization flow, and prohibit replacing (#38981)" (#39144)"

This reverts commit be4ea1a42d27ca88007f9013fd7c5526087b3268.

* Fix?
2023-01-26 00:13:47 +00:00
Tong Mu
be4ea1a42d Revert "[macOS] Formalize FlutterViewController's initialization flow, and prohibit replacing (#38981)" (flutter/engine#39144)
This reverts commit a8242f0b392a03c4c8fb3d299cabceb06462a647.
2023-01-25 15:16:59 -08:00
Tong Mu
a8242f0b39 [macOS] Formalize FlutterViewController's initialization flow, and prohibit replacing (flutter/engine#38981)
This PR adds FlutterViewController.id, and formalizes how FlutterViewController is initialized by FlutterEngine:
When FlutterViewController is set to the engine, the engine calls FlutterViewController#attachToEngine:withId:.
When FlutterViewController is unset from the engine, the engine calls FlutterViewController#detachFromEngine.
This allows the ID to be generated by the engine.

The default View ID is now 1 instead of 0. In this way, we can use 0 as an empty value, the value for FlutterViewController.id when the FVC is not attached to an engine. (IDs are meant to be opaque, and views should be a map, not an array anyway.)

This PR moves almost all initialization code into FVC's CommonInit to ensure that all init path produces the expected result.

With this PR, FlutterEngine no long supports replacing viewController (from non-null to a different non-null). Setting the view controller (from null to non-null) is intended to allow pre-warming an engine before displaying it in add-to-app, but replacing the view controller does not make much sense.

If the developer wants to persist the state of the view between different windows, they could just attach the view controller to different windows.
In fact, Flutter doesn't even have a way to create a FlutterViewController that is unattached to an engine. All initializers either require an engine or create an engine.
As a result, unit tests that used to create FVC with the wrong initializer are fixed.
2023-01-25 14:32:27 -08:00
Zachary Anderson
daeb8316d7 Only build analyze_snapshot on Linux host (flutter/engine#39129) 2023-01-25 08:35:57 -08:00
Loïc Sharma
6de1c715fb Manually roll ANGLE, vulkan-deps, SwiftShader (flutter/engine#38650) 2023-01-25 00:53:25 +00:00
Loïc Sharma
3119b5c02b Improve crashes if messenger APIs are used incorrectly (flutter/engine#39041)
* Clarify messenger APIs

* Feedback
2023-01-24 23:22:51 +00:00
Ahmed Ashour
51c0a9ec65 Remove superfluous words from comments (flutter/engine#39068)
* Remove superfluous words.

* Format

* Duplicate in consecutive lines.
2023-01-24 09:54:19 -08:00
Constantine Shablya
a38bdae396 [embedder] Fix getting vkGetInstanceProcAddr (flutter/engine#39051) 2023-01-24 01:22:38 +00:00
Chris Yang
353f0b5b32 [ios_platform_view] MaskView pool to reuse maskViews. (flutter/engine#38989)
* reuse maskView

reuse mask view

format

format

draft

draft

fixes

test

* comments

* fix comment

* test for releasing maskView

* updates

* fix
2023-01-21 04:26:04 +00:00
Ben Konyi
002fce29e0 Revert "Remove references to Observatory (#38919)" (flutter/engine#39035)
Reason for revert: breaking Flutter -> plugins roll

This reverts commit 1f603711c7b7afe52dff3872a5035789e3ddba02.
2023-01-20 12:33:40 -05:00
Bruno Leroux
258cde6cd2 [macos] Synthesize modifier keys events on pointer events (flutter/engine#37870)
* [macos] Synthesize modifier keys events on pointer events

* Move test to FlutterViewControllerTest

* Simplify by using 'for in'

Co-authored-by: Bruno Leroux <bruno.leroux@gmail.com>
2023-01-20 10:43:16 +00:00
Chris Bracken
1dd1f02bc4 Extract WideToUTF16String/UTF16StringToWide to FML (flutter/engine#39020) 2023-01-19 22:55:47 -08:00
Robert Ancell
3b47df5adf Fix invalid Unix locale to Flutter locale (BCP-47) mapping (flutter/engine#36512)
Flutter locales use the BCP-47 format
(https://www.rfc-editor.org/rfc/bcp/bcp47.txt), and Unix locales use a POSIX
format. There is not a perfect mapping between them, see
https://wiki.openoffice.org/wiki/LocaleMapping

The current implementation is not correctly setting the appropriate optional
fields, so remove that.

There are likely some Unix locales that should set these fields, but these are
best fixed by adding special cases for them as they are discovered.

Fixes: https://github.com/flutter/flutter/issues/111341
2023-01-19 22:53:59 +00:00
Nayuta403
0626a035ce Remove unused variables and import (flutter/engine#38971) 2023-01-19 21:06:53 +00:00
yaakovschectman
7ed656d596 Merge MSAA alert functionality with UIA (flutter/engine#38745)
* Use AXFragmentRootWin for MSAA functionality.

Some unused code remains to be removed.

Merge MSAA to AXFragmentRootWin

* Removing unused code

* Remove unused files

* Flip macro

* Formatting

* Licenses

* Make reference

* Disable copy constructor/assignment

* Unused import

* Formatting

* Relocate alert logic

* Remove comment and unused mock

* Fix unit test

* Idempotency

* Formatting

* PR feedback

* Doc comments

* Undo string change for now

* Couple fragment root and alert node

* Formatting

* Add comments

* Pointer to reference

* Typo fix
2023-01-19 13:28:27 -05:00
Ben Konyi
1f603711c7 Remove references to Observatory (flutter/engine#38919)
Observatory is being deprecated for Dart 3.0 so it should no longer be referenced in tooling messaging / flags.

See https://github.com/dart-lang/sdk/issues/50233
2023-01-19 09:20:46 -05:00
Chris Yang
1284ee8f45 [ios_platform_view] more precision when determine if a clip rrect is necessary (flutter/engine#38965)
* draft

fix

rename

unittest

* update scenario

* test
2023-01-18 22:19:13 +00:00
Chris Bracken
42fd13c246 [windows] Eliminate unnecessary iostream imports (flutter/engine#38824)
In 491db72 I replaced use of direct writes to cerr and replaced them
with FML_LOG calls but may have missed removing some iostream #includes,
or they may have been missed in previous cleanups. This removes any
remaining #includes of iostream that are unused.
2023-01-12 18:05:20 -08:00
Chris Bracken
bcfa08f532 [windows] Use FML_DCHECK in place of C assert (flutter/engine#38826)
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.
2023-01-12 18:03:19 -08:00
luckysmg
598fb62a0b Correct FrameTimingRecorder's raster start time. (flutter/engine#38674)
* ++

* ++

* Add tests

* Add missing trace

* ++

* ++

* ++
2023-01-13 01:38:17 +00:00
Matej Knopp
86c5ce8349 [macOS] Do not block raster thread when shutting down (flutter/engine#38777) 2023-01-12 22:28:06 +01:00
Pierrick Bouvier
3811a350df Add CI builder for windows-arm64. (#38394) (flutter/engine#38739)
* 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.
2023-01-11 23:01:08 +00:00
Rich Kadel
e43616416f [fuchsia] Replace deprecated AddLocalChild (flutter/engine#38788)
`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
2023-01-11 16:54:22 -05:00
Jim Graham
eb615c6cc4 delete include of private GrMtlTypes header (flutter/engine#38783) 2023-01-11 19:57:47 +00:00
gaaclarke
85eaa970e2 removed forbidden skia include (flutter/engine#38761)
* removed forbidden skia include

* jason feedback
2023-01-10 20:33:31 -08:00
yaakovschectman
717c8724c6 Mark nodes as kIsLineBreakingObject by default, TODO further distinctions (flutter/engine#38721)
* Line breaks

* Formatting

* Update shell/platform/common/accessibility_bridge.cc

Co-authored-by: Loïc Sharma <737941+loic-sharma@users.noreply.github.com>

* Test line breaking object

* Formatting

* Format

Co-authored-by: Loïc Sharma <737941+loic-sharma@users.noreply.github.com>
2023-01-10 11:13:44 -05:00
Kate Lovett
be9ae4793d Undo axes flip on Mac when shift+scroll-wheel (flutter/engine#38338)
* 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
2023-01-10 00:18:12 +00:00
Loïc Sharma
5e35f2ab74 Revert "Add CI builder for windows-arm64. (#38394)" (flutter/engine#38729)
This reverts commit 35810a873b59c8d738f1f3661854572cc3aa2215.
2023-01-09 22:35:13 +00:00
Pierrick Bouvier
35810a873b Add CI builder for windows-arm64. (flutter/engine#38394)
* 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.
2023-01-09 21:51:12 +00:00
JiaJian
5a17cf21d2 iOS FlutterTextureRegistry should be a proxy, not the engine itself (flutter/engine#37666)
* feat: add texture registry relay.

* fix: add test.

* fix: format

* fix: add comment.

* fix: remove useless import.

* fix: remove

* fix: file name order.

* fix.

* add test for retain cycle.

* fix compile

* Add comments.

* remove relay.

* add FlutterTextureRegistryRelay in gn

* add golden files.

* add

* add comments.
2023-01-09 18:51:13 +00:00
Jaeheon Yi
0720c7f6dc [fuchsia][scenic] Use infinite hit region (flutter/engine#38647)
fxbug.dev/118729
2023-01-09 15:40:51 +00:00
yaakovschectman
c2d59665dd Limit selection change to focused node on Windows (flutter/engine#38634)
* Limit selection change to focused node on Windows

* Focus fix

* Test document selection change

* Comment

* Formatting

* Update shell/platform/windows/accessibility_bridge_windows.cc

Co-authored-by: Loïc Sharma <737941+loic-sharma@users.noreply.github.com>

Co-authored-by: Loïc Sharma <737941+loic-sharma@users.noreply.github.com>
2023-01-06 16:36:11 -05:00
Erik
010e710512 Remove strict equality check for SkMatrix comparison (flutter/engine#38665)
* Remove strict equality check for SkMatrix comparison

* Address PR comments
2023-01-05 21:44:50 +00:00
Kevin Lubick
ecd5ad9c7c SkBudgeted -> skgpu::Budgeted (flutter/engine#38660)
* SkBudgeted -> skgpu::Budgeted

* colon

* format

* fix GN rules

* undo includes
2023-01-05 21:42:34 +00:00
Nayuta403
4ebc681b23 Reduce the size of Overlay FlutterImageView in HC mode (flutter/engine#38393)
* intersect

* add

* test fix

* fix test

* modify

* typo

* modify

* test
2023-01-05 17:01:55 +00:00
yaakovschectman
2f6724c5bf Update FlutterPlatformNodeDelegate (flutter/engine#38615)
* Update FlutterPlatformNodeDelegate

* Unit test
2023-01-04 10:27:24 -05:00
Jason Simmons
226cf8354c Roll quiver to 3.2.1 (flutter/engine#38617)
Need to roll quiver to a version that doesn't depend on BidirectionalIterator, which is being removed in https://dart-review.googlesource.com/c/sdk/+/276741?tab=checks.
2023-01-04 02:04:38 +00:00
yaakovschectman
6c12d1292d Make AccessibilityBridge a AXPlatformTreeManager (flutter/engine#38610)
* Make Accessibility Bridge a tree manager

* Add FlutterPlatformNodeDelegate::GetPlatformNode

* Add unit test

* Formatting

* PR
2023-01-03 15:18:04 -05:00
Loïc Sharma
757b6d8cb1 [Windows] Make the engine own the cursor plugin (flutter/engine#38570) 2023-01-03 17:26:06 +00:00