// Copyright 2015 The Chromium Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef UI_EVENTS_KEYCODES_DOM_US_LAYOUT_DATA_H_ #define UI_EVENTS_KEYCODES_DOM_US_LAYOUT_DATA_H_ #include <array> #include "build/build_config.h" #include "build/chromeos_buildflags.h" namespace ui { // This table maps a DomCode to a printable character, assuming US layout. // It is used by DomCodeToUsLayoutDomKey(), which provides a fallback // interpretation when there is no other way to map a physical key. const struct PrintableCodeEntry { … } kPrintableCodeMap[] = …; // This table maps a DomCode to a DomKey, assuming US keyboard layout. // It is used by DomCodeToUsLayoutDomKey(), which provides a fallback // interpretation when there is no other way to map a physical key. const struct NonPrintableCodeEntry { … } kNonPrintableCodeMap[] = …; // This table maps a DomKey to a non-located KeyboardCode. const struct DomKeyToKeyboardCodeEntry { … } kDomKeyToKeyboardCodeMap[] = …; // This table, used by DomCodeToUsLayoutKeyboardCode() and // UsLayoutKeyboardCodeToDomCode(), maps between DOM Level 3 .code values // and legacy Windows-based VKEY values, where the VKEYs are interpreted // positionally (located) following a base US English layout. const struct DomCodeToKeyboardCodeEntry { … } kDomCodeToKeyboardCodeMap[] = …; // This table, used by UsLayoutKeyboardCodeToDomCode(), maps legacy // Windows-based VKEY values that are not part of kDomCodeToKeyboardCodeMap[] // to suitable DomCode values, where practical. const DomCodeToKeyboardCodeEntry kFallbackKeyboardCodeToDomCodeMap[] = …; } // namespace ui #endif // UI_EVENTS_KEYCODES_DOM_US_LAYOUT_DATA_H_