- Add `Event::FocusLost`
- View groups: send a "focus lost" event to the focused child when the
focus is changing.
- Change return type of `View::take_focus` from `bool` to
`Result<EventResult, CannotFocus>`.
- Change return type of `View::focus_view` from
`Result<(), ViewNotFound>` to `Result<EventResult, ViewNotFound>`.
- Add `views::FocusTracker` to run callbacks on focus gain/loss.
Now the `OnEventView.on_pre_event_inner()` calls return
`Some(EventResult::Consumed(Some(Callback)))` instead of
`Some(EventResult::Consumed(None))`.
This follows the guidelines from documentation of methods returning a
`Callback`, which say that it should be ran on the `Cursive`.
While in this example this doesn't make a difference, the previous
version created confusion for new users who might not realize you can
pass the `Callback`s to the `Cursive` this way.
- Remove the inline feature detection, it doesn't work for features of
dependencies. Instead use `required-features` in `Cargo.toml` for the
specific binary.
- The asset moved one level up relatively to `../../assets/style.toml`