Fix bug with container on Windows.

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
~~~
This commit is contained in:
ArthurSonzogni 2020-04-17 01:15:17 +02:00
parent e1782cf9b9
commit a09ebcc442
2 changed files with 4 additions and 2 deletions

View File

@ -37,7 +37,7 @@ class Container : public Component {
RenderHandler render_handler_; RenderHandler render_handler_;
int selected_ = 0; int selected_ = 0;
int* selector_ = &selected_; int* selector_ = nullptr;
}; };
} // namespace ftxui } // namespace ftxui

View File

@ -42,7 +42,9 @@ bool Container::OnEvent(Event event) {
Component* Container::ActiveChild() { Component* Container::ActiveChild() {
if (children_.size() == 0) if (children_.size() == 0)
return nullptr; return nullptr;
return children_[*selector_ % children_.size()];
int selected = selector_ ? *selector_ : selected_;
return children_[selected % children_.size()];
} }
bool Container::VerticalEvent(Event event) { bool Container::VerticalEvent(Event event) {