mirror of
https://github.com/aseprite/aseprite.git
synced 2025-04-01 01:20:25 +00:00
Fix crash when we copy a cel w/drag-and-drop and change cel properties
This is because Context::notifyActiveSiteChanged() wasn't called on each onAdd/RemoveCel() events. This should fix several bugs.
This commit is contained in:
parent
f27836744f
commit
2f7e36a95e
@ -411,6 +411,16 @@ void DocumentView::onRemoveFrame(doc::DocumentEvent& ev)
|
||||
}
|
||||
}
|
||||
|
||||
void DocumentView::onAddCel(doc::DocumentEvent& ev)
|
||||
{
|
||||
UIContext::instance()->notifyActiveSiteChanged();
|
||||
}
|
||||
|
||||
void DocumentView::onRemoveCel(doc::DocumentEvent& ev)
|
||||
{
|
||||
UIContext::instance()->notifyActiveSiteChanged();
|
||||
}
|
||||
|
||||
void DocumentView::onTotalFramesChanged(doc::DocumentEvent& ev)
|
||||
{
|
||||
if (m_editor->frame() >= m_editor->sprite()->totalFrames()) {
|
||||
|
@ -69,6 +69,8 @@ namespace app {
|
||||
void onBeforeRemoveLayer(doc::DocumentEvent& ev) override;
|
||||
void onAddFrame(doc::DocumentEvent& ev) override;
|
||||
void onRemoveFrame(doc::DocumentEvent& ev) override;
|
||||
void onAddCel(doc::DocumentEvent& ev) override;
|
||||
void onRemoveCel(doc::DocumentEvent& ev) override;
|
||||
void onTotalFramesChanged(doc::DocumentEvent& ev) override;
|
||||
void onLayerRestacked(doc::DocumentEvent& ev) override;
|
||||
|
||||
|
@ -158,11 +158,6 @@ void ExpandCelCanvas::commit()
|
||||
|
||||
// And finally we add the cel again in the layer.
|
||||
m_transaction.execute(new cmd::AddCel(m_layer, m_cel));
|
||||
|
||||
// As we've created the cel, the active context site has changed
|
||||
// (context->site().cel() to be precise).
|
||||
if (m_document->context())
|
||||
m_document->context()->notifyActiveSiteChanged();
|
||||
}
|
||||
else if (m_celImage) {
|
||||
// If the size of each image is the same, we can create an undo
|
||||
|
Loading…
x
Reference in New Issue
Block a user