summaryrefslogtreecommitdiffstats
path: root/dom/events/VirtualKeyCodeList.h
diff options
context:
space:
mode:
Diffstat (limited to 'dom/events/VirtualKeyCodeList.h')
-rw-r--r--dom/events/VirtualKeyCodeList.h245
1 files changed, 245 insertions, 0 deletions
diff --git a/dom/events/VirtualKeyCodeList.h b/dom/events/VirtualKeyCodeList.h
new file mode 100644
index 0000000000..184048d172
--- /dev/null
+++ b/dom/events/VirtualKeyCodeList.h
@@ -0,0 +1,245 @@
+/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
+/* vim: set ts=8 sts=2 et sw=2 tw=80: */
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this file,
+ * You can obtain one at http://mozilla.org/MPL/2.0/. */
+// IWYU pragma: private, include "mozilla/KeyTextEvents.h"
+
+/**
+ * This header file defines all DOM keys which are defined in KeyboardEvent.
+ * You must define NS_DEFINE_VK macro before including this.
+ *
+ * It must have two arguments, (aDOMKeyName, aDOMKeyCode)
+ * aDOMKeyName is a key name in DOM.
+ * aDOMKeyCode is one of mozilla::dom::KeyboardEvent_Binding::DOM_VK_*.
+ *
+ * Optionally, you can define NS_DISALLOW_SAME_KEYCODE.
+ *
+ * If NS_DISALLOW_SAME_KEYCODE is defined, same keyCode won't listed up.
+ * This is useful when you create switch-case statement.
+ */
+
+#define DEFINE_VK_INTERNAL(aKeyName) \
+ NS_DEFINE_VK(VK##aKeyName, \
+ mozilla::dom::KeyboardEvent_Binding::DOM_VK##aKeyName)
+
+// Some keycode may have different name in KeyboardEvent from its key name.
+#define DEFINE_VK_INTERNAL2(aKeyName, aKeyCodeName) \
+ NS_DEFINE_VK(VK##aKeyName, \
+ mozilla::dom::KeyboardEvent_Binding::DOM_VK##aKeyCodeName)
+
+DEFINE_VK_INTERNAL(_CANCEL)
+DEFINE_VK_INTERNAL(_HELP)
+DEFINE_VK_INTERNAL2(_BACK, _BACK_SPACE)
+DEFINE_VK_INTERNAL(_TAB)
+DEFINE_VK_INTERNAL(_CLEAR)
+DEFINE_VK_INTERNAL(_RETURN)
+DEFINE_VK_INTERNAL(_SHIFT)
+DEFINE_VK_INTERNAL(_CONTROL)
+DEFINE_VK_INTERNAL(_ALT)
+DEFINE_VK_INTERNAL(_PAUSE)
+DEFINE_VK_INTERNAL(_CAPS_LOCK)
+#ifdef NS_DISALLOW_SAME_KEYCODE
+DEFINE_VK_INTERNAL2(_KANA_OR_HANGUL, _KANA)
+#else // #ifdef NS_DISALLOW_SAME_KEYCODE
+DEFINE_VK_INTERNAL(_KANA)
+DEFINE_VK_INTERNAL(_HANGUL)
+#endif
+DEFINE_VK_INTERNAL(_EISU)
+DEFINE_VK_INTERNAL(_JUNJA)
+DEFINE_VK_INTERNAL(_FINAL)
+#ifdef NS_DISALLOW_SAME_KEYCODE
+DEFINE_VK_INTERNAL2(_HANJA_OR_KANJI, _HANJA)
+#else // #ifdef NS_DISALLOW_SAME_KEYCODE
+DEFINE_VK_INTERNAL(_HANJA)
+DEFINE_VK_INTERNAL(_KANJI)
+#endif
+DEFINE_VK_INTERNAL(_ESCAPE)
+DEFINE_VK_INTERNAL(_CONVERT)
+DEFINE_VK_INTERNAL(_NONCONVERT)
+DEFINE_VK_INTERNAL(_ACCEPT)
+DEFINE_VK_INTERNAL(_MODECHANGE)
+DEFINE_VK_INTERNAL(_SPACE)
+DEFINE_VK_INTERNAL(_PAGE_UP)
+DEFINE_VK_INTERNAL(_PAGE_DOWN)
+DEFINE_VK_INTERNAL(_END)
+DEFINE_VK_INTERNAL(_HOME)
+DEFINE_VK_INTERNAL(_LEFT)
+DEFINE_VK_INTERNAL(_UP)
+DEFINE_VK_INTERNAL(_RIGHT)
+DEFINE_VK_INTERNAL(_DOWN)
+DEFINE_VK_INTERNAL(_SELECT)
+DEFINE_VK_INTERNAL(_PRINT)
+DEFINE_VK_INTERNAL(_EXECUTE)
+DEFINE_VK_INTERNAL(_PRINTSCREEN)
+DEFINE_VK_INTERNAL(_INSERT)
+DEFINE_VK_INTERNAL(_DELETE)
+
+DEFINE_VK_INTERNAL(_0)
+DEFINE_VK_INTERNAL(_1)
+DEFINE_VK_INTERNAL(_2)
+DEFINE_VK_INTERNAL(_3)
+DEFINE_VK_INTERNAL(_4)
+DEFINE_VK_INTERNAL(_5)
+DEFINE_VK_INTERNAL(_6)
+DEFINE_VK_INTERNAL(_7)
+DEFINE_VK_INTERNAL(_8)
+DEFINE_VK_INTERNAL(_9)
+
+DEFINE_VK_INTERNAL(_COLON)
+DEFINE_VK_INTERNAL(_SEMICOLON)
+DEFINE_VK_INTERNAL(_LESS_THAN)
+DEFINE_VK_INTERNAL(_EQUALS)
+DEFINE_VK_INTERNAL(_GREATER_THAN)
+DEFINE_VK_INTERNAL(_QUESTION_MARK)
+DEFINE_VK_INTERNAL(_AT)
+
+DEFINE_VK_INTERNAL(_A)
+DEFINE_VK_INTERNAL(_B)
+DEFINE_VK_INTERNAL(_C)
+DEFINE_VK_INTERNAL(_D)
+DEFINE_VK_INTERNAL(_E)
+DEFINE_VK_INTERNAL(_F)
+DEFINE_VK_INTERNAL(_G)
+DEFINE_VK_INTERNAL(_H)
+DEFINE_VK_INTERNAL(_I)
+DEFINE_VK_INTERNAL(_J)
+DEFINE_VK_INTERNAL(_K)
+DEFINE_VK_INTERNAL(_L)
+DEFINE_VK_INTERNAL(_M)
+DEFINE_VK_INTERNAL(_N)
+DEFINE_VK_INTERNAL(_O)
+DEFINE_VK_INTERNAL(_P)
+DEFINE_VK_INTERNAL(_Q)
+DEFINE_VK_INTERNAL(_R)
+DEFINE_VK_INTERNAL(_S)
+DEFINE_VK_INTERNAL(_T)
+DEFINE_VK_INTERNAL(_U)
+DEFINE_VK_INTERNAL(_V)
+DEFINE_VK_INTERNAL(_W)
+DEFINE_VK_INTERNAL(_X)
+DEFINE_VK_INTERNAL(_Y)
+DEFINE_VK_INTERNAL(_Z)
+
+DEFINE_VK_INTERNAL(_WIN)
+DEFINE_VK_INTERNAL(_CONTEXT_MENU)
+DEFINE_VK_INTERNAL(_SLEEP)
+
+DEFINE_VK_INTERNAL(_NUMPAD0)
+DEFINE_VK_INTERNAL(_NUMPAD1)
+DEFINE_VK_INTERNAL(_NUMPAD2)
+DEFINE_VK_INTERNAL(_NUMPAD3)
+DEFINE_VK_INTERNAL(_NUMPAD4)
+DEFINE_VK_INTERNAL(_NUMPAD5)
+DEFINE_VK_INTERNAL(_NUMPAD6)
+DEFINE_VK_INTERNAL(_NUMPAD7)
+DEFINE_VK_INTERNAL(_NUMPAD8)
+DEFINE_VK_INTERNAL(_NUMPAD9)
+DEFINE_VK_INTERNAL(_MULTIPLY)
+DEFINE_VK_INTERNAL(_ADD)
+DEFINE_VK_INTERNAL(_SEPARATOR)
+DEFINE_VK_INTERNAL(_SUBTRACT)
+DEFINE_VK_INTERNAL(_DECIMAL)
+DEFINE_VK_INTERNAL(_DIVIDE)
+
+DEFINE_VK_INTERNAL(_F1)
+DEFINE_VK_INTERNAL(_F2)
+DEFINE_VK_INTERNAL(_F3)
+DEFINE_VK_INTERNAL(_F4)
+DEFINE_VK_INTERNAL(_F5)
+DEFINE_VK_INTERNAL(_F6)
+DEFINE_VK_INTERNAL(_F7)
+DEFINE_VK_INTERNAL(_F8)
+DEFINE_VK_INTERNAL(_F9)
+DEFINE_VK_INTERNAL(_F10)
+DEFINE_VK_INTERNAL(_F11)
+DEFINE_VK_INTERNAL(_F12)
+DEFINE_VK_INTERNAL(_F13)
+DEFINE_VK_INTERNAL(_F14)
+DEFINE_VK_INTERNAL(_F15)
+DEFINE_VK_INTERNAL(_F16)
+DEFINE_VK_INTERNAL(_F17)
+DEFINE_VK_INTERNAL(_F18)
+DEFINE_VK_INTERNAL(_F19)
+DEFINE_VK_INTERNAL(_F20)
+DEFINE_VK_INTERNAL(_F21)
+DEFINE_VK_INTERNAL(_F22)
+DEFINE_VK_INTERNAL(_F23)
+DEFINE_VK_INTERNAL(_F24)
+
+DEFINE_VK_INTERNAL(_NUM_LOCK)
+DEFINE_VK_INTERNAL(_SCROLL_LOCK)
+
+DEFINE_VK_INTERNAL(_WIN_OEM_FJ_JISHO)
+DEFINE_VK_INTERNAL(_WIN_OEM_FJ_MASSHOU)
+DEFINE_VK_INTERNAL(_WIN_OEM_FJ_TOUROKU)
+DEFINE_VK_INTERNAL(_WIN_OEM_FJ_LOYA)
+DEFINE_VK_INTERNAL(_WIN_OEM_FJ_ROYA)
+
+DEFINE_VK_INTERNAL(_CIRCUMFLEX)
+DEFINE_VK_INTERNAL(_EXCLAMATION)
+DEFINE_VK_INTERNAL(_DOUBLE_QUOTE)
+DEFINE_VK_INTERNAL(_HASH)
+DEFINE_VK_INTERNAL(_DOLLAR)
+DEFINE_VK_INTERNAL(_PERCENT)
+DEFINE_VK_INTERNAL(_AMPERSAND)
+DEFINE_VK_INTERNAL(_UNDERSCORE)
+DEFINE_VK_INTERNAL(_OPEN_PAREN)
+DEFINE_VK_INTERNAL(_CLOSE_PAREN)
+DEFINE_VK_INTERNAL(_ASTERISK)
+DEFINE_VK_INTERNAL(_PLUS)
+DEFINE_VK_INTERNAL(_PIPE)
+DEFINE_VK_INTERNAL(_HYPHEN_MINUS)
+
+DEFINE_VK_INTERNAL(_OPEN_CURLY_BRACKET)
+DEFINE_VK_INTERNAL(_CLOSE_CURLY_BRACKET)
+
+DEFINE_VK_INTERNAL(_TILDE)
+
+DEFINE_VK_INTERNAL(_VOLUME_MUTE)
+DEFINE_VK_INTERNAL(_VOLUME_DOWN)
+DEFINE_VK_INTERNAL(_VOLUME_UP)
+
+DEFINE_VK_INTERNAL(_COMMA)
+DEFINE_VK_INTERNAL(_PERIOD)
+DEFINE_VK_INTERNAL(_SLASH)
+DEFINE_VK_INTERNAL(_BACK_QUOTE)
+DEFINE_VK_INTERNAL(_OPEN_BRACKET)
+DEFINE_VK_INTERNAL(_BACK_SLASH)
+DEFINE_VK_INTERNAL(_CLOSE_BRACKET)
+DEFINE_VK_INTERNAL(_QUOTE)
+
+DEFINE_VK_INTERNAL(_META)
+DEFINE_VK_INTERNAL(_ALTGR)
+
+DEFINE_VK_INTERNAL(_WIN_ICO_HELP)
+DEFINE_VK_INTERNAL(_WIN_ICO_00)
+
+DEFINE_VK_INTERNAL(_PROCESSKEY)
+
+DEFINE_VK_INTERNAL(_WIN_ICO_CLEAR)
+DEFINE_VK_INTERNAL(_WIN_OEM_RESET)
+DEFINE_VK_INTERNAL(_WIN_OEM_JUMP)
+DEFINE_VK_INTERNAL(_WIN_OEM_PA1)
+DEFINE_VK_INTERNAL(_WIN_OEM_PA2)
+DEFINE_VK_INTERNAL(_WIN_OEM_PA3)
+DEFINE_VK_INTERNAL(_WIN_OEM_WSCTRL)
+DEFINE_VK_INTERNAL(_WIN_OEM_CUSEL)
+DEFINE_VK_INTERNAL(_WIN_OEM_ATTN)
+DEFINE_VK_INTERNAL(_WIN_OEM_FINISH)
+DEFINE_VK_INTERNAL(_WIN_OEM_COPY)
+DEFINE_VK_INTERNAL(_WIN_OEM_AUTO)
+DEFINE_VK_INTERNAL(_WIN_OEM_ENLW)
+DEFINE_VK_INTERNAL(_WIN_OEM_BACKTAB)
+
+DEFINE_VK_INTERNAL(_ATTN)
+DEFINE_VK_INTERNAL(_CRSEL)
+DEFINE_VK_INTERNAL(_EXSEL)
+DEFINE_VK_INTERNAL(_EREOF)
+DEFINE_VK_INTERNAL(_PLAY)
+DEFINE_VK_INTERNAL(_ZOOM)
+DEFINE_VK_INTERNAL(_PA1)
+DEFINE_VK_INTERNAL(_WIN_OEM_CLEAR)
+
+#undef DEFINE_VK_INTERNAL
+#undef DEFINE_VK_INTERNAL2