Fixing keydown events.

This commit is contained in:
Dustin Swan 2026-02-09 20:35:17 -07:00
parent 3fe7750290
commit 0a60d472ea
No known key found for this signature in database
GPG key ID: 30D46587E2100467
5 changed files with 45 additions and 34 deletions

View file

@ -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);