New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 828701 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Last visit > 30 days ago
Closed: Apr 2018
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 2
Type: Bug

Blocking:
issue 797721



Sign in to add a comment

Cannot drag floating keyboard on secondary display freely

Project Member Reported by blakeo@chromium.org, Apr 4 2018

Issue description

Steps:
1) Enable on-screen keyboard system tray
2) On a secondary touch screen monitor, press the button to invoke the floating keyboard on the secondary display.
3) Move it around

Expected: Moves!
Actual: Might move?

What's happening here is some of the math for restricting the bounds assumes there's one display and is causing incorrect semi-predictable behavior. 
 
Blocking: 797721
Project Member

Comment 2 by bugdroid1@chromium.org, Apr 4 2018

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

commit a92a80957ca24f62a9dfd1ac0f3023159ce60c00
Author: Blake O'Hare <blakeo@chromium.org>
Date: Wed Apr 04 07:26:42 2018

Fix some floating keyboard assumptions that there is only one display

Moving the floating keyboard on a secondary monitor did not work well.
The keyboard movement would be bounded to certain nonsensical ranges
that would correspond to the primary display.

Bug:  828701 
Change-Id: Ic910ee48d4cfa17b37334b7d9c719090da502414
Reviewed-on: https://chromium-review.googlesource.com/994632
Commit-Queue: Blake O'Hare <blakeo@chromium.org>
Reviewed-by: Yuichiro Hanada <yhanada@chromium.org>
Cr-Commit-Position: refs/heads/master@{#547999}
[modify] https://crrev.com/a92a80957ca24f62a9dfd1ac0f3023159ce60c00/ui/keyboard/container_behavior.h
[modify] https://crrev.com/a92a80957ca24f62a9dfd1ac0f3023159ce60c00/ui/keyboard/container_floating_behavior.cc
[modify] https://crrev.com/a92a80957ca24f62a9dfd1ac0f3023159ce60c00/ui/keyboard/container_floating_behavior.h
[modify] https://crrev.com/a92a80957ca24f62a9dfd1ac0f3023159ce60c00/ui/keyboard/container_floating_behavior_unittest.cc
[modify] https://crrev.com/a92a80957ca24f62a9dfd1ac0f3023159ce60c00/ui/keyboard/container_full_width_behavior.cc
[modify] https://crrev.com/a92a80957ca24f62a9dfd1ac0f3023159ce60c00/ui/keyboard/container_full_width_behavior.h
[modify] https://crrev.com/a92a80957ca24f62a9dfd1ac0f3023159ce60c00/ui/keyboard/container_full_width_behavior_unittest.cc
[modify] https://crrev.com/a92a80957ca24f62a9dfd1ac0f3023159ce60c00/ui/keyboard/display_util.cc
[modify] https://crrev.com/a92a80957ca24f62a9dfd1ac0f3023159ce60c00/ui/keyboard/display_util.h
[modify] https://crrev.com/a92a80957ca24f62a9dfd1ac0f3023159ce60c00/ui/keyboard/keyboard_layout_manager.cc

Project Member

Comment 3 by bugdroid1@chromium.org, Apr 12 2018

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

commit aacb7cf3453dfc7400c00b2bc2bd00eb04faff0a
Author: Blake O'Hare <blakeo@chromium.org>
Date: Thu Apr 12 09:36:34 2018

Moving floating keyboard to edge will move it to adjacent display.

This isn't an ideal UX, although there is currently no defined UX
for this and this mostly just lays the foundation of any future
implementation. When the actual touch point (where the user's finger
is) approaches within 10 pixels of the display edge where there is
another display attached, the keyboard will transfer to the new display
in a default location.

This uses a similar mechanism as the ContainerBehavior change, where
the new display is queued on the KeyboardController and the keyboard
is then hidden. The HideAnimationFinished handler will then check for
any queued display changes, and re-open the keyboard on the new
display.

Bug:  828701 
Change-Id: I7d513791b5bd2de9133f6014469cd03c3fa44899
Reviewed-on: https://chromium-review.googlesource.com/1009507
Commit-Queue: Blake O'Hare <blakeo@chromium.org>
Reviewed-by: Yuichiro Hanada <yhanada@chromium.org>
Cr-Commit-Position: refs/heads/master@{#550126}
[modify] https://crrev.com/aacb7cf3453dfc7400c00b2bc2bd00eb04faff0a/ui/keyboard/BUILD.gn
[modify] https://crrev.com/aacb7cf3453dfc7400c00b2bc2bd00eb04faff0a/ui/keyboard/container_behavior.h
[modify] https://crrev.com/aacb7cf3453dfc7400c00b2bc2bd00eb04faff0a/ui/keyboard/container_floating_behavior.cc
[modify] https://crrev.com/aacb7cf3453dfc7400c00b2bc2bd00eb04faff0a/ui/keyboard/container_floating_behavior.h
[modify] https://crrev.com/aacb7cf3453dfc7400c00b2bc2bd00eb04faff0a/ui/keyboard/container_full_width_behavior.cc
[modify] https://crrev.com/aacb7cf3453dfc7400c00b2bc2bd00eb04faff0a/ui/keyboard/container_full_width_behavior.h
[modify] https://crrev.com/aacb7cf3453dfc7400c00b2bc2bd00eb04faff0a/ui/keyboard/display_util.cc
[modify] https://crrev.com/aacb7cf3453dfc7400c00b2bc2bd00eb04faff0a/ui/keyboard/display_util.h
[modify] https://crrev.com/aacb7cf3453dfc7400c00b2bc2bd00eb04faff0a/ui/keyboard/keyboard_controller.cc
[modify] https://crrev.com/aacb7cf3453dfc7400c00b2bc2bd00eb04faff0a/ui/keyboard/keyboard_controller.h
[add] https://crrev.com/aacb7cf3453dfc7400c00b2bc2bd00eb04faff0a/ui/keyboard/queued_display_change.cc
[add] https://crrev.com/aacb7cf3453dfc7400c00b2bc2bd00eb04faff0a/ui/keyboard/queued_display_change.h

Comment 4 by blakeo@chromium.org, Apr 16 2018

Status: Fixed (was: Started)

Sign in to add a comment