UNPKG

laya-coreui-es

Version:

laya核心库、ui库es版本,剔除了媒体、TTF等功能。基于 LayaAir-release_2.12.0 修改

42 lines (41 loc) 1.68 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.KeyBoardManager = void 0; const Event_1 = require("./Event"); const ILaya_1 = require("../../ILaya"); class KeyBoardManager { static __init__() { KeyBoardManager._addEvent("keydown"); KeyBoardManager._addEvent("keypress"); KeyBoardManager._addEvent("keyup"); } static _addEvent(type) { ILaya_1.ILaya.Browser.document.addEventListener(type, function (e) { KeyBoardManager._dispatch(e, type); }, true); } static _dispatch(e, type) { if (!KeyBoardManager.enabled) return; KeyBoardManager._event._stoped = false; KeyBoardManager._event.nativeEvent = e; KeyBoardManager._event.keyCode = e.keyCode || e.which || e.charCode; if (type === "keydown") KeyBoardManager._pressKeys[KeyBoardManager._event.keyCode] = true; else if (type === "keyup") KeyBoardManager._pressKeys[KeyBoardManager._event.keyCode] = null; var target = (ILaya_1.ILaya.stage.focus && (ILaya_1.ILaya.stage.focus.event != null) && ILaya_1.ILaya.stage.focus.displayedInStage) ? ILaya_1.ILaya.stage.focus : ILaya_1.ILaya.stage; var ct = target; while (ct) { ct.event(type, KeyBoardManager._event.setTo(type, ct, target)); ct = ct.parent; } } static hasKeyDown(key) { return KeyBoardManager._pressKeys[key]; } } exports.KeyBoardManager = KeyBoardManager; KeyBoardManager._pressKeys = {}; KeyBoardManager.enabled = true; KeyBoardManager._event = new Event_1.Event();