Also: with modern apps that might have touch events, keydown and keyup are less useful than they used to be. Handling all the input-related events by default is likely a bit much.
> On Jul 13, 2023, at 8:40 AM, Harbs <harbs.li...@gmail.com> wrote: > > I don’t have any objections on principle, but there is something which might > be a technical challenge: > > In swf it’s “keyDown” and “keyUp”, but in JS it’s “keydown” and “keyup”. I’m > not sure how to handle that with metadata and MXML. > >> On Jul 13, 2023, at 1:20 AM, Josh Tynjala <joshtynj...@bowlerhat.dev> wrote: >> >> I'm trying to convert some Flex code to Royale. In particular, I'd like to >> add a keyDown listener to a component in MXML so I can listen to special >> keys like Esc, but there doesn't seem to be any [Event] metadata for >> keyboard events on UIBase. I see that there is [Event] metadata for mouse >> events, though. >> >> Maybe I've missed it, but there also doesn't even seem to be a bead that >> can somehow allow me to add a keyDown listener in MXML either. I found >> DispatchKeyboardEventBead, but it seems to dispatch the event on the >> strand, which would require me to manually call addEventListener() in AS3 >> instead, which is pretty complicated because I would need to listen to some >> other event in MXML first, like initialize or whatever. >> >> Both mouse and keyboard feel to me like pretty fundamental forms of user >> input. With that in mind, if PAYG is the justification for not exposing >> keyboard events, I'm not sure how the same justification doesn't apply to >> mouse events. On the other hand, if it's something that actually should be >> exposed without beads, and it simply hasn't been a priority yet, then I >> hope someone can help me add it. I tried my best to figure out how Royale >> MouseEvents get converted from HTML/JS mouse events, to see if I could do >> something similar with keyboard events, but it wasn't clear to me where the >> lowest level listeners were being added for things like >> mousedown/mouseup/mousemove/etc. >> >> -- >> Josh Tynjala >> Bowler Hat LLC <https://bowlerhat.dev> >