summaryrefslogtreecommitdiffstats
path: root/src/process/error.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/process/error.rs')
-rw-r--r--src/process/error.rs19
1 files changed, 14 insertions, 5 deletions
diff --git a/src/process/error.rs b/src/process/error.rs
index f5920bb..5b66a3a 100644
--- a/src/process/error.rs
+++ b/src/process/error.rs
@@ -11,6 +11,7 @@ use crate::{
render_context::RenderContext,
view_data::ViewData,
view_line::ViewLine,
+ ViewSender,
},
};
@@ -29,14 +30,19 @@ impl ProcessModule for Error {
ProcessResult::new()
}
- fn build_view_data(&mut self, _: &RenderContext, _: &TodoFile) -> &mut ViewData {
- &mut self.view_data
+ fn build_view_data(&mut self, _: &RenderContext, _: &TodoFile) -> &ViewData {
+ &self.view_data
}
- fn handle_events(&mut self, event_handler: &EventHandler, _: &mut TodoFile) -> ProcessResult {
+ fn handle_events(
+ &mut self,
+ event_handler: &EventHandler,
+ view_sender: &ViewSender,
+ _: &mut TodoFile,
+ ) -> ProcessResult {
let event = event_handler.read_event(&INPUT_OPTIONS, |event, _| event);
let mut result = ProcessResult::from(event);
- if handle_view_data_scroll(event, &mut self.view_data).is_none() {
+ if handle_view_data_scroll(event, view_sender).is_none() {
if let Event::Key(_) = event {
result = result.state(self.return_state);
}
@@ -49,7 +55,10 @@ impl Error {
pub fn new() -> Self {
Self {
return_state: State::List,
- view_data: ViewData::new(|updater| updater.set_show_title(true)),
+ view_data: ViewData::new(|updater| {
+ updater.set_show_title(true);
+ updater.set_retain_scroll_position(false);
+ }),
}
}