diff --git a/src/plugins/qmlprojectmanager/qmlprojectrunconfiguration.cpp b/src/plugins/qmlprojectmanager/qmlprojectrunconfiguration.cpp index 024a4bf5af1..f703e6d13f0 100644 --- a/src/plugins/qmlprojectmanager/qmlprojectrunconfiguration.cpp +++ b/src/plugins/qmlprojectmanager/qmlprojectrunconfiguration.cpp @@ -92,6 +92,8 @@ void QmlProjectRunConfiguration::ctor() // reset default settings in constructor connect(EditorManager::instance(), SIGNAL(currentEditorChanged(Core::IEditor*)), this, SLOT(changeCurrentFile(Core::IEditor*))); + connect(EditorManager::instance(), SIGNAL(currentDocumentStateChanged()), + this, SLOT(changeCurrentFile())); connect(target(), SIGNAL(kitChanged()), this, SLOT(updateEnabled())); @@ -263,6 +265,9 @@ bool QmlProjectRunConfiguration::fromMap(const QVariantMap &map) void QmlProjectRunConfiguration::changeCurrentFile(IEditor *editor) { + if (!editor) + editor = EditorManager::currentEditor(); + if (editor) m_currentFileFilename = editor->document()->filePath(); updateEnabled(); diff --git a/src/plugins/qmlprojectmanager/qmlprojectrunconfiguration.h b/src/plugins/qmlprojectmanager/qmlprojectrunconfiguration.h index beaaa899bff..cef09742c9b 100644 --- a/src/plugins/qmlprojectmanager/qmlprojectrunconfiguration.h +++ b/src/plugins/qmlprojectmanager/qmlprojectrunconfiguration.h @@ -91,7 +91,7 @@ public: ProjectExplorer::Abi abi() const; private slots: - void changeCurrentFile(Core::IEditor*); + void changeCurrentFile(Core::IEditor* = 0); void updateEnabled(); protected: