mirror of
https://github.com/mimblewimble/grin.git
synced 2025-02-01 17:01:09 +03:00
[TUI] Properly handle Esc in Peers and Mining, add Esc to the legend (#2371)
This commit is contained in:
parent
4743286713
commit
85fcfd8b64
3 changed files with 14 additions and 6 deletions
|
@ -83,6 +83,7 @@ pub fn create() -> Box<dyn View> {
|
||||||
.child(TextView::new("------------------"))
|
.child(TextView::new("------------------"))
|
||||||
.child(TextView::new("Tab/Arrow : Cycle "))
|
.child(TextView::new("Tab/Arrow : Cycle "))
|
||||||
.child(TextView::new("Enter : Select"))
|
.child(TextView::new("Enter : Select"))
|
||||||
|
.child(TextView::new("Esc : Back "))
|
||||||
.child(TextView::new("Q : Quit "));
|
.child(TextView::new("Q : Quit "));
|
||||||
Box::new(main_menu)
|
Box::new(main_menu)
|
||||||
}
|
}
|
||||||
|
|
|
@ -184,10 +184,6 @@ impl TUIStatusListener for TUIMiningView {
|
||||||
.child(Panel::new(devices_button))
|
.child(Panel::new(devices_button))
|
||||||
.child(Panel::new(difficulty_button));
|
.child(Panel::new(difficulty_button));
|
||||||
|
|
||||||
let mining_submenu = OnEventView::new(mining_submenu).on_pre_event(Key::Esc, move |c| {
|
|
||||||
let _ = c.focus_id(MAIN_MENU);
|
|
||||||
});
|
|
||||||
|
|
||||||
let table_view = TableView::<WorkerStats, StratumWorkerColumn>::new()
|
let table_view = TableView::<WorkerStats, StratumWorkerColumn>::new()
|
||||||
.column(StratumWorkerColumn::Id, "Worker ID", |c| c.width_percent(8))
|
.column(StratumWorkerColumn::Id, "Worker ID", |c| c.width_percent(8))
|
||||||
.column(StratumWorkerColumn::IsConnected, "Connected", |c| {
|
.column(StratumWorkerColumn::IsConnected, "Connected", |c| {
|
||||||
|
@ -306,6 +302,10 @@ impl TUIStatusListener for TUIMiningView {
|
||||||
.child(mining_submenu)
|
.child(mining_submenu)
|
||||||
.child(view_stack);
|
.child(view_stack);
|
||||||
|
|
||||||
|
let mining_view = OnEventView::new(mining_view).on_pre_event(Key::Esc, move |c| {
|
||||||
|
let _ = c.focus_id(MAIN_MENU);
|
||||||
|
});
|
||||||
|
|
||||||
Box::new(mining_view.with_id(VIEW_MINING))
|
Box::new(mining_view.with_id(VIEW_MINING))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -22,12 +22,13 @@ use crate::tui::humansize::{file_size_opts::CONVENTIONAL, FileSize};
|
||||||
use chrono::prelude::*;
|
use chrono::prelude::*;
|
||||||
|
|
||||||
use cursive::direction::Orientation;
|
use cursive::direction::Orientation;
|
||||||
|
use cursive::event::Key;
|
||||||
use cursive::traits::{Boxable, Identifiable};
|
use cursive::traits::{Boxable, Identifiable};
|
||||||
use cursive::view::View;
|
use cursive::view::View;
|
||||||
use cursive::views::{BoxView, Dialog, LinearLayout, TextView};
|
use cursive::views::{BoxView, Dialog, LinearLayout, OnEventView, TextView};
|
||||||
use cursive::Cursive;
|
use cursive::Cursive;
|
||||||
|
|
||||||
use crate::tui::constants::{TABLE_PEER_STATUS, VIEW_PEER_SYNC};
|
use crate::tui::constants::{MAIN_MENU, TABLE_PEER_STATUS, VIEW_PEER_SYNC};
|
||||||
use crate::tui::table::{TableView, TableViewItem};
|
use crate::tui::table::{TableView, TableViewItem};
|
||||||
use crate::tui::types::TUIStatusListener;
|
use crate::tui::types::TUIStatusListener;
|
||||||
|
|
||||||
|
@ -149,6 +150,12 @@ impl TUIStatusListener for TUIPeerView {
|
||||||
),
|
),
|
||||||
)
|
)
|
||||||
.with_id(VIEW_PEER_SYNC);
|
.with_id(VIEW_PEER_SYNC);
|
||||||
|
|
||||||
|
let peer_status_view =
|
||||||
|
OnEventView::new(peer_status_view).on_pre_event(Key::Esc, move |c| {
|
||||||
|
let _ = c.focus_id(MAIN_MENU);
|
||||||
|
});
|
||||||
|
|
||||||
Box::new(peer_status_view)
|
Box::new(peer_status_view)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue