summaryrefslogtreecommitdiffstats
path: root/src/declarative/debugger/qdeclarativeinspectorservice.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/declarative/debugger/qdeclarativeinspectorservice.cpp')
-rw-r--r--src/declarative/debugger/qdeclarativeinspectorservice.cpp14
1 files changed, 12 insertions, 2 deletions
diff --git a/src/declarative/debugger/qdeclarativeinspectorservice.cpp b/src/declarative/debugger/qdeclarativeinspectorservice.cpp
index 9fec006..15dbf58 100644
--- a/src/declarative/debugger/qdeclarativeinspectorservice.cpp
+++ b/src/declarative/debugger/qdeclarativeinspectorservice.cpp
@@ -67,11 +67,13 @@ QDeclarativeInspectorService *QDeclarativeInspectorService::instance()
void QDeclarativeInspectorService::addView(QDeclarativeView *view)
{
m_views.append(view);
+ updateStatus();
}
void QDeclarativeInspectorService::removeView(QDeclarativeView *view)
{
m_views.removeAll(view);
+ updateStatus();
}
void QDeclarativeInspectorService::sendMessage(const QByteArray &message)
@@ -84,10 +86,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();