aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKai Koehne <kai.koehne@nokia.com>2011-10-15 16:56:40 +0200
committerQt by Nokia <qt-info@nokia.com>2011-10-17 14:56:09 +0200
commit02c170fa0d19ffd06c6b27f26af779cde8f3c4c5 (patch)
tree762299599a18f817724804e1bf4a7ef046cca4bf
parentcae0ee6a8256144464e0a4d92ccffcde891d0765 (diff)
Fix QDeclarativeInspector when starting with ,block
Change-Id: I3797567f22f61abf59ec5332ebc74b3fa37ede93 (cherrypicked from commit 6cb43a9b72c67b71409a59fdeb419f390441f0c7) Reviewed-by: Aurindam Jana <aurindam.jana@nokia.com>
-rw-r--r--src/declarative/debugger/qdeclarativeinspectorservice.cpp14
-rw-r--r--src/declarative/debugger/qdeclarativeinspectorservice_p.h1
2 files changed, 13 insertions, 2 deletions
diff --git a/src/declarative/debugger/qdeclarativeinspectorservice.cpp b/src/declarative/debugger/qdeclarativeinspectorservice.cpp
index d19cae74a4..e618c69177 100644
--- a/src/declarative/debugger/qdeclarativeinspectorservice.cpp
+++ b/src/declarative/debugger/qdeclarativeinspectorservice.cpp
@@ -65,11 +65,13 @@ QDeclarativeInspectorService *QDeclarativeInspectorService::instance()
void QDeclarativeInspectorService::addView(QObject *view)
{
m_views.append(view);
+ updateStatus();
}
void QDeclarativeInspectorService::removeView(QObject *view)
{
m_views.removeAll(view);
+ updateStatus();
}
void QDeclarativeInspectorService::sendMessage(const QByteArray &message)
@@ -82,10 +84,18 @@ void QDeclarativeInspectorService::sendMessage(const QByteArray &message)
void QDeclarativeInspectorService::statusChanged(Status status)
{
- if (m_views.isEmpty())
+ updateStatus();
+}
+
+void QDeclarativeInspectorService::updateStatus()
+{
+ if (m_views.isEmpty()) {
+ if (m_inspectorPlugin)
+ m_inspectorPlugin->deactivate();
return;
+ }
- if (status == Enabled) {
+ if (status() == Enabled) {
if (!m_inspectorPlugin)
m_inspectorPlugin = loadInspectorPlugin();
diff --git a/src/declarative/debugger/qdeclarativeinspectorservice_p.h b/src/declarative/debugger/qdeclarativeinspectorservice_p.h
index c660fb4b69..df51ab8bfe 100644
--- a/src/declarative/debugger/qdeclarativeinspectorservice_p.h
+++ b/src/declarative/debugger/qdeclarativeinspectorservice_p.h
@@ -88,6 +88,7 @@ protected:
virtual void messageReceived(const QByteArray &);
private:
+ void updateStatus();
static QDeclarativeInspectorInterface *loadInspectorPlugin();
QList<QObject*> m_views;