Chromium Code Reviews
DescriptionFixing Toolbar flakiness in Android client.
This change addresses the problems that some users have been seeing in
the auto-hiding toolbar in our Android app. The auto-hide behavior
appears to work correctly until the user brings up the soft keyboard.
At this point the toolbar might be hidden but attempts to display the
toolbar again will fail.
We rely on System UI visibility events being fired to tell us when to
show or hide the Toolbar and in some cases these are not firing
consistently which is the root cause of the issues above.
This CL changes the way in which we update the System UI visibility when
the soft keyboard is displayed. I removed the old logic which would
hide the ToolBar and System UI (and rely on the underlying OS to finish
hiding the System UI when the keyboard was dismissed) and moved it to
our Keyboard detection method. Now we only hide the ActionBar when the
auto-hide timer fires and the soft keyboard is present and only call to
hide the System UI once the soft keyboard is dismissed.
This also solves a usability problem we had previously where the call to
hide the System UI would cause it to turn transparent which made finding
the dismiss KB button difficult when it was rendered over a white
background.
I've also added a method which is used when we resume the app which
checks the current System UI state and updates the ActionBar visibility
(and timer) to match. This fixes some behavior I saw bring the app back
from a stopped state where the System UI and ActionBar were out of sync.
BUG=618388
Committed: https://crrev.com/e9707b3db49ad29d458932a5940d5df10ff14416
Cr-Commit-Position: refs/heads/master@{#399980}
Patch Set 1 #Patch Set 2 : Fixing a comment #Patch Set 3 : Merged patch with ToT #Patch Set 4 : A bit more cleanup #
Depends on Patchset: Messages
Total messages: 12 (5 generated)
|
||||||||||||||||||||||||||||