4207 Commits

Author SHA1 Message Date
J-P Nurmi
ef3ff4212e [Linux] add missing ATK_STATE_SENSITIVE flag (flutter/engine#32487)
Fixes: flutter/flutter#101500
2022-04-27 09:19:57 +12:00
Jason Simmons
d9de6d31cf Disable the timeline in release mode on Android unless systrace is enabled (flutter/engine#32909) 2022-04-26 10:54:03 -07:00
J-P Nurmi
050055f52c [Linux] fix and test light vs. dark theme detection (flutter/engine#32618) 2022-04-26 10:39:03 -07:00
Nayuta403
5f7d457e80 fix typo (flutter/engine#32890) 2022-04-24 21:24:04 -07:00
Jaeheon Yi
451c083982 [fuchsia] Remove spurious ERROR log (flutter/engine#32870) 2022-04-22 17:14:04 -07:00
lucasradaelli
58c3773f74 [fuchsia][a11y] Implements flow control for semantics. (flutter/engine#32796)
This change implements flow control mechanisms for the Accessibility
Bridge that communicates with the Fuchsia semantics services. This
ensures that Flutter acknowledges the pace in which the semantics
manager is consuming updates and only pushes more when they are ready to
be received.

This change avoids entirely touching on the problem of how to break
flutter semantic messages into batches that can fit in the FIDL
channels. This is left for a future change. All code that is related to
calculating size limits of FIDL messages is the same logic, only
changing location in the file.

Test: AccessibilityBridgeTest.BatchesLargeMessages

Bug: fxbug.dev/97596
2022-04-22 12:02:24 -07:00
Filip Filmar
34e4249037 [fuchsia] Rename the test component ime_service to text_manager (flutter/engine#32824)
This change is to reflect a rename that happened in the Fuchsia tree long ago,
and allows us to retire the name ime_service.

Issue: https://github.com/flutter/flutter/issues/102266
2022-04-21 16:32:56 -07:00
Dan Field
9e46531319 Remove redundant trace events (flutter/engine#32812) 2022-04-21 13:28:03 -07:00
Dan Field
1431755360 Roll impeller, add impellerc and tessellator_shared to host builds (flutter/engine#32819)
* Roll to c833f7de604f5c4298216494fb7b7ff378353601
2022-04-21 13:10:11 -07:00
Ethan Wong
1da38af2ce [macOS] Fix IME input issue caused on FlutterTextInputPlugin dealloc. (flutter/engine#31879) 2022-04-21 11:54:03 -07:00
Tong Mu
d5820083a5 [Linux, Keyboard] Derive keyboard layout using printable information from system (flutter/engine#32665)
* Workable layout deduction

* Compilable test

* Tests

* Remove print, format

* Use new way to pass logical key

* Use unique_ptr

* Format

* Fix matrix format

* Format

* Cleanup

* Remove duplicate

* Remove printf

* Update shell/platform/linux/fl_keyboard_manager.cc

Co-authored-by: Greg Spencer <gspencergoog@users.noreply.github.com>

Co-authored-by: Greg Spencer <gspencergoog@users.noreply.github.com>
2022-04-21 00:48:22 -07:00
Chris Bracken
a970f9766a Minor unique_ptr initialization cleanup (flutter/engine#32821)
Cleans up a few cases of std::unique_ptr(new T) that could have been
using std::make_unique<T>(...).
2022-04-20 17:08:00 -07:00
William Wold
59fa2c79e1 Linux/GTK: Do not jump cursor to start on preedit change (flutter/engine#32083)
Fixes https://github.com/flutter/flutter/issues/97032
2022-04-20 10:34:03 -07:00
Greg Spencer
1be09fac9b Add Menu.isPluginAvailable to allow query of whether menus are available on the platform. (flutter/engine#32795)
Added a "Menu.isPluginAvailable" call to allow the framework to query whether a plugin for creating platform menus is available on the current platform.

This will allow the framework MenuBar.adaptive constructor to determine, based on the availability on the platform of the plugin, whether or not to render platform menus. This replaces the old way, which was just to hard code which platforms support it (i.e. just macOS), but that won't work well if someone adds a plugin that supports a particular platform that isn't macOS.
2022-04-20 09:54:36 -07:00
Chris Bracken
770b55538c [Win32] Eliminate use of OpenGL ES 3.1 symbols (flutter/engine#32780)
In ANGLE commit 232e523656fccfacabeb8e5ce0cbc2e6dcc1ec4e, an Open GL
extension API was removed from ANGLE which included several symbols that
are not available until OpenGL ES 3.2. This was removed since it had no
known users, and cut the number of entrypoints ANGLE exports in half,
saving 130kB on Android.

Of the removed symbols, the Windows embedder used two:
* GL_RGBA8, which is not OpenGL ES, but rather OpenGL, and can be
  replaced with GL_RGBA which is lenient since it doesn't ask for a
  specific size.
* GL_CLAMP_TO_EDGE, which can be replaced with GL_CLAMP_TO_BORDER.
  https://open.gl/textures for details.

Issue: https://github.com/flutter/flutter/issues/102117
2022-04-19 10:43:05 -07:00
Alexander Biggs
acd3199196 [fuchsia] Switch FML_DLOGs -> FML_LOGs. (flutter/engine#32760) 2022-04-18 17:59:04 -07:00
utzcoz
b4ad6bd416 Migrate RuntimeEnvironment#sytemContext to ApplicatoinProvider#getApplicationContext (flutter/engine#32725) 2022-04-18 10:34:04 -07:00
moko256
15e077fa4b Win32: fix window commits last char when deleting text with IME (flutter/engine#32565) 2022-04-15 11:09:05 -07:00
nt4f04uNd
c343fd5735 Fix nullability annotation in writeValue (flutter/engine#32706) 2022-04-15 11:04:05 -07:00
utzcoz
3e8a370191 Migrate RuntimeEnvironment#application to ApplicationProvider#getApplicationContext (flutter/engine#32557) 2022-04-14 13:29:05 -07:00
ColdPaleLight
e9f78111c6 Clean obsolete 'shared_resource_context' (flutter/engine#32521) 2022-04-14 13:24:05 -07:00
J-P Nurmi
1bfba47c48 [Linux] add MockSignalHandler for testing GObject signals (flutter/engine#32650) 2022-04-14 13:19:05 -07:00
J-P Nurmi
4248b9b708 [Linux] add (Fl)MockBinaryMessenger for GMock (flutter/engine#32649) 2022-04-14 13:14:05 -07:00
moko256
3716ca5423 On Windows, reduce spaces between caret and IME window. (flutter/engine#32567) 2022-04-14 12:39:54 -07:00
linxuebin
1dbe7a6cd5 Skip LayerTree::Preroll LayerTree::Paint & Swapbuffer when frame_damage is empty (flutter/engine#32351) 2022-04-13 20:59:04 -07:00
J-P Nurmi
0002a8f57c [Linux] add GTest printer for FlValue (flutter/engine#32652)
Improves test failure messages when matching FlValue arguments.

For example, before:

  Expected arg #2: has setting ("platformBrightness", 0x32f0980)
           Actual: 0x7f81ec005990, 0x32f0900

And after:

  Expected arg #2: has setting ("platformBrightness", dark)
           Actual: 0x27bded0, {textScaleFactor: 0.0, alwaysUse24HourFormat: false, platformBrightness: light}
2022-04-14 10:52:51 +12:00
Kaushik Iska
d8e73006e0 Add service protocol method to facilitate getting snapshots (flutter/engine#32628) 2022-04-13 13:39:05 -07:00
Kevin Lubick
d42ba6c614 more includes (flutter/engine#32532) 2022-04-13 11:55:04 -07:00
Camille Simon
15bb1b5e86 Add missing window flags for styling system bars (flutter/engine#32167) 2022-04-13 09:44:04 -07:00
Jim Graham
bd89e4452a Designated field initialization of Paint/PrerollContexts (flutter/engine#32634) 2022-04-12 20:59:05 -07:00
J-P Nurmi
f47c6428ec [Linux] add missing AtkObject::get_index_in_parent implementation (flutter/engine#32499) 2022-04-12 20:44:05 -07:00
Tong Mu
fd61f28c45 [Linux, Keyboard] Extract KeyboardManager's external dependencies as ViewDelegate; Rework testing framework (flutter/engine#32305) 2022-04-12 14:19:04 -07:00
Kaushik Iska
172d0b24e5 Enable leaf layer tracing in PaintContext (flutter/engine#32383) 2022-04-11 18:24:04 -07:00
Dan Field
4101b52aca Unify unhandled error reporting, add PlatformDispatcher.onError (flutter/engine#32078) 2022-04-09 14:44:04 -07:00
Alexander Biggs
8507cd3d36 [fuchsia] Fix --unopt build for Fuchsia. (flutter/engine#32502) 2022-04-08 16:32:04 -07:00
J-P Nurmi
e2c68680b7 [linux] fix accessibility roles for radios and switches (flutter/engine#32454) 2022-04-07 16:16:03 -07:00
moko256
743edc1ccc Windows: Add SystemSound support (flutter/engine#29811) 2022-04-07 15:51:03 -07:00
utzcoz
f2e7fb8cca Split tests for computePlatformResolvedLocale with N (flutter/engine#32385) 2022-04-07 13:11:04 -07:00
Dan Field
ec99c09baf Soft revert of 3a0d0b6e36deebc6d477daee9a3cc4dbd09a7900 (flutter/engine#32465) 2022-04-07 09:22:08 -07:00
Kevin Lubick
f7b0a59a84 [skia] Fix more transitive includes (flutter/engine#32430) 2022-04-07 08:53:54 -04:00
Chris Bracken
e0c11d4dbd Sync Android AccessibilityFeature enum and dart:ui (flutter/engine#32460) 2022-04-06 16:21:04 -07:00
Swift Kim
72ff6875fb Sync accessibility flags in embedder.h (flutter/engine#32332)
The following enum types in `embedder.h` must match with the corresponding Dart/C++ classes in `dart:ui` but some values are missing.

- `FlutterAccessibilityFeature`
- `FlutterSemanticsAction`
- `FlutterSemanticsFlag`

The comments say

5a43c7cb8e/shell/platform/embedder/embedder.h (L83)

5a43c7cb8e/lib/ui/window.dart (L784-L785)

Issue: https://github.com/flutter/flutter/issues/101217
2022-04-06 10:01:22 -07:00
Chris Bracken
6b7a734450 Uncomment SemanticsFlag.isMultiline in enums (flutter/engine#32440)
Uncomments the Java Flag.IS_MULTILINE and C++ SemanticsFlag.kIsMultiline
enum values. While these values aren't used in the Android or iOS
embeddings, in practice we maintain the same set of enum values across
all embeddings so as to match the public API defined in dart:ui, found
in lib/ui/semantics/semantics.dart.

This also helps with automated checking that all enums across all
languages are consistent.

This will be added to the embedder API in
https://github.com/flutter/engine/pull/32332.

Issue: https://github.com/flutter/flutter/issues/101217
2022-04-06 09:59:48 -07:00
Greg Spencer
3da07b7cfa Adjust some names for consistency (flutter/engine#32433)
This just changes some of the API names for consistency with the framework APIs (and themselves).
This is a very new method channel (it went in a couple of days ago), so it's not in use yet.

Matching framework PR is flutter/flutter#101378
2022-04-06 09:43:40 -07:00
Chris Yang
ede2fb5e11 Fix a crash when setting clipboardData to null on iOS (flutter/engine#32413) 2022-04-04 19:11:04 -07:00
Chris Bracken
9710156fe2 Fix SemanticsAction naming consistency (flutter/engine#32411)
Removes the `Index` suffix from kMoveCursorForwardByWord and
kMoveCursorBackwardByWord values in the SemanticsAction enum. These were
erroneously copied as-is from the private class members in the dart:ui
implementation in lib/ui/semantics/semantics.dart where the class
members refer to the enum index here. This removes the trailing `Index`
for consistency with the other enum members here.

This is also useful in the context of automated testing for API
consistency between these enums, the ones in dart:ui (native and web
implementations) and the embedder API.

Issue: https://github.com/flutter/flutter/issues/101217
2022-04-04 17:07:05 -07:00
Renzo Olivares
c53ab8fd7a Fix deltas when selection is active and composing begins on MacOS (flutter/engine#32412)
* Fix special character input on a selection

* Add test for composing when selection is active

Co-authored-by: Renzo Olivares <roliv@google.com>
2022-04-04 15:13:06 -07:00
Jason Simmons
a0b860283e Always initialize the _weakFactory in FlutterViewController (flutter/engine#32395)
Fixes https://github.com/flutter/flutter/issues/101209
2022-04-04 12:56:35 -07:00
Chris Yang
fc54e5ecac Set iOS default frame rate to screen max. (flutter/engine#29797) 2022-04-01 14:34:47 -07:00
Tong Mu
aa029368e5 [macOS, Keyboard] Derive keyboard layout using printable information from system (flutter/engine#32152)
* Impl

Remove log

add sync; clean code

Format

* Impl

* New Impl

* Fix dead key

* Rename to goals and clues

* CFRelease source

* Move to view controller

* No global

* First-phase

* No weak in dealloc

* Tests

* One more test

* Format

* Format

* Docs

* Tests

* Docs

* Format

* Fix compile

* Compile

* Add channel test

* Format

* Fix comments

* Fix keycodes

* Fix namespaces

* Format

* strlcpy
2022-04-01 11:57:21 -07:00