chromium/remoting/host/linux/keyboard_layout_monitor_utils.h

// Copyright 2022 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#ifndef REMOTING_HOST_LINUX_KEYBOARD_LAYOUT_MONITOR_UTILS_H_
#define REMOTING_HOST_LINUX_KEYBOARD_LAYOUT_MONITOR_UTILS_H_

#include <memory>

#include <gdk/gdk.h>
#include <xkbcommon/xkbcommon.h>

#include "remoting/proto/control.pb.h"

namespace remoting {

struct XkbKeyMapDeleter {};

XkbKeyMapUniquePtr;

const char* DeadKeyToUtf8String(guint keyval);

protocol::LayoutKeyFunction KeyvalToFunction(guint keyval);

}  // namespace remoting

#endif  // REMOTING_HOST_LINUX_KEYBOARD_LAYOUT_MONITOR_UTILS_H_