From 53c161fb584aede595e7ea3961ca6f5f17d92bc1 Mon Sep 17 00:00:00 2001 From: Marco Martin Date: Tue, 5 Mar 2013 14:23:52 +0100 Subject: [PATCH] packages without structure are invalid --- src/plasma/package.cpp | 4 ++++ src/scriptengines/qml/plasmoid/appletinterface.cpp | 1 - src/shell/qmlpackages/desktop/contents/views/Desktop.qml | 2 +- src/shell/qmlpackages/desktop/contents/views/Panel.qml | 2 +- src/shell/view.cpp | 1 + 5 files changed, 7 insertions(+), 3 deletions(-) diff --git a/src/plasma/package.cpp b/src/plasma/package.cpp index 3c4b981ab..5531dc34e 100644 --- a/src/plasma/package.cpp +++ b/src/plasma/package.cpp @@ -75,6 +75,10 @@ Package &Package::operator=(const Package &rhs) bool Package::isValid() const { + if (!d->structure) { + return false; + } + if (d->checkedValid) { return d->valid; } diff --git a/src/scriptengines/qml/plasmoid/appletinterface.cpp b/src/scriptengines/qml/plasmoid/appletinterface.cpp index 268cb76c4..25353fe85 100644 --- a/src/scriptengines/qml/plasmoid/appletinterface.cpp +++ b/src/scriptengines/qml/plasmoid/appletinterface.cpp @@ -105,7 +105,6 @@ void AppletInterface::init() engine->setNetworkAccessManagerFactory(new PackageAccessManagerFactory(m_appletScriptEngine->package())); m_qmlObject->setSource(QUrl::fromLocalFile(m_appletScriptEngine->mainScript())); - if (!m_qmlObject->engine() || !m_qmlObject->engine()->rootContext() || !m_qmlObject->engine()->rootContext()->isValid() || m_qmlObject->mainComponent()->isError()) { QString reason; diff --git a/src/shell/qmlpackages/desktop/contents/views/Desktop.qml b/src/shell/qmlpackages/desktop/contents/views/Desktop.qml index 9c9f37ce1..786f88e77 100644 --- a/src/shell/qmlpackages/desktop/contents/views/Desktop.qml +++ b/src/shell/qmlpackages/desktop/contents/views/Desktop.qml @@ -24,7 +24,7 @@ import org.kde.plasma.core 0.1 as PlasmaCore Rectangle { id: root - color: Qt.rgba(0,0,0,64); // translucent black + color: "black" width: 640 height: 480 diff --git a/src/shell/qmlpackages/desktop/contents/views/Panel.qml b/src/shell/qmlpackages/desktop/contents/views/Panel.qml index 601fc8c9a..a28746523 100644 --- a/src/shell/qmlpackages/desktop/contents/views/Panel.qml +++ b/src/shell/qmlpackages/desktop/contents/views/Panel.qml @@ -31,7 +31,7 @@ PlasmaCore.FrameSvgItem { property Item containment onContainmentChanged: { - print("New Containment: " + containment) + print("New panel Containment: " + containment) //containment.parent = root containment.visible = true containment.anchors.fill = root diff --git a/src/shell/view.cpp b/src/shell/view.cpp index fdfe2e965..f6875baea 100644 --- a/src/shell/view.cpp +++ b/src/shell/view.cpp @@ -101,6 +101,7 @@ void View::setContainment(Plasma::Containment *cont) } QObject *graphicObject = m_containment.data()->property("graphicObject").value(); + if (graphicObject) { qDebug() << "using as graphic containment" << graphicObject << m_containment.data();