New issue
Advanced search Search tips

Issue 853745 link

Starred by 2 users

Issue metadata

Status: Fixed
Owner:
Closed: Aug 21
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Android
Pri: 2
Type: Bug

Blocking:
issue 853794



Sign in to add a comment

Move keyboard accessory to correct layer

Project Member Reported by fhorschig@chromium.org, Jun 18 2018

Issue description

Currently, the keyboard accessory is pushed up by the keyboard.

Ideally, it should:
 - be overlaid by the keyboard
 - overlay every other bottom UI (infobar, bottom sheets, toolbars, ...)
 - be constant in it's distance to the accessory sheet (in that the accessory sheet always perfectly aligns with the bottom border of the keyboard accessory)
 
Cc: maxwalker@chromium.org
@Max: Where should the keyboard accessory be, if a dialog is open. Assume, that the dialog contains, e.g. an editable field. Can this happen?

Currently, if we had an editable field in a dialog, the accessory would be in the background, while the keyboard is in the foreground - this state is without question wrong (see attached screenshot).
Should it be _always_ hidden?
Or can there be cases where we need it and it should actually be on top - together with the keyboard?
Or do we need a case-by-case decision?
accessory_behind_dialog.png
260 KB View Download
Blocking: 853794
No, there is no situation in which this can happen according to our current plans.
Status: Started (was: Assigned)
https://crrev.com/c/1177361 prevents the accessory sheet from being pushed up.

As of this writing, toolbars and bottom sheets are not overlaid properly yet (sheets are pushed up or and toolbars overlay it).
Project Member

Comment 5 by bugdroid1@chromium.org, Aug 17

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/f7f385986a69d648d77b0b9f7821e7901df5c90f

commit f7f385986a69d648d77b0b9f7821e7901df5c90f
Author: Friedrich Horschig <fhorschig@chromium.org>
Date: Fri Aug 17 08:00:41 2018

[Android] Make keyboard accessory views independent from BottomContainer

With this CL, the view stubs (and the views) are moved out of the
bottom container, which makes it possible (and necessary) to push up
all visible content.

This fixes:
 - the accessory overlaying page contents (esp. bad for fullscreen)
 - the accessory being pushed up by the keyboard (visual flickering)
 - clicking through the accessory

This changes:
 - the bar isn't pushed up by bottom sheets (like download) anymore BUT
   instead pushes them up when the bottom sheet is opened

Bug: 874257,  873591 , 704070,  853745 ,  865964 
Change-Id: I8185b1ac21aaaed3d7123855b8964a3f86c9845a
Reviewed-on: https://chromium-review.googlesource.com/1177361
Reviewed-by: Bernhard Bauer <bauerb@chromium.org>
Reviewed-by: Vaclav Brozek <vabr@chromium.org>
Commit-Queue: Friedrich Horschig <fhorschig@chromium.org>
Cr-Commit-Position: refs/heads/master@{#583987}
[modify] https://crrev.com/f7f385986a69d648d77b0b9f7821e7901df5c90f/chrome/android/java/res/layout/keyboard_accessory.xml
[modify] https://crrev.com/f7f385986a69d648d77b0b9f7821e7901df5c90f/chrome/android/java/res/layout/keyboard_accessory_sheet.xml
[modify] https://crrev.com/f7f385986a69d648d77b0b9f7821e7901df5c90f/chrome/android/java/res/layout/main.xml
[modify] https://crrev.com/f7f385986a69d648d77b0b9f7821e7901df5c90f/chrome/android/java/src/org/chromium/chrome/browser/autofill/keyboard_accessory/AccessorySheetCoordinator.java
[modify] https://crrev.com/f7f385986a69d648d77b0b9f7821e7901df5c90f/chrome/android/java/src/org/chromium/chrome/browser/autofill/keyboard_accessory/AccessorySheetMediator.java
[modify] https://crrev.com/f7f385986a69d648d77b0b9f7821e7901df5c90f/chrome/android/java/src/org/chromium/chrome/browser/autofill/keyboard_accessory/KeyboardAccessoryCoordinator.java
[modify] https://crrev.com/f7f385986a69d648d77b0b9f7821e7901df5c90f/chrome/android/java/src/org/chromium/chrome/browser/autofill/keyboard_accessory/KeyboardAccessoryMediator.java
[modify] https://crrev.com/f7f385986a69d648d77b0b9f7821e7901df5c90f/chrome/android/java/src/org/chromium/chrome/browser/autofill/keyboard_accessory/KeyboardAccessoryMetricsRecorder.java
[modify] https://crrev.com/f7f385986a69d648d77b0b9f7821e7901df5c90f/chrome/android/java/src/org/chromium/chrome/browser/autofill/keyboard_accessory/KeyboardAccessoryModel.java
[modify] https://crrev.com/f7f385986a69d648d77b0b9f7821e7901df5c90f/chrome/android/java/src/org/chromium/chrome/browser/autofill/keyboard_accessory/KeyboardAccessoryView.java
[modify] https://crrev.com/f7f385986a69d648d77b0b9f7821e7901df5c90f/chrome/android/java/src/org/chromium/chrome/browser/autofill/keyboard_accessory/KeyboardAccessoryViewBinder.java
[modify] https://crrev.com/f7f385986a69d648d77b0b9f7821e7901df5c90f/chrome/android/java/src/org/chromium/chrome/browser/autofill/keyboard_accessory/ManualFillingCoordinator.java
[modify] https://crrev.com/f7f385986a69d648d77b0b9f7821e7901df5c90f/chrome/android/java/src/org/chromium/chrome/browser/autofill/keyboard_accessory/ManualFillingMediator.java
[modify] https://crrev.com/f7f385986a69d648d77b0b9f7821e7901df5c90f/chrome/android/javatests/src/org/chromium/chrome/browser/autofill/keyboard_accessory/ManualFillingIntegrationTest.java
[modify] https://crrev.com/f7f385986a69d648d77b0b9f7821e7901df5c90f/chrome/android/javatests/src/org/chromium/chrome/browser/autofill/keyboard_accessory/PasswordAccessorySheetViewTest.java
[modify] https://crrev.com/f7f385986a69d648d77b0b9f7821e7901df5c90f/chrome/android/junit/src/org/chromium/chrome/browser/autofill/keyboard_accessory/KeyboardAccessoryControllerTest.java
[modify] https://crrev.com/f7f385986a69d648d77b0b9f7821e7901df5c90f/chrome/android/junit/src/org/chromium/chrome/browser/autofill/keyboard_accessory/ManualFillingControllerTest.java
[modify] https://crrev.com/f7f385986a69d648d77b0b9f7821e7901df5c90f/chrome/browser/password_manager/password_accessory_controller.cc
[modify] https://crrev.com/f7f385986a69d648d77b0b9f7821e7901df5c90f/chrome/browser/password_manager/password_accessory_controller_unittest.cc

Status: Fixed (was: Started)
The main aspects of this issue are addressed and the remains are captured (with repro steps) in issue 876269.

Sign in to add a comment