https://bugs.kde.org/show_bug.cgi?id=384282
--- Comment #2 from Boudewijn Rempt <b...@valdyas.org> --- Another note: this patch _should_ help, but it doesn't: diff --git a/libs/image/kis_base_node.cpp b/libs/image/kis_base_node.cpp index 48d7e6adac..586d8bdb6d 100644 --- a/libs/image/kis_base_node.cpp +++ b/libs/image/kis_base_node.cpp @@ -224,7 +224,7 @@ bool KisBaseNode::visible(bool recursive) const KisBaseNodeSP parentNode = parentCallback(); return recursive && isVisible && parentNode ? - parentNode->visible() : isVisible; + parentNode->visible(recursive) : isVisible; } void KisBaseNode::setVisible(bool visible, bool loading) diff --git a/libs/image/kis_base_node.h b/libs/image/kis_base_node.h index 54a15c1df7..f4991ffeaa 100644 --- a/libs/image/kis_base_node.h +++ b/libs/image/kis_base_node.h @@ -341,6 +341,9 @@ public: * @return true if this node is visible (i.e, active (except for * selection masks where visible and active properties are * different)) in the graph + * + * @param bool recursive if true, check whether all parents of + * this node are visible as well. */ virtual bool visible(bool recursive = false) const; diff --git a/libs/image/kis_layer.cc b/libs/image/kis_layer.cc index 0ca50e4fc5..c5f0aa706e 100644 --- a/libs/image/kis_layer.cc +++ b/libs/image/kis_layer.cc @@ -663,7 +663,7 @@ QRect KisLayer::updateProjection(const QRect& rect, KisNodeSP filthyNode) QRect updatedRect = rect; KisPaintDeviceSP originalDevice = original(); if (!rect.isValid() || - !visible() || + !visible(true) || !originalDevice) return QRect(); if (!needProjection() && !hasEffectMasks()) { lines 1-40/40 (END) We're really going to have to discuss this with Dmitry once he's done with his current work on making the pixel brush engine faster. -- You are receiving this mail because: You are watching all bug changes.