New issue
Advanced search Search tips

Issue 608625 link

Starred by 13 users

Issue metadata

Status: Verified
Owner:
Closed: Nov 2016
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 1
Type: Bug

Blocking:
issue 546834



Sign in to add a comment

Add key remapping settings

Project Member Reported by tbuck...@chromium.org, May 3 2016

Issue description

We should make key remapping settings consistent in what keys can be remapped and what they can be remapped to.

1) Add remapping options for Escape, Backspace
2) Make all dropdowns contain a consistent list of options: Search, Ctrl, Alt, Disabled, Caps Lock, Escape, Backspace
3) Improve the ordering of the options list: Search, Ctrl, Alt, Caps Lock, Escape, Backspace, Disabled

See [1] for more info.

This is small enough that it can launch with MD Settings.

[1] https://docs.google.com/document/d/1YIyENVvFJM_XsZBd1x8S6qZtuLNVM-2kYbi8hyHmdNI/edit
 
Cc: osh...@chromium.org shuchen@chromium.org
Components: UI>Shell UI>Input>KeyboardShortcuts IO>Keyboard
Throwing a bunch of other components on this in case this might break something. afakhry@ can we chat this week about this?
Sure.
Blocking: 612990
Cc: jorgelo@chromium.org
 Issue 438865  has been merged into this issue.
Cc: kpschoedel@chromium.org
Cc: abodenha@chromium.org
 Issue 569034  has been merged into this issue.
Status: Started (was: Assigned)
Project Member

Comment 8 by bugdroid1@chromium.org, Aug 16 2016

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

commit bf2df88ff67f1b3837615d502d189775a46e4e8b
Author: michaelpg <michaelpg@chromium.org>
Date: Tue Aug 16 22:38:31 2016

Allow remapping modifier keys to Caps Lock and Backspace

I've found no reason to disallow remapping Ctrl, Alt or Diamond to the
Caps Lock or Backspace keys. This adds them to the dropdown menus
in Options (MD Settings to come).

BUG= 608625 

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

[modify] https://crrev.com/bf2df88ff67f1b3837615d502d189775a46e4e8b/chrome/browser/chromeos/events/event_rewriter.cc
[modify] https://crrev.com/bf2df88ff67f1b3837615d502d189775a46e4e8b/chrome/browser/ui/webui/options/chromeos/keyboard_handler.cc
[modify] https://crrev.com/bf2df88ff67f1b3837615d502d189775a46e4e8b/chrome/common/pref_names.cc

Comment 9 by sadrul@chromium.org, Aug 16 2016

Cc: sadrul@chromium.org
Why do we want backspace to be remappable?
tbuckley can provide more context, but we've moved a lot of CrOS shortcuts to Search, so users who still want Search remapped now need to map some other key back to Search.

For example, I remap Search to Backspace because Backspace is too far for my taste. So why not make Backspace map to Search? (Really, why not? Most of the code to support making Backspace and Escape remappable went into the unit test[1]. I've played around with it on my samus and haven't encountered any issues with repeat, accelerators, caps lock state, etc.)

