diff options
author | Michael Terry <michael.terry@canonical.com> | 2014-04-24 14:36:40 -0400 |
---|---|---|
committer | Michael Terry <michael.terry@canonical.com> | 2014-04-24 14:36:40 -0400 |
commit | ec0b529210d4a9d6a99dea07b06731d63b9d0815 (patch) | |
tree | ee6c86caa613d9a518d54ace0dc9481f7a582f69 /liblightdm-qt | |
parent | 695964bb9c1a92f1e3a78c5850451abcc8900b63 (diff) | |
download | lightdm-ec0b529210d4a9d6a99dea07b06731d63b9d0815.tar.gz |
First pass at reset support
Diffstat (limited to 'liblightdm-qt')
-rw-r--r-- | liblightdm-qt/QLightDM/greeter.h | 3 | ||||
-rw-r--r-- | liblightdm-qt/greeter.cpp | 24 |
2 files changed, 27 insertions, 0 deletions
diff --git a/liblightdm-qt/QLightDM/greeter.h b/liblightdm-qt/QLightDM/greeter.h index 82916d00..8abf5e92 100644 --- a/liblightdm-qt/QLightDM/greeter.h +++ b/liblightdm-qt/QLightDM/greeter.h @@ -79,6 +79,7 @@ public Q_SLOTS: void respond(const QString &response); void cancelAuthentication(); void setLanguage (const QString &language); + void setResettable (bool resettable); bool startSessionSync(const QString &session=QString()); QString ensureSharedDataDirSync(const QString &username); @@ -87,6 +88,8 @@ Q_SIGNALS: void showPrompt(QString text, QLightDM::Greeter::PromptType type); void authenticationComplete(); void autologinTimerExpired(); + void idle(); + void reset(); private: GreeterPrivate *d_ptr; diff --git a/liblightdm-qt/greeter.cpp b/liblightdm-qt/greeter.cpp index 12e2db4c..406a6321 100644 --- a/liblightdm-qt/greeter.cpp +++ b/liblightdm-qt/greeter.cpp @@ -33,6 +33,8 @@ protected: static void cb_showMessage(LightDMGreeter *greeter, const gchar *text, LightDMMessageType type, gpointer data); static void cb_authenticationComplete(LightDMGreeter *greeter, gpointer data); static void cb_autoLoginExpired(LightDMGreeter *greeter, gpointer data); + static void cb_idle(LightDMGreeter *greeter, gpointer data); + static void cb_reset(LightDMGreeter *greeter, gpointer data); private: Q_DECLARE_PUBLIC(Greeter) @@ -50,6 +52,8 @@ GreeterPrivate::GreeterPrivate(Greeter *parent) : g_signal_connect (ldmGreeter, "show-message", G_CALLBACK (cb_showMessage), this); g_signal_connect (ldmGreeter, "authentication-complete", G_CALLBACK (cb_authenticationComplete), this); g_signal_connect (ldmGreeter, "autologin-timer-expired", G_CALLBACK (cb_autoLoginExpired), this); + g_signal_connect (ldmGreeter, "idle", G_CALLBACK (cb_idle), this); + g_signal_connect (ldmGreeter, "reset", G_CALLBACK (cb_reset), this); } void GreeterPrivate::cb_showPrompt(LightDMGreeter *greeter, const gchar *text, LightDMPromptType type, gpointer data) @@ -88,6 +92,20 @@ void GreeterPrivate::cb_autoLoginExpired(LightDMGreeter *greeter, gpointer data) Q_EMIT that->q_func()->autologinTimerExpired(); } +void GreeterPrivate::cb_idle(LightDMGreeter *greeter, gpointer data) +{ + Q_UNUSED(greeter); + GreeterPrivate *that = static_cast<GreeterPrivate*>(data); + Q_EMIT that->q_func()->idle(); +} + +void GreeterPrivate::cb_reset(LightDMGreeter *greeter, gpointer data) +{ + Q_UNUSED(greeter); + GreeterPrivate *that = static_cast<GreeterPrivate*>(data); + Q_EMIT that->q_func()->reset(); +} + Greeter::Greeter(QObject *parent) : QObject(parent), d_ptr(new GreeterPrivate(this)) @@ -166,6 +184,12 @@ void Greeter::setLanguage (const QString &language) lightdm_greeter_set_language(d->ldmGreeter, language.toLocal8Bit().constData()); } +void Greeter::setResettable (bool resettable) +{ + Q_D(Greeter); + lightdm_greeter_set_resettable(d->ldmGreeter, resettable); +} + bool Greeter::startSessionSync(const QString &session) { Q_D(Greeter); |