Qt 2.2.1 is a maintainance release. It keeps backward binary compatibility with Qt 2.1 and both forward and backward source compatibility with Qt 2.2.x. Qt 2.2.0 had a binary compatibility problem with the following: bool QRect::contains( const QRect &r, bool proper=FALSE ) const Qt 2.2.1 corrects this. Programs compiled with 2.1.x now continue running with 2.2.1. Programs compiled with versions other than 2.2.0 may not run with 2.2.0, so upgrading to 2.2.1 is additionally important. **************************************************************************** * General * **************************************************************************** - Various compilation problems on particular platforms fixed - Many improvments in QThread. More platforms supported (e.g. HPUX 11.x), uses native threads on Solaris rather than compatibility posix threads - A few newly discovered memory leaks and free memory reads fixed - As usual, many minor bugfixes, too small to be mentioned here. **************************************************************************** * Designer * **************************************************************************** - in KDE mode: don't show all KDE widgets in the toolbars, since we do not have icons for them (yet). They are accessible through the menu structure, though. - Introduced concept of a global /etc/designerrc and a templatePath for the sake of Linux Standard Base (LSB) and the way Linux ditributors like to package the Qt Free Edition. - Support for tab names in a QTabWidget, and page names in a QWizard. - Support for button IDs in a button group, makes it possible to utilize one single slot for all buttons in a group. **************************************************************************** * Library * **************************************************************************** QClipboard: X11 only: fixed occasional crashes, possibly corrupted list of provided types and hangups of several seconds under certain circumstances. QFileDialog: Fixed update when renaming a file to an existing file Unix only: Reset error status after attempting to read an empty file Fixed magical resetting of the "Open" label Fixed duplicate entries in the history combobox QFont: Fixes for Hewbrew, Arabic and Thai encodings Added support for Ukrainian encodings X11 only: loading fonts for a locale other than the current now possible (allows displaying japanese characters in a latin1 application without relying on the existence of a unicode font) QHeader: removing labels fixed, important for QTable and QListView QIconView: drawing problem with missleading font metrices and bounding rectangles fixed QInputDialog, QMessageBox: use the main widget's or parent's icon if available QLayout: synchronize the behaviour of sublayouts and subwidgets with layouts. QLineEdit: Update cursor position if QValidator::fixup() truncates the string QMainWindow: Fixed calculated minimum size. Sometimes, the minimum width of the central widget was disregarded. QMenuBar: Sizing fixed for frameless menubars in toolbars in Motif-based styles QMotifPlusStyle: correct drawing of triangular tabs QMovie: keep frameImage() during EndOfMovie signal QDom: add comments when reading a xml file into the dom QPrinter: MS-Windows only: Fixed invalidation when setup dialog was cancelled QSgiStyle: Small drawing problem with QTabBar fixed. Fixed drawing of special prefix in menu items QSizePolicy: setHeightForWidth() was broken, works now QTextCodec: significant speedups for latin1 conversion QTextStream: small speed improvements for readLine() Added codec for ukrainian (koi8-u) encoding QWheelEvent: Support for the MSH_MOUSEWHEEL extension on MS-Windows 95 QWidget: X11 only: Fixed possible mouse lock-ups when re-entering the event loop on mouse events for widgets of type WType_Popup. X11 only: set input context when setting the active window X11 only: when dialogs were closed, the main window looked like it lost focus with some window managers. This has been fixed now. QWidgetStack: potential flicker issue fixed QWorkspace: normalize minimized children when they get focus removed occasional flashing (e.g. when maximizing child windows) Look and feel adjustments to emulate MS-Windows even closer Documented that the active window can be 0 if there is no active window Slightly modifed the button decorations to be more general and less KDE2 specific **************************************************************************** * Changes that might affect runtime behavior * **************************************************************************** QLayout: We synchronized the behaviour of sublayouts and subwidgets with layouts. This shows great effect in the designer, were you usually operate on container subwidgets in the design phase, but get a complete layout in the preview mode or the generated code. For example, the influence of a spacer item on a sublayout's size policy has been reduced. The modifications may slightly affect the layout of some dialogs. **************************************************************************** * Qt/Embedded-specific changes * **************************************************************************** - Rotated displays & fonts - QCOP, a simple interprocess messaging system - Threading support - Auto-detected mouse - VGA16 support - Improved thick lines - Optimize some double-painting - Allow setting of custom 8bpp colors: QApplication::qwsSetCustomColors() - Fix masked widget drawing and clicking - Fix mouse grabbing for popups