diff --git a/src/app/ui/timeline/timeline.cpp b/src/app/ui/timeline/timeline.cpp index 88e546a9f..b531e7b7a 100644 --- a/src/app/ui/timeline/timeline.cpp +++ b/src/app/ui/timeline/timeline.cpp @@ -1748,7 +1748,12 @@ void Timeline::onBeforeRemoveLayer(DocEvent& ev) setLayer(layer_select); } +} +// We have to regenerate the layer rows (m_rows) after the layer is +// removed from the sprite. +void Timeline::onAfterRemoveLayer(DocEvent& ev) +{ regenerateRows(); showCurrentCel(); clearClipboardRange(); diff --git a/src/app/ui/timeline/timeline.h b/src/app/ui/timeline/timeline.h index f014c7646..4ec2338d7 100644 --- a/src/app/ui/timeline/timeline.h +++ b/src/app/ui/timeline/timeline.h @@ -142,6 +142,7 @@ namespace app { void onGeneralUpdate(DocEvent& ev) override; void onAddLayer(DocEvent& ev) override; void onBeforeRemoveLayer(DocEvent& ev) override; + void onAfterRemoveLayer(DocEvent& ev) override; void onAddFrame(DocEvent& ev) override; void onRemoveFrame(DocEvent& ev) override; void onSelectionBoundariesChanged(DocEvent& ev) override;