diff options
-rw-r--r-- | src/event.rs | 4 | ||||
-rw-r--r-- | src/input.rs | 18 |
2 files changed, 11 insertions, 11 deletions
diff --git a/src/event.rs b/src/event.rs index 3dce4d66..c43ba2b3 100644 --- a/src/event.rs +++ b/src/event.rs @@ -300,7 +300,7 @@ impl<N: Notify> Processor<N> { }, MouseInput { state, button, modifiers, .. } => { *hide_cursor = false; - processor.mouse_input(state, button, modifiers); + processor.mouse_input(state, button, modifiers.shift); processor.ctx.terminal.dirty = true; }, CursorMoved { position: (x, y), modifiers, .. } => { @@ -310,7 +310,7 @@ impl<N: Notify> Processor<N> { let y = limit(y, 0, processor.ctx.size_info.height as i32); *hide_cursor = false; - processor.mouse_moved(x as u32, y as u32, modifiers); + processor.mouse_moved(x as u32, y as u32, modifiers.shift); if !processor.ctx.selection.is_none() { processor.ctx.terminal.dirty = true; diff --git a/src/input.rs b/src/input.rs index 586a664c..604ea06b 100644 --- a/src/input.rs +++ b/src/input.rs @@ -253,7 +253,7 @@ impl From<&'static str> for Action { impl<'a, A: ActionContext + 'a> Processor<'a, A> { #[inline] - pub fn mouse_moved(&mut self, x: u32, y: u32, modifiers: ModifiersState) { + pub fn mouse_moved(&mut self, x: u32, y: u32, shift: bool) { self.ctx.mouse_mut().x = x; self.ctx.mouse_mut().y = y; @@ -274,7 +274,7 @@ impl<'a, A: ActionContext + 'a> Processor<'a, A> { if self.ctx.mouse_mut().left_button_state == ElementState::Pressed { let report_mode = mode::TermMode::MOUSE_REPORT_CLICK | mode::TermMode::MOUSE_MOTION; - if modifiers.shift || !self.ctx.terminal_mode().intersects(report_mode) { + if shift || !self.ctx.terminal_mode().intersects(report_mode) { self.ctx.update_selection(Point { line: point.line, col: point.col @@ -337,7 +337,7 @@ impl<'a, A: ActionContext + 'a> Processor<'a, A> { } } - pub fn on_mouse_press(&mut self, modifiers: ModifiersState) { + pub fn on_mouse_press(&mut self, shift: bool) { let now = Instant::now(); let elapsed = self.ctx.mouse_mut().last_click_timestamp.elapsed(); self.ctx.mouse_mut().last_click_timestamp = now; @@ -353,7 +353,7 @@ impl<'a, A: ActionContext + 'a> Processor<'a, A> { }, _ => { let report_modes = mode::TermMode::MOUSE_REPORT_CLICK | mode::TermMode::MOUSE_MOTION; - if !modifiers.shift && self.ctx.terminal_mode().intersects(report_modes) { + if !shift && self.ctx.terminal_mode().intersects(report_modes) { self.mouse_report(0); return; } @@ -364,9 +364,9 @@ impl<'a, A: ActionContext + 'a> Processor<'a, A> { }; } - pub fn on_mouse_release(&mut self, modifiers: ModifiersState) { + pub fn on_mouse_release(&mut self, shift: bool) { let report_modes = mode::TermMode::MOUSE_REPORT_CLICK | mode::TermMode::MOUSE_MOTION; - if !modifiers.shift && self.ctx.terminal_mode().intersects(report_modes) + if !shift && self.ctx.terminal_mode().intersects(report_modes) { self.mouse_report(3); return; @@ -456,16 +456,16 @@ impl<'a, A: ActionContext + 'a> Processor<'a, A> { } } - pub fn mouse_input(&mut self, state: ElementState, button: MouseButton, modifiers: ModifiersState) { + pub fn mouse_input(&mut self, state: ElementState, button: MouseButton, shift: bool) { if let MouseButton::Left = button { let state = mem::replace(&mut self.ctx.mouse_mut().left_button_state, state); if self.ctx.mouse_mut().left_button_state != state { match self.ctx.mouse_mut().left_button_state { ElementState::Pressed => { - self.on_mouse_press(modifiers); + self.on_mouse_press(shift); }, ElementState::Released => { - self.on_mouse_release(modifiers); + self.on_mouse_release(shift); } } } |