| Index: tools/dom/src/KeyCode.dart
|
| diff --git a/tools/dom/src/KeyCode.dart b/tools/dom/src/KeyCode.dart
|
| index 417ee820296d8c4abd65ae9c0a9c7022fe5581ab..3fa6b7ce559de2d5f0d95e026fd9b3374f4299d4 100644
|
| --- a/tools/dom/src/KeyCode.dart
|
| +++ b/tools/dom/src/KeyCode.dart
|
| @@ -225,4 +225,59 @@ abstract class KeyCode {
|
| keyCode == OPEN_SQUARE_BRACKET || keyCode == BACKSLASH ||
|
| keyCode == CLOSE_SQUARE_BRACKET);
|
| }
|
| +
|
| + /**
|
| + * Experimental helper function for converting keyCodes to keyNames for the
|
| + * keyIdentifier attribute still used in browsers not updated with current
|
| + * spec. This is an imperfect conversion! It will need to be refined, but
|
| + * hopefully it can just completely go away once all the browsers update to
|
| + * follow the DOM3 spec.
|
| + */
|
| + static String _convertKeyCodeToKeyName(int keyCode) {
|
| + switch(keyCode) {
|
| + case KeyCode.ALT: return _KeyName.ALT;
|
| + case KeyCode.BACKSPACE: return _KeyName.BACKSPACE;
|
| + case KeyCode.CAPS_LOCK: return _KeyName.CAPS_LOCK;
|
| + case KeyCode.CTRL: return _KeyName.CONTROL;
|
| + case KeyCode.DELETE: return _KeyName.DEL;
|
| + case KeyCode.DOWN: return _KeyName.DOWN;
|
| + case KeyCode.END: return _KeyName.END;
|
| + case KeyCode.ENTER: return _KeyName.ENTER;
|
| + case KeyCode.ESC: return _KeyName.ESC;
|
| + case KeyCode.F1: return _KeyName.F1;
|
| + case KeyCode.F2: return _KeyName.F2;
|
| + case KeyCode.F3: return _KeyName.F3;
|
| + case KeyCode.F4: return _KeyName.F4;
|
| + case KeyCode.F5: return _KeyName.F5;
|
| + case KeyCode.F6: return _KeyName.F6;
|
| + case KeyCode.F7: return _KeyName.F7;
|
| + case KeyCode.F8: return _KeyName.F8;
|
| + case KeyCode.F9: return _KeyName.F9;
|
| + case KeyCode.F10: return _KeyName.F10;
|
| + case KeyCode.F11: return _KeyName.F11;
|
| + case KeyCode.F12: return _KeyName.F12;
|
| + case KeyCode.HOME: return _KeyName.HOME;
|
| + case KeyCode.INSERT: return _KeyName.INSERT;
|
| + case KeyCode.LEFT: return _KeyName.LEFT;
|
| + case KeyCode.META: return _KeyName.META;
|
| + case KeyCode.NUMLOCK: return _KeyName.NUM_LOCK;
|
| + case KeyCode.PAGE_DOWN: return _KeyName.PAGE_DOWN;
|
| + case KeyCode.PAGE_UP: return _KeyName.PAGE_UP;
|
| + case KeyCode.PAUSE: return _KeyName.PAUSE;
|
| + case KeyCode.PRINT_SCREEN: return _KeyName.PRINT_SCREEN;
|
| + case KeyCode.RIGHT: return _KeyName.RIGHT;
|
| + case KeyCode.SCROLL_LOCK: return _KeyName.SCROLL;
|
| + case KeyCode.SHIFT: return _KeyName.SHIFT;
|
| + case KeyCode.SPACE: return _KeyName.SPACEBAR;
|
| + case KeyCode.TAB: return _KeyName.TAB;
|
| + case KeyCode.UP: return _KeyName.UP;
|
| + case KeyCode.WIN_IME:
|
| + case KeyCode.WIN_KEY:
|
| + case KeyCode.WIN_KEY_LEFT:
|
| + case KeyCode.WIN_KEY_RIGHT:
|
| + return _KeyName.WIN;
|
| + default: return _KeyName.UNIDENTIFIED;
|
| + }
|
| + return _KeyName.UNIDENTIFIED;
|
| + }
|
| }
|
|
|