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: {
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();
}
}

View File

@ -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;