Bug 630810 part.2 Use nsVKList.h for defining somethig for keycode r=roc

This commit is contained in:
Masayuki Nakano 2012-05-17 16:04:16 +09:00
Родитель 39c05ac55b
Коммит 2c05a52250
4 изменённых файлов: 199 добавлений и 283 удалений

Просмотреть файл

@ -54,6 +54,7 @@ EXPORTS = \
nsEventDispatcher.h \
nsEventStates.h \
nsEventNameList.h \
nsVKList.h \
$(NULL)
XPIDLSRCS = \

Просмотреть файл

@ -0,0 +1,189 @@
/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
/* vim: set ts=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/. */
/**
* This header file defines all DOM keys which are defined in nsIDOMKeyEvent.
* 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 nsIDOMKeyEvent::DOM_VK_*.
*/
#define DEFINE_VK_INTERNAL(aKeyName) \
NS_DEFINE_VK(VK##aKeyName, nsIDOMKeyEvent::DOM_VK##aKeyName)
// Some keycode may have different name in nsIDOMKeyEvent from its key name.
#define DEFINE_VK_INTERNAL2(aKeyName, aKeyCodeName) \
NS_DEFINE_VK(VK##aKeyName, nsIDOMKeyEvent::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(_ENTER),
DEFINE_VK_INTERNAL(_SHIFT),
DEFINE_VK_INTERNAL(_CONTROL),
DEFINE_VK_INTERNAL(_ALT),
DEFINE_VK_INTERNAL(_PAUSE),
DEFINE_VK_INTERNAL(_CAPS_LOCK),
DEFINE_VK_INTERNAL(_KANA),
DEFINE_VK_INTERNAL(_HANGUL),
DEFINE_VK_INTERNAL(_JUNJA),
DEFINE_VK_INTERNAL(_FINAL),
DEFINE_VK_INTERNAL(_HANJA),
DEFINE_VK_INTERNAL(_KANJI),
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(_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(_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)
#undef DEFINE_VK_INTERNAL
#undef DEFINE_VK_INTERNAL2

Просмотреть файл

@ -647,126 +647,10 @@ struct keyCodeData {
// XXX: be sure to check this periodically for new symbol additions!
static const keyCodeData gKeyCodes[] = {
#define KEYCODE_ENTRY(str) {#str, sizeof(#str) - 1, nsIDOMKeyEvent::DOM_##str}
#define KEYCODE_ENTRY2(str, code) {str, sizeof(str) - 1, code}
KEYCODE_ENTRY(VK_CANCEL),
KEYCODE_ENTRY2("VK_BACK", nsIDOMKeyEvent::DOM_VK_BACK_SPACE),
KEYCODE_ENTRY(VK_TAB),
KEYCODE_ENTRY(VK_CLEAR),
KEYCODE_ENTRY(VK_RETURN),
KEYCODE_ENTRY(VK_ENTER),
KEYCODE_ENTRY(VK_SHIFT),
KEYCODE_ENTRY(VK_CONTROL),
KEYCODE_ENTRY(VK_ALT),
KEYCODE_ENTRY(VK_PAUSE),
KEYCODE_ENTRY(VK_CAPS_LOCK),
KEYCODE_ENTRY(VK_ESCAPE),
KEYCODE_ENTRY(VK_SPACE),
KEYCODE_ENTRY(VK_PAGE_UP),
KEYCODE_ENTRY(VK_PAGE_DOWN),
KEYCODE_ENTRY(VK_END),
KEYCODE_ENTRY(VK_HOME),
KEYCODE_ENTRY(VK_LEFT),
KEYCODE_ENTRY(VK_UP),
KEYCODE_ENTRY(VK_RIGHT),
KEYCODE_ENTRY(VK_DOWN),
KEYCODE_ENTRY(VK_PRINTSCREEN),
KEYCODE_ENTRY(VK_INSERT),
KEYCODE_ENTRY(VK_HELP),
KEYCODE_ENTRY(VK_DELETE),
KEYCODE_ENTRY(VK_0),
KEYCODE_ENTRY(VK_1),
KEYCODE_ENTRY(VK_2),
KEYCODE_ENTRY(VK_3),
KEYCODE_ENTRY(VK_4),
KEYCODE_ENTRY(VK_5),
KEYCODE_ENTRY(VK_6),
KEYCODE_ENTRY(VK_7),
KEYCODE_ENTRY(VK_8),
KEYCODE_ENTRY(VK_9),
KEYCODE_ENTRY(VK_SEMICOLON),
KEYCODE_ENTRY(VK_EQUALS),
KEYCODE_ENTRY(VK_A),
KEYCODE_ENTRY(VK_B),
KEYCODE_ENTRY(VK_C),
KEYCODE_ENTRY(VK_D),
KEYCODE_ENTRY(VK_E),
KEYCODE_ENTRY(VK_F),
KEYCODE_ENTRY(VK_G),
KEYCODE_ENTRY(VK_H),
KEYCODE_ENTRY(VK_I),
KEYCODE_ENTRY(VK_J),
KEYCODE_ENTRY(VK_K),
KEYCODE_ENTRY(VK_L),
KEYCODE_ENTRY(VK_M),
KEYCODE_ENTRY(VK_N),
KEYCODE_ENTRY(VK_O),
KEYCODE_ENTRY(VK_P),
KEYCODE_ENTRY(VK_Q),
KEYCODE_ENTRY(VK_R),
KEYCODE_ENTRY(VK_S),
KEYCODE_ENTRY(VK_T),
KEYCODE_ENTRY(VK_U),
KEYCODE_ENTRY(VK_V),
KEYCODE_ENTRY(VK_W),
KEYCODE_ENTRY(VK_X),
KEYCODE_ENTRY(VK_Y),
KEYCODE_ENTRY(VK_Z),
KEYCODE_ENTRY(VK_NUMPAD0),
KEYCODE_ENTRY(VK_NUMPAD1),
KEYCODE_ENTRY(VK_NUMPAD2),
KEYCODE_ENTRY(VK_NUMPAD3),
KEYCODE_ENTRY(VK_NUMPAD4),
KEYCODE_ENTRY(VK_NUMPAD5),
KEYCODE_ENTRY(VK_NUMPAD6),
KEYCODE_ENTRY(VK_NUMPAD7),
KEYCODE_ENTRY(VK_NUMPAD8),
KEYCODE_ENTRY(VK_NUMPAD9),
KEYCODE_ENTRY(VK_MULTIPLY),
KEYCODE_ENTRY(VK_ADD),
KEYCODE_ENTRY(VK_SEPARATOR),
KEYCODE_ENTRY(VK_SUBTRACT),
KEYCODE_ENTRY(VK_DECIMAL),
KEYCODE_ENTRY(VK_DIVIDE),
KEYCODE_ENTRY(VK_F1),
KEYCODE_ENTRY(VK_F2),
KEYCODE_ENTRY(VK_F3),
KEYCODE_ENTRY(VK_F4),
KEYCODE_ENTRY(VK_F5),
KEYCODE_ENTRY(VK_F6),
KEYCODE_ENTRY(VK_F7),
KEYCODE_ENTRY(VK_F8),
KEYCODE_ENTRY(VK_F9),
KEYCODE_ENTRY(VK_F10),
KEYCODE_ENTRY(VK_F11),
KEYCODE_ENTRY(VK_F12),
KEYCODE_ENTRY(VK_F13),
KEYCODE_ENTRY(VK_F14),
KEYCODE_ENTRY(VK_F15),
KEYCODE_ENTRY(VK_F16),
KEYCODE_ENTRY(VK_F17),
KEYCODE_ENTRY(VK_F18),
KEYCODE_ENTRY(VK_F19),
KEYCODE_ENTRY(VK_F20),
KEYCODE_ENTRY(VK_F21),
KEYCODE_ENTRY(VK_F22),
KEYCODE_ENTRY(VK_F23),
KEYCODE_ENTRY(VK_F24),
KEYCODE_ENTRY(VK_NUM_LOCK),
KEYCODE_ENTRY(VK_SCROLL_LOCK),
KEYCODE_ENTRY(VK_COMMA),
KEYCODE_ENTRY(VK_PERIOD),
KEYCODE_ENTRY(VK_SLASH),
KEYCODE_ENTRY(VK_BACK_QUOTE),
KEYCODE_ENTRY(VK_OPEN_BRACKET),
KEYCODE_ENTRY(VK_BACK_SLASH),
KEYCODE_ENTRY(VK_CLOSE_BRACKET),
KEYCODE_ENTRY(VK_QUOTE)
#undef KEYCODE_ENTRY
#undef KEYCODE_ENTRY2
#define NS_DEFINE_VK(aDOMKeyName, aDOMKeyCode) \
{ #aDOMKeyName, sizeof(#aDOMKeyName) - 1, aDOMKeyCode }
#include "nsVKList.h"
#undef NS_DEFINE_VK
};
PRInt32 nsXBLPrototypeHandler::GetMatchingKeyCode(const nsAString& aKeyName)

Просмотреть файл

@ -1932,169 +1932,11 @@ enum nsDragDropEventStatus {
* in favor of the DOM ones, but at least this way they'll be in sync.
*/
#define NS_VK_CANCEL nsIDOMKeyEvent::DOM_VK_CANCEL
#define NS_VK_HELP nsIDOMKeyEvent::DOM_VK_HELP
#define NS_VK_BACK nsIDOMKeyEvent::DOM_VK_BACK_SPACE
#define NS_VK_TAB nsIDOMKeyEvent::DOM_VK_TAB
#define NS_VK_CLEAR nsIDOMKeyEvent::DOM_VK_CLEAR
#define NS_VK_RETURN nsIDOMKeyEvent::DOM_VK_RETURN
#define NS_VK_ENTER nsIDOMKeyEvent::DOM_VK_ENTER
#define NS_VK_SHIFT nsIDOMKeyEvent::DOM_VK_SHIFT
#define NS_VK_CONTROL nsIDOMKeyEvent::DOM_VK_CONTROL
#define NS_VK_ALT nsIDOMKeyEvent::DOM_VK_ALT
#define NS_VK_PAUSE nsIDOMKeyEvent::DOM_VK_PAUSE
#define NS_VK_CAPS_LOCK nsIDOMKeyEvent::DOM_VK_CAPS_LOCK
#define NS_VK_KANA nsIDOMKeyEvent::DOM_VK_KANA
#define NS_VK_HANGUL nsIDOMKeyEvent::DOM_VK_HANGUL
#define NS_VK_JUNJA nsIDOMKeyEvent::DOM_VK_JUNJA
#define NS_VK_FINAL nsIDOMKeyEvent::DOM_VK_FINAL
#define NS_VK_HANJA nsIDOMKeyEvent::DOM_VK_HANJA
#define NS_VK_KANJI nsIDOMKeyEvent::DOM_VK_KANJI
#define NS_VK_ESCAPE nsIDOMKeyEvent::DOM_VK_ESCAPE
#define NS_VK_CONVERT nsIDOMKeyEvent::DOM_VK_CONVERT
#define NS_VK_NONCONVERT nsIDOMKeyEvent::DOM_VK_NONCONVERT
#define NS_VK_ACCEPT nsIDOMKeyEvent::DOM_VK_ACCEPT
#define NS_VK_MODECHANGE nsIDOMKeyEvent::DOM_VK_MODECHANGE
#define NS_VK_SPACE nsIDOMKeyEvent::DOM_VK_SPACE
#define NS_VK_PAGE_UP nsIDOMKeyEvent::DOM_VK_PAGE_UP
#define NS_VK_PAGE_DOWN nsIDOMKeyEvent::DOM_VK_PAGE_DOWN
#define NS_VK_END nsIDOMKeyEvent::DOM_VK_END
#define NS_VK_HOME nsIDOMKeyEvent::DOM_VK_HOME
#define NS_VK_LEFT nsIDOMKeyEvent::DOM_VK_LEFT
#define NS_VK_UP nsIDOMKeyEvent::DOM_VK_UP
#define NS_VK_RIGHT nsIDOMKeyEvent::DOM_VK_RIGHT
#define NS_VK_DOWN nsIDOMKeyEvent::DOM_VK_DOWN
#define NS_VK_SELECT nsIDOMKeyEvent::DOM_VK_SELECT
#define NS_VK_PRINT nsIDOMKeyEvent::DOM_VK_PRINT
#define NS_VK_EXECUTE nsIDOMKeyEvent::DOM_VK_EXECUTE
#define NS_VK_PRINTSCREEN nsIDOMKeyEvent::DOM_VK_PRINTSCREEN
#define NS_VK_INSERT nsIDOMKeyEvent::DOM_VK_INSERT
#define NS_VK_DELETE nsIDOMKeyEvent::DOM_VK_DELETE
// NS_VK_0 - NS_VK_9 match their ascii values
#define NS_VK_0 nsIDOMKeyEvent::DOM_VK_0
#define NS_VK_1 nsIDOMKeyEvent::DOM_VK_1
#define NS_VK_2 nsIDOMKeyEvent::DOM_VK_2
#define NS_VK_3 nsIDOMKeyEvent::DOM_VK_3
#define NS_VK_4 nsIDOMKeyEvent::DOM_VK_4
#define NS_VK_5 nsIDOMKeyEvent::DOM_VK_5
#define NS_VK_6 nsIDOMKeyEvent::DOM_VK_6
#define NS_VK_7 nsIDOMKeyEvent::DOM_VK_7
#define NS_VK_8 nsIDOMKeyEvent::DOM_VK_8
#define NS_VK_9 nsIDOMKeyEvent::DOM_VK_9
#define NS_VK_COLON nsIDOMKeyEvent::DOM_VK_COLON
#define NS_VK_SEMICOLON nsIDOMKeyEvent::DOM_VK_SEMICOLON
#define NS_VK_LESS_THAN nsIDOMKeyEvent::DOM_VK_LESS_THAN
#define NS_VK_EQUALS nsIDOMKeyEvent::DOM_VK_EQUALS
#define NS_VK_GREATER_THAN nsIDOMKeyEvent::DOM_VK_GREATER_THAN
#define NS_VK_QUESTION_MARK nsIDOMKeyEvent::DOM_VK_QUESTION_MARK
#define NS_VK_AT nsIDOMKeyEvent::DOM_VK_AT
// NS_VK_A - NS_VK_Z match their ascii values
#define NS_VK_A nsIDOMKeyEvent::DOM_VK_A
#define NS_VK_B nsIDOMKeyEvent::DOM_VK_B
#define NS_VK_C nsIDOMKeyEvent::DOM_VK_C
#define NS_VK_D nsIDOMKeyEvent::DOM_VK_D
#define NS_VK_E nsIDOMKeyEvent::DOM_VK_E
#define NS_VK_F nsIDOMKeyEvent::DOM_VK_F
#define NS_VK_G nsIDOMKeyEvent::DOM_VK_G
#define NS_VK_H nsIDOMKeyEvent::DOM_VK_H
#define NS_VK_I nsIDOMKeyEvent::DOM_VK_I
#define NS_VK_J nsIDOMKeyEvent::DOM_VK_J
#define NS_VK_K nsIDOMKeyEvent::DOM_VK_K
#define NS_VK_L nsIDOMKeyEvent::DOM_VK_L
#define NS_VK_M nsIDOMKeyEvent::DOM_VK_M
#define NS_VK_N nsIDOMKeyEvent::DOM_VK_N
#define NS_VK_O nsIDOMKeyEvent::DOM_VK_O
#define NS_VK_P nsIDOMKeyEvent::DOM_VK_P
#define NS_VK_Q nsIDOMKeyEvent::DOM_VK_Q
#define NS_VK_R nsIDOMKeyEvent::DOM_VK_R
#define NS_VK_S nsIDOMKeyEvent::DOM_VK_S
#define NS_VK_T nsIDOMKeyEvent::DOM_VK_T
#define NS_VK_U nsIDOMKeyEvent::DOM_VK_U
#define NS_VK_V nsIDOMKeyEvent::DOM_VK_V
#define NS_VK_W nsIDOMKeyEvent::DOM_VK_W
#define NS_VK_X nsIDOMKeyEvent::DOM_VK_X
#define NS_VK_Y nsIDOMKeyEvent::DOM_VK_Y
#define NS_VK_Z nsIDOMKeyEvent::DOM_VK_Z
#define NS_VK_WIN nsIDOMKeyEvent::DOM_VK_WIN
#define NS_VK_CONTEXT_MENU nsIDOMKeyEvent::DOM_VK_CONTEXT_MENU
#define NS_VK_SLEEP nsIDOMKeyEvent::DOM_VK_SLEEP
#define NS_VK_NUMPAD0 nsIDOMKeyEvent::DOM_VK_NUMPAD0
#define NS_VK_NUMPAD1 nsIDOMKeyEvent::DOM_VK_NUMPAD1
#define NS_VK_NUMPAD2 nsIDOMKeyEvent::DOM_VK_NUMPAD2
#define NS_VK_NUMPAD3 nsIDOMKeyEvent::DOM_VK_NUMPAD3
#define NS_VK_NUMPAD4 nsIDOMKeyEvent::DOM_VK_NUMPAD4
#define NS_VK_NUMPAD5 nsIDOMKeyEvent::DOM_VK_NUMPAD5
#define NS_VK_NUMPAD6 nsIDOMKeyEvent::DOM_VK_NUMPAD6
#define NS_VK_NUMPAD7 nsIDOMKeyEvent::DOM_VK_NUMPAD7
#define NS_VK_NUMPAD8 nsIDOMKeyEvent::DOM_VK_NUMPAD8
#define NS_VK_NUMPAD9 nsIDOMKeyEvent::DOM_VK_NUMPAD9
#define NS_VK_MULTIPLY nsIDOMKeyEvent::DOM_VK_MULTIPLY
#define NS_VK_ADD nsIDOMKeyEvent::DOM_VK_ADD
#define NS_VK_SEPARATOR nsIDOMKeyEvent::DOM_VK_SEPARATOR
#define NS_VK_SUBTRACT nsIDOMKeyEvent::DOM_VK_SUBTRACT
#define NS_VK_DECIMAL nsIDOMKeyEvent::DOM_VK_DECIMAL
#define NS_VK_DIVIDE nsIDOMKeyEvent::DOM_VK_DIVIDE
#define NS_VK_F1 nsIDOMKeyEvent::DOM_VK_F1
#define NS_VK_F2 nsIDOMKeyEvent::DOM_VK_F2
#define NS_VK_F3 nsIDOMKeyEvent::DOM_VK_F3
#define NS_VK_F4 nsIDOMKeyEvent::DOM_VK_F4
#define NS_VK_F5 nsIDOMKeyEvent::DOM_VK_F5
#define NS_VK_F6 nsIDOMKeyEvent::DOM_VK_F6
#define NS_VK_F7 nsIDOMKeyEvent::DOM_VK_F7
#define NS_VK_F8 nsIDOMKeyEvent::DOM_VK_F8
#define NS_VK_F9 nsIDOMKeyEvent::DOM_VK_F9
#define NS_VK_F10 nsIDOMKeyEvent::DOM_VK_F10
#define NS_VK_F11 nsIDOMKeyEvent::DOM_VK_F11
#define NS_VK_F12 nsIDOMKeyEvent::DOM_VK_F12
#define NS_VK_F13 nsIDOMKeyEvent::DOM_VK_F13
#define NS_VK_F14 nsIDOMKeyEvent::DOM_VK_F14
#define NS_VK_F15 nsIDOMKeyEvent::DOM_VK_F15
#define NS_VK_F16 nsIDOMKeyEvent::DOM_VK_F16
#define NS_VK_F17 nsIDOMKeyEvent::DOM_VK_F17
#define NS_VK_F18 nsIDOMKeyEvent::DOM_VK_F18
#define NS_VK_F19 nsIDOMKeyEvent::DOM_VK_F19
#define NS_VK_F20 nsIDOMKeyEvent::DOM_VK_F20
#define NS_VK_F21 nsIDOMKeyEvent::DOM_VK_F21
#define NS_VK_F22 nsIDOMKeyEvent::DOM_VK_F22
#define NS_VK_F23 nsIDOMKeyEvent::DOM_VK_F23
#define NS_VK_F24 nsIDOMKeyEvent::DOM_VK_F24
#define NS_VK_NUM_LOCK nsIDOMKeyEvent::DOM_VK_NUM_LOCK
#define NS_VK_SCROLL_LOCK nsIDOMKeyEvent::DOM_VK_SCROLL_LOCK
#define NS_VK_CIRCUMFLEX nsIDOMKeyEvent::DOM_VK_CIRCUMFLEX
#define NS_VK_EXCLAMATION nsIDOMKeyEvent::DOM_VK_EXCLAMATION
#define NS_VK_DOUBLE_QUOTE nsIDOMKeyEvent::DOM_VK_DOUBLE_QUOTE
#define NS_VK_HASH nsIDOMKeyEvent::DOM_VK_HASH
#define NS_VK_DOLLAR nsIDOMKeyEvent::DOM_VK_DOLLAR
#define NS_VK_PERCENT nsIDOMKeyEvent::DOM_VK_PERCENT
#define NS_VK_AMPERSAND nsIDOMKeyEvent::DOM_VK_AMPERSAND
#define NS_VK_UNDERSCORE nsIDOMKeyEvent::DOM_VK_UNDERSCORE
#define NS_VK_OPEN_PAREN nsIDOMKeyEvent::DOM_VK_OPEN_PAREN
#define NS_VK_CLOSE_PAREN nsIDOMKeyEvent::DOM_VK_CLOSE_PAREN
#define NS_VK_ASTERISK nsIDOMKeyEvent::DOM_VK_ASTERISK
#define NS_VK_PLUS nsIDOMKeyEvent::DOM_VK_PLUS
#define NS_VK_PIPE nsIDOMKeyEvent::DOM_VK_PIPE
#define NS_VK_HYPHEN_MINUS nsIDOMKeyEvent::DOM_VK_HYPHEN_MINUS
#define NS_VK_OPEN_CURLY_BRACKET nsIDOMKeyEvent::DOM_VK_OPEN_CURLY_BRACKET
#define NS_VK_CLOSE_CURLY_BRACKET nsIDOMKeyEvent::DOM_VK_CLOSE_CURLY_BRACKET
#define NS_VK_TILDE nsIDOMKeyEvent::DOM_VK_TILDE
#define NS_VK_COMMA nsIDOMKeyEvent::DOM_VK_COMMA
#define NS_VK_PERIOD nsIDOMKeyEvent::DOM_VK_PERIOD
#define NS_VK_SLASH nsIDOMKeyEvent::DOM_VK_SLASH
#define NS_VK_BACK_QUOTE nsIDOMKeyEvent::DOM_VK_BACK_QUOTE
#define NS_VK_OPEN_BRACKET nsIDOMKeyEvent::DOM_VK_OPEN_BRACKET
#define NS_VK_BACK_SLASH nsIDOMKeyEvent::DOM_VK_BACK_SLASH
#define NS_VK_CLOSE_BRACKET nsIDOMKeyEvent::DOM_VK_CLOSE_BRACKET
#define NS_VK_QUOTE nsIDOMKeyEvent::DOM_VK_QUOTE
#define NS_VK_META nsIDOMKeyEvent::DOM_VK_META
enum {
#define NS_DEFINE_VK(aDOMKeyName, aDOMKeyCode) NS_##aDOMKeyName = aDOMKeyCode
#include "nsVKList.h"
#undef NS_DEFINE_VK
};
// IME Constants -- keep in synch with nsIPrivateTextRange.h
#define NS_TEXTRANGE_CARETPOSITION 0x01