diff --git a/share/qtcreator/qmljsdebugger/include/jsdebuggeragent.h b/share/qtcreator/qmljsdebugger/include/jsdebuggeragent.h
index d27fea95235da0cfacd44f8d64102f42b5145f0d..83b806ca65e6377a9a1ad0bd2e0fa1a0835f01cf 100644
--- a/share/qtcreator/qmljsdebugger/include/jsdebuggeragent.h
+++ b/share/qtcreator/qmljsdebugger/include/jsdebuggeragent.h
@@ -62,13 +62,15 @@
 
 #include "qmljsdebugger_global.h"
 
-QT_BEGIN_NAMESPACE
+QT_FORWARD_DECLARE_CLASS(QScriptContext);
+
+namespace QmlObserver {
 
 class JSAgentWatchData;
-class QScriptContext;
 
 class QMLJSDEBUGGER_EXPORT JSDebuggerAgent : public QDeclarativeDebugService , public QScriptEngineAgent
-{ Q_OBJECT
+{
+    Q_OBJECT
 public:
     JSDebuggerAgent(QScriptEngine *engine);
     ~JSDebuggerAgent();
@@ -135,6 +137,6 @@ private:
     Q_DISABLE_COPY(JSDebuggerAgent)
 };
 
-QT_END_NAMESPACE
+} // namespace QmlObserver
 
 #endif
diff --git a/share/qtcreator/qmljsdebugger/include/qdeclarativeobserverservice.h b/share/qtcreator/qmljsdebugger/include/qdeclarativeobserverservice.h
index b967d2475eed1adf9213dc3d6bffb32963d758ae..220b8186e8a58ffbde408ce7c9b82ad5e47cf633 100644
--- a/share/qtcreator/qmljsdebugger/include/qdeclarativeobserverservice.h
+++ b/share/qtcreator/qmljsdebugger/include/qdeclarativeobserverservice.h
@@ -48,13 +48,13 @@
 
 #include <QHash>
 
-QT_BEGIN_NAMESPACE
+QT_FORWARD_DECLARE_CLASS(QColor)
+QT_FORWARD_DECLARE_CLASS(QDeclarativeEngine)
+QT_FORWARD_DECLARE_CLASS(QDeclarativeContext)
+QT_FORWARD_DECLARE_CLASS(QDeclarativeWatcher)
+QT_FORWARD_DECLARE_CLASS(QDataStream)
 
-class QColor;
-class QDeclarativeEngine;
-class QDeclarativeContext;
-class QDeclarativeWatcher;
-class QDataStream;
+namespace QmlObserver {
 
 class QMLJSDEBUGGER_EXPORT QDeclarativeObserverService : public QDeclarativeDebugService
 {
@@ -105,6 +105,6 @@ private:
     QHash<int, QString> m_stringIdForObjectId;
 };
 
-QT_END_NAMESPACE
+} // namespace QmlObserver
 
 #endif // QDECLARATIVEDESIGNDEBUGSERVER_H
diff --git a/share/qtcreator/qmljsdebugger/jsdebuggeragent.cpp b/share/qtcreator/qmljsdebugger/jsdebuggeragent.cpp
index 1ace46e2cd10003188590735d5e8546bd664a804..2381080e33d91cd7d3e669fb16123ce4fa7fdee4 100644
--- a/share/qtcreator/qmljsdebugger/jsdebuggeragent.cpp
+++ b/share/qtcreator/qmljsdebugger/jsdebuggeragent.cpp
@@ -50,7 +50,7 @@
 #include <QtCore/QDateTime>
 #include <QtScript/qscriptvalueiterator.h>
 
-QT_BEGIN_NAMESPACE
+namespace QmlObserver {
 
 class JSDebuggerAgent::SetupExecEnv {
     JSDebuggerAgent* agent;
@@ -510,4 +510,4 @@ void JSDebuggerAgent::enabledChanged(bool on)
     QDeclarativeDebugService::enabledChanged(on);
 }
 
-QT_END_NAMESPACE
+} // namespace QmlObserver
diff --git a/share/qtcreator/qmljsdebugger/qdeclarativeobserverservice.cpp b/share/qtcreator/qmljsdebugger/qdeclarativeobserverservice.cpp
index 6fc218705f84877d94f0f35e151580a692884a80..a5a122774aedcfdb0b768ac65063bf9a378aeccd 100644
--- a/share/qtcreator/qmljsdebugger/qdeclarativeobserverservice.cpp
+++ b/share/qtcreator/qmljsdebugger/qdeclarativeobserverservice.cpp
@@ -46,6 +46,8 @@
 
 #include <QDebug>
 
+namespace QmlObserver {
+
 Q_GLOBAL_STATIC(QDeclarativeObserverService, serviceInstance)
 
 QDeclarativeObserverService::QDeclarativeObserverService()
@@ -233,3 +235,5 @@ QString QDeclarativeObserverService::idStringForObject(QObject *obj) const
     QString idString = m_stringIdForObjectId.value(id, QString());
     return idString;
 }
+
+} // namespace QmlObserver
diff --git a/share/qtcreator/qmljsdebugger/qdeclarativeviewobserver_p.h b/share/qtcreator/qmljsdebugger/qdeclarativeviewobserver_p.h
index fcf9b18a12c7ca2e07074e991b520257a48d1cb0..5c2a640066b0a8c4ab947e9e9b7a677a739aba90 100644
--- a/share/qtcreator/qmljsdebugger/qdeclarativeviewobserver_p.h
+++ b/share/qtcreator/qmljsdebugger/qdeclarativeviewobserver_p.h
@@ -37,10 +37,9 @@
 #include "qdeclarativeviewobserver.h"
 #include "qdeclarativeobserverservice.h"
 
