New issue
Advanced search Search tips

Issue 747823 link

Starred by 8 users

Issue metadata

Status: Fixed
Owner:
Closed: Nov 15
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 2
Type: Bug-Regression


Show other hotlists

Hotlists containing this issue:
Hotlist-1


Sign in to add a comment

Neo2 keyboard layout unusable

Project Member Reported by rumpel@google.com, Jul 24 2017

Issue description

UserAgent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.72 Safari/537.36
Platform: 9592.37.0 (Official Build) beta-channel peach_pit

Steps to reproduce the problem:
1. Choose Neo2 keyboard layout
2. Type any layer-3 character (e.g. [search/caps] + [i], which correctly results in "/")
3. Type any other character, e.g. [a] (it’s now shown in upper-case, e.g. "A")

What is the expected behavior?
Caps-lock should not be enabled when hitting [search/caps] key, instead it should be enabled when both [l-shift] and [r-shift] are pressed simultaneously.

What went wrong?
The mod3 key ([search/caps]) triggers caps-lock. In neo2 layout this should not happen.

Did this work before? Yes ~3 years ago

Chrome version: 60.0.3112.50  Channel: beta
OS Version: 9592.37.0
Flash Version: 

This makes the keyboard layout almost unusable. The workaround is to hit caps again after using it as a modifier key. The impact is similar to having to press [shift] again after typing an uppercase letter on a normal keyboard layout.
 
Project Member

Comment 1 by sheriffbot@chromium.org, Jul 24 2017

Labels: Hotlist-Google
Components: UI>Input>Text
Cc: omrilio@chromium.org
Components: -UI>Input>Text UI>Input>Text>IME
Owner: yhanada@chromium.org
Status: Assigned (was: Unconfirmed)

Comment 4 by rumpel@google.com, Jan 24 2018

Some updates:
With a chromebook with an actual search button instead of caps-lock this is working now (at least on current dev channel; may have been fixed through crbug/782572). However, it’s important to set search-button behavior to search-button instead of caps-lock in the keyboard settings.

With an external keyboard that has a caps-lock key, this is still broken and caps-lock is always activated after caps-lock key has been pressed.

Also lshift+rshift doesn’t trigger caps-lock in any variant, but that’s a minor problem.
In Neo2 layout, Hitting Caps Lock key generate an event with dom_code=CapsLock and dom_key=AltGraph. An remapped key will be generated here [1]. Later, not sure whether it's a regression, the remapped key is overwritten [2]. After I replace the line 726-728 with:

if (!remapped_key) {
  characteristic_flag = ui::EF_CAPS_LOCK_ON;
  remapped_key =
      GetRemappedKey(prefs::kLanguageRemapCapsLockKeyTo, delegate_);
}

The reported issue is resolved.

[1] https://cs.chromium.org/chromium/src/ui/chromeos/events/event_rewriter_chromeos.cc?dr&l=693
[2] https://cs.chromium.org/chromium/src/ui/chromeos/events/event_rewriter_chromeos.cc?dr&l=727
Status: Started (was: Assigned)
I tested the proposed fix with ToT, but Hitting Caps Lock key seems to generate an event with dom_code=META_LEFT and dom_key=AltGraph, so it doesn't work well.
I'll investigate in more detail in next week.

Project Member

Comment 7 by bugdroid1@chromium.org, Feb 24 2018

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

commit 09cf341567b00dc10d651eb5ccc96b6d0210a39b
Author: Yuichiro Hanada <yhanada@chromium.org>
Date: Sat Feb 24 00:01:34 2018

Make Caps-Lock work as Mod3 on Neo2 keyboard layout.

This CL fixes the issue when connecting an external keyboard that has
a Caps-Lock key.
The issue happening when mapping Search key to Caps-Lock key on the
internal keyboard will be addressed later.

Bug:  747823 
Test: Manual. Confirm that Caps-Lock + Q generates @ and Caps-Lock is
      not enabled after that.

Change-Id: I96c378d85ca85ce0d78bbc1ebd57bd44fb5f1a5f
Reviewed-on: https://chromium-review.googlesource.com/933667
Reviewed-by: Dan Erat <derat@chromium.org>
Commit-Queue: Yuichiro Hanada <yhanada@chromium.org>
Cr-Commit-Position: refs/heads/master@{#538952}
[modify] https://crrev.com/09cf341567b00dc10d651eb5ccc96b6d0210a39b/ui/chromeos/events/event_rewriter_chromeos.cc

Is this still open?
Labels: CrOSLanguage-Current
No, this has been fixed. I verified that it’s working on current builds.
Thank you!
Status: Fixed (was: Started)
Oops, I forgot to update this issue. Let me close it now.
I opened:

https://crbug.com/893336

For some remaining problems with the neo layout (layer 6 and compose still don't work)
Cc: rumpel@google.com kpschoedel@chromium.org
 Issue 495277  has been merged into this issue.

Sign in to add a comment