This addresses and fix:
https://github.com/ArthurSonzogni/FTXUI/issues/430
This patchs makes |shift| to be read and written on the same thread. We
request the update to be made via a task posted on the main thread.
This patch has no real consequence, the previous behavior was fine.
I hope it will help users not to have thread safety issue and better
understand they can post tasks this way.
Previously, a new 2D vector was allocated for every new frame. This
caused a lot of temporary allocation to be made.
This patch modify "Screen::Clear" so that it do make a new allocation,
but clear the existing one instead.
Bug:https://github.com/ArthurSonzogni/FTXUI/issues/290#issuecomment-1153327251
width and height were being set using the incorrect axes resulting in incorrect canvas dimensions
Co-authored-by: ArthurSonzogni <sonzogniarthur@gmail.com>
- Fix focus in flexbox. This required resetting the focus state at the
beginning of the ComputeRequirement(), because it can now run several
times.
This resolves:https://github.com/ArthurSonzogni/FTXUI/issues/399
- Add Box::Union.
- Add a preliminary implementation of forwarding selected_box from
within the flexbox.
The table is not meant to be used to render more than once. Reset the
dimensions so that, even if it is used wrongly, this is not memory
unsafe.
This was raised by:
https://github.com/ArthurSonzogni/FTXUI/issues/381
Add decorator variants for decorator components
Add the "pipe" operator for components, similar to what was done for Elements.
We are able to put something like:
```
Button(...) | Maybe(&show_button)
```
Add decorators for:
- `Maybe`
- `CatchEvent`
- `Renderer`
Signed-off-by: Kefu Chai <tchaikov@gmail.com>
Co-authored-by: ArthurSonzogni <sonzogniarthur@gmail.com>
before this change, the example in the doxygen document for CatchEvent()
does not use the documented function. hence the example is not that
useful for developers interested in a typical usage of this function.
after this change, the example is improved to added the call to
CatchEvent(), which allows the application to the Loop() function at
user input.
Signed-off-by: Kefu Chai <tchaikov@gmail.com>
- Provide better defaults for ComponentBase `Focusable()` and
`ActiveChild()` methods. This resolves:
https://github.com/ArthurSonzogni/FTXUI/issues/335
- Implement `Container::Tab` 's `Focusable()` methods. This prevents
the users to navigate into a tab with no interactivity.
PREFIX is by default "lib", which most of the libraries use.
this changes makes the library files libftxui-foo.a
as ArthurSonzogni/FTXUI#140 intended originally