Several keys on fourth layer of German Neo 2 keyboard layout not working
Reported by
pm.mol...@gmail.com,
Aug 1 2016
|
||||||||||
Issue descriptionChrome Version: 51.0.2704.106 (Offizieller Build) (32-Bit) Chrome OS Version: 8172.62.0 (Official Build) stable-channel veyron_jaq Chrome OS Platform: Medion AKOYA S2013 (MD60077) Please specify Cr-* of the system to which this bug/feature applies (add the label below). Steps To Reproduce: (1) Select [*Deutsche Neo2-Tastatur*](http://www.neo-layout.org/) as keyboard layout. (2) Try to enter a *return* (Alt Gr + p (QWERTZ v)) or *backspace* (Alt Gr + v (QWERTZ w)) using the fourth layer, anywhere, for example the address bar of the browser. Expected Result: On return the Web site of the entered URL should be loaded. On backspace, the character in front of the cursor should be deleted. Actual Result: Nothing happens. How frequently does this problem reproduce? (Always, sometimes, hard to reproduce?) Always. What is the impact to the user, and is there a workaround? If so, what is it? Use the present keys for return and backspace, which makes the experience bad, as users fluent in Neo, are used to using the fourth layer. Please provide any additional information below. Attach a screen shot or log if possible.
,
Nov 10 2016
That looks like an IME issue. shuchen@ Could you please take a look? If it's something on our side, please let us know.
,
Nov 10 2016
,
Nov 10 2016
From my ChromeOS days I recall Neo is a stress test for keyboard handling. I would first check a layout tester like https://dvcs.w3.org/hg/d4e/raw-file/tip/key-event-test.html I conjecture that the DOM3 key and code are correct but the Windows VK (legacy keyCode) is wrong (and is VKEY_V and VKEY_W). In that case the problem would be that XkbKeyboardLayoutEngine::Lookup() fails to handle the case of values with special VKEYs (Return & Backspace) generated from non-Control modified printable keys.
,
Nov 10 2016
I don't have a debugging environment setup for this (the sandbox chrome os doesn't compile with ozone). By checking the code & guessing the root cuase, I made a simple fix: https://codereview.chromium.org/2481413006 Kevin, can you please help to verify whether my cl can fix this issue? thanks!
,
Nov 10 2016
,
Nov 10 2016
#5 I'm travelling this week; I'll verify this on Tuesday.
,
Nov 24 2016
,
Nov 24 2016
Thanks kpschoedel@ for verification. Taking over the issue and submitting the cl.
,
Nov 25 2016
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/958f9a87ed3bf08d72839ce1e078f967ff4dabd6 commit 958f9a87ed3bf08d72839ce1e078f967ff4dabd6 Author: shuchen <shuchen@chromium.org> Date: Fri Nov 25 00:25:09 2016 Checks the DomKey in the non-printable map to determine whether a key event is non-character. And fallback to check the character value. BUG= 633238 Review-Url: https://codereview.chromium.org/2481413006 Cr-Commit-Position: refs/heads/master@{#434412} [modify] https://crrev.com/958f9a87ed3bf08d72839ce1e078f967ff4dabd6/ui/events/ozone/layout/xkb/xkb_keyboard_layout_engine.cc [modify] https://crrev.com/958f9a87ed3bf08d72839ce1e078f967ff4dabd6/ui/events/ozone/layout/xkb/xkb_keyboard_layout_engine_unittest.cc
,
Nov 25 2016
,
Dec 21 2016
This still doesn’t work with version 55.0.2883.103 on platform 8872.73.0.
,
Feb 7 2017
For the record, this causes chromeos/ozone use_xkbcommon=true failures to me:
FAILED: obj/ui/events/events_unittests/xkb_keyboard_layout_engine_unittest.o
/b/c/cipd/goma/gomacc ../../third_party/llvm-build/Release+Asserts/bin/clang++ -MMD -MF obj/ui/events/events_unittests/xkb_keyboard_layout_engine_unittest.o.d -DV8_DEPRECATION_WARNINGS -DUSE_UDEV -DUI_COMPOSITOR_IMAGE_TRANSPORT -DUSE_AURA=1 -DUSE_NSS_CERTS=1 -DUSE_OZONE=1 -DFULL_SAFE_BROWSING -DSAFE_BROWSING_CSD -DSAFE_BROWSING_DB_LOCAL -DCHROMIUM_BUILD -DENABLE_MEDIA_ROUTER=1 -DFIELDTRIAL_TESTING_ENABLED -DCR_CLANG_REVISION=\"289944-2\" -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -DNDEBUG -DNVALGRIND -DDYNAMIC_ANNOTATIONS_ENABLED=0 -DGTEST_HAS_POSIX_RE=0 -DGTEST_LANG_CXX11=1 -DGL_GLEXT_PROTOTYPES -DUSE_GLX -DUSE_EGL -DSK_IGNORE_DW_GRAY_FIX -DSK_IGNORE_LINEONLY_AA_CONVEX_PATH_OPTS -DSK_SUPPORT_GPU=1 -DU_USING_ICU_NAMESPACE=0 -DU_ENABLE_DYLOAD=0 -DU_STATIC_IMPLEMENTATION -DICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_FILE -DUNIT_TEST -DENABLE_IPC_FUZZER -DUSE_EVDEV -I../.. -Igen -I../../testing/gtest/include -I../../third_party/khronos -I../../gpu -I../../skia/config -I../../skia/ext -I../../third_party/skia/include/c -I../../third_party/skia/include/config -I../../third_party/skia/include/core -I../../third_party/skia/include/effects -I../../third_party/skia/include/images -I../../third_party/skia/include/lazy -I../../third_party/skia/include/pathops -I../../third_party/skia/include/pdf -I../../third_party/skia/include/pipe -I../../third_party/skia/include/ports -I../../third_party/skia/include/utils -I../../third_party/skia/include/gpu -I../../third_party/skia/src/gpu -I../../third_party/skia/src/sksl -I../../third_party/icu/source/common -I../../third_party/icu/source/i18n -I../../third_party/ced/src -I../../testing/gmock_custom -I../../testing/gmock/include -I../../third_party/WebKit -Igen/third_party/WebKit -I../../v8/include -Igen/v8/include -fno-strict-aliasing --param=ssp-buffer-size=4 -fstack-protector -Wno-builtin-macro-redefined -D__DATE__= -D__TIME__= -D__TIMESTAMP__= -funwind-tables -fPIC -pipe -B../../third_party/binutils/Linux_x64/Release/bin -fcolor-diagnostics -fdebug-prefix-map=/b/c/b/linux/src=. -m64 -march=x86-64 -pthread -Wall -Werror -Wextra -Wno-missing-field-initializers -Wno-unused-parameter -Wno-c++11-narrowing -Wno-covered-switch-default -Wno-deprecated-register -Wno-unneeded-internal-declaration -Wno-inconsistent-missing-override -Wno-shift-negative-value -Wno-undefined-var-template -Wno-nonportable-include-path -Wno-address-of-packed-member -O2 -fno-ident -fdata-sections -ffunction-sections -g0 --sysroot=../../build/linux/debian_jessie_amd64-sysroot -fvisibility=hidden -Xclang -load -Xclang ../../third_party/llvm-build/Release+Asserts/lib/libFindBadConstructs.so -Xclang -add-plugin -Xclang find-bad-constructs -Xclang -plugin-arg-find-bad-constructs -Xclang check-ipc -Wheader-hygiene -Wstring-conversion -Wtautological-overlap-compare -fvisibility-inlines-hidden -std=gnu++11 -fno-rtti -fno-exceptions -c ../../ui/events/ozone/layout/xkb/xkb_keyboard_layout_engine_unittest.cc -o obj/ui/events/events_unittests/xkb_keyboard_layout_engine_unittest.o
../../ui/events/ozone/layout/xkb/xkb_keyboard_layout_engine_unittest.cc:826:60: error: use of undeclared identifier 'VKEY_BACKSPACE'
{{DomCode::US_W, EF_ALTGR_DOWN, XKB_KEY_BackSpace, 8}, VKEY_BACKSPACE},
^
../../ui/events/ozone/layout/xkb/xkb_keyboard_layout_engine_unittest.cc:827:58: error: use of undeclared identifier 'VKEY_ENTER'
{{DomCode::US_V, EF_ALTGR_DOWN, XKB_KEY_Return, 13}, VKEY_ENTER},
^
../../ui/events/ozone/layout/xkb/xkb_keyboard_layout_engine_unittest.cc:829:24: error: cannot use incomplete type 'const struct (anonymous struct at ../../ui/events/ozone/layout/xkb/xkb_keyboard_layout_engine_unittest.cc:803:16) []' as a range
for (const auto& e : kVkeyTestCase) {
^
../../ui/events/ozone/layout/xkb/xkb_keyboard_layout_engine_unittest.cc:836:5: error: no type named 'Compare' in the global namespace
EXPECT_EQ(e.key_code, key_code);
Build error can also be verified in the linux/ozone FYI bot: https://build.chromium.org/p/chromium.fyi/builders/Ozone%20Linux/builds/5214/steps/compile/logs/stdio
shuchen@, kpschoedel@, spang@: any ideas?
,
Feb 7 2017
Should be VKEY_BACK and VKEY_RETURN respectively.
,
Feb 7 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/f2da5092fa3e87ef4a0d8111f2818148238bd06c commit f2da5092fa3e87ef4a0d8111f2818148238bd06c Author: tonikitoo <tonikitoo@igalia.com> Date: Tue Feb 07 20:45:35 2017 Fix 'events_unittests' build $ vim u/e/o/l/x/xkb_keyboard_layout_engine_unittest.cc : %s/VKEY_BACKSPACE/VKEY_BACK/gc : %s/VKEY_ENTER/VKEY_RETURN/gc TBR=kpschoedel@chromium.org,spang@chromium.org BUG= 633238 Review-Url: https://codereview.chromium.org/2678283003 Cr-Commit-Position: refs/heads/master@{#448726} [modify] https://crrev.com/f2da5092fa3e87ef4a0d8111f2818148238bd06c/ui/events/ozone/layout/xkb/xkb_keyboard_layout_engine_unittest.cc
,
Apr 3 2017
This is just to confirm, that the fourth layer seems to work now, since the update from *last week*.
,
Aug 1 2017
,
Jan 22 2018
|
||||||||||
►
Sign in to add a comment |
||||||||||
Comment 1 by abodenha@chromium.org
, Nov 8 2016Status: Assigned (was: Unconfirmed)