409 Commits

Author SHA1 Message Date
ColdPaleLight
9ecd4c1899 Make FlutterEngineGroup support dart entrypoint args (flutter/engine#29096) 2021-11-18 18:08:03 -08:00
Zachary Anderson
03c0f7e453 Add 'explicit' to header files (flutter/engine#29741) 2021-11-17 12:49:16 -08:00
George Wright
c859ffd744 Update third-party benchmark library (flutter/engine#29627)
* Roll benchmark to upstream github @ 431abd149fd76a072f821913c0340137cc755f36
Roll buildroot to bfa04ad85fed176aa909f880ef5c8009c945ba03 to get build files for benchmark

* Roll flutter_packages to b1fdbabbe70caa21566f6a815235d624c716ea16

* Add a task name to parse_and_send.dart's call to FlutterDestination.update()
2021-11-10 10:22:34 -08:00
Ahmed Ashour
acdc8a5c8b Fix typos (flutter/engine#29280) 2021-10-27 20:30:31 -07:00
Dan Field
f1dae7ad34 Delay default font manager to run concurrently with isolate setup (flutter/engine#29291)
* Delay default font manager to run concurrently with isolate setup

* test
2021-10-21 16:20:32 -07:00
Chris Bracken
8af486c93a Use accessibility_config for accessibility/ax (flutter/engine#29275)
//flutter/third_party/accessiblity/ax/ax_event_generator.cc includes the
AXEventGenerator::Iterator class which subclasses std::iterator, which
triggers an MSVC C++17 deprecation warning. This warning, can be
suppressed by defining _SILENCE_CXX17_ITERATOR_BASE_CLASS_DEPRECATION_WARNING
which is already done in the accessibility_config config.

Also updates the TODO to reference the issue tracking the cleanup and
removal of that definition.

Issue: https://github.com/flutter/flutter/issues/92229
2021-10-21 09:42:57 -07:00
Filip Filmar
5debecb677 Update the ICU library to 2b50fa94b07b601293d7c1f791e853bba8ffbb84 (flutter/engine#28646)
Originally I wanted to update to 3f443830bd52d3aa5fab3c1aa2b6d0848bb5039d.
However, that change had a problem with a misspelled build target which
I also had to fix.

But, that fix turned out to be infeasible on its own, and led to a
bugfix in `gn`.

Fixes:

- Updates gn to commit 0153d369bbccc908f4da4993b1ba82728055926a to take
  in the fix at https://gn-review.googlesource.com/c/gn/+/12220 which
  prevented the correct treatment of target refactoring.

- Updates ICU to commit 2b50fa94b07b601293d7c1f791e853bba8ffbb84 to
  correct the target naming, which should now work thanks to the
  previous update to gn.  See
  https://gn-review.googlesource.com/c/gn/+/12220 for the details of
  that bug.

- Fixed the visibility declaration in `//flutter/third_party/accessibility:accessibility_config`
  which used to not be enforced due to a bug in `gn` which was fixed in
  https://gn.googlesource.com/gn/+/46b572ce4ceedfe57f4f84051bd7da624c98bf01,
  a revision which we took in by updating `gn` in the first bullet.

Fun times.

See: https://chromium-review.googlesource.com/c/chromium/deps/icu/+/3163524

Please see the linked issue for details about why this update.
2021-09-24 12:27:21 -07:00
Darren Chan
b82554ae4a Implement a default font manager for Fuchsia. (flutter/engine#28673)
This helps us get rid of our hacky font switch after engine initialization.

See https://fxbug.dev/76406 and https://github.com/flutter/flutter/issues/82202.
2021-09-21 12:33:37 -07:00
Jason Simmons
d85d394682 Fix Libtxt unit test errors found by ASAN (flutter/engine#28146) 2021-08-17 15:27:01 -07:00
Chinmay Garde
dbc0d4d4b1 Ensure gclient sync is successful on an M1 Mac host. (flutter/engine#27354) 2021-07-13 15:26:02 -07:00
Martin Kustermann
91ff075a74 Make dart wrappable classes use only one native field (flutter/engine#27350)
* Make dart wrappable classes use only one native field

It appears like the second native field is never really used for
anything: It is set, cleared and verified it was cleared, but that is
it.

=> The only native field that is necessary is the `this` pointer of the
   equivalent C++ object.
=> The [DartWrapperInfo] object which was stored as second native field
   is always accessible via the virtual `GetDartWrapperInfo()` method on
   `this`.
2021-07-13 16:39:22 +02:00
Jason Simmons
663678b9de Use unstripped executables when running tests on Linux (flutter/engine#26921) 2021-06-29 07:31:02 -07:00
Jason Simmons
864165a64d Reserve space for the line metrics styles created by ParagraphSkia::GetLineMetrics (flutter/engine#26909) 2021-06-25 11:11:01 -07:00
chunhtai
d9a591eb9c Support text editing voiceover feedback in macOS (flutter/engine#25600) 2021-06-01 12:00:05 -07:00
Brandon DeRosier
a83c8ab61d Refactor: Group together externally-managed UIDartState. (flutter/engine#26247)
Group together externally-managed UIDartState.

It's a frequent pattern to enable access to shell resources from the
framework via UIDartState. These handles are passed through several
other objects, where they lay mostly dormant. This refactor just aims
to ease maintenance of this state.

UIDartState is essentially just an easy to extend bus for dropping
off the shell kids in UIDartState, with constructors/operators that
remove the need for providing a full initializer lists in unittests.
2021-05-20 18:01:53 -07:00
Brandon DeRosier
b9982cdec7 Add image generator registry (flutter/engine#25987)
Add image generator protocol and priority registry.

The protocol supports multi-frame images as well as optional
subpixel/downsampled decoding.
2021-05-17 12:12:46 -07:00
heke123
c59ffe8b9a Use "blur_sigma" instead of "blur_radius" in Shadow. (flutter/engine#25760) 2021-04-30 14:34:02 -07:00
Michael Reed
d05dafab40 Remove override; method no longer called (flutter/engine#25806)
* Remove override; method no longer called

* Remove override; method no longer called

Co-authored-by: Mike Reed <reed@google.com>
2021-04-28 08:18:19 -07:00
Jason Simmons
9c2c4dd009 Manual Skia roll to be1c99658979972e87cad02e9e5b979c190f2c99 (flutter/engine#25786) 2021-04-27 11:42:41 -07:00
LongCatIsLooong
fe01e1acbb [libTxt] resolve null leading distribution in dart:ui. (flutter/engine#25510) 2021-04-19 13:49:01 -07:00
Jason Simmons
662fdf023c Fix the kernel path in the DartPersistentHandleTest.ClearAfterShutdown test (flutter/engine#25585) 2021-04-14 08:36:29 -07:00
gaaclarke
e5a0923572 Made sure not to delete handles of dart objects if the isolate has been deleted (flutter/engine#25506) 2021-04-13 17:42:28 -07:00
Emmanuel Garcia
1bad6de1da Reland Dart plugin registrant (flutter/engine#25496) 2021-04-12 13:30:01 -07:00
Chris Bracken
e8fd8f2e2b Eliminate error message for missing CMAP table (flutter/engine#25403)
CMAP tables are a component of fonts which map character codes to glyph
indices used in the font. In cases where this is missing for a font that
we attempt to load, there is not much gained by logging this. It's also
a common source of false positive bug reports and bug reports with
misleading symptoms in Flutter, such as
https://github.com/flutter/flutter/issues/78929

Instead of logging the error, simply suppress it, since it's not
actionable by the user.

CMAP Reference:
https://docs.microsoft.com/en-us/typography/opentype/spec/cmap
2021-04-03 09:06:18 -07:00
Chris Bracken
2797aa9c99 Add fallback for GetAbsoluteFilePath in UWP (flutter/engine#25379)
In UWP, GetFinalPathNameByHandle requires the app to declare appropriate
capabilities in the app's package manifest. Some of these capabilities are not
permitted in shipping apps on the app store, but may be fine for
development/debugging scenarios. If we can't resolve the full path due to
insufficient access, but have verified the handle is valid, return the original
path.

This gets hot reload requests working in the UWP embedder.

https://github.com/flutter/flutter/issues/79609
2021-04-01 23:34:59 -07:00
Chris Bracken
9b4a0264d5 Correct typos throughout the engine/embedder (flutter/engine#25346)
Used the the `misspell` tool available at
https://github.com/client9/misspell, then applied hand-corrections. It's
possible we could adopt this as a presubmit, but there are still enough
false positives that it may not be worth the effort.
2021-04-01 11:08:19 -07:00
James Clarke
c68996b4ef Fix WinUWP build (flutter/engine#25267) 2021-03-30 08:54:02 -07:00
LongCatIsLooong
b2ee2f3db8 [libTxt] multi-codeunit glyph hit test minor fix (flutter/engine#25270) 2021-03-29 09:49:02 -07:00
stuartmorgan
c16e3a3e5b Update string_utils.h (flutter/engine#25188) 2021-03-23 12:38:15 -04:00
George Wright
0317a21159 Add AXPlatformNodeWin and AXFragmentRootWin (flutter/engine#25121)
* Remove IAccessible and IChromeAccessible from AXPlatformNodeWin

* Fixes to make AXPlatformNodeWin, AXFragmentRootWin and associated unit
tests work and pass in Flutter/Windows
2021-03-22 16:59:38 -07:00
George Wright
7d55add368 Remove duplicate and inconsistent kInvalidAXID definition (flutter/engine#25123) 2021-03-19 19:58:12 -07:00
Jason Simmons
77995f0b9a Do not return a Minikin font collection if the SkFontStyleSet is unable to create any typefaces (flutter/engine#24951) 2021-03-19 11:36:01 -07:00
Chris Bracken
3acbafcda1 Prefer C++ standard headers to their C counterpart (flutter/engine#25095)
We currently use a mix of C standard includes (e.g. limits.h) and their
C++ variants (e.g. climits) in //flutter/third_party/accessibility. This
migrates to a consistent style for all cases where the C++ variants are
acceptable. C equivalents remain in place only where they are required,
such as in the embedder API and other headers that may be used from C.

This commit is analogous to d03692449b014377b0a9f5aded075a9515a268db.
2021-03-19 09:30:29 -07:00
Chris Bracken
df1b762c86 Make internal BSTR private in ScopedBstr (flutter/engine#25096)
There are no subclasses of this class in our codebase that would
necessitate a protected member.
2021-03-19 09:28:41 -07:00
George Wright
693da2d242 Modifications to imported a11y base classes to build in Flutter (flutter/engine#25028)
* Modifications to gtest_util.h to build in Flutter

* Modifications to Range to build in Flutter

* Modifications to UiaRegistrarWin to build in Flutter

* Modifications to EnumVariant to build in Flutter

* Modifications to AXActivePopup to build in Flutter

* Modifications to ScopedBstr to build in Flutter

* Modifications to atl.h/atl_module.h to build in Flutter

* Modifications to ScopedVariant to build in Flutter

* Modifications to VariantUtil to build in Flutter

* Modifications to ScopedSafearray to build in Flutter

* Modifications to VariantVector to build in Flutter

* Add BASE_UNLIKELY, BASE_LIKELY and BASE_FALLTHROUGH macros to compiler_specific.h

* Update BUILD files for Windows base/ and gfx/ unittests

Co-authored-by: Chris Bracken <chris@bracken.jp>
2021-03-18 12:21:13 -07:00
chunhtai
17e51505e7 fix numeric dependencies (flutter/engine#25053)
* fix numeric dependencies

* fix

* fix format
2021-03-18 10:22:35 -07:00
George Wright
34ee06d973 Formatting for gtest_util.h and licence file update 2021-03-17 23:20:45 -07:00
George Wright
56d2c6f1c7 Initial import of DispatchStub and gtest_util.h from upstream Chromium 2021-03-17 23:20:45 -07:00
George Wright
fcc1a07ccd Add some APIs to StringUtils (flutter/engine#25043)
* Add the following APIs to StringUtils:

- NumberToString16
- JoinString
- ReplaceChars
- WideToUTF16
- UTF16ToWide

Implement the following APIs for Windows:

- UTF8ToUTF16
- UTF16ToUTF8

* Review comments

Add a couple TODOs for decimal formatting and use std::u16string::npos
rather than std::string::npos.

* Update licences_flutter

Co-authored-by: Chris Bracken <chris@bracken.jp>
2021-03-17 15:44:47 -07:00
George Wright
a219aacc41 Code formatting for imported Chromium code 2021-03-16 10:18:21 -07:00
George Wright
7c3d796a83 Initial import from upstream Chromium of:
AXActivePopup
AXFragmentRootWin
AXPlatformRelationWin
AXPlatformNodeDelegateUtilsWin
AXPlatformNodeWin
Range
ScopedVariant
ScopedBstr
ScopedSafearray
EnumVariant
UiaRegistrarWin
VariantUtil
VariantVector
atl.h
atl_module.h
base_export.h
2021-03-16 10:18:21 -07:00
George Wright
fbcf0800f1 Implement AXPlatformNodeBase::GetInstanceCountForTesting (flutter/engine#24999) 2021-03-15 16:13:02 -07:00
chunhtai
521edb0159 fix selectable text selections are not announced in voice over (flutter/engine#24933) 2021-03-15 14:23:02 -07:00
Chris Bracken
64a2844ce8 Fix attribute replace bug in TextAXNodeWrapper (flutter/engine#24986)
When replacing an int/float/bool attribute on the test node, we want to
erase the range from the iterator returned by remove_if to end(), which
may be an empty range. In the case where remove_if() returns end(), the
single-parameter variant of erase() attempts to remove an element past
the end of the container.
2021-03-12 22:35:02 -08:00
Chris Bracken
13cf185e1c Correct setup-related typos (flutter/engine#24846)
Corrects uses of setup as a verb to 'set up', leaves noun/noun-phrase
forms of setup as 'setup'. Also settles on 'teardown' as opposed to
tear-down for consistency across the codebase.

A few other minor comment/wording corrections.
2021-03-08 17:31:10 -08:00
Jason Simmons
b978d1fb46 Initialize max_ascent/descent from the strut only if the strut is valid (flutter/engine#24802) 2021-03-05 15:44:01 -08:00
Jason Simmons
71e7d8e96e SkParagraph: support multiple default font families (flutter/engine#24662) 2021-03-04 15:34:01 -08:00
Jason Simmons
6b98e883a1 Allow calls to legacyMakeTypeface in the AssetFontManager (flutter/engine#24612) 2021-03-04 14:54:01 -08:00
LongCatIsLooong
deec3a0d07 Reland "TextStyle level leadingDistribution (#24025)" reverted in #24665 (flutter/engine#24668) 2021-03-01 14:55:03 -08:00
LongCatIsLooong
b82a309954 Revert "TextStyle level leadingDistribution (#24025)" (flutter/engine#24665) 2021-02-26 12:41:01 -08:00