From 842557ee467463cd051fd78670de049dc82eaa5a Mon Sep 17 00:00:00 2001 From: Josh Holtrop Date: Sun, 1 Jan 2017 23:59:33 -0500 Subject: [PATCH] scroll window on mouse wheel events --- src/gui/BufferPane.cc | 2 ++ src/gui/Window.cc | 11 +++++++++++ 2 files changed, 13 insertions(+) diff --git a/src/gui/BufferPane.cc b/src/gui/BufferPane.cc index 032d0d3..7c647b6 100644 --- a/src/gui/BufferPane.cc +++ b/src/gui/BufferPane.cc @@ -618,6 +618,7 @@ void BufferPane::scroll_window_up() move_cursor_screen_row_up(); } m_cursor_screen_row += lines_to_scroll; + m_window->request_redraw(); } void BufferPane::scroll_window_down() @@ -630,6 +631,7 @@ void BufferPane::scroll_window_down() move_cursor_screen_row_down(); } m_cursor_screen_row -= lines_to_scroll; + m_window->request_redraw(); } void BufferPane::forward_to_column(int column, bool allow_eol) diff --git a/src/gui/Window.cc b/src/gui/Window.cc index 58408ea..cf58e7e 100644 --- a/src/gui/Window.cc +++ b/src/gui/Window.cc @@ -216,6 +216,17 @@ void Window::handle_event(SDL_Event & event) case SDL_USEREVENT: handle_keysym((uint32_t)(uintptr_t)event.user.data1); break; + + case SDL_MOUSEWHEEL: + if (event.wheel.y > 0) + { + m_buffer_pane->scroll_window_up(); + } + else + { + m_buffer_pane->scroll_window_down(); + } + break; } }