diff --git a/src/plugins/qt4projectmanager/qt-maemo/maemodeployablelistmodel.cpp b/src/plugins/qt4projectmanager/qt-maemo/maemodeployablelistmodel.cpp
index caae7b25b03873e1e5d5515f2a0b0936ee8992b6..920c61f075cae1b54dff16ddacc5a5d64f39b724 100644
--- a/src/plugins/qt4projectmanager/qt-maemo/maemodeployablelistmodel.cpp
+++ b/src/plugins/qt4projectmanager/qt-maemo/maemodeployablelistmodel.cpp
@@ -219,7 +219,7 @@ QString MaemoDeployableListModel::projectName() const
 
 QString MaemoDeployableListModel::projectDir() const
 {
-    return m_proFileNode->path();
+    return QFileInfo(m_proFileNode->path()).dir().path();
 }
 
 } // namespace Qt4ProjectManager
diff --git a/src/plugins/qt4projectmanager/qt-maemo/maemodeployables.cpp b/src/plugins/qt4projectmanager/qt-maemo/maemodeployables.cpp
index 52e8da93d997b7fdc1a9b30140df31f271738ec0..203b0333a0483fe423627c94d266543828429afc 100644
--- a/src/plugins/qt4projectmanager/qt-maemo/maemodeployables.cpp
+++ b/src/plugins/qt4projectmanager/qt-maemo/maemodeployables.cpp
@@ -56,16 +56,24 @@ namespace Qt4ProjectManager {
 namespace Internal {
 
 MaemoDeployables::MaemoDeployables(MaemoPackageCreationStep *packagingStep)
-    : m_packagingStep(packagingStep)
+    : m_packagingStep(packagingStep), m_proFilesWatcher(0)
 {
     QTimer::singleShot(0, this, SLOT(createModels()));
 }
 
 void MaemoDeployables::createModels()
 {
-    const Qt4ProFileNode *rootNode = m_packagingStep->qt4BuildConfiguration()
+    m_listModels.clear();
+    Qt4ProFileNode *rootNode = m_packagingStep->qt4BuildConfiguration()
         ->qt4Target()->qt4Project()->rootProjectNode();
     createModels(rootNode);
+    if (!m_proFilesWatcher) {
+        m_proFilesWatcher = new Qt4NodesWatcher(this);
+        connect(m_proFilesWatcher,
+            SIGNAL(proFileUpdated(Qt4ProjectManager::Internal::Qt4ProFileNode*)),
+            this, SLOT(createModels()));
+        rootNode->registerWatcher(m_proFilesWatcher);
+    }
     emit modelsCreated();
 }
 
diff --git a/src/plugins/qt4projectmanager/qt-maemo/maemodeployables.h b/src/plugins/qt4projectmanager/qt-maemo/maemodeployables.h
index 7c66c5d39eef30ac80688c14175464a9a1036ef6..d732882f6904777ebe1411f2c6dc77cfabe5107d 100644
--- a/src/plugins/qt4projectmanager/qt-maemo/maemodeployables.h
+++ b/src/plugins/qt4projectmanager/qt-maemo/maemodeployables.h
@@ -51,6 +51,7 @@ namespace Qt4ProjectManager {
 namespace Internal {
 class MaemoDeployableListModel;
 class MaemoPackageCreationStep;
+class Qt4NodesWatcher;
 class Qt4ProFileNode;
 
 class MaemoDeployables : public QObject
@@ -75,6 +76,7 @@ private:
 
     QList<MaemoDeployableListModel *> m_listModels;
     MaemoPackageCreationStep * const m_packagingStep;
+    Qt4NodesWatcher *m_proFilesWatcher;
 };
 
 } // namespace Qt4ProjectManager
diff --git a/src/plugins/qt4projectmanager/qt-maemo/maemopackagecreationwidget.cpp b/src/plugins/qt4projectmanager/qt-maemo/maemopackagecreationwidget.cpp
index 4360badbbfe725e0fa7911bb15b45ea5eeaed1c4..6c0c5cf13f632ef199d1094f80d2db475a9f2f2e 100644
--- a/src/plugins/qt4projectmanager/qt-maemo/maemopackagecreationwidget.cpp
+++ b/src/plugins/qt4projectmanager/qt-maemo/maemopackagecreationwidget.cpp
@@ -71,12 +71,9 @@ MaemoPackageCreationWidget::MaemoPackageCreationWidget(MaemoPackageCreationStep
     m_ui->patch->setValue(list.value(2, QLatin1String("0")).toInt());
     versionInfoChanged();
 
-    if (step->deployables()->modelCount() > 0) {
-        handleModelsCreated();
-    } else {
-        connect(m_step->deployables(), SIGNAL(modelsCreated()), this,
-            SLOT(handleModelsCreated()));
-    }
+    connect(m_step->deployables(), SIGNAL(modelsCreated()), this,
+        SLOT(handleModelsCreated()));
+    handleModelsCreated();
 }
 
 void MaemoPackageCreationWidget::init()
@@ -107,6 +104,7 @@ void MaemoPackageCreationWidget::versionInfoChanged()
 
 void MaemoPackageCreationWidget::handleModelsCreated()
 {
+    m_ui->tabWidget->clear();
     for (int i = 0; i < m_step->deployables()->modelCount(); ++i) {
         MaemoDeployableListModel * const model
             = m_step->deployables()->modelAt(i);