Age | Commit message (Collapse) | Author |
|
See code comments for explanation.
|
|
Before: <top>, <bottom>, <second to bottom>, <third to bottom>...
Now: <top>, <second to top>, <third to top>, <fourth to top>...
|
|
This is extremely super duper very breaking in that it reverses the
order that keyboard events are bubbled.
This fixes an issue in the following situation: You have a focus element
which captures keyboard input. When the X key is pressed, a text input,
which is a child (directly or indirectly) of it, is selected and has its
value emptied. As the user types into that text input, if they press the
X key, the handler on the focus element will detect this, and clear and
select the text input - interrupting the user's typing.
The situation is fixed in this commit by making the text input avoid
bubbling events when text is entered. I'm not sure this is 100%
complete, because arrow key events and the like are still bubbled, but
those aren't difficult to change later. The breaking fundamental change
here is that keyboard events are now bubbled from the top element down.
Before, a parent element could deny child elements from responding to
the event; now the child can deny the parent.
|
|
|
|
Also removed yarn.lock since I don't use yarn for this anymore.
|
|
|
|
|
|
|
|
- Whether the cursor is displayed or not is now based on the
cursorVisible property rather than whether cursorX and cursorY
are set or not.
- The actual shell cursor is now invisible... this is objectively
an act of Evil, though! This doesn't look like too hard to
fix, thankfully.
- A new cleanCursor function has been added to ansi.js.
|
|
..Obviously this breaks old things (particularly, see changes in
FocusElement).
|
|
|