-rw-r--r-- | core/launcher/inputmethods.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/core/launcher/inputmethods.cpp b/core/launcher/inputmethods.cpp index 765dfe9..09b9a83 100644 --- a/core/launcher/inputmethods.cpp +++ b/core/launcher/inputmethods.cpp @@ -259,59 +259,63 @@ void InputMethods::chooseKbd() InputMethod *im = &inputMethodList[i]; chooseMethod(im); } void InputMethods::chooseMethod(InputMethod* im) { if ( im != method ) { if ( method && method->widget->isVisible() ) method->widget->hide(); method = im; Config cfg("qpe"); cfg.setGroup("InputMethod"); cfg.writeEntry("current", method->interface->name()); kbdButton->setPixmap( *method->interface->icon() ); } if ( !kbdButton->isOn() ) kbdButton->setOn( TRUE ); else showKbd( TRUE ); } void InputMethods::showKbd( bool on ) { if ( !method ) return; if ( on ) { method->interface->resetState(); // HACK... Make the texteditor fit with all input methods // Input methods should also never use more than about 40% of the screen int height = QMIN( method->widget->sizeHint().height(), 134 ); + #ifdef QT_QWS_SIMPAD + method->widget->resize( qApp->desktop()->width() / 2, height ); // make it half the width on the SIMpad + #else method->widget->resize( qApp->desktop()->width(), height ); + #endif method->widget->move( 0, mapToGlobal( QPoint() ).y() - height ); method->widget->show(); } else { method->widget->hide(); } emit inputToggled( on ); } bool InputMethods::shown() const { return method && method->widget->isVisible(); } QString InputMethods::currentShown() const { return method && method->widget->isVisible() ? method->interface->name() : QString::null; } void InputMethods::sendKey( ushort unicode, ushort scancode, ushort mod, bool press, bool repeat ) { #if defined(Q_WS_QWS) QWSServer::sendKeyEvent( unicode, scancode, mod, press, repeat ); #endif } |