better logging, add 'main()' method to app and binding to get to main screen
This commit is contained in:
parent
ed58ddceb9
commit
39e21b83b1
3 changed files with 15 additions and 8 deletions
|
@ -126,6 +126,7 @@ impl App {
|
||||||
KeyCode::Char('s') => self.send(),
|
KeyCode::Char('s') => self.send(),
|
||||||
KeyCode::Char('r') => self.recv(),
|
KeyCode::Char('r') => self.recv(),
|
||||||
KeyCode::Char('l') => self.logs(),
|
KeyCode::Char('l') => self.logs(),
|
||||||
|
KeyCode::Char('m') => self.main(),
|
||||||
_ => match mode {
|
_ => match mode {
|
||||||
CurrentScreen::Logging => match code {
|
CurrentScreen::Logging => match code {
|
||||||
KeyCode::Left => change_log_level(-1),
|
KeyCode::Left => change_log_level(-1),
|
||||||
|
@ -230,6 +231,14 @@ impl App {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
pub fn main(&mut self) {
|
||||||
|
let last = self.screen.last();
|
||||||
|
match last {
|
||||||
|
Some(CurrentScreen::Main) => {}
|
||||||
|
_ => self.screen.push(CurrentScreen::Main),
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// accept a content receive request
|
// accept a content receive request
|
||||||
fn accept(&mut self) {
|
fn accept(&mut self) {
|
||||||
let Some(idx) = self.receiving_state.selected() else {
|
let Some(idx) = self.receiving_state.selected() else {
|
||||||
|
|
|
@ -240,14 +240,14 @@ fn text_popup(text: &str, title: &str, area: Rect, buf: &mut Buffer) {
|
||||||
block.render(area, buf);
|
block.render(area, buf);
|
||||||
|
|
||||||
let (_, len) = unicode_segmentation::UnicodeSegmentation::graphemes(text, true).size_hint();
|
let (_, len) = unicode_segmentation::UnicodeSegmentation::graphemes(text, true).size_hint();
|
||||||
let len = len.unwrap_or(text.len()) as u16;
|
let len = len.unwrap_or(text.len()) as u16 + 2;
|
||||||
let area = centered_rect(area, Constraint::Length(len), Constraint::Length(1));
|
let area = centered_rect(area, Constraint::Length(len), Constraint::Length(1));
|
||||||
|
|
||||||
Paragraph::new(text).centered().yellow().render(area, buf);
|
Paragraph::new(text).centered().yellow().render(area, buf);
|
||||||
}
|
}
|
||||||
|
|
||||||
fn logger(area: Rect, buf: &mut Buffer) {
|
fn logger(area: Rect, buf: &mut Buffer) {
|
||||||
let title = Line::from(log::max_level().as_str());
|
let title = Line::from(format!(" {} logs ", log::max_level().as_str()));
|
||||||
let logger = TuiLoggerWidget::default()
|
let logger = TuiLoggerWidget::default()
|
||||||
.output_separator('|')
|
.output_separator('|')
|
||||||
.output_timestamp(Some("%H:%M:%S%.3f".to_string()))
|
.output_timestamp(Some("%H:%M:%S%.3f".to_string()))
|
||||||
|
@ -257,7 +257,7 @@ fn logger(area: Rect, buf: &mut Buffer) {
|
||||||
.output_line(false)
|
.output_line(false)
|
||||||
.block(Block::bordered().title(title.centered()))
|
.block(Block::bordered().title(title.centered()))
|
||||||
.style(Style::default())
|
.style(Style::default())
|
||||||
.state(&TuiWidgetState::new().set_default_display_level(LevelFilter::Debug));
|
.state(&TuiWidgetState::new().set_default_display_level(LevelFilter::Trace));
|
||||||
logger.render(area, buf);
|
logger.render(area, buf);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -267,7 +267,7 @@ fn receive_requests(
|
||||||
area: Rect,
|
area: Rect,
|
||||||
buf: &mut Buffer,
|
buf: &mut Buffer,
|
||||||
) {
|
) {
|
||||||
let title = Line::from(" Upload Requests ").bold();
|
let title = Line::from(" Incoming Transfer Requests ").bold();
|
||||||
let block = Block::bordered().title(title.centered());
|
let block = Block::bordered().title(title.centered());
|
||||||
|
|
||||||
let mut rows = Vec::new();
|
let mut rows = Vec::new();
|
||||||
|
@ -311,9 +311,7 @@ fn receive_requests(
|
||||||
|
|
||||||
ratatui::widgets::StatefulWidget::render(table, area, buf, state);
|
ratatui::widgets::StatefulWidget::render(table, area, buf, state);
|
||||||
|
|
||||||
if let Some(idx) = state.selected()
|
if let Some(idx) = state.selected() {
|
||||||
//&& let Some(area) = preview_area
|
|
||||||
{
|
|
||||||
let area = centered_rect(area, Constraint::Percentage(80), Constraint::Max(7));
|
let area = centered_rect(area, Constraint::Percentage(80), Constraint::Max(7));
|
||||||
let request = requests[idx];
|
let request = requests[idx];
|
||||||
if let Some(md) = request.files.values().next()
|
if let Some(md) = request.files.values().next()
|
||||||
|
|
|
@ -15,7 +15,7 @@ fn main() -> error::Result<()> {
|
||||||
std::env::set_var("RUST_LOG", "joecalsend");
|
std::env::set_var("RUST_LOG", "joecalsend");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
init_logger(LevelFilter::Debug).map_err(|e| std::io::Error::other(format!("{e}")))?;
|
init_logger(LevelFilter::Info).map_err(|e| std::io::Error::other(format!("{e}")))?;
|
||||||
set_env_filter_from_env(None);
|
set_env_filter_from_env(None);
|
||||||
|
|
||||||
let config = Config::default();
|
let config = Config::default();
|
||||||
|
|
Loading…
Reference in a new issue