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

Issue 2639053002: [ozone/wayland] Implement basic keyboard handling support (Closed)

Created:
3 years, 11 months ago by tonikitoo
Modified:
3 years, 11 months ago
CC:
chromium-reviews, kalyank, ozone-reviews_chromium.org, fwang
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

[ozone/wayland] Implement basic keyboard handling support CL implements basic keyboard support on Ozone's Wayland backend as well as some testing. Modifiers work as follows: when the wayland compositor calls out the client hook notifying of a modifier key state changed, we update XkbKeyboardLayoutEngine::xkb_state_ with it. Based on the original work of Michael Forney <forney@google.com>;, in [1]. [1] https://codereview.chromium.org/1841083003/ BUG=578890 Review-Url: https://codereview.chromium.org/2639053002 Cr-Commit-Position: refs/heads/master@{#446529} Committed: https://chromium.googlesource.com/chromium/src/+/f304472fe1220599ab63ef2a51ad5cfdedca805f

Patch Set 1 #

Total comments: 5

Patch Set 2 : fixed a missing comma #

Total comments: 1

Patch Set 3 : addressed forney's and spang's feedback #

Patch Set 4 : no xkbcommon dependency to begin with #

Patch Set 5 : Implement basic keyboard handling support #

Patch Set 6 : Implement basic keyboard handling support #

Patch Set 7 : Implement basic keyboard handling support #

Total comments: 14

Patch Set 8 : Addressed spang's feedback #

Total comments: 2

Patch Set 9 : addressed moar feedback from forney/spang #

Total comments: 1

Patch Set 10 : removed ozone:events_ozone_evdev dep #

Patch Set 11 : fixed a strange line-wrap made by git cl format #

Patch Set 12 : addressed kpschoedel's review #

Unified diffs Side-by-side diffs Delta from patch set Stats (+482 lines, -7 lines) Patch
M ui/events/ozone/layout/xkb/xkb_keyboard_layout_engine.h View 1 2 3 4 5 6 7 8 9 10 11 2 chunks +8 lines, -6 lines 0 comments Download
M ui/ozone/platform/wayland/BUILD.gn View 1 2 3 4 5 6 7 8 9 10 11 3 chunks +13 lines, -0 lines 0 comments Download
A ui/ozone/platform/wayland/DEPS View 1 2 3 4 5 1 chunk +4 lines, -0 lines 0 comments Download
M ui/ozone/platform/wayland/fake_server.h View 2 chunks +10 lines, -0 lines 0 comments Download
M ui/ozone/platform/wayland/fake_server.cc View 2 chunks +25 lines, -1 line 0 comments Download
M ui/ozone/platform/wayland/ozone_platform_wayland.cc View 1 2 3 4 5 6 7 8 9 10 11 4 chunks +22 lines, -0 lines 0 comments Download
M ui/ozone/platform/wayland/wayland_connection.h View 1 2 3 5 6 7 8 9 10 11 2 chunks +2 lines, -0 lines 0 comments Download
M ui/ozone/platform/wayland/wayland_connection.cc View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +14 lines, -0 lines 0 comments Download
A ui/ozone/platform/wayland/wayland_keyboard.h View 1 2 3 4 5 1 chunk +59 lines, -0 lines 0 comments Download
A ui/ozone/platform/wayland/wayland_keyboard.cc View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +139 lines, -0 lines 0 comments Download
A ui/ozone/platform/wayland/wayland_keyboard_unittest.cc View 1 chunk +77 lines, -0 lines 0 comments Download
M ui/ozone/platform/wayland/wayland_object.h View 2 chunks +7 lines, -0 lines 0 comments Download
M ui/ozone/platform/wayland/wayland_object.cc View 2 chunks +11 lines, -0 lines 0 comments Download
M ui/ozone/platform/wayland/wayland_window.h View 2 chunks +4 lines, -0 lines 0 comments Download
M ui/ozone/platform/wayland/wayland_window.cc View 1 chunk +2 lines, -0 lines 0 comments Download
A ui/ozone/platform/wayland/wayland_xkb_keyboard_layout_engine.h View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +38 lines, -0 lines 0 comments Download
A ui/ozone/platform/wayland/wayland_xkb_keyboard_layout_engine.cc View 1 2 3 4 5 6 7 8 9 10 11 1 chunk +47 lines, -0 lines 0 comments Download

Messages

