aboutsummaryrefslogtreecommitdiff
path: root/src/app.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/app.rs')
-rwxr-xr-xsrc/app.rs36
1 files changed, 35 insertions, 1 deletions
diff --git a/src/app.rs b/src/app.rs
index bce9b47..6df47ab 100755
--- a/src/app.rs
+++ b/src/app.rs
@@ -1,11 +1,12 @@
use std::{path::Path, time::Duration};
use crate::browser::FileBrowser;
-use crate::utils::FileExtension;
use crate::connection::Connection;
use crate::list::ContentList;
use crate::ui::InputMode;
+use crate::utils::FileExtension;
use mpd::{Client, Song};
+use ratatui::widgets::{ListState, TableState};
// Application result type
pub type AppResult<T> = std::result::Result<T, Box<dyn std::error::Error>>;
@@ -386,4 +387,37 @@ impl App {
}
Ok(())
}
+
+ // Mouse event handlers
+ pub fn handle_scroll_up(&mut self) {
+ match self.selected_tab {
+ SelectedTab::Queue => {
+ self.queue_list.prev();
+ }
+ SelectedTab::DirectoryBrowser => {
+ self.browser.prev();
+ }
+ SelectedTab::Playlists => {
+ self.pl_list.prev();
+ }
+ }
+ }
+
+ pub fn handle_scroll_down(&mut self) {
+ match self.selected_tab {
+ SelectedTab::Queue => {
+ self.queue_list.next();
+ }
+ SelectedTab::DirectoryBrowser => {
+ self.browser.next();
+ }
+ SelectedTab::Playlists => {
+ self.pl_list.next();
+ }
+ }
+ }
+
+ pub fn handle_mouse_left_click(&mut self, x: u16, y: u16) -> AppResult<()> {
+ Ok(())
+ }
}