17 #ifndef DBUSUNITYSESSIONSERVICE_H 18 #define DBUSUNITYSESSIONSERVICE_H 20 #include <QDBusObjectPath> 22 #include "unitydbusobject.h" 24 typedef QList<QDBusObjectPath> QDbusList;
25 Q_DECLARE_METATYPE(QList<QDBusObjectPath>)
37 Q_CLASSINFO(
"D-Bus Interface",
"com.canonical.Unity.Session")
44 Q_INVOKABLE
void logout() { Logout(); }
45 Q_INVOKABLE
void reboot() { Reboot(); }
46 Q_INVOKABLE
void shutdown() { Shutdown(); }
47 Q_INVOKABLE
void endSession() { EndSession(); }
60 Q_SCRIPTABLE
void LogoutRequested(
bool have_inhibitors);
61 void logoutRequested(
bool have_inhibitors);
71 Q_SCRIPTABLE
void RebootRequested(
bool have_inhibitors);
72 void rebootRequested(
bool have_inhibitors);
82 Q_SCRIPTABLE
void ShutdownRequested(
bool have_inhibitors);
83 void shutdownRequested(
bool have_inhibitors);
91 Q_SCRIPTABLE
void LogoutReady();
97 Q_SCRIPTABLE
void LockRequested();
103 Q_SCRIPTABLE
void Locked();
108 Q_SCRIPTABLE
void Unlocked();
119 Q_SCRIPTABLE
void Logout();
128 Q_SCRIPTABLE
void Reboot();
137 Q_SCRIPTABLE
void Shutdown();
144 Q_SCRIPTABLE
void Suspend();
151 Q_SCRIPTABLE
void Hibernate();
160 Q_SCRIPTABLE
void HybridSleep();
170 Q_SCRIPTABLE
void RequestLogout();
180 Q_SCRIPTABLE
void RequestReboot();
191 Q_SCRIPTABLE
void RequestShutdown();
199 Q_SCRIPTABLE
void EndSession();
204 Q_SCRIPTABLE
bool CanHibernate()
const;
209 Q_SCRIPTABLE
bool CanSuspend()
const;
215 Q_SCRIPTABLE
bool CanHybridSleep()
const;
221 Q_SCRIPTABLE
bool CanReboot()
const;
226 Q_SCRIPTABLE
bool CanShutdown()
const;
231 Q_SCRIPTABLE
bool CanLock()
const;
236 Q_SCRIPTABLE QString UserName()
const;
241 Q_SCRIPTABLE QString RealName()
const;
246 Q_SCRIPTABLE QString HostName()
const;
251 Q_SCRIPTABLE
void PromptLock();
256 Q_SCRIPTABLE
void Lock();
261 Q_SCRIPTABLE
bool IsLocked()
const;
267 void switchToGreeter();
270 class DBusGnomeSessionManagerWrapper :
public UnityDBusObject
273 Q_CLASSINFO(
"D-Bus Interface",
"org.gnome.SessionManager.EndSessionDialog")
276 DBusGnomeSessionManagerWrapper();
277 ~DBusGnomeSessionManagerWrapper() =
default;
280 Q_SCRIPTABLE
void Open(
const unsigned int type,
const unsigned int arg_1,
const unsigned int max_wait,
const QList<QDBusObjectPath> &inhibitors);
283 void performAsyncCall(
const QString &method);
286 class DBusGnomeScreensaverWrapper:
public UnityDBusObject
289 Q_CLASSINFO(
"D-Bus Interface",
"org.gnome.ScreenSaver")
292 DBusGnomeScreensaverWrapper();
293 ~DBusGnomeScreensaverWrapper() =
default;
299 Q_SCRIPTABLE
bool GetActive()
const;
304 Q_SCRIPTABLE
void SetActive(
bool lock);
309 Q_SCRIPTABLE
void Lock();
314 Q_SCRIPTABLE quint32 GetActiveTime()
const;
316 Q_SCRIPTABLE
void SimulateUserActivity();
319 void ActiveChanged(
bool active);
322 class DBusScreensaverWrapper:
public UnityDBusObject
325 Q_CLASSINFO(
"D-Bus Interface",
"org.freedesktop.ScreenSaver")
328 DBusScreensaverWrapper();
329 ~DBusScreensaverWrapper() =
default;
335 Q_SCRIPTABLE
bool GetActive()
const;
340 Q_SCRIPTABLE
bool SetActive(
bool lock);
345 Q_SCRIPTABLE
void Lock();
350 Q_SCRIPTABLE quint32 GetActiveTime()
const;
355 Q_SCRIPTABLE quint32 GetSessionIdleTime()
const;
357 Q_SCRIPTABLE
void SimulateUserActivity();
360 void ActiveChanged(
bool active);
363 #endif // DBUSUNITYSESSIONSERVICE_H