(FWIW, I was doing this long before we started changing shortcuts, and just happen to be the person who does CrOS settings... so though I have personal bias, I'm not the one who suggested or prioritized this!)

[1] https://codereview.chromium.org/2250473006/
Project Member

Comment 11 by bugdroid1@chromium.org, Aug 25 2016

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

commit 168ecd71dbd357efb815c2b8380a434331d4cae7
Author: michaelpg <michaelpg@chromium.org>
Date: Thu Aug 25 04:00:42 2016

Settings to remap Backspace and Escape keys

We can remap modifier keys in Settings, but not Backspace or Escape;
this adds settings to remap those keys and handles them in EventRewriter.

BUG= 608625 
R=kpschoedel@chromium.org,stevenjb@chromium.org,sadrul@chromium.org
CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:closure_compilation

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

[modify] https://crrev.com/168ecd71dbd357efb815c2b8380a434331d4cae7/chrome/app/chromeos_strings.grdp
[modify] https://crrev.com/168ecd71dbd357efb815c2b8380a434331d4cae7/chrome/browser/chromeos/events/event_rewriter.cc
[modify] https://crrev.com/168ecd71dbd357efb815c2b8380a434331d4cae7/chrome/browser/chromeos/events/event_rewriter.h
[modify] https://crrev.com/168ecd71dbd357efb815c2b8380a434331d4cae7/chrome/browser/chromeos/events/event_rewriter_unittest.cc
[modify] https://crrev.com/168ecd71dbd357efb815c2b8380a434331d4cae7/chrome/browser/chromeos/preferences.cc
[modify] https://crrev.com/168ecd71dbd357efb815c2b8380a434331d4cae7/chrome/browser/resources/options/chromeos/keyboard_overlay.html
[modify] https://crrev.com/168ecd71dbd357efb815c2b8380a434331d4cae7/chrome/browser/ui/webui/options/chromeos/keyboard_handler.cc
[modify] https://crrev.com/168ecd71dbd357efb815c2b8380a434331d4cae7/chrome/common/pref_names.cc
[modify] https://crrev.com/168ecd71dbd357efb815c2b8380a434331d4cae7/chrome/common/pref_names.h
[modify] https://crrev.com/168ecd71dbd357efb815c2b8380a434331d4cae7/tools/metrics/actions/actions.xml
[modify] https://crrev.com/168ecd71dbd357efb815c2b8380a434331d4cae7/ui/base/ime/chromeos/ime_keyboard.h

Blocking: -612990 546834
Labels: Proj-MaterialDesign-WebUI
Status: Assigned (was: Started)
remaining issue is to add this to MD Settings.
Labels: -Pri-2 M-56 Pri-1
Making P1 since we need parity with current Settings to ship.

Status: Started (was: Assigned)
Cc: michae...@chromium.org
 Issue 642786  has been merged into this issue.
Project Member

Comment 16 by bugdroid1@chromium.org, Nov 9 2016

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

commit 4d77b0e6f0b1ee3fc3b9a1ddb268d86f7c29f065
Author: michaelpg <michaelpg@chromium.org>
Date: Wed Nov 09 01:46:08 2016

MD Settings: Add remapping options for Backspace and Escape

These keys were added in Options when we added support for remapping to
and from these keys. This completes  crbug.com/608625  by adding the same
options to Settings.

BUG= 608625 
R=stevenjb@chromium.org
TEST=Backspace and Escape can be remapped in chrome://md-settings Keyboard
     settings, and are included in the dropdown of keys to map to.
CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:closure_compilation

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

[modify] https://crrev.com/4d77b0e6f0b1ee3fc3b9a1ddb268d86f7c29f065/chrome/app/settings_strings.grdp
[modify] https://crrev.com/4d77b0e6f0b1ee3fc3b9a1ddb268d86f7c29f065/chrome/browser/extensions/api/settings_private/prefs_util.cc
[modify] https://crrev.com/4d77b0e6f0b1ee3fc3b9a1ddb268d86f7c29f065/chrome/browser/resources/settings/device_page/compiled_resources2.gyp
[modify] https://crrev.com/4d77b0e6f0b1ee3fc3b9a1ddb268d86f7c29f065/chrome/browser/resources/settings/device_page/keyboard.html
[modify] https://crrev.com/4d77b0e6f0b1ee3fc3b9a1ddb268d86f7c29f065/chrome/browser/resources/settings/device_page/keyboard.js
[modify] https://crrev.com/4d77b0e6f0b1ee3fc3b9a1ddb268d86f7c29f065/chrome/browser/ui/webui/settings/md_settings_localized_strings_provider.cc
[modify] https://crrev.com/4d77b0e6f0b1ee3fc3b9a1ddb268d86f7c29f065/chrome/test/data/webui/settings/device_page_tests.js

Status: Fixed (was: Started)
Thanks a lot for doing this. I wish I still had my Chromebook to try this out, but I am pretty sure thousands of power users around the world will appreciate the change.
who do you think lobbied for Backspace? :-P
Status: Verified (was: Fixed)
Verified on ChromeOS 9000.0.0, 56.0.2923.0

Sign in to add a comment