There was some undefined behavior to be fixed in the terminal input
parser.
The behavior of flush seems to have change. The fix was to invert '\0'
and std::flush.
The ESC key generates sequences that are prefix of others. For instance:
- ESC => [27]
- F1 => [27, 79, 8]
As a result, we can't generate the ESC event when receiving [27],
because it might be the start of the [27, 79, 8] sequence (or not).
Application usually applies a timeout to help detecting the ESC key.
This patch introduce a timeout. It is set to 50ms.
Bug: https://github.com/ArthurSonzogni/FTXUI/issues/55
This allows developers to set child children component must be the
currently active/focused one.
This can be used to "control" where the focus is, without user
interactions.
This fix the bug from:
https://github.com/ArthurSonzogni/FTXUI/pull/11
About:
~~~
Bug: Focus handling not working
in the examples (e.g. checkbox.cpp) I can toggle the individual
checkboxes but I cannot move between items, I tried to understand the
focus implementation but am I unsure which keypresses would move focus
between different components
~~~
It allow you to create the two end of a pipe: A producer and consumer.
The producer can be moved into another thread.
Several producer can be created if necessary.
This will ease merging:
https://github.com/ArthurSonzogni/FTXUI/pull/11
A key event that makes use of TAB key to cycle the elements.
Co-authored-by: Trim Bresilla <trim.bresilla@gmail.com>"
Co-authored-by: ArthurSonzogni <sonzogniarthur@gmail.com>
Most CJK users use IME (input method) to type CJK characters. They need
the cursor to be at the correct location, not in the bottom right
corner.
This CL does:
* Move the cursor the focus() element.
* Hide the cursor (and show it at exit)
* Intercept SIGINT to guarantee proper cleanup all the time.
This should fix the second issue mentionned on:
https://github.com/ArthurSonzogni/FTXUI/issues/2