diff --git a/bin/commands/issue/select/ui.rs b/bin/commands/issue/select/ui.rs
index 7277faeb..ded915ce 100644
--- a/bin/commands/issue/select/ui.rs
+++ b/bin/commands/issue/select/ui.rs
@@ -22,7 +22,7 @@ use tui::ui::widget::container::{
};
use tui::ui::widget::input::{TextField, TextFieldProps, TextFieldState};
use tui::ui::widget::text::{Paragraph, ParagraphProps, ParagraphState};
-use tui::ui::widget::{self, BaseView};
+use tui::ui::widget::{self, BaseView, WidgetState};
use tui::ui::widget::{
Column, Properties, Shortcuts, ShortcutsProps, Table, TableProps, TableUtils, Widget,
};
@@ -156,11 +156,11 @@ impl<'a: 'static> Widget for BrowsePage<'a> {
)
.content(Box::
>::new(
Table::new(state, action_tx.clone())
- .on_event(|state, action_tx| {
- state.downcast_ref::().and_then(|state| {
+ .on_event(|table, action_tx| {
+ TableState::from_boxed_any(table).and_then(|table| {
action_tx
.send(Action::Select {
- selected: state.selected(),
+ selected: table.selected(),
})
.ok()
});
@@ -341,11 +341,11 @@ impl Widget for Search {
Self: Sized,
{
let input = TextField::new(state, action_tx.clone())
- .on_event(|state, action_tx| {
- state.downcast_ref::().and_then(|state| {
+ .on_event(|field, action_tx| {
+ TextFieldState::from_boxed_any(field).and_then(|field| {
action_tx
.send(Action::UpdateSearch {
- value: state.text.clone().unwrap_or_default(),
+ value: field.text.clone().unwrap_or_default(),
})
.ok()
});
@@ -471,11 +471,11 @@ impl<'a: 'static> Widget for HelpPage<'a> {
.focus(props.focus)
.to_boxed()
})
- .on_event(|state, action_tx| {
- state.downcast_ref::().and_then(|state| {
+ .on_event(|paragraph, action_tx| {
+ ParagraphState::from_boxed_any(paragraph).and_then(|paragraph| {
action_tx
.send(Action::ScrollHelp {
- progress: state.progress,
+ progress: paragraph.progress,
})
.ok()
});