Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(33)

Issue 6975057: Listen to XI_HierarchyChanged events and call setxkbmap when needed. (Closed)

Created:
9 years, 6 months ago by Yusuke Sato
Modified:
9 years, 6 months ago
CC:
chromium-reviews, davemoore+watch_chromium.org, brettw-cc_chromium.org, James Su
Visibility:
Public.

Description

Listen to XI_HierarchyChanged events and call setxkbmap when needed. BUG=chromium-os:15851 BUG=chromium-os:15516 BUG=84694 TEST=manually done: Log in, change the layout from US Qwerty (US) to US Extended (EXTD), focus Omnibox, press AltGr+a, confirm á is shown, plug a USB keyboard, press AltGr+a, confirm the character again, press ctrl+alt+f2 to show VT2, press ctrl+alt+f1 to go back to X, press AltGr+a, confirm the char again, close lid, open lid, press AltGr+a, confirm the char again. TEST=On login screen, change the keyboard layout to EXTD, add "sleep 30" to /etc/init/udev-*.conf files, reboot, on login screen, wait for ~30 seconds, press AltGr+a, confirm á is shown. Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=87585 Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=87756

Patch Set 1 #

Total comments: 6

Patch Set 2 : review fix #

Total comments: 4

Patch Set 3 : review fix #

Total comments: 4

Patch Set 4 : review fix #

Patch Set 5 : added workaround for crbug.com/84694 #

Unified diffs Side-by-side diffs Delta from patch set Stats (+239 lines, -4 lines) Patch
M chrome/browser/browser_main.cc View 1 2 3 4 2 chunks +7 lines, -0 lines 0 comments Download
M chrome/browser/browser_shutdown.cc View 1 2 3 4 2 chunks +8 lines, -0 lines 0 comments Download
M chrome/browser/chromeos/input_method/xkeyboard.h View 1 chunk +5 lines, -0 lines 0 comments Download
M chrome/browser/chromeos/input_method/xkeyboard.cc View 1 2 4 chunks +21 lines, -4 lines 0 comments Download
A chrome/browser/chromeos/xinput_hierarchy_changed_event_listener.h View 1 2 3 4 1 chunk +64 lines, -0 lines 0 comments Download
A chrome/browser/chromeos/xinput_hierarchy_changed_event_listener.cc View 1 2 3 4 1 chunk +132 lines, -0 lines 0 comments Download
M chrome/chrome_browser.gypi View 1 2 3 4 1 chunk +2 lines, -0 lines 0 comments Download

Messages

Total messages: 11 (0 generated)
Yusuke Sato
9 years, 6 months ago (2011-06-01 14:11:18 UTC) #1
sadrul
http://codereview.chromium.org/6975057/diff/1/chrome/browser/chromeos/xinput_hierarchy_changed_event_listener.cc File chrome/browser/chromeos/xinput_hierarchy_changed_event_listener.cc (right): http://codereview.chromium.org/6975057/diff/1/chrome/browser/chromeos/xinput_hierarchy_changed_event_listener.cc#newcode34 chrome/browser/chromeos/xinput_hierarchy_changed_event_listener.cc:34: unsigned char mask[(XI_LASTEVENT + 7) / 8] = {0}; ...
9 years, 6 months ago (2011-06-01 14:55:19 UTC) #2
Yusuke Sato
Fixed. Please take another look. http://codereview.chromium.org/6975057/diff/1/chrome/browser/chromeos/xinput_hierarchy_changed_event_listener.cc File chrome/browser/chromeos/xinput_hierarchy_changed_event_listener.cc (right): http://codereview.chromium.org/6975057/diff/1/chrome/browser/chromeos/xinput_hierarchy_changed_event_listener.cc#newcode34 chrome/browser/chromeos/xinput_hierarchy_changed_event_listener.cc:34: unsigned char mask[(XI_LASTEVENT + ...
9 years, 6 months ago (2011-06-01 22:31:06 UTC) #3
Daniel Kurtz
The current implementation LGTM. However, I recommend an optimization to eliminate lots of setxkbmap at ...
9 years, 6 months ago (2011-06-01 23:17:15 UTC) #4
sadrul
LGTM on the parts I commented on (with a nit). http://codereview.chromium.org/6975057/diff/4001/chrome/browser/chromeos/xinput_hierarchy_changed_event_listener.h File chrome/browser/chromeos/xinput_hierarchy_changed_event_listener.h (right): http://codereview.chromium.org/6975057/diff/4001/chrome/browser/chromeos/xinput_hierarchy_changed_event_listener.h#newcode13 ...
9 years, 6 months ago (2011-06-01 23:22:23 UTC) #5
Yusuke Sato
http://codereview.chromium.org/6975057/diff/4001/chrome/browser/chromeos/xinput_hierarchy_changed_event_listener.cc File chrome/browser/chromeos/xinput_hierarchy_changed_event_listener.cc (right): http://codereview.chromium.org/6975057/diff/4001/chrome/browser/chromeos/xinput_hierarchy_changed_event_listener.cc#newcode52 chrome/browser/chromeos/xinput_hierarchy_changed_event_listener.cc:52: && (info->flags & XIDeviceEnabled)) { On 2011/06/01 23:17:15, Daniel ...
9 years, 6 months ago (2011-06-02 01:05:10 UTC) #6
Zachary Kuznia
LGTM http://codereview.chromium.org/6975057/diff/9001/chrome/browser/chromeos/xinput_hierarchy_changed_event_listener.cc File chrome/browser/chromeos/xinput_hierarchy_changed_event_listener.cc (right): http://codereview.chromium.org/6975057/diff/9001/chrome/browser/chromeos/xinput_hierarchy_changed_event_listener.cc#newcode24 chrome/browser/chromeos/xinput_hierarchy_changed_event_listener.cc:24: LOG(ERROR) << "X Input extension not available"; Should ...
9 years, 6 months ago (2011-06-02 05:25:00 UTC) #7
Yusuke Sato
http://codereview.chromium.org/6975057/diff/9001/chrome/browser/chromeos/xinput_hierarchy_changed_event_listener.cc File chrome/browser/chromeos/xinput_hierarchy_changed_event_listener.cc (right): http://codereview.chromium.org/6975057/diff/9001/chrome/browser/chromeos/xinput_hierarchy_changed_event_listener.cc#newcode24 chrome/browser/chromeos/xinput_hierarchy_changed_event_listener.cc:24: LOG(ERROR) << "X Input extension not available"; On 2011/06/02 ...
9 years, 6 months ago (2011-06-02 05:50:19 UTC) #8
Yusuke Sato
I've reverted the change since it breaks Chrome OS ARM bot. See http://code.google.com/p/chromium-os/issues/detail?id=15851 for details. ...
9 years, 6 months ago (2011-06-02 09:02:49 UTC) #9
Yusuke Sato
Added workaround for crbug.com/84694. Even with the workaround, Chromium OS image for ARM _can_ handle ...
9 years, 6 months ago (2011-06-03 02:29:47 UTC) #10
Daniel Kurtz
9 years, 6 months ago (2011-06-03 05:36:16 UTC) #11
LGTM

Powered by Google App Engine
This is Rietveld 408576698