[aseprite] 89/308: Fix crash when we copy a cel w/drag-and-drop and change cel properties
Tobias Hansen
thansen at moszumanska.debian.org
Tue Mar 8 02:44:56 UTC 2016
This is an automated email from the git hooks/post-receive script.
thansen pushed a commit to branch master
in repository aseprite.
commit 2f7e36a95e10e0e3b0e8cf3967a198af6e7be165
Author: David Capello <davidcapello at gmail.com>
Date: Fri Dec 11 14:27:30 2015 -0300
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.
---
src/app/ui/document_view.cpp | 10 ++++++++++
src/app/ui/document_view.h | 2 ++
src/app/util/expand_cel_canvas.cpp | 5 -----
3 files changed, 12 insertions(+), 5 deletions(-)
diff --git a/src/app/ui/document_view.cpp b/src/app/ui/document_view.cpp
index 1988156..ea1df26 100644
--- a/src/app/ui/document_view.cpp
+++ b/src/app/ui/document_view.cpp
@@ -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()) {
diff --git a/src/app/ui/document_view.h b/src/app/ui/document_view.h
index 2075fa5..e8c7e16 100644
--- a/src/app/ui/document_view.h
+++ b/src/app/ui/document_view.h
@@ -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;
diff --git a/src/app/util/expand_cel_canvas.cpp b/src/app/util/expand_cel_canvas.cpp
index 69ddf63..7206392 100644
--- a/src/app/util/expand_cel_canvas.cpp
+++ b/src/app/util/expand_cel_canvas.cpp
@@ -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
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-games/aseprite.git
More information about the Pkg-games-commits
mailing list