From 4c9bda8027049b7ea423471a213eca2068490b08 Mon Sep 17 00:00:00 2001 From: mickeyl Date: Thu, 02 Oct 2003 15:53:52 +0000 Subject: Start with some customization bits for inputmethods as part of the BigScreen initiative. You can now choose to have free floating and resizable inputmethods. Two outstanding things: 1.) Hiding the inputmethod via the [x] button confuses the show/hide toggle button. 2.) The new size and position of a moved/resized inputmethod should be remembered. --- (limited to 'core/launcher/taskbar.cpp') diff --git a/core/launcher/taskbar.cpp b/core/launcher/taskbar.cpp index 37fdb30..2966168 100644 --- a/core/launcher/taskbar.cpp +++ b/core/launcher/taskbar.cpp @@ -28,6 +28,7 @@ #include "taskbar.h" #include "server.h" +#include #include #ifdef QWS #include @@ -172,6 +173,10 @@ TaskBar::~TaskBar() TaskBar::TaskBar() : QHBox(0, 0, WStyle_Customize | WStyle_Tool | WStyle_StaysOnTop | WGroupLeader) { + Config cfg( "Launcher" ); + cfg.setGroup( "InputMethods" ); + resizeRunningApp = cfg.readBoolEntry( "Resize", true ); + sm = new StartMenu( this ); connect( sm, SIGNAL(tabSelected(const QString&)), this, SIGNAL(tabSelected(const QString&)) ); @@ -291,26 +296,24 @@ void TaskBar::styleChange( QStyle &s ) void TaskBar::calcMaxWindowRect() { - /* -#ifdef Q_WS_QWS - QRect wr; - int displayWidth = qApp->desktop()->width(); - QRect ir = inputMethods->inputRect(); - if ( ir.isValid() ) { - wr.setCoords( 0, 0, displayWidth-1, ir.top()-1 ); - } else { - wr.setCoords( 0, 0, displayWidth-1, y()-1 ); + if ( resizeRunningApp ) + { + #if defined(Q_WS_QWS) + QRect wr; + int displayWidth = qApp->desktop()->width(); + QRect ir = inputMethods->inputRect(); + if ( ir.isValid() ) { + wr.setCoords( 0, 0, displayWidth-1, ir.top()-1 ); + } else { + wr.setCoords( 0, 0, displayWidth-1, y()-1 ); + } + #if QT_VERSION < 0x030000 + QWSServer::setMaxWindowRect( qt_screen->mapToDevice(wr,QSize(qt_screen->width(),qt_screen->height())) ); + #else + QWSServer::setMaxWindowRect( wr ); + #endif + #endif } - -#if QT_VERSION < 0x030000 - QWSServer::setMaxWindowRect( qt_screen->mapToDevice(wr, - QSize(qt_screen->width(),qt_screen->height())) - ); -#else - QWSServer::setMaxWindowRect( wr ); -#endif -#endif - */ } void TaskBar::receive( const QCString &msg, const QByteArray &data ) -- cgit v0.9.0.2