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

Issue 624521 link

Starred by 3 users

Issue metadata

Status: Archived
Owner:
Closed: May 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 1
Type: Bug


Participants' hotlists:
Fixing-touch


Sign in to add a comment

switching focus in touch view mode should adjust the window bounds so that caret is visible.

Project Member Reported by osh...@chromium.org, Jun 29 2016

Issue description

We're adjusting the bounds on OnKeyboardBoundsChanging, which is probably wrong. Right now, you can move the focus to a window behind keyboard, without knowing it is now focused.

TextInputClient should be responsible for making sure that caret is visible.
 
Project Member

Comment 2 by bugdroid1@chromium.org, Aug 19 2016

Comment 3 by osh...@chromium.org, Nov 17 2016

Owner: yhanada@chromium.org
Project Member

Comment 4 by bugdroid1@chromium.org, Dec 8 2016

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

commit 0ddd346fec6fc94531234f50964269069a29a708
Author: yhanada <yhanada@chromium.org>
Date: Thu Dec 08 05:04:18 2016

Change |EnsureCaretInRect| to |EnsureCaretNotInRect|.

BUG= 624521 
TEST=n/a; no behavior change.

Review-Url: https://codereview.chromium.org/2554513002
Cr-Commit-Position: refs/heads/master@{#437185}

[modify] https://crrev.com/0ddd346fec6fc94531234f50964269069a29a708/ash/common/wm/window_state.h
[modify] https://crrev.com/0ddd346fec6fc94531234f50964269069a29a708/ash/root_window_controller_unittest.cc
[modify] https://crrev.com/0ddd346fec6fc94531234f50964269069a29a708/components/arc/ime/arc_ime_service.h
[modify] https://crrev.com/0ddd346fec6fc94531234f50964269069a29a708/content/browser/renderer_host/render_widget_host_view_aura.cc
[modify] https://crrev.com/0ddd346fec6fc94531234f50964269069a29a708/content/browser/renderer_host/render_widget_host_view_aura.h
[modify] https://crrev.com/0ddd346fec6fc94531234f50964269069a29a708/ui/base/ime/dummy_text_input_client.cc
[modify] https://crrev.com/0ddd346fec6fc94531234f50964269069a29a708/ui/base/ime/dummy_text_input_client.h
[modify] https://crrev.com/0ddd346fec6fc94531234f50964269069a29a708/ui/base/ime/text_input_client.h
[modify] https://crrev.com/0ddd346fec6fc94531234f50964269069a29a708/ui/keyboard/keyboard_ui.cc
[modify] https://crrev.com/0ddd346fec6fc94531234f50964269069a29a708/ui/views/controls/prefix_selector.cc
[modify] https://crrev.com/0ddd346fec6fc94531234f50964269069a29a708/ui/views/controls/prefix_selector.h
[modify] https://crrev.com/0ddd346fec6fc94531234f50964269069a29a708/ui/views/controls/textfield/textfield.cc
[modify] https://crrev.com/0ddd346fec6fc94531234f50964269069a29a708/ui/views/controls/textfield/textfield.h

 Issue 663275  has been merged into this issue.
As per offline discussion with tbuckley@, we don't restore window position if user has moved a window while the keyboard is shown.
Cc: osh...@chromium.org
Labels: -M-54

Comment 8 by oka@chromium.org, Jan 28 2017

Cc: oka@chromium.org
Status: Started (was: Assigned)
Project Member

Comment 10 by bugdroid1@chromium.org, Feb 23 2017

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

commit 698af19e9bad67813349d7a89174d140d624075f
Author: yhanada <yhanada@chromium.org>
Date: Thu Feb 23 10:57:07 2017

Move two utility functions from ash/screen_util.h to ui/wm/core/coordinate_conversion.h

|ash::ScreenUtil::ConvertRectToScreen| and
|ash::ScreenUtil::ConvertRectFromScreen| are moved.

BUG= 624521 
TEST=Added an unit test.

Review-Url: https://codereview.chromium.org/2660873002
Cr-Commit-Position: refs/heads/master@{#452450}

[modify] https://crrev.com/698af19e9bad67813349d7a89174d140d624075f/ash/BUILD.gn
[modify] https://crrev.com/698af19e9bad67813349d7a89174d140d624075f/ash/common/wm/dock/docked_window_layout_manager.cc
[modify] https://crrev.com/698af19e9bad67813349d7a89174d140d624075f/ash/common/wm_window.cc
[modify] https://crrev.com/698af19e9bad67813349d7a89174d140d624075f/ash/magnifier/magnification_controller.cc
[modify] https://crrev.com/698af19e9bad67813349d7a89174d140d624075f/ash/screen_util.cc
[modify] https://crrev.com/698af19e9bad67813349d7a89174d140d624075f/ash/screen_util.h
[modify] https://crrev.com/698af19e9bad67813349d7a89174d140d624075f/ash/screen_util_unittest.cc
[modify] https://crrev.com/698af19e9bad67813349d7a89174d140d624075f/ash/shell/panel_window.cc
[modify] https://crrev.com/698af19e9bad67813349d7a89174d140d624075f/ash/wm/drag_window_controller.cc
[modify] https://crrev.com/698af19e9bad67813349d7a89174d140d624075f/ash/wm/drag_window_resizer.cc
[modify] https://crrev.com/698af19e9bad67813349d7a89174d140d624075f/ash/wm/overview/window_selector_unittest.cc
[modify] https://crrev.com/698af19e9bad67813349d7a89174d140d624075f/ash/wm/window_animations.cc
[modify] https://crrev.com/698af19e9bad67813349d7a89174d140d624075f/chrome/browser/chromeos/accessibility/magnification_controller_browsertest.cc
[modify] https://crrev.com/698af19e9bad67813349d7a89174d140d624075f/chrome/browser/ui/views/apps/chrome_native_app_window_views_aura_ash.cc
[modify] https://crrev.com/698af19e9bad67813349d7a89174d140d624075f/ui/wm/BUILD.gn
[modify] https://crrev.com/698af19e9bad67813349d7a89174d140d624075f/ui/wm/core/coordinate_conversion.cc
[modify] https://crrev.com/698af19e9bad67813349d7a89174d140d624075f/ui/wm/core/coordinate_conversion.h
[add] https://crrev.com/698af19e9bad67813349d7a89174d140d624075f/ui/wm/core/coordinate_conversion_unittest.cc

Project Member

Comment 11 by bugdroid1@chromium.org, May 10 2017

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

commit 268490faabdd39308b8f6955408172f29e590bdd
Author: yhanada <yhanada@chromium.org>
Date: Wed May 10 07:41:28 2017

New accessibility virtual keyboard behavior in non-sticky mode.

Windows are now moved into visibility on focus change when virtual
keyboard is opened in non-sticky mode. Positioning is handled by
EnsureCaretInRect, using a window property for restore bounds. The
kUseNewVirtualKeyboardBehavior switch must be enabled for this
behavior.

BUG= 624521 
    TEST=Unit tests are added in render_widget_host_view_aura_unittest.cc
         and textfield_unittest.cc.

Review-Url: https://codereview.chromium.org/2553603002
Cr-Commit-Position: refs/heads/master@{#470517}

[modify] https://crrev.com/268490faabdd39308b8f6955408172f29e590bdd/ash/root_window_controller_unittest.cc
[modify] https://crrev.com/268490faabdd39308b8f6955408172f29e590bdd/ash/wm_window.cc
[modify] https://crrev.com/268490faabdd39308b8f6955408172f29e590bdd/content/browser/renderer_host/render_widget_host_view_aura.cc
[modify] https://crrev.com/268490faabdd39308b8f6955408172f29e590bdd/content/browser/renderer_host/render_widget_host_view_aura.h
[modify] https://crrev.com/268490faabdd39308b8f6955408172f29e590bdd/content/browser/renderer_host/render_widget_host_view_aura_unittest.cc
[modify] https://crrev.com/268490faabdd39308b8f6955408172f29e590bdd/content/test/BUILD.gn
[modify] https://crrev.com/268490faabdd39308b8f6955408172f29e590bdd/ui/base/ime/input_method.h
[modify] https://crrev.com/268490faabdd39308b8f6955408172f29e590bdd/ui/base/ime/input_method_base.cc
[modify] https://crrev.com/268490faabdd39308b8f6955408172f29e590bdd/ui/base/ime/input_method_base.h
[modify] https://crrev.com/268490faabdd39308b8f6955408172f29e590bdd/ui/keyboard/keyboard_controller.cc
[modify] https://crrev.com/268490faabdd39308b8f6955408172f29e590bdd/ui/keyboard/keyboard_ui.cc
[modify] https://crrev.com/268490faabdd39308b8f6955408172f29e590bdd/ui/views/controls/textfield/textfield.cc
[modify] https://crrev.com/268490faabdd39308b8f6955408172f29e590bdd/ui/views/controls/textfield/textfield_unittest.cc
[modify] https://crrev.com/268490faabdd39308b8f6955408172f29e590bdd/ui/wm/BUILD.gn
[add] https://crrev.com/268490faabdd39308b8f6955408172f29e590bdd/ui/wm/core/ime_util_chromeos.cc
[add] https://crrev.com/268490faabdd39308b8f6955408172f29e590bdd/ui/wm/core/ime_util_chromeos.h
[add] https://crrev.com/268490faabdd39308b8f6955408172f29e590bdd/ui/wm/core/ime_util_chromeos_unittest.cc

The fix is introduced behind the flag, "--use-new-virtual-keyboard-behavior".
Project Member

Comment 13 by bugdroid1@chromium.org, May 12 2017

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

commit f742bd099543025c6df1f7824a40b0f40f1e7cd3
Author: yhanada <yhanada@chromium.org>
Date: Fri May 12 07:00:23 2017

Don't use KeyboardController::GetInstance() in KeyboardUI.

Some tests doesn't set KeyboardController instance and it causes
test crashes when enabling "--use-new-virtual-keyboard-behavior" flag.
We can use keyboard_controller_ member instead.

BUG= 624521 
TEST=Covered by unit tests.

Review-Url: https://codereview.chromium.org/2869273007
Cr-Commit-Position: refs/heads/master@{#471240}

[modify] https://crrev.com/f742bd099543025c6df1f7824a40b0f40f1e7cd3/ui/keyboard/keyboard_controller_unittest.cc
[modify] https://crrev.com/f742bd099543025c6df1f7824a40b0f40f1e7cd3/ui/keyboard/keyboard_ui.cc

Project Member

Comment 14 by bugdroid1@chromium.org, May 18 2017

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

commit c5bff5bfdf04b0831f7ba4a976e8e5401523bd85
Author: yhanada <yhanada@chromium.org>
Date: Thu May 18 06:37:09 2017

Enable new-virtual-keyboard-behavior flag by default.

This CL introduces a new flag to let users revert it easier.

BUG= 624521 
TEST=The added flag shows up in chrome://flags.

Review-Url: https://codereview.chromium.org/2871243003
Cr-Commit-Position: refs/heads/master@{#472711}

[modify] https://crrev.com/c5bff5bfdf04b0831f7ba4a976e8e5401523bd85/ash/shelf/shelf_layout_manager.cc
[modify] https://crrev.com/c5bff5bfdf04b0831f7ba4a976e8e5401523bd85/ash/shelf/shelf_layout_manager_unittest.cc
[modify] https://crrev.com/c5bff5bfdf04b0831f7ba4a976e8e5401523bd85/ash/wm/workspace/workspace_layout_manager.cc
[modify] https://crrev.com/c5bff5bfdf04b0831f7ba4a976e8e5401523bd85/ash/wm/workspace/workspace_layout_manager_keyboard_unittest.cc
[modify] https://crrev.com/c5bff5bfdf04b0831f7ba4a976e8e5401523bd85/ash/wm/workspace/workspace_layout_manager_unittest.cc
[modify] https://crrev.com/c5bff5bfdf04b0831f7ba4a976e8e5401523bd85/chrome/browser/about_flags.cc
[modify] https://crrev.com/c5bff5bfdf04b0831f7ba4a976e8e5401523bd85/chrome/browser/flag_descriptions.cc
[modify] https://crrev.com/c5bff5bfdf04b0831f7ba4a976e8e5401523bd85/chrome/browser/flag_descriptions.h
[modify] https://crrev.com/c5bff5bfdf04b0831f7ba4a976e8e5401523bd85/content/browser/renderer_host/render_widget_host_view_aura_unittest.cc
[modify] https://crrev.com/c5bff5bfdf04b0831f7ba4a976e8e5401523bd85/tools/metrics/histograms/enums.xml
[modify] https://crrev.com/c5bff5bfdf04b0831f7ba4a976e8e5401523bd85/ui/base/ui_base_switches.cc
[modify] https://crrev.com/c5bff5bfdf04b0831f7ba4a976e8e5401523bd85/ui/base/ui_base_switches.h
[modify] https://crrev.com/c5bff5bfdf04b0831f7ba4a976e8e5401523bd85/ui/keyboard/keyboard_controller_unittest.cc
[modify] https://crrev.com/c5bff5bfdf04b0831f7ba4a976e8e5401523bd85/ui/keyboard/keyboard_ui.cc
[modify] https://crrev.com/c5bff5bfdf04b0831f7ba4a976e8e5401523bd85/ui/views/controls/textfield/textfield_unittest.cc
[modify] https://crrev.com/c5bff5bfdf04b0831f7ba4a976e8e5401523bd85/ui/wm/core/ime_util_chromeos.cc
[modify] https://crrev.com/c5bff5bfdf04b0831f7ba4a976e8e5401523bd85/ui/wm/core/ime_util_chromeos_unittest.cc

Project Member

Comment 15 by bugdroid1@chromium.org, May 19 2017

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

commit d3932e83e4d948d982d181fa79b166bc36f4f5d1
Author: yhanada <yhanada@chromium.org>
Date: Fri May 19 01:38:14 2017

Remove SetOverscrollEnabledWithAccessibilityKeyboard().

This method is no longer needed after new window behavior for
the accessibility keyboard is introduced.
It's introduced in crrev.com/2553603002 and enabled by default
by crrev.com/2869273007.

BUG= 624521 , 696436
TEST=Manual. Resizing of Android app's window doesn't happen when
     the accessibility keyboard shows up.

Review-Url: https://codereview.chromium.org/2889123003
Cr-Commit-Position: refs/heads/master@{#473020}

[modify] https://crrev.com/d3932e83e4d948d982d181fa79b166bc36f4f5d1/ash/virtual_keyboard_controller.cc
[modify] https://crrev.com/d3932e83e4d948d982d181fa79b166bc36f4f5d1/ui/keyboard/keyboard_util.cc
[modify] https://crrev.com/d3932e83e4d948d982d181fa79b166bc36f4f5d1/ui/keyboard/keyboard_util.h

Status: Fixed (was: Started)
Labels: VerifyIn-61

Comment 18 by dchan@chromium.org, Jan 22 2018

Status: Archived (was: Fixed)

Sign in to add a comment