[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: [calligra/calligra/2.9] krita/image: Don't recalculate projection of nodes that are invisible
From: Dmitry Kazakov <dimula73 () gmail ! com>
Date: 2015-09-30 15:12:17
Message-ID: E1ZhJ3J-0006yj-Vr () scm ! kde ! org
[Download RAW message or body]
Git commit 70a9b78085ec6cf12c858c95eaa0d3dc817c4086 by Dmitry Kazakov.
Committed on 30/09/2015 at 15:11.
Pushed by dkazakov into branch 'calligra/2.9'.
Don't recalculate projection of nodes that are invisible
Anyway, they will be recalculated when the user sets them visible again
M +9 -3 krita/image/kis_async_merger.cpp
http://commits.kde.org/calligra/70a9b78085ec6cf12c858c95eaa0d3dc817c4086
diff --git a/krita/image/kis_async_merger.cpp b/krita/image/kis_async_merge=
r.cpp
index 277cf1d..4f79b16 100644
--- a/krita/image/kis_async_merger.cpp
+++ b/krita/image/kis_async_merger.cpp
@@ -245,18 +245,24 @@ void KisAsyncMerger::startMerge(KisBaseRectsWalker &w=
alker, bool notifyClones) {
if(item.m_position & KisMergeWalker::N_FILTHY) {
DEBUG_NODE_ACTION("Updating", "N_FILTHY", currentLeaf, applyRe=
ct);
currentLeaf->accept(originalVisitor);
- currentLeaf->projectionPlane()->recalculate(applyRect, walker.=
startNode());
+ if (currentLeaf->visible()) {
+ currentLeaf->projectionPlane()->recalculate(applyRect, wal=
ker.startNode());
+ }
}
else if(item.m_position & KisMergeWalker::N_ABOVE_FILTHY) {
DEBUG_NODE_ACTION("Updating", "N_ABOVE_FILTHY", currentLeaf, a=
pplyRect);
if(currentLeaf->dependsOnLowerNodes()) {
currentLeaf->accept(originalVisitor);
- currentLeaf->projectionPlane()->recalculate(applyRect, cur=
rentLeaf->node());
+ if (currentLeaf->visible()) {
+ currentLeaf->projectionPlane()->recalculate(applyRect,=
currentLeaf->node());
+ }
}
}
else if(item.m_position & KisMergeWalker::N_FILTHY_PROJECTION) {
DEBUG_NODE_ACTION("Updating", "N_FILTHY_PROJECTION", currentLe=
af, applyRect);
- currentLeaf->projectionPlane()->recalculate(applyRect, walker.=
startNode());
+ if (currentLeaf->visible()) {
+ currentLeaf->projectionPlane()->recalculate(applyRect, wal=
ker.startNode());
+ }
}
else /*if(item.m_position & KisMergeWalker::N_BELOW_FILTHY)*/ {
DEBUG_NODE_ACTION("Updating", "N_BELOW_FILTHY", currentLeaf, a=
pplyRect);
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic