Repository navigation
Samsung keyboard delay/lag when typing multiple lines #54310
Description
Extracted from #51893 (comment)
[ Test divice : Galaxy s8 ]
[ Test sdk : Flutter Master Channel ]*** Problems found in the last test
- Time delay of the keyboard up and down
- abnormal display of the keyboard even after the app is closed (on device home screen)
- word duplication input
- input line can not be changed during keyboard input
*** I tested it on the same device (Galaxy s8) as in the last bug report.
—> This time, during the test, the above problems were confirmed.
—> Results of test
3, 4 : resolved.
1,2 : not resolved.The duplicate input problem, which was a major problem, did not appear, but the time delay occurred when the keyboard was hidden or visible.
It seems that there is no delay time at the beginning of input, but if it is more than 3 ~ 4 lines of text input, the longer the sentence, the longer the delay time.
--> The delay time increases by more than 10 seconds, the performance is difficult to use in a real app.I hope you reproduce the above bugs on your Galaxy s8 device.
================================================
*** Log when Keyboard up
…
W/IInputConnectionWrapper(27651): getExtractedText on inactive InputConnection
W/IInputConnectionWrapper(27651): getExtractedText on inactive InputConnection
W/IInputConnectionWrapper(27651): getExtractedText on inactive InputConnection
So many times
…*** Log when Keyboard down
D/ViewRootImpl@b02d8a6MainActivity: ViewPostIme pointer 0
D/ViewRootImpl@b02d8a6MainActivity: ViewPostIme pointer 1
D/InputMethodManager(27651): HSIFW - flag : 0 Pid : 27651
According to @TykanN, this was reproed on Galaxy Note 10, and not S9/S9+
Activity
njovy commentedon Apr 9, 2020
Please fix this asap. This bug happens in v1.15.17 as well. The previous keyboard bugs were severe but acceptable as users can modify content. However, this bug makes a flutter app using multiple lined text field completely unusable!!
I can't release this due to this issue as the delay takes more than 4~5 seconds or longer.
GaryQian commentedon Apr 9, 2020
@njovy I am currently trying to repro this, but am unable to do so on my test Note 9, Tab, and S9. Can you please let me know what device you are seeing this on, and the exact steps to reproduce this?
Preferably, the exact TextField widget you used as well as detailed steps to encounter the delay. Thanks!
njovy commentedon Apr 10, 2020
@GaryQian Above is a minimal code that you can reproduce this bug.
This bug only appears with a Samsung keyboard. I tested with my Galaxy S9+ running Android sdk 28.
W/IInputConnectionWrapper( 378): getExtractedText on inactive InputConnectionspamming.If you repeat those steps, it will make a device keyboard unusable and it affects a device even when the app is killed.
GaryQian commentedon Apr 10, 2020
Oh this was run on the Beta channel, can you try on master? It was not clear what the bug was until the repro was explained! I believe I have already fixed this not too long ago, but the fixes have not yet rolled into the beta channel yet. I was unable to reproduce on master. Please let me know if that works for you!
For reference, it may have been this revert that fixes it, though I only discovered that after I had landed it so it is not in the PR description. flutter-team-archive/engine#17391
njovy commentedon Apr 10, 2020
@GaryQian I switched mine to master which is v1.18.0-5.0.pre.57 at the moment and the issue no longer appears. Thank you for a super rapid reply.
GaryQian commentedon Apr 10, 2020
Awesome! I'll close the issue now! Please let me know if anyone is still seeing this on master channel and I can reopen.
dannyvalentesonos commentedon Apr 10, 2020
@GaryQian This is great news! Is it easy for you to tell me if this and #51893 are fixed in 1.18.0-dev.3.0 or if it really only is in master at the moment?
Thanks!
exptk3 commentedon Apr 10, 2020
Hi. Thanks for your effort.
I tested again on master channel. (device : Galaxy s8)
flutter --version
Flutter 1.15.4-pre.241 • channel master • https://github.com/flutter/flutter.git
Framework • revision 1d3fcfd (6 weeks ago) • 2020-02-29 10:01:18 -0800
Engine • revision 755e2b5
Tools • Dart 2.8.0 (build 2.8.0-dev.10.0 09bbd3cca5)
< Keybord show-hide delay >
You can check this by creating two text fields, and writing more than 30 lines alternately.
There is still a delay of 3 to 15 seconds or more...
--> Correction: It was not usable, but waited for more than 1 minute, eventually it worked.
< input word duplication >
- Reproducing : The same word was entered repeatedly when the input was started again after stopping the keyboard input in the middle of the sentence input to make focusing disappear.
*** In summary, there is still a keyboard up and down delay bug, a word duplicate input bug, and a new entire sentence deletion bug added .
Be sure to reproduce it on the Galaxy s8 device.
If you test it on a Galaxy s8 device, you're sure to be able to reproduce it easily.
Thank you.
njovy commentedon Apr 10, 2020
@exptk3 1.15.4-pre.241 is an outdated version.
flutter upgradeto apply GaryQian's fix. Make sure clean and re-build after upgrade just in case.njovy commentedon Apr 10, 2020
@dannyvalentesonos You can search commit history when flutter-team-archive/engine#17391 has been rolled out to flutter sdk. I've confirmed that the latest beta channel has this fix applied so I am testing my apps on this channel at the moment.
exptk3 commentedon Apr 10, 2020
Ok. Maybe I missed it.
I will upgrade my flutter and try again tomorrow.
Thank you.
dannyvalentesonos commentedon Apr 10, 2020
Thanks @njovy
I'm still unclear how to see if the Beta or Dev channel has the fix, and if so, which version of the beta/dev channel got it. I don't see how to link the engine roll commits to this information. Can you provide some clarity here? Thanks
njovy commentedon Apr 10, 2020
https://flutter.dev/docs/development/tools/sdk/releases?tab=macos
@dannyvalentesonos Above is a link where you can check a git commit reference by channels.
I usually check the date of merged and most time it's applied but if you want to make sure, check whether it's reverted.
If you want to check beta for instance, I would go to https://github.com/flutter/flutter/commits/beta and which version of flutter engine has been applied or reverted to sdk, plus search pull requests by the issue number. https://github.com/flutter/flutter/commits/beta?after=d3ed9ec945f8869f0e136c357d0c2a6be2b60c98+34 verifies that the current latest beta has a samsung keyboard fix applied.
dannyvalentesonos commentedon Apr 10, 2020
Thanks @njovy
njovy commentedon Apr 11, 2020
@dannyvalentesonos Needs one more correction the latest beta doesn't have flutter-team-archive/engine#17426 applied so use 1.17.0-dev.4.0 or later! Sorry for the confusion.
dannyvalentesonos commentedon Apr 11, 2020
Thanks @njovy. I'm using the latest Dev channel build at the moment.
exptk3 commentedon Apr 11, 2020
I updated flutter sdk version and tested again.
< flutter sdk info >
Flutter 1.18.0-5.0.pre.84 • channel master • https://github.com/flutter/flutter.git
Framework • revision 8ecd5e8 (7 hours ago) • 2020-04-10 19:55:02 -0400
Engine • revision 68fd833
device : galaxy s8
result : All bugs are gone and the app works fine.
Thanks @njovy @GaryQian
lock commentedon Apr 25, 2020
This thread has been automatically locked since there has not been any recent activity after it was closed. If you are still experiencing a similar issue, please open a new bug, including the output of
flutter doctor -vand a minimal reproduction of the issue.