-
Notifications
You must be signed in to change notification settings - Fork 6k
[Linux] Reset keyboard states on engine restart #28877
Conversation
1778099 to
9263c95
Compare
|
Do we have any end-to-end tests for GTK desktop builds that we could sneak some keyboard testing into? cc @cbracken @robert-ancell @stuartmorgan In the absence of any reasonable way to test this: Please file a bug noting describing the scenarios we should test, though, if you don't check in tests here. |
|
Most of the text editing testing we have is either unit tests for text editing or keyboard input channel or written against text editing APIs and implemented with a dart test harness. We don't currently have test harness abstractions for integration tests that would allow an engine restart and a way to send key events, but I can imagine writing a new class of devicelab test harness that would support such a thing. I'll file a bug. |
gspencergoog
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Filed at flutter/flutter#91345 |
Co-authored-by: Greg Spencer <[email protected]>
* f30362b Roll Skia from 47da0ac577aa to 6d0234673a40 (4 revisions) (flutter/engine#29047) * 1a4d906 [Linux] Reset keyboard states on engine restart (flutter/engine#28877) * 6a00ce5 Roll Skia from 6d0234673a40 to a1b44b72eb47 (3 revisions) (flutter/engine#29049)
* f30362b Roll Skia from 47da0ac577aa to 6d0234673a40 (4 revisions) (flutter/engine#29047) * 1a4d906 [Linux] Reset keyboard states on engine restart (flutter/engine#28877) * 6a00ce5 Roll Skia from 6d0234673a40 to a1b44b72eb47 (3 revisions) (flutter/engine#29049)

With this PR, the state of the keyboard system will be reset when the engine is reset (typically during a hot restart.)
Fixes flutter/flutter#89729 and the linux part of flutter/flutter#91064.
Exemption from testing
I don't think we can test
FlViewwithin reasonable effort.FlView's code is related toGtkWidget, which can't be run headlessly without bootstrapping the entire GTK environment (which might still be possible, but honestly too much to research given my current task queue.)FlView's code into a headless class, but it turns out to be huge amount of boilerplate with like 10 lines of effective code (creation, connection, restarting.)Request to test has been filed at flutter/flutter#91345.
Pre-launch Checklist
writing and running engine tests.
///).If you need help, consider asking for advice on the #hackers-new channel on Discord.