| // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
| // for details. All rights reserved. Use of this source code is governed by a |
| // BSD-style license that can be found in the LICENSE file. |
| |
| |
| /// @domName KeyboardEvent; @docsEditable true |
| class $CLASSNAME$EXTENDS$IMPLEMENTS$NATIVESPEC { |
| |
| factory $CLASSNAME(String type, Window view, |
| [bool canBubble = true, bool cancelable = true, |
| String keyIdentifier = null, int keyLocation = 1, bool ctrlKey = false, |
| bool altKey = false, bool shiftKey = false, bool metaKey = false, |
| bool altGraphKey = false]) { |
| final e = document.$dom_createEvent("KeyboardEvent"); |
| e.$dom_initKeyboardEvent(type, canBubble, cancelable, view, keyIdentifier, |
| keyLocation, ctrlKey, altKey, shiftKey, metaKey, altGraphKey); |
| return e; |
| } |
| |
| /** @domName KeyboardEvent.initKeyboardEvent */ |
| void $dom_initKeyboardEvent(String type, bool canBubble, bool cancelable, |
| LocalWindow view, String keyIdentifier, int keyLocation, bool ctrlKey, |
| bool altKey, bool shiftKey, bool metaKey, bool altGraphKey) { |
| // initKeyEvent is the call in Firefox, initKeyboardEvent for all other |
| // browsers. |
| var function = JS('dynamic', '#.initKeyboardEvent || #.initKeyEvent', this, |
| this); |
| JS('void', '#(#, #, #, #, #, #, #, #, #, #, #)', function, type, |
| canBubble, cancelable, view, keyIdentifier, keyLocation, ctrlKey, |
| altKey, shiftKey, metaKey, altGraphKey); |
| } |
| |
| /** @domName KeyboardEvent.keyCode */ |
| int get keyCode => $dom_keyCode; |
| |
| /** @domName KeyboardEvent.charCode */ |
| int get charCode => $dom_charCode; |
| $!MEMBERS |
| } |