diff options
Diffstat (limited to 'src/window.cc')
| -rw-r--r-- | src/window.cc | 13 |
1 files changed, 5 insertions, 8 deletions
diff --git a/src/window.cc b/src/window.cc index a17bc45e..648d14ee 100644 --- a/src/window.cc +++ b/src/window.cc @@ -90,7 +90,7 @@ Window::Setup Window::build_setup(const Context& context) const for (auto& sel : context.selections()) selections.push_back({sel.cursor(), sel.anchor()}); - return { m_position + m_position_offset, m_dimensions, + return { m_position, m_dimensions, context.buffer().timestamp(), compute_faces_hash(context.faces()), context.selections().main_index(), @@ -101,7 +101,7 @@ bool Window::needs_redraw(const Context& context) const { auto& selections = context.selections(); - if (m_position + m_position_offset != m_last_setup.position or + if (m_position != m_last_setup.position or m_dimensions != m_last_setup.dimensions or context.buffer().timestamp() != m_last_setup.timestamp or selections.main_index() != m_last_setup.main_selection or @@ -171,7 +171,7 @@ const DisplayBuffer& Window::update_display_buffer(const Context& context) m_display_buffer.optimize(); m_last_setup = build_setup(context); - set_position(setup.window_pos - m_position_offset); + set_position(setup.window_pos); if (profile and not (buffer().flags() & Buffer::Flags::Debug)) { @@ -190,13 +190,10 @@ void Window::set_position(DisplayCoord position) m_position.column = std::max(0_col, position.column); } -void Window::set_dimensions(DisplayCoord dimensions, bool offset_pos) +void Window::set_dimensions(DisplayCoord dimensions) { if (m_dimensions != dimensions) { - if (offset_pos) - m_position_offset += m_dimensions - dimensions; - m_dimensions = dimensions; run_hook_in_own_context("WinResize", format("{}.{}", dimensions.line, dimensions.column)); @@ -213,7 +210,7 @@ static void check_display_setup(const DisplaySetup& setup, const Window& window) DisplaySetup Window::compute_display_setup(const Context& context) const { - auto win_pos = m_position + m_position_offset; + auto win_pos = m_position; DisplayCoord offset = options()["scrolloff"].get<DisplayCoord>(); offset.line = std::min(offset.line, (m_dimensions.line + 1) / 2); |
