From 26e215f698dd2347af2502043c5c755985f24913 Mon Sep 17 00:00:00 2001 From: David Capello Date: Thu, 29 Mar 2018 16:25:43 -0300 Subject: [PATCH] Invalidate full columns when we are selecting frames in the timeline --- src/app/ui/timeline/timeline.cpp | 14 ++++++++++---- src/app/ui/timeline/timeline.h | 1 + 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/src/app/ui/timeline/timeline.cpp b/src/app/ui/timeline/timeline.cpp index 201b15a32..67520d328 100644 --- a/src/app/ui/timeline/timeline.cpp +++ b/src/app/ui/timeline/timeline.cpp @@ -839,15 +839,14 @@ bool Timeline::onProcessMessage(Message* msg) } case STATE_SELECTING_FRAMES: { - if (m_range.enabled()) - invalidateHit(Hit(PART_RANGE_OUTLINE)); + invalidateRange(); m_range = m_startRange; m_range.endRange(m_layer, hit.frame); setFrame(m_clk.frame = hit.frame, true); - invalidateHit(Hit(PART_RANGE_OUTLINE)); + invalidateRange(); break; } @@ -3587,7 +3586,7 @@ void Timeline::clearClipboardRange() m_clipboard_timer.stop(); } -void Timeline::clearAndInvalidateRange() +void Timeline::invalidateRange() { if (m_range.enabled()) { for (const Layer* layer : m_range.selectedLayers()) @@ -3596,6 +3595,13 @@ void Timeline::clearAndInvalidateRange() invalidateFrame(frame); invalidateHit(Hit(PART_RANGE_OUTLINE)); + } +} + +void Timeline::clearAndInvalidateRange() +{ + if (m_range.enabled()) { + invalidateRange(); m_range.clearRange(); } } diff --git a/src/app/ui/timeline/timeline.h b/src/app/ui/timeline/timeline.h index 71b325902..a991ecb6f 100644 --- a/src/app/ui/timeline/timeline.h +++ b/src/app/ui/timeline/timeline.h @@ -265,6 +265,7 @@ namespace app { void invalidateHit(const Hit& hit); void invalidateLayer(const Layer* layer); void invalidateFrame(const frame_t frame); + void invalidateRange(); void regenerateRows(); void regenerateTagBands(); int visibleTagBands() const;