Invalidate full columns when we are selecting frames in the timeline

This commit is contained in:
David Capello 2018-03-29 16:25:43 -03:00
parent bf0e5db391
commit 26e215f698
2 changed files with 11 additions and 4 deletions

View File

@ -839,15 +839,14 @@ bool Timeline::onProcessMessage(Message* msg)
} }
case STATE_SELECTING_FRAMES: { case STATE_SELECTING_FRAMES: {
if (m_range.enabled()) invalidateRange();
invalidateHit(Hit(PART_RANGE_OUTLINE));
m_range = m_startRange; m_range = m_startRange;
m_range.endRange(m_layer, hit.frame); m_range.endRange(m_layer, hit.frame);
setFrame(m_clk.frame = hit.frame, true); setFrame(m_clk.frame = hit.frame, true);
invalidateHit(Hit(PART_RANGE_OUTLINE)); invalidateRange();
break; break;
} }
@ -3587,7 +3586,7 @@ void Timeline::clearClipboardRange()
m_clipboard_timer.stop(); m_clipboard_timer.stop();
} }
void Timeline::clearAndInvalidateRange() void Timeline::invalidateRange()
{ {
if (m_range.enabled()) { if (m_range.enabled()) {
for (const Layer* layer : m_range.selectedLayers()) for (const Layer* layer : m_range.selectedLayers())
@ -3596,6 +3595,13 @@ void Timeline::clearAndInvalidateRange()
invalidateFrame(frame); invalidateFrame(frame);
invalidateHit(Hit(PART_RANGE_OUTLINE)); invalidateHit(Hit(PART_RANGE_OUTLINE));
}
}
void Timeline::clearAndInvalidateRange()
{
if (m_range.enabled()) {
invalidateRange();
m_range.clearRange(); m_range.clearRange();
} }
} }

View File

@ -265,6 +265,7 @@ namespace app {
void invalidateHit(const Hit& hit); void invalidateHit(const Hit& hit);
void invalidateLayer(const Layer* layer); void invalidateLayer(const Layer* layer);
void invalidateFrame(const frame_t frame); void invalidateFrame(const frame_t frame);
void invalidateRange();
void regenerateRows(); void regenerateRows();
void regenerateTagBands(); void regenerateTagBands();
int visibleTagBands() const; int visibleTagBands() const;