diff options
author | David Faure <faure+bluesystems@kde.org> | 2012-11-23 15:29:03 +0100 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2012-11-28 16:21:57 +0100 |
commit | eca4936ea213536966738d6fd4e076b493afa5b4 (patch) | |
tree | 7c5964b8c186b0910711e863e967df21cd31ef76 /src/gui/kernel/qguiapplication.h | |
parent | b9c8cf2527fbbcfad194bd84f869cf0fa03ae8fd (diff) |
Move session management code from QApplication to QGuiApplication.
QSessionManager was already in QtGui, but not usable since the only API
to get to it was still in QtWidgets. Session management isn't related
to widgets, it also applies to QML apps on the desktop.
The virtual commitData and saveState methods have been removed,
given the two signals which exist since 4.2, and an additional
isSessionSaving() method was added instead.
Change-Id: I8099e70df133303e74456706827da21f013fcc6a
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Diffstat (limited to 'src/gui/kernel/qguiapplication.h')
-rw-r--r-- | src/gui/kernel/qguiapplication.h | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/gui/kernel/qguiapplication.h b/src/gui/kernel/qguiapplication.h index 6ff5ff75ac..27ea86ec6e 100644 --- a/src/gui/kernel/qguiapplication.h +++ b/src/gui/kernel/qguiapplication.h @@ -54,6 +54,7 @@ QT_BEGIN_HEADER QT_BEGIN_NAMESPACE +class QSessionManager; class QGuiApplicationPrivate; class QPlatformNativeInterface; class QPlatformIntegration; @@ -145,12 +146,24 @@ public: static int exec(); bool notify(QObject *, QEvent *); +#ifndef QT_NO_SESSIONMANAGER + // session management + bool isSessionRestored() const; + QString sessionId() const; + QString sessionKey() const; + bool isSavingSession() const; +#endif + Q_SIGNALS: void fontDatabaseChanged(); void screenAdded(QScreen *screen); void lastWindowClosed(); void focusObjectChanged(QObject *focusObject); void focusWindowChanged(QWindow *focusWindow); +#ifndef QT_NO_SESSIONMANAGER + void commitDataRequest(QSessionManager &sessionManager); + void saveStateRequest(QSessionManager &sessionManager); +#endif protected: bool event(QEvent *); |