Fixing keydown events.
This commit is contained in:
parent
3fe7750290
commit
0a60d472ea
5 changed files with 45 additions and 34 deletions
|
|
@ -205,13 +205,17 @@ export function runAppCompiled(app: App, canvas: HTMLCanvasElement, rt: any) {
|
|||
});
|
||||
|
||||
window.addEventListener('keydown', (e) => {
|
||||
let event: any;
|
||||
|
||||
if (e.key.length === 1 && !e.ctrlKey && !e.metaKey && !e.altKey) {
|
||||
event = { _tag: 'Char', _0: e.key };
|
||||
} else {
|
||||
event = { _tag: e.key };
|
||||
}
|
||||
const event = {
|
||||
_tag: 'Key',
|
||||
_0: {
|
||||
key: e.key,
|
||||
ctrl: { _tag: e.ctrlKey ? 'True' : 'False' },
|
||||
meta: { _tag: e.metaKey ? 'True' : 'False' },
|
||||
alt: { _tag: e.altKey ? 'True' : 'False' },
|
||||
shift: { _tag: e.shiftKey ? 'True' : 'False' },
|
||||
printable: { _tag: e.key.length === 1 ? 'True' : 'False' }
|
||||
}
|
||||
};
|
||||
|
||||
if (focusedComponentKey) {
|
||||
handleComponentEvent(focusedComponentKey, event);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue