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}
4 files changed