From 2bf3466b53bf9a92687ea2faffc6208babb9eec6 Mon Sep 17 00:00:00 2001 From: David Edmundson Date: Thu, 17 Jul 2014 19:32:17 +0200 Subject: [PATCH] Put compose over border onto the slow path that renders the entire item --- src/declarativeimports/core/framesvgitem.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/declarativeimports/core/framesvgitem.cpp b/src/declarativeimports/core/framesvgitem.cpp index 60379e988..551b65bae 100644 --- a/src/declarativeimports/core/framesvgitem.cpp +++ b/src/declarativeimports/core/framesvgitem.cpp @@ -305,6 +305,11 @@ void FrameSvgItem::geometryChanged(const QRectF &newGeometry, void FrameSvgItem::doUpdate() { + FrameData *frame = frameData(); + if (!frame) { + return; + } + if (implicitWidth() <= 0) { setImplicitWidth(m_frameSvg->marginSize(Plasma::Types::LeftMargin) + m_frameSvg->marginSize(Plasma::Types::RightMargin)); } @@ -314,7 +319,7 @@ void FrameSvgItem::doUpdate() } bool hasOverlay = !actualPrefix().startsWith(QLatin1String("mask-")) && m_frameSvg->hasElement(actualPrefix() % "overlay"); - m_fastPath = !hasOverlay; + m_fastPath = !hasOverlay && !frame->composeOverBorder; m_textureChanged = true; update(); }