-QT_FORWARD_DECLARE_CLASS(JSDebuggerAgent)
-
 namespace QmlObserver {
 
+class JSDebuggerAgent;
 class QDeclarativeViewObserver;
 class SelectionTool;
 class ZoomTool;
@@ -54,7 +53,6 @@ class AbstractFormEditorTool;
 
 class QDeclarativeViewObserverPrivate
 {
-
 public:
 
     enum ContextFlags {
diff --git a/src/tools/qml/qmlobserver/qmlruntime.cpp b/src/tools/qml/qmlobserver/qmlruntime.cpp
index 5a84cff33c015f6458fd5f725636df8494f468f0..7b8c6afc769917ad3003181ae83ac3bc4ff79155 100644
--- a/src/tools/qml/qmlobserver/qmlruntime.cpp
+++ b/src/tools/qml/qmlobserver/qmlruntime.cpp
@@ -794,10 +794,10 @@ void QDeclarativeViewer::createMenu()
     designModeBehaviorAction->setShortcut(QKeySequence("Ctrl+D"));
     designModeBehaviorAction->setCheckable(true);
     designModeBehaviorAction->setChecked(observer->designModeBehavior());
-    designModeBehaviorAction->setEnabled(QDeclarativeObserverService::hasDebuggingClient());
+    designModeBehaviorAction->setEnabled(QmlObserver::QDeclarativeObserverService::hasDebuggingClient());
     connect(designModeBehaviorAction, SIGNAL(triggered(bool)), this, SLOT(setDesignModeBehavior(bool)));
     connect(observer, SIGNAL(designModeBehaviorChanged(bool)), designModeBehaviorAction, SLOT(setChecked(bool)));
-    connect(QDeclarativeObserverService::instance(), SIGNAL(debuggingClientChanged(bool)), designModeBehaviorAction, SLOT(setEnabled(bool)));
+    connect(QmlObserver::QDeclarativeObserverService::instance(), SIGNAL(debuggingClientChanged(bool)), designModeBehaviorAction, SLOT(setEnabled(bool)));
 
     QAction *proxyAction = new QAction(tr("HTTP &Proxy..."), this);
     connect(proxyAction, SIGNAL(triggered()), this, SLOT(showProxySettings()));