1 // Copyright 2013 Intel Corporation. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #ifndef OZONE_WAYLAND_INPUT_KEYBOARD_H_
6 #define OZONE_WAYLAND_INPUT_KEYBOARD_H_
8 #include <xkbcommon/xkbcommon.h>
10 #include "ozone/wayland/display.h"
13 class EventConverterOzoneWayland;
16 namespace ozonewayland {
18 class KeyboardEngineXKB;
20 class WaylandKeyboard {
24 KeyboardEngineXKB* GetBackend() { return backend_;}
26 void OnSeatCapabilities(wl_seat *seat, uint32_t caps);
29 static void OnKeyNotify(void* data,
30 wl_keyboard* input_keyboard,
36 static void OnKeyboardKeymap(void *data,
37 struct wl_keyboard *keyboard,
42 static void OnKeyboardEnter(void* data,
43 wl_keyboard* input_keyboard,
48 static void OnKeyboardLeave(void* data,
49 wl_keyboard* input_keyboard,
53 static void OnKeyModifiers(void *data,
54 wl_keyboard *keyboard,
56 uint32_t mods_depressed,
57 uint32_t mods_latched,
61 wl_keyboard* input_keyboard_;
62 ui::EventConverterOzoneWayland* dispatcher_;
63 KeyboardEngineXKB* backend_;
65 DISALLOW_COPY_AND_ASSIGN(WaylandKeyboard);
68 } // namespace ozonewayland
70 #endif // OZONE_WAYLAND_INPUT_KEYBOARD_H_