From 685c08f1c48813f9d222446f0516b8e20635607e Mon Sep 17 00:00:00 2001 From: sandman Date: Sun, 06 Oct 2002 22:19:48 +0000 Subject: - password line-edit now gets focus on user change - the "OPIE - please wait" logo is displayed while the launcher is loading --- (limited to 'core/opie-login/loginwindowimpl.cpp') diff --git a/core/opie-login/loginwindowimpl.cpp b/core/opie-login/loginwindowimpl.cpp index 63baaa6..c59338f 100644 --- a/core/opie-login/loginwindowimpl.cpp +++ b/core/opie-login/loginwindowimpl.cpp @@ -9,7 +9,9 @@ #include #include #include +#include +#include #include #include @@ -88,6 +90,7 @@ void LoginWindowImpl::toggleEchoMode ( bool t ) m_password-> setEchoMode ( t ? QLineEdit::Normal : QLineEdit::Password ); } + QStringList LoginWindowImpl::getAllUsers ( ) { struct passwd *pwd; @@ -300,6 +303,19 @@ void LoginWindowImpl::login ( ) if ( ok ) { if ( changeIdentity ( user )) { + // Draw a big wait icon, the image can be altered in later revisions + QWidget *d = QApplication::desktop ( ); + m_input-> hideInputMethod ( ); + + QImage img = Resource::loadImage( "launcher/new_wait" ); + QPixmap pix; + pix. convertFromImage ( img ); + QLabel *w = new QLabel ( 0, "wait hack!", WStyle_Customize | WStyle_NoBorder | WStyle_Tool ); + w-> setPixmap ( pix ); + w-> setAlignment ( AlignCenter ); + w-> showMaximized ( ); + qApp-> processEvents ( ); + char *opie = ::getenv ( "OPIEDIR" ); char *arg = new char [::strlen ( opie ) + 8 + 1]; @@ -309,6 +325,9 @@ void LoginWindowImpl::login ( ) // start qpe via a login shell ::execl ( "/bin/sh", "-sh", "-c", arg, 0 ); + w-> hide ( ); + delete w; + QMessageBox::critical ( this, tr( "Failure" ), tr( "Could not start OPIE\n(%1)." ). arg ( arg )); delete [] arg; -- cgit v0.9.0.2