diff options
author | Simon Rettberg | 2021-08-05 10:51:39 +0200 |
---|---|---|
committer | Simon Rettberg | 2021-08-05 10:51:39 +0200 |
commit | ccd88b7fa33fc27e3d71b57f59dea55ed7430d6e (patch) | |
tree | 35edaff0695b7ed47a3f648f8295ea944935f0a0 /src/loginform.h | |
parent | Prefix usernames that start with a digit with _x_ (diff) | |
download | slxgreeter-ccd88b7fa33fc27e3d71b57f59dea55ed7430d6e.tar.gz slxgreeter-ccd88b7fa33fc27e3d71b57f59dea55ed7430d6e.tar.xz slxgreeter-ccd88b7fa33fc27e3d71b57f59dea55ed7430d6e.zip |
Add shibboleth login via browser
Diffstat (limited to 'src/loginform.h')
-rw-r--r-- | src/loginform.h | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/src/loginform.h b/src/loginform.h index 79a862e..9f65194 100644 --- a/src/loginform.h +++ b/src/loginform.h @@ -26,6 +26,8 @@ namespace Ui class LoginForm; } +class WebView; + class LoginForm : public QWidget { Q_OBJECT @@ -36,17 +38,25 @@ public: virtual void setFocus(Qt::FocusReason reason); public slots: - void startAuthentication(); + void startFormBasedAuthentication(); void leaveDropDownActivated(int index); void onPrompt(QString prompt, QLightDM::Greeter::PromptType promptType); void onMessage(QString prompt, QLightDM::Greeter::MessageType messageType); void onAuthenticationComplete(); void cancelLogin(); void hideMessage(); + void startAuthAs(const QString &user, const QString &pass); + +private slots: + void setBrowserSize(); + +signals: + void resized(); protected: virtual void keyPressEvent(QKeyEvent *event) override; virtual bool eventFilter(QObject *object, QEvent *event) override; + virtual void resizeEvent(QResizeEvent *) override; private: void initialize(); @@ -56,6 +66,7 @@ private: void setCurrentSession(QString session); void showMessage(QString message, bool error); void resetForm(); + void enableInputs(bool enable); Ui::LoginForm *ui; QMap<int, void (QLightDM::PowerInterface::*)()> powerSlots; @@ -63,6 +74,10 @@ private: QTimer cancelLoginTimer; QTimer hideMessageTimer; QTimer resetFormTimer; + QString password; + QSize shibSize, origSize; + + WebView *browser; bool clearMsg; int capsOn; |