autocomplete-list-keys-debug.js revision 05a3f5401cb20821fe3ca469b01a9b58a3dc4ed1
76ca635d61eb3f9fb7c9d788a44fa8b1690aa138Dav Glass * Mixes keyboard support into AutoCompleteList. By default, this module is not
76ca635d61eb3f9fb7c9d788a44fa8b1690aa138Dav Glass * loaded for iOS and Android devices.
76ca635d61eb3f9fb7c9d788a44fa8b1690aa138Dav Glass * @module autocomplete
76ca635d61eb3f9fb7c9d788a44fa8b1690aa138Dav Glass * @submodule autocomplete-list-keys
76ca635d61eb3f9fb7c9d788a44fa8b1690aa138Dav Glass // keyCode constants.
76ca635d61eb3f9fb7c9d788a44fa8b1690aa138Dav Glass // -- Lifecycle Methods ----------------------------------------------------
76ca635d61eb3f9fb7c9d788a44fa8b1690aa138Dav Glass * Initializes keyboard command mappings.
76ca635d61eb3f9fb7c9d788a44fa8b1690aa138Dav Glass * @method _initKeys
76ca635d61eb3f9fb7c9d788a44fa8b1690aa138Dav Glass * @protected
76ca635d61eb3f9fb7c9d788a44fa8b1690aa138Dav Glass * @for AutoCompleteList
76ca635d61eb3f9fb7c9d788a44fa8b1690aa138Dav Glass _initKeys: function () {
76ca635d61eb3f9fb7c9d788a44fa8b1690aa138Dav Glass // Register keyboard command handlers. _keys contains handlers that will
76ca635d61eb3f9fb7c9d788a44fa8b1690aa138Dav Glass // always be called; _keysVisible contains handlers that will only be
76ca635d61eb3f9fb7c9d788a44fa8b1690aa138Dav Glass // called when the list is visible.
76ca635d61eb3f9fb7c9d788a44fa8b1690aa138Dav Glass * Binds keyboard events.
76ca635d61eb3f9fb7c9d788a44fa8b1690aa138Dav Glass * @method _bindKeys
76ca635d61eb3f9fb7c9d788a44fa8b1690aa138Dav Glass * @protected
76ca635d61eb3f9fb7c9d788a44fa8b1690aa138Dav Glass _bindKeys: function () {
05a3f5401cb20821fe3ca469b01a9b58a3dc4ed1Ryan Grove this._keyEvents.push(this._inputNode.on('keydown', this._onInputKey,
76ca635d61eb3f9fb7c9d788a44fa8b1690aa138Dav Glass * Unbinds keyboard events.
76ca635d61eb3f9fb7c9d788a44fa8b1690aa138Dav Glass * @method _unbindKeys
76ca635d61eb3f9fb7c9d788a44fa8b1690aa138Dav Glass * @protected
76ca635d61eb3f9fb7c9d788a44fa8b1690aa138Dav Glass _unbindKeys: function () {
76ca635d61eb3f9fb7c9d788a44fa8b1690aa138Dav Glass // -- Protected Methods ----------------------------------------------------
76ca635d61eb3f9fb7c9d788a44fa8b1690aa138Dav Glass * Called when the down arrow key is pressed.
76ca635d61eb3f9fb7c9d788a44fa8b1690aa138Dav Glass * @method _keyDown
76ca635d61eb3f9fb7c9d788a44fa8b1690aa138Dav Glass * @protected
76ca635d61eb3f9fb7c9d788a44fa8b1690aa138Dav Glass _keyDown: function () {
76ca635d61eb3f9fb7c9d788a44fa8b1690aa138Dav Glass * Called when the enter key is pressed.
76ca635d61eb3f9fb7c9d788a44fa8b1690aa138Dav Glass * @method _keyEnter
76ca635d61eb3f9fb7c9d788a44fa8b1690aa138Dav Glass * @protected
76ca635d61eb3f9fb7c9d788a44fa8b1690aa138Dav Glass _keyEnter: function (e) {
76ca635d61eb3f9fb7c9d788a44fa8b1690aa138Dav Glass // Don't prevent form submission when there's no active item.
76ca635d61eb3f9fb7c9d788a44fa8b1690aa138Dav Glass return false;
76ca635d61eb3f9fb7c9d788a44fa8b1690aa138Dav Glass * Called when the escape key is pressed.
76ca635d61eb3f9fb7c9d788a44fa8b1690aa138Dav Glass * @method _keyEsc
76ca635d61eb3f9fb7c9d788a44fa8b1690aa138Dav Glass * @protected
76ca635d61eb3f9fb7c9d788a44fa8b1690aa138Dav Glass _keyEsc: function () {
76ca635d61eb3f9fb7c9d788a44fa8b1690aa138Dav Glass * Called when the tab key is pressed.
76ca635d61eb3f9fb7c9d788a44fa8b1690aa138Dav Glass * @method _keyTab
76ca635d61eb3f9fb7c9d788a44fa8b1690aa138Dav Glass * @protected
76ca635d61eb3f9fb7c9d788a44fa8b1690aa138Dav Glass _keyTab: function (e) {
76ca635d61eb3f9fb7c9d788a44fa8b1690aa138Dav Glass return true;
76ca635d61eb3f9fb7c9d788a44fa8b1690aa138Dav Glass return false;
76ca635d61eb3f9fb7c9d788a44fa8b1690aa138Dav Glass * Called when the up arrow key is pressed.
76ca635d61eb3f9fb7c9d788a44fa8b1690aa138Dav Glass * @method _keyUp
76ca635d61eb3f9fb7c9d788a44fa8b1690aa138Dav Glass * @protected
76ca635d61eb3f9fb7c9d788a44fa8b1690aa138Dav Glass _keyUp: function () {
76ca635d61eb3f9fb7c9d788a44fa8b1690aa138Dav Glass // -- Protected Event Handlers ---------------------------------------------
76ca635d61eb3f9fb7c9d788a44fa8b1690aa138Dav Glass * Handles <code>inputNode</code> key events.
76ca635d61eb3f9fb7c9d788a44fa8b1690aa138Dav Glass * @method _onInputKey
76ca635d61eb3f9fb7c9d788a44fa8b1690aa138Dav Glass * @param {EventTarget} e
76ca635d61eb3f9fb7c9d788a44fa8b1690aa138Dav Glass * @protected
76ca635d61eb3f9fb7c9d788a44fa8b1690aa138Dav Glass _onInputKey: function (e) {
76ca635d61eb3f9fb7c9d788a44fa8b1690aa138Dav Glass // A handler may return false to indicate that it doesn't wish
76ca635d61eb3f9fb7c9d788a44fa8b1690aa138Dav Glass // to prevent the default key behavior.
76ca635d61eb3f9fb7c9d788a44fa8b1690aa138Dav Glass}, '@VERSION@' ,{requires:['autocomplete-list', 'base-build']});