-rw-r--r-- | core/opie-login/loginwindow.ui | 1 | ||||
-rw-r--r-- | core/opie-login/loginwindowimpl.cpp | 43 | ||||
-rw-r--r-- | core/opie-login/loginwindowimpl.h | 2 |
3 files changed, 45 insertions, 1 deletions
diff --git a/core/opie-login/loginwindow.ui b/core/opie-login/loginwindow.ui index 5a35c8d..245e942 100644 --- a/core/opie-login/loginwindow.ui +++ b/core/opie-login/loginwindow.ui | |||
@@ -76,3 +76,2 @@ | |||
76 | <bold>1</bold> | 76 | <bold>1</bold> |
77 | <underline>1</underline> | ||
78 | </font> | 77 | </font> |
diff --git a/core/opie-login/loginwindowimpl.cpp b/core/opie-login/loginwindowimpl.cpp index fe2906a..577cb41 100644 --- a/core/opie-login/loginwindowimpl.cpp +++ b/core/opie-login/loginwindowimpl.cpp | |||
@@ -39,2 +39,6 @@ | |||
39 | #include <qimage.h> | 39 | #include <qimage.h> |
40 | #if QT_VERSION < 300 | ||
41 | #include <qgfx_qws.h> | ||
42 | #endif | ||
43 | #include <qwindowsystem_qws.h> | ||
40 | 44 | ||
@@ -63,4 +67,8 @@ LoginWindowImpl::LoginWindowImpl ( ) : LoginWindow ( 0, "LOGIN-WINDOW", WStyle_C | |||
63 | 67 | ||
68 | QCopChannel *channel = new QCopChannel ( "QPE/TaskBar", this ); | ||
69 | connect ( channel, SIGNAL( received ( const QCString &, const QByteArray & )), this, SLOT( receive ( const QCString &, const QByteArray & ))); | ||
70 | |||
64 | QHBoxLayout *lay = new QHBoxLayout ( m_taskbar, 4, 4 ); | 71 | QHBoxLayout *lay = new QHBoxLayout ( m_taskbar, 4, 4 ); |
65 | m_input = new InputMethods ( m_taskbar ); | 72 | m_input = new InputMethods ( m_taskbar ); |
73 | connect ( m_input, SIGNAL( inputToggled ( bool )), this, SLOT( calcMaxWindowRect ( ))); | ||
66 | lay-> addWidget ( m_input ); | 74 | lay-> addWidget ( m_input ); |
@@ -89,2 +97,4 @@ LoginWindowImpl::LoginWindowImpl ( ) : LoginWindow ( 0, "LOGIN-WINDOW", WStyle_C | |||
89 | m_user-> setEditText ( last ); | 97 | m_user-> setEditText ( last ); |
98 | |||
99 | calcMaxWindowRect ( ); | ||
90 | } | 100 | } |
@@ -95,2 +105,35 @@ LoginWindowImpl::~LoginWindowImpl ( ) | |||
95 | 105 | ||
106 | |||
107 | void LoginWindowImpl::receive ( const QCString &msg, const QByteArray &data ) | ||
108 | { | ||
109 | QDataStream stream ( data, IO_ReadOnly ); | ||
110 | |||
111 | if ( msg == "hideInputMethod()" ) | ||
112 | m_input-> hideInputMethod ( ); | ||
113 | else if ( msg == "showInputMethod()" ) | ||
114 | m_input-> showInputMethod ( ); | ||
115 | else if ( msg == "reloadInputMethods()" ) | ||
116 | m_input-> loadInputMethods ( ); | ||
117 | } | ||
118 | |||
119 | void LoginWindowImpl::calcMaxWindowRect ( ) | ||
120 | { | ||
121 | #ifdef Q_WS_QWS | ||
122 | QRect wr; | ||
123 | int displayWidth = qApp-> desktop ( )-> width ( ); | ||
124 | QRect ir = m_input-> inputRect ( ); | ||
125 | if ( ir.isValid() ) | ||
126 | wr.setCoords( 0, 0, displayWidth-1, ir.top()-1 ); | ||
127 | else | ||
128 | wr.setCoords( 0, 0, displayWidth-1, m_taskbar->y()-1 ); | ||
129 | |||
130 | #if QT_VERSION < 300 | ||
131 | wr = qt_screen-> mapToDevice ( wr, QSize ( qt_screen-> width ( ), qt_screen-> height ( ))); | ||
132 | #endif | ||
133 | |||
134 | QWSServer::setMaxWindowRect( wr ); | ||
135 | #endif | ||
136 | } | ||
137 | |||
138 | |||
96 | void LoginWindowImpl::keyPressEvent ( QKeyEvent *e ) | 139 | void LoginWindowImpl::keyPressEvent ( QKeyEvent *e ) |
diff --git a/core/opie-login/loginwindowimpl.h b/core/opie-login/loginwindowimpl.h index e769b03..df8dbbb 100644 --- a/core/opie-login/loginwindowimpl.h +++ b/core/opie-login/loginwindowimpl.h | |||
@@ -49,2 +49,4 @@ protected slots: | |||
49 | void toggleEchoMode ( bool ); | 49 | void toggleEchoMode ( bool ); |
50 | void calcMaxWindowRect ( ); | ||
51 | void receive ( const QCString &, const QByteArray & ); | ||
50 | 52 | ||