#include "remoting/host/linux/keyboard_layout_monitor_wayland.h"
#include <xkbcommon/xkbcommon.h>
#include <memory>
#include "base/functional/callback.h"
#include "base/memory/scoped_refptr.h"
#include "base/memory/weak_ptr.h"
#include "base/notreached.h"
#include "base/strings/utf_string_conversion_utils.h"
#include "base/task/single_thread_task_runner.h"
#include "remoting/host/linux/keyboard_layout_monitor_utils.h"
#include "remoting/host/linux/wayland_manager.h"
#include "remoting/proto/control.pb.h"
#include "ui/events/keycodes/dom/dom_code.h"
#include "ui/events/keycodes/dom/keycode_converter.h"
namespace remoting {
KeyboardLayoutMonitorWayland::KeyboardLayoutMonitorWayland(
base::RepeatingCallback<void(const protocol::KeyboardLayout&)> callback)
: … { … }
KeyboardLayoutMonitorWayland::~KeyboardLayoutMonitorWayland() { … }
void KeyboardLayoutMonitorWayland::Start() { … }
void KeyboardLayoutMonitorWayland::UpdateState() { … }
void KeyboardLayoutMonitorWayland::ProcessKeymaps(
std::unique_ptr<struct xkb_keymap, XkbKeyMapDeleter> keymap) { … }
protocol::KeyboardLayout
KeyboardLayoutMonitorWayland::GenerateProtocolLayoutMessage() { … }
void KeyboardLayoutMonitorWayland::ProcessModifiersAndNotifyCallbacks(
uint32_t group) { … }
}