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

@@ -9,6 +9,8 @@
#include <extensionsystem/iplugin.h>
#include <utils/environment.h>
#include <memory>
QT_BEGIN_NAMESPACE
class QMenu;
QT_END_NAMESPACE
@@ -20,6 +22,7 @@ class PathChooser;
namespace Core {
class FolderNavigationWidgetFactory;
class SessionManager;
namespace Internal {
@@ -74,6 +77,7 @@ private:
MainWindow *m_mainWindow = nullptr;
EditMode *m_editMode = nullptr;
Locator *m_locator = nullptr;
std::unique_ptr<SessionManager> m_sessionManager;
FolderNavigationWidgetFactory *m_folderNavigationWidgetFactory = nullptr;
Utils::Environment m_startupSystemEnvironment;
Utils::EnvironmentItems m_environmentChanges;