#ifndef UI_EVENTS_KEYCODES_DOM_DOM_KEYBOARD_LAYOUT_MANAGER_H_
#define UI_EVENTS_KEYCODES_DOM_DOM_KEYBOARD_LAYOUT_MANAGER_H_
#include <map>
#include <memory>
#include <vector>
#include "ui/events/keycodes/dom/dom_keyboard_layout.h"
namespace ui {
class DomKeyboardLayoutManager final {
public:
DomKeyboardLayoutManager();
DomKeyboardLayoutManager(const DomKeyboardLayoutManager&) = delete;
DomKeyboardLayoutManager& operator=(const DomKeyboardLayoutManager&) = delete;
~DomKeyboardLayoutManager();
DomKeyboardLayout* GetLayout(int layout_group_id);
DomKeyboardLayout* GetFirstAsciiCapableLayout();
private:
std::vector<int> layout_order_;
std::map<int, std::unique_ptr<DomKeyboardLayout>> layouts_;
};
}
#endif