commit | 854037f1560c5d3a3724ba6bdd0779323a4e21d3 | [log] [tgz] |
---|---|---|
author | Antonio Gomes <tonikitoo@igalia.com> | Mon Dec 18 21:17:58 2017 |
committer | Commit Bot <commit-bot@chromium.org> | Mon Dec 18 21:17:58 2017 |
tree | 41a820445e73fd9d048f8655a213c19bbe2cdad3 | |
parent | 00474d2593912138355ea0e239872e1ee557463f [diff] |
Revert "[ozone/wayland] use KeyboardEvDev for keyboard handling" This reverts commit 05e053f3aece950d379f1fe874c1cf37d089ee80. Reason for revert: It was decided in post-landed discussion that KeyboardEvDev should not be used in Ozone/Wayland code. Read https://crrev.com/c/822871 for more details. Original change's description: > [ozone/wayland] use KeyboardEvDev for keyboard handling > > In WaylandKeyboard::Key's body, we deliberately duplicate some of the > logic in KeyboardEvdev::DispatchKey. The idea was to use the bits of > KeyboardEvDev needed for proper keyboard input handling. > It turns out that features like key repeat and specific cases involving > modifiers would need more duplication to get working. > > Instead of continuing to duplicate stable and existing logic, this CL > adopts the use of KeyboardEvDev from WaylandKeyboard, fixing these > issues and being able to do some code clean ups (follow ups). > > The CL also changes the KeyboardLayoutManager instantiation order in > OzonePlatformWayland::InitializeUI, so that it happens prior to > WaylandConnection instantiation. > Reason: once WaylandConnection creates WaylandKeyboard and (implicitly) > KeyboardEvDev, the later needs the KeyboardLayoutEngine properly set. > > CL also reset modifiers upon ::Leave, for when alt+tab is supported to > change window focus (external window mode), where modifiers need to be > updated accordingly. > > Last but not least, WaylandKeyboard::RepeatInfo sends delay and rate > information that is usefull for KeyboardEvdev. Thus, desired repeating > settings can be set. What is more, wayland documentation says if > rate is send as 0, then auto repeat should be turned off. > > BUG=578890 > > Change-Id: I8ca392da7b10ba6c62f703e1e4b571c1e3d310a1 > Reviewed-on: https://chromium-review.googlesource.com/822871 > Commit-Queue: Antonio Gomes <tonikitoo@igalia.com> > Reviewed-by: Robert Kroeger <rjkroege@chromium.org> > Cr-Commit-Position: refs/heads/master@{#523750} TBR=rjkroege@chromium.org,spang@chromium.org # Not skipping CQ checks because original CL landed > 1 day ago. Change-Id: Ifcd631c92b1e837b8d428c382b2f9cb4e2292463 Reviewed-on: https://chromium-review.googlesource.com/832886 Commit-Queue: Antonio Gomes <tonikitoo@igalia.com> Reviewed-by: Antonio Gomes <tonikitoo@igalia.com> Cr-Commit-Position: refs/heads/master@{#524800}
Chromium is an open-source browser project that aims to build a safer, faster, and more stable way for all users to experience the web.
The project's web site is https://www.chromium.org.
Documentation in the source is rooted in docs/README.md.
Learn how to Get Around the Chromium Source Code Directory Structure .