Move SessionManager to Core plugin

Sessions are independent from projects, and this allows for removal of
e.g. the dependency from Bookmarks to ProjectExplorer.

Includes moving the command line arguments (-lastsession, <session>) to
Core plugin.

Change-Id: I6c578fd15c4990902e7196501de20f39376e90e8
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
This commit is contained in:
Eike Ziller
2023-05-23 15:05:38 +02:00
parent 53aeaa1ca4
commit edd1a89807
43 changed files with 216 additions and 187 deletions

View File

@@ -10,8 +10,7 @@
#include "cpptoolsreuse.h"
#include <coreplugin/icore.h>
#include <projectexplorer/session.h>
#include <coreplugin/session.h>
#include <utils/algorithm.h>
#include <utils/infolabel.h>
@@ -392,7 +391,7 @@ ClangdSettingsWidget::ClangdSettingsWidget(const ClangdSettings::Data &settingsD
connect(addButton, &QPushButton::clicked, this, [this, sessionsView] {
QInputDialog dlg(sessionsView);
QStringList sessions = ProjectExplorer::SessionManager::sessions();
QStringList sessions = Core::SessionManager::sessions();
QStringList currentSessions = d->sessionsModel.stringList();
for (const QString &s : std::as_const(currentSessions))
sessions.removeOne(s);