diff --git a/src/ui/mod.rs b/src/ui/mod.rs index b4dcc40..cd90b42 100644 --- a/src/ui/mod.rs +++ b/src/ui/mod.rs @@ -34,8 +34,6 @@ pub enum Modality { #[derive(Debug, Default)] pub struct RangeSelection { pub original_location: Option
, - pub original_sheet: Option, - pub sheet: Option, pub start: Option
, pub end: Option
, } @@ -62,7 +60,6 @@ impl RangeSelection { pub fn reset_range_selection(&mut self) { self.start = None; self.end = None; - self.sheet = None; } } @@ -217,12 +214,12 @@ impl<'ws> Workspace<'ws> { start.to_range_part(), format!(":{}", end.to_range_part()) ); - if let Some(range_sheet) = state.range_select.sheet { - if range_sheet != self.book.location.sheet { + if let Some(ref start_addr) = state.range_select.start { + if start_addr.sheet != self.book.location.sheet { return format!( "{}!{}", self.book - .get_sheet_name_by_idx(range_sheet as usize) + .get_sheet_name_by_idx(start_addr.sheet as usize) .expect("No such sheet index"), a1 ); @@ -566,7 +563,6 @@ impl<'ws> Workspace<'ws> { ws.book.select_next_sheet(); Ok(()) })?; - self.state.range_select.sheet = Some(self.book.location.sheet); } KeyCode::Char('p') if key.modifiers == KeyModifiers::CONTROL => { self.state.range_select.reset_range_selection(); @@ -574,7 +570,6 @@ impl<'ws> Workspace<'ws> { ws.book.select_prev_sheet(); Ok(()) })?; - self.state.range_select.sheet = Some(self.book.location.sheet); } KeyCode::Char('C') if key.modifiers.contains(KeyModifiers::CONTROL) => { self.copy_range(true)?; @@ -893,8 +888,6 @@ impl<'ws> Workspace<'ws> { } fn enter_range_select_mode(&mut self, init_start: bool) { - self.state.range_select.sheet = Some(self.book.location.sheet); - self.state.range_select.original_sheet = Some(self.book.location.sheet); self.state.range_select.original_location = Some(self.book.location.clone()); if init_start { self.state.range_select.start = Some(self.book.location.clone()); @@ -929,12 +922,6 @@ impl<'ws> Workspace<'ws> { } fn exit_range_select_mode(&mut self) -> Result<()> { - self.book.location.sheet = self - .state - .range_select - .original_sheet - .clone() - .expect("Missing original sheet"); self.book.location = self .state .range_select diff --git a/src/ui/test.rs b/src/ui/test.rs index 1ef8489..d9f315a 100644 --- a/src/ui/test.rs +++ b/src/ui/test.rs @@ -1119,13 +1119,6 @@ macro_rules! assert_range_copy { .as_ref() .expect("Expected an original location") ); - assert_eq!( - 0, - ws.state - .range_select - .original_sheet - .expect("Expected an original sheet") - ); assert_eq!( Some(&Modality::RangeSelect), ws.state.modality_stack.iter().last()