Total messages: 79 (39 generated)
tonikitoo
On 2017/01/17 21:34:32, commit-bot: I haz the power wrote: > Dry run: Try jobs failed ...
3 years, 11 months ago (2017-01-17 23:00:48 UTC) #7
tonikitoo
PTAL
3 years, 11 months ago (2017-01-17 23:01:15 UTC) #8
Michael Forney
https://codereview.chromium.org/2639053002/diff/1/ui/ozone/platform/wayland/wayland_keyboard.cc File ui/ozone/platform/wayland/wayland_keyboard.cc (right): https://codereview.chromium.org/2639053002/diff/1/ui/ozone/platform/wayland/wayland_keyboard.cc#newcode55 ui/ozone/platform/wayland/wayland_keyboard.cc:55: keyboard->evdev_.SetCurrentLayoutByName(map_str); map_str might not be NULL terminated. This is ...
3 years, 11 months ago (2017-01-17 23:44:56 UTC) #11
tonikitoo
https://codereview.chromium.org/2639053002/diff/1/ui/ozone/platform/wayland/wayland_keyboard.cc File ui/ozone/platform/wayland/wayland_keyboard.cc (right): https://codereview.chromium.org/2639053002/diff/1/ui/ozone/platform/wayland/wayland_keyboard.cc#newcode55 ui/ozone/platform/wayland/wayland_keyboard.cc:55: keyboard->evdev_.SetCurrentLayoutByName(map_str); On 2017/01/17 23:44:56, Michael Forney wrote: > map_str ...
3 years, 11 months ago (2017-01-18 00:02:28 UTC) #12
Michael Forney
https://codereview.chromium.org/2639053002/diff/1/ui/ozone/platform/wayland/wayland_keyboard.cc File ui/ozone/platform/wayland/wayland_keyboard.cc (right): https://codereview.chromium.org/2639053002/diff/1/ui/ozone/platform/wayland/wayland_keyboard.cc#newcode55 ui/ozone/platform/wayland/wayland_keyboard.cc:55: keyboard->evdev_.SetCurrentLayoutByName(map_str); On 2017/01/18 00:02:28, tonikitoo wrote: > On 2017/01/17 ...
3 years, 11 months ago (2017-01-18 00:16:05 UTC) #13
spang
https://codereview.chromium.org/2639053002/diff/20001/ui/ozone/platform/wayland/wayland_keyboard.h File ui/ozone/platform/wayland/wayland_keyboard.h (right): https://codereview.chromium.org/2639053002/diff/20001/ui/ozone/platform/wayland/wayland_keyboard.h#newcode55 ui/ozone/platform/wayland/wayland_keyboard.h:55: KeyboardEvdev evdev_; I don't think using KeyboardEvdev and EventModifiersEvdev ...
3 years, 11 months ago (2017-01-18 00:59:48 UTC) #14
tonikitoo
On 2017/01/18 00:59:48, spang wrote: > https://codereview.chromium.org/2639053002/diff/20001/ui/ozone/platform/wayland/wayland_keyboard.h > File ui/ozone/platform/wayland/wayland_keyboard.h (right): > > https://codereview.chromium.org/2639053002/diff/20001/ui/ozone/platform/wayland/wayland_keyboard.h#newcode55 > ...
3 years, 11 months ago (2017-01-18 05:46:09 UTC) #15
tonikitoo
On 2017/01/18 00:16:05, Michael Forney wrote: > > I think we should change this CL ...
3 years, 11 months ago (2017-01-18 18:34:22 UTC) #16
Michael Forney
On 2017/01/18 18:34:22, tonikitoo wrote: > On 2017/01/18 00:16:05, Michael Forney wrote: > > > ...
3 years, 11 months ago (2017-01-18 21:33:51 UTC) #19
tonikitoo
@forney/spang: BTW, to start with, I decided to not use XKB (and XkbKeyboardLayoutEngine et al) ...
3 years, 11 months ago (2017-01-18 21:38:50 UTC) #20
spang
On 2017/01/18 21:38:50, tonikitoo wrote: > @forney/spang: BTW, to start with, I decided to not ...
3 years, 11 months ago (2017-01-19 16:28:18 UTC) #24
tonikitoo
On 2017/01/17 23:44:56, Michael Forney wrote: > https://codereview.chromium.org/2639053002/diff/1/ui/ozone/platform/wayland/wayland_keyboard.cc > File ui/ozone/platform/wayland/wayland_keyboard.cc (right): > > https://codereview.chromium.org/2639053002/diff/1/ui/ozone/platform/wayland/wayland_keyboard.cc#newcode55 ...
3 years, 11 months ago (2017-01-20 14:43:39 UTC) #25
spang
Kevin should review the keyboard layout bits. https://codereview.chromium.org/2639053002/diff/120001/ui/events/ozone/layout/xkb/xkb_keyboard_layout_engine.h File ui/events/ozone/layout/xkb/xkb_keyboard_layout_engine.h (right): https://codereview.chromium.org/2639053002/diff/120001/ui/events/ozone/layout/xkb/xkb_keyboard_layout_engine.h#newcode129 ui/events/ozone/layout/xkb/xkb_keyboard_layout_engine.h:129: } xkb_mod_indexes_{0, ...
3 years, 11 months ago (2017-01-24 20:41:50 UTC) #35
Michael Forney
https://codereview.chromium.org/2639053002/diff/120001/ui/ozone/platform/wayland/wayland_keyboard.cc File ui/ozone/platform/wayland/wayland_keyboard.cc (right): https://codereview.chromium.org/2639053002/diff/120001/ui/ozone/platform/wayland/wayland_keyboard.cc#newcode100 ui/ozone/platform/wayland/wayland_keyboard.cc:100: // TODO(tonikitoo): handle repeat here. On 2017/01/24 20:41:50, spang ...
3 years, 11 months ago (2017-01-24 20:47:54 UTC) #36
spang
On 2017/01/24 20:47:54, Michael Forney wrote: > https://codereview.chromium.org/2639053002/diff/120001/ui/ozone/platform/wayland/wayland_keyboard.cc > File ui/ozone/platform/wayland/wayland_keyboard.cc (right): > > https://codereview.chromium.org/2639053002/diff/120001/ui/ozone/platform/wayland/wayland_keyboard.cc#newcode100 ...
3 years, 11 months ago (2017-01-24 21:22:13 UTC) #37
Michael Forney
On 2017/01/24 21:22:13, spang wrote: > On 2017/01/24 20:47:54, Michael Forney wrote: > > The ...
3 years, 11 months ago (2017-01-24 21:38:11 UTC) #38
spang
On 2017/01/24 21:38:11, Michael Forney wrote: > On 2017/01/24 21:22:13, spang wrote: > > On ...
3 years, 11 months ago (2017-01-24 21:48:23 UTC) #39
tonikitoo
https://codereview.chromium.org/2639053002/diff/120001/ui/events/ozone/layout/xkb/xkb_keyboard_layout_engine.h File ui/events/ozone/layout/xkb/xkb_keyboard_layout_engine.h (right): https://codereview.chromium.org/2639053002/diff/120001/ui/events/ozone/layout/xkb/xkb_keyboard_layout_engine.h#newcode129 ui/events/ozone/layout/xkb/xkb_keyboard_layout_engine.h:129: } xkb_mod_indexes_{0, 0, 0}; On 2017/01/24 20:41:50, spang wrote: ...
3 years, 11 months ago (2017-01-24 21:51:11 UTC) #40
Michael Forney
https://codereview.chromium.org/2639053002/diff/120001/ui/ozone/platform/wayland/wayland_keyboard.cc File ui/ozone/platform/wayland/wayland_keyboard.cc (right): https://codereview.chromium.org/2639053002/diff/120001/ui/ozone/platform/wayland/wayland_keyboard.cc#newcode58 ui/ozone/platform/wayland/wayland_keyboard.cc:58: ->SetCurrentLayoutFromBuffer(keymap_str, strlen(keymap_str)); On 2017/01/24 21:51:11, tonikitoo wrote: > On ...
3 years, 11 months ago (2017-01-24 22:11:47 UTC) #41
spang
https://codereview.chromium.org/2639053002/diff/120001/ui/ozone/platform/wayland/BUILD.gn File ui/ozone/platform/wayland/BUILD.gn (right): https://codereview.chromium.org/2639053002/diff/120001/ui/ozone/platform/wayland/BUILD.gn#newcode46 ui/ozone/platform/wayland/BUILD.gn:46: "//ui/events/ozone:events_ozone_layout", On 2017/01/24 21:51:11, tonikitoo wrote: > On 2017/01/24 ...
3 years, 11 months ago (2017-01-24 22:24:07 UTC) #42
spang
https://codereview.chromium.org/2639053002/diff/140001/ui/ozone/platform/wayland/wayland_keyboard.cc File ui/ozone/platform/wayland/wayland_keyboard.cc (right): https://codereview.chromium.org/2639053002/diff/140001/ui/ozone/platform/wayland/wayland_keyboard.cc#newcode68 ui/ozone/platform/wayland/wayland_keyboard.cc:68: // TODO(forney): The KeyboardEvdev object should update its state ...
3 years, 11 months ago (2017-01-24 22:31:14 UTC) #43
tonikitoo
On 2017/01/24 22:24:07, spang wrote: > https://codereview.chromium.org/2639053002/diff/120001/ui/ozone/platform/wayland/BUILD.gn > File ui/ozone/platform/wayland/BUILD.gn (right): > > https://codereview.chromium.org/2639053002/diff/120001/ui/ozone/platform/wayland/BUILD.gn#newcode46 > ...
3 years, 11 months ago (2017-01-24 23:16:32 UTC) #44
tonikitoo
https://codereview.chromium.org/2639053002/diff/140001/ui/ozone/platform/wayland/wayland_keyboard.cc File ui/ozone/platform/wayland/wayland_keyboard.cc (right): https://codereview.chromium.org/2639053002/diff/140001/ui/ozone/platform/wayland/wayland_keyboard.cc#newcode68 ui/ozone/platform/wayland/wayland_keyboard.cc:68: // TODO(forney): The KeyboardEvdev object should update its state ...
3 years, 11 months ago (2017-01-24 23:16:48 UTC) #45
spang
https://codereview.chromium.org/2639053002/diff/160001/ui/ozone/platform/wayland/BUILD.gn File ui/ozone/platform/wayland/BUILD.gn (right): https://codereview.chromium.org/2639053002/diff/160001/ui/ozone/platform/wayland/BUILD.gn#newcode48 ui/ozone/platform/wayland/BUILD.gn:48: # TODO(tonikitoo): Remove this dependency for non-ChromeOS builds. I ...
3 years, 11 months ago (2017-01-24 23:27:03 UTC) #48
tonikitoo
On 2017/01/24 23:27:03, spang wrote: > https://codereview.chromium.org/2639053002/diff/160001/ui/ozone/platform/wayland/BUILD.gn > File ui/ozone/platform/wayland/BUILD.gn (right): > > https://codereview.chromium.org/2639053002/diff/160001/ui/ozone/platform/wayland/BUILD.gn#newcode48 > ...
3 years, 11 months ago (2017-01-24 23:43:52 UTC) #49
tonikitoo
On 2017/01/24 23:43:52, tonikitoo wrote: > On 2017/01/24 23:27:03, spang wrote: > > > https://codereview.chromium.org/2639053002/diff/160001/ui/ozone/platform/wayland/BUILD.gn ...
3 years, 11 months ago (2017-01-25 00:05:08 UTC) #50
spang
lgtm kpschoedel do you have any comments about the keyboard layout bits?
3 years, 11 months ago (2017-01-25 18:54:28 UTC) #51
kpschoedel
On 2017/01/25 18:54:28, spang wrote: > lgtm > > kpschoedel do you have any comments ...
3 years, 11 months ago (2017-01-25 19:37:40 UTC) #54
tonikitoo
On 2017/01/25 19:37:40, kpschoedel wrote: > On 2017/01/25 18:54:28, spang wrote: > > lgtm > ...
3 years, 11 months ago (2017-01-25 22:13:56 UTC) #57
tonikitoo
> Something that I was actually looking for is a ::UpdateMotifiersDryRun(...) type > of method. ...
3 years, 11 months ago (2017-01-25 22:24:11 UTC) #58
tonikitoo
kpschoedel: I am trying to address your feedback in comment #54. Before, let me give ...
3 years, 11 months ago (2017-01-26 17:32:01 UTC) #59
kpschoedel
I admit I don't know Wayland in any depth and in particular I don't (yet) ...
3 years, 11 months ago (2017-01-26 18:23:37 UTC) #60
tonikitoo
On 2017/01/26 18:23:37, kpschoedel wrote: > I admit I don't know Wayland in any depth ...
3 years, 11 months ago (2017-01-26 21:04:31 UTC) #63
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2639053002/220001
3 years, 11 months ago (2017-01-26 23:08:22 UTC) #68
tonikitoo
folks, I am sending this to CL. ps12 addresses an agreement with 'kpschoedel' in comment ...
3 years, 11 months ago (2017-01-26 23:16:38 UTC) #69
commit-bot: I haz the power
Try jobs failed on following builders: chromium_presubmit on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/chromium_presubmit/builds/351514)
3 years, 11 months ago (2017-01-26 23:19:24 UTC) #71
tonikitoo
On 2017/01/26 23:19:24, commit-bot: I haz the power wrote: > Try jobs failed on following ...
3 years, 11 months ago (2017-01-26 23:38:15 UTC) #73
sadrul
lgtm
3 years, 11 months ago (2017-01-27 01:15:54 UTC) #74
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2639053002/220001
3 years, 11 months ago (2017-01-27 01:45:48 UTC) #76
commit-bot: I haz the power
3 years, 11 months ago (2017-01-27 01:53:26 UTC) #79
Message was sent while issue was closed.
Committed patchset #12 (id:220001) as
https://chromium.googlesource.com/chromium/src/+/f304472fe1220599ab63ef2a51ad...

Powered by Google App Engine
This is Rietveld 408576698