| |
| Qt 3.1.2 is a bugfix release. It maintains both forward and backward |
| compatibility (source and binary) with Qt 3.1.1 |
| |
| |
| **************************************************************************** |
| * General * |
| **************************************************************************** |
| |
| Some build fixes on different platforms. Many small documentation |
| fixes. |
| |
| XFree86 only: Tablet support now also looks for devices called "pen", |
| not just "stylus" and "eraser". |
| |
| Animations: Less CPU-consuming roll effects. |
| X11 only: Disable effects on displays with <16bpp (rather than |
| falling back to the scrolling). |
| |
| |
| **************************************************************************** |
| * Library * |
| **************************************************************************** |
| |
| - QAccel |
| Allow localization of status bar messages. Try harder to |
| distinguish between an accelerator and the identical |
| accelerator with Shift in case on of them is currently |
| disabled. |
| |
| - QAccessible |
| Send accessibility notification for selection changes in |
| menubars and popup menus. Send accessibility |
| notifications for QListBox currentItem/selection changes. |
| |
| - QActionGroup |
| Implement visibility for drop-down actiongroups. |
| |
| - QApplication |
| Return focus to the widget that had it before a popup opened |
| even if the focus is passed on during the show event handling. |
| When the programmer/user explicitly sets the style (either |
| with QApplication::setStyle or the -style command line |
| option), do not reset the style on settings changes. Creating |
| a second QApplication reads the settings again. |
| Windows only: Emit aboutToQuit() when the user logs off. Send |
| a focusOut event to the focus widget when the user tries to |
| switch applications using Alt+Tab. Fixed setting of |
| desktop-wide fade and scroll effects. |
| Windows95/98/Me: Fixed enter/leave handling. Among other |
| benefits this makes tooltips work more reliably. |
| X11 only: Various fixes for input methods, e.g. Korean |
| 'ami'. Some startup performance improvements with |
| QSettings. Mark the internal wakeUpGuiThread() pipe with |
| FD_CLOEXEC. Call XFilterEvent before the public X11 event |
| filters to avoid applications filtering out events that are |
| necessary for input methods to operate. Removed old en_US |
| locale workaround for Solaris. Close all open popups when |
| clicking on a screen different from the popup's screen. Do not |
| force 256 colors on 8-bit display (used to be a workaround for |
| a vnc bug). |
| Mac only: Popupmenus that are dismissed by clicking outside of their |
| bounds will no longer send the event to the widget clicked on (to avoid |
| selection changing when canceling a context menu). QContextMenuEvents |
| will be sent in the same style as Windows/X11 to make the platforms |
| more consistent, additionally mapping of Ctrl+Click to RightButton has |
| been added to allow easy context menu handling. Added warnings when a |
| Qt application is run outside of an application bundle (in GUI mode) |
| this will prevent accidental starving from events. Correct state when a |
| modal dialog is shown (to disable the menubar) is used now, and is |
| emulated to feel like Carbon applications. Fixed bug so that |
| QApplication::processEvents() can be called before |
| QApplication::exec(). Window activation will not change when a popup |
| menu is displayed. Toolbar toggle button will only toggle the top dock |
| in a QMainWindow. European text composition is supported now to take |
| advantage of TextInput modules available on Mac OS X. Window activation |
| has been improved to allow interleaving windows of different classes |
| correctly (to decrease differences between X11/Windows and Mac). |
| |
| - QBuffer |
| IO_Truncate no longer detaches the explicitly shared byte array. |
| |
| - QButton |
| In setPixmap(), avoid laying out again if the new pixmap does |
| not change the size. Use QSharedDoubleBuffer only if it is |
| enabled (this avoids repainting errors). |
| |
| - QButtonGroup |
| Improve hit testing for cursor navigation. |
| |
| - QCanvas |
| Do not try to double buffer invalid areas. |
| |
| - QCanvasEllipse |
| Windows only: Workaround a Windows limitation that does not |
| support 2x2 ellipse rendering without a pen. Do not try to |
| double buffer invalid areas. |
| |
| - QColorDialog |
| Allow the setting of all 48 standard colors. |
| |
| - QComboBox |
| Close any popup menus or listboxes when disabling the combobox. |
| Fix text alignment when large pixmaps were inserted into the |
| combobox. |
| |
| - QComplexText |
| Added correct positioning specs for all of Thai and Lao. Some |
| reordering fixes. |
| |
| - QCursor |
| Mac only: Correct interpretation of mask/data of a QCursor so that the |
| mask will can be used as documented. |
| |
| - QDate |
| Fixed addYears() for days missing in certain years. |
| |
| - QDateTimeEdit |
| Compute an improved layout for the QDateEdit and QTimeEdit |
| components of the QDateTimeEdit (based on the size hints). Set |
| the size policy of the QDateTimeEdit to (Minimum, Fixed). |
| In time edit: If the display is AM/PM, do not accept 13-24 as |
| valid input for the hours. Go to the min/max value when |
| stepping down/up goes out of the valid range. |
| |
| - QDesktopWidget |
| Mac only: Fixes to availableGeometry(). |
| |
| - QDialog |
| Fixed a visibility issue with setExtension(). |
| X11 only: Modal dialogs that have no parent set their |
| WM_TRANSIENT_FOR hint to the main application widget (not |
| root). Do not raise the active modal widget if another one |
| gets focus. This used to be an incorrect workaround for a |
| now-obsolete problem where CDE would not keep modal dialogs |
| above their parents. |
| Do not reposition laid out dialogs that restore their geometry |
| in a polish() reimplementation. |
| |
| - QDict |
| Handle zero sized hash tables. |
| |
| - QDns |
| Slightly more reliable now, fixed a memory leak. |
| |
| - QDockArea |
| Fixed resizing of a QDockWindow is no longer affected by |
| another closed QDockWindow in the same QDockArea. If a QDockWindow |
| has changed its sizeHint layout items use now the new size. |
| |
| - QDockWindow |
| When undocking a window, use the last undocked size if we have |
| one. |
| X11 only: Make sure the moving frame is drawn on the correct screen. |
| Windows only: Fixed some focus issues. |
| |
| - QDom |
| Create entity references for unknown entities. |
| |
| - QDragManager |
| X11 only: Raise cursor decoration. Improved Motif drop support |
| to support non-textual data. |
| Windows only: Do not send any drag events if we don't have a receiver. |
| Windows 2000 only: Ignore illegal requests for error-clipboard |
| format when dropping files onto Explorer. |
| |
| - QEventLoop |
| Window only: Fixed mutex lock problem. Fixed processEvents() |
| with ExcludeUserInput. Fixed QSocketNotifiers not being |
| removed when the notifier gets deleted and the event |
| loop is blocking. |
| Unix only: Fixed a 64 bit problem. |
| Mac only: Fixed hasPendingEvents() for non-gui apps. |
| |
| - QFileDialog |
| Fix drag'n'drop for the first click into the listbox. Do not |
| auto-complete when saving a file. Enabled drag'n'drop of files |
| for all modes. In Directory* mode, do not set the filter to a |
| non-existent directory if one is specified. |
| Windows only: Fixed icon lookup. |
| Win 98/Me only: Make sure getExistingDirectory() doesn't |
| modify the current directory. |
| Mac only: Encoding fixes. |
| |
| - QFont |
| Win95 only: Make symbol fonts work. |
| X11 only: Don't change the Xft enabled/disabled setting |
| at runtime. Avoid some X server roundtrips when loading fonts. |
| |
| - QFontDialog |
| Fixed getFont() in case no default font is specified. |
| |
| - QFrame |
| Turn on focus and mouse-over style flags for frame painting. |
| |
| - QFtp |
| If the server does not expect a password (i.e. if you are |
| already logged in after you sent the username), do not send |
| the password since this might lead to errors. |
| |
| - QGLWidget |
| X11 only: Xft fonts won't work with glXUseXFont() - so do not |
| try to use them. |
| Win32 only: Fixed text rendering to pixmap issues. |
| Mac only: Improved responsiveness when resizing opengl widgets. |
| Mac only: Optimized swapping between accelerated and |
| non-accelerated case. |
| Mac 10.2 only: Improved performance in the case of overlapping |
| opengl widgets. |
| |
| - QHBoxLayout |
| Handle direction changes in user code. |
| |
| - QHeader |
| Improved sizeHint() takes the arrows of sorted columns |
| into account. Fix redrawing problems when moving header |
| sections. Ignore grip-margin in mouse handling for |
| non-resizable sections. |
| |
| - QHttp |
| Fixed a memory leak. (With thanks to valgrind's developer for |
| this useful tool). Improved head() implementation to actually |
| use HEAD requests. Accepts responses from web servers that |
| return \n instead of \r\n as line separators. Fixed a rare |
| infinite loop issue. |
| |
| - QIconView: |
| Clip item drawing to current container to fix drawing of |
| pixmaps with alpha channels. |
| |
| - QImageIO |
| jpegio: Fixed potential buffer overrun. |
| gif: Fixed a crash for invalid gif files. |
| |
| - QInputContext |
| X11 only: Try harder to provide the input method with an |
| appropriate - and available - fontset. |
| |
| - QInputDialog |
| Fixed size hint when using height-for-width rich text. |
| |
| - QKeySequence |
| Fixed operator==() for some special cases. |
| |
| - QLabel |
| When the the label is disabled, use identical color roles for both |
| rich text and plain text. |
| |
| - QLibrary |
| Mac only: Return failure response when a library cannot be opened |
| due to missing symbols. |
| |
| - QLineEdit |
| Do not truncate the text when we validateAndSet a text which |
| is longer than maxLength, but disallow the input. Respect |
| maxLength() in setText(). Make displayText() and selectedText() |
| not strip non-breaking spaces anymore. Fixed memory leak when |
| adding and deleting line edits. Undo now clears the current |
| selection. Undo/redo now works when overwriting the selection. |
| Fixed memory leak on constructing/destructing line edits. Give |
| line edit ownership of the popup menu returned by the default |
| createPopupMenu() implementation. |
| |
| - QListView |
| Fixed background brush origin when using double buffering. Do |
| not resize a stretchable column in widthChanged(). Fixed |
| selecting when auto-scrolling. Initialize multi-selection |
| anchor. Accept drops outside items when acceptDrops() is true. |
| Use anchor correctly in Extended selection mode (also for |
| mouseMove). Make right clicking on a selected item not change |
| the selection. The AlignHCenter flag of a QCheckListItem now |
| behaves like for normal QListViewItems. Speed up opening and |
| closing of invisible items. Fixed a memory leak in removeColumn() |
| Single selection mode: If the selected item is taken out of the |
| listview, unselect it and emit selectionChanged(). Fixed |
| deselecting in multi-selection modes. Right release outside an |
| item in a listview no longer clears the selection if |
| ControlButton is set. |
| |
| - QListViewItem |
| Invalidate column sorting in moveToJustAfter(). |
| |
| - QLocalFs |
| The network protocol for local file systems sets sets the |
| right permissions for the QUrlInfo objects if you do a |
| QUrlOperator::listChildren(). |
| |
| - QMainWindow |
| Fixed orientation handler calls. |
| |
| - QMap |
| Fixed conversion from std::map. |
| |
| - QMenuBar |
| Mac only: Fix for destruction of menu bars. |
| Mac only: Use process name instead of argv. |
| |
| - QObject |
| Always emit the destroyed() signal, even when signals are |
| blocked. |
| |
| - QPaintDevice |
| Mac only: Fixed raster op. for bitBlt. |
| |
| - QPainter |
| X11 only: Fix for rotated rectangles. Fixed drawPolygon() with |
| winding being false. |
| Mac only: drawText() fixes. |
| Mac only: Fix for drawPie(). |
| |
| - QPicture |
| Warn about and catch save operations on still active devices. |
| |
| - QPixmap |
| Made grabWidget() more robust. |
| X11 only: Fixed a bug in grabWindow(), fixes in |
| convertFromImage() for MonoOnly. |
| |
| - QPointArray |
| The makeArc() function is now inclusive in respect of the start and |
| end points. |
| |
| - QPopupMenu |
| If there is a custom QWhatsThis installed for the whole menu |
| but no whatsThis set for the item, use the custom QWhatsThis |
| to get the help text. Improved size for multi-column popups. |
| Mac only: Improved scrollable popups |
| Mac only: Fix handling of popupmenu dismissing mouse presses. |
| |
| - QPrintDialog |
| Fix reentrancy issues when reading printer dialog settings. |
| Windows only: Handle lack of default printers more |
| gracefully. |
| |
| - QPrinter |
| Windows only: Fix reentrancy issues and make sure that all |
| handles are updated correctly. Improved bottom and right |
| margin calculation. Fixed some problems with image printing. |
| Mac only: Support for high resolution printing. Support 1-bit |
| masking for pixmaps. |
| |
| - QProcess |
| If the process's file descriptor is closed for stdout or |
| stderr, but the line in the buffer does not end with a \n or |
| \r\n, it is still possible to read this data using readLine(). |
| Windows only: Make it safe to call qApp->processEvents() in a |
| slot connected to QProcess::readyReadStdout(). Fixed start() |
| with no arguments. Use a non-blocking file descriptor for |
| writes to stdin. Avoid leaking of handles. |
| |
| - QPSPrinter |
| Fixed codec for Korean PostScript fonts (ksc5601.1987-0, not |
| the listbox. Do not auto-complete when saving a |
| fileeucKR). Fixed memory leak. |
| |
| - QRichText |
| Improved Asian line breaking: Avoid breaking before |
| punctuation and closing braces and after opening braces. Fixed |
| a freed memory access problem with floating items on |
| destruction. When copying rich application/x-qrichtext, include |
| format information for the initial characters until the first |
| complete span. Make text="color" attributes in qt and body |
| tags work again. |
| |
| - QScrollView |
| Restored the Qt 3 default sizeHint() that depends on the |
| scroll view's content, restricted within a 'sane' range (this |
| has no impact on most child classes, which already reimplement |
| sizeHint()). |
| |
| - QSemaphore |
| Fixed race condition in operator-=(). |
| Unix only: A bit more robust. |
| |
| - QSettings |
| Implement scoping for file-based settings (Unix and |
| Ini-modes). Support storing and reading null strings. Other |
| fixes. |
| X11 only: Fixed rehash issues when using multiple screens. |
| Windows and Mac: Completed Ini mode. |
| |
| - QSocket |
| If the read retruns 0, safely assume that the peer closed the |
| connection. Fixed readyRead sometimes not being |
| emitted. Fixed a select bug when the other end terminates |
| the connection. Some 64 bit fixes. |
| |
| - QSound |
| Mac only: Implemented stop(). |
| |
| - QSplitter |
| Make sizes() return 0 for collapsed widgets. |
| |
| - QSqlDriver |
| All drivers: Fixed crashes when accessing out of bound |
| fields. Clear the openError() flag when opening a connection |
| successfully. |
| MySQL only: Make use of mysql_use_result() in forward-only mode. |
| TDS only: Return NULL QVariants for NULL fields. |
| ODBC only: Do not require the SERVER keyword to be in a |
| connection string. Fix Unicode issues with MS Access. Allow |
| MS Access people to create a connection string without |
| creating a DSN entry first. |
| |
| - QSqlQuery |
| Real values in queries containing placeholders were in some |
| cases incorrectly replaced in emulated prepared queries. |
| Added support for forward only queries in MySQL. |
| |
| - QStatusBar |
| Make sure QStatusBar updates the minimum height when a child |
| widget triggers a relayout (e.g. from size/font/etc. changes). |
| |
| - QString |
| Safer QString->std::string conversion (handles null-string |
| case). Fixed 64-bit issue in toLong() and toULong(). Make |
| prepend(), append() and operator+=() work with a QByteArray |
| argument that is not 0-terminated. Since this |
| fix is done in inline functions, you must recompile your |
| application to benefit from it. Make QString(const |
| QByteArray&) respect the array's size where a codec for |
| C strings is defined. Performance improvements for lower() |
| and upper(). Fix toDouble() when string contains trailing |
| whitespace. |
| |
| - QSvgDevice |
| No background for Bezier curves. Fixed omission of font-family |
| attribute in SVG generator. Fixed bounding rect mapping. |
| |
| - QStyle (and subclasses) |
| Usable size for subcontrols for small scrollbars. Fixed MDI |
| document window titlebar clipping. |
| XP style: Support non-default group boxes. Corrected tab |
| widget border drawing. More compliant dock window |
| appearance. Fixed translations for QCheckTableItem and |
| QComboTableItem. |
| Windows style: Use the highlighted text color role for arrows |
| in menus. Allow drawing of list view expand controls without |
| branches. |
| SGI style: Use correct background brush on pushbuttons with |
| popdown arrows. |
| Mac style (Mac only): Comboboxes will now be smaller (and closer to |
| Aqua Style suggested sizes). Expansion widgets (in a listview) will |
| now draw in the correct background color to allow non-white listviews. |
| |
| - QSpinBox |
| Stop spinning when users press a button other than the |
| left one. Support Key_Enter in addition to Key_Return as the |
| documentation always stated. |
| |
| - QTabBar |
| Let arrow buttons react correctly on style changes. |
| |
| - QTabDialog |
| Fix reverse layout for right to left languages. |
| |
| - QTable |
| Catch hideColumn() on tables with too few columns. Fixed an |
| endless recursion when swapping header sections. Fixed SingleRow |
| selection when using the vertical header. Emit the |
| sizeChange() signal when resizing a table header section with |
| a double click. Fixed set*MovingEnabled() when the selection |
| mode is NoSelection. Fix selection drawing for focusStyle == |
| FollowFocus. Fixed a memory leak. |
| |
| - QTableItem |
| Use virtual text() method for calculations instead of accessing the |
| data member directly. Do not crash when destroying a table item that |
| is not in a table. |
| |
| - QTextCodec: |
| Fixed a bug in the Unicode -> jisx0208 conversion table. |
| |
| - QTextEdit |
| Made setFormat() much faster when undo/redo is |
| disabled. Fixed double deletion crash when clearing a document |
| with floating custom items. AccelOverride events with Shift |
| pressed now work the same as for a normal key press. |
| LogText mode: Allow spaces in the font color tag. Fixed |
| background redraw issue. Stop scrollbar from disappearing |
| due to laying out the document incorrectly. |
| |
| - QThread |
| Unix only: Do not rely on PTHREAD_MUTEX_INITIALIZER and |
| PTHREAD_COND_INITIALIZER. Fixed timeout calculation in |
| sleep(). |
| |
| - QTimeEdit |
| Typing in input for the first time now overwrites the existing |
| value. |
| |
| - QToolButton |
| Fixed width calculation for multiline text. |
| |
| - QTooltip |
| Try hard to avoid tooltips for widgets in inactive |
| windows. Use screen geometry rather than available geometry |
| for positioning. Avoid the mouse cursor covering part of the |
| tooltip. |
| |
| - QTranslator |
| Notify main windows when installing an empty translator. |
| |
| - QUrlOperator |
| Make setNameFilter() work with FTP. |
| |
| - QValueVector |
| Fix operator==() to work as expected if the two vectors do not have |
| the same size. |
| |
| - QVariant |
| Fixed canCast() for Bool -> String and ByteArray -> String conversion. |
| Fixed operator==() for maps. Fixed the asDouble() function to |
| detach first before a conversion is done. After streaming into |
| a QVariant isNull() now returns false. |
| |
| - QWaitCondition |
| Unix only: Make sure the mutex is destroyed after it is |
| unlocked. |
| |
| - QWhatsThis |
| Use screen geometry rather than available geometry |
| for positioning. |
| |
| - QWidget |
| In adjustSize(), process LayoutHint events for all widgets, |
| not only this widget. Fixed a visibility issue with |
| reparent(). Fixed recursive update of child widgets with |
| background origin not being WidgetOrigin. Fixed isEnabledTo(). |
| Windows only: Fixed mapFromGlobal() / mapToGlobal() for |
| widgets that are not visible. |
| X11 only: Set the WM_CLIENT_LEADER and SM_CLIENT_ID properties |
| according to the ICCCM (section 5.1). We accomplish this by |
| creating a hidden toplevel window to act as the client leader, |
| and all toplevel widgets will use this window as the client |
| leader. Fixed calling show() on minimized windows. Fixes to |
| grabWindow() for platforms that support different color depths |
| on one display. |
| Windows only: Handle frameGeometry() changes when users change |
| the titlebar font. |
| Mac only: Reparent fixes so that visiblity of a toplevel window |
| will be retained as well as to avoid painting errors when reparented |
| onto a different window. Fixed painting errors when a widget is |
| interactively moved off screen. showNormal() will now toggle |
| correctly when a window is minimized, additionally toggling between |
| showMaximized()/showNormal() will operate as expected. Qt will now |
| try to prevent placing a window partially offscreen. This will not |
| over-ride explicit window positioning, but it will correct default |
| placement. |
| |
| - QWidgetStack |
| Make removeWidget() safe when there are several widgets |
| with the same id. |
| |
| - QWorkspace |
| If the active window is clicked on, transfer focus to |
| the child. Restore focus to old subcontrol when changing the |
| active MDI window. Make sure a MDI window is not resized below |
| a child widget's minimum size. Do not allow resizing windows |
| when we have an active popup window. Another fix to the |
| windowActivated() signal. Fixed resize handling for fixed-size |
| windows. |
| |
| - QXmlSimpleReader |
| Fixed a memory leak for incremental parsing. |
| |
| |
| **************************************************************************** |
| * Tools * |
| **************************************************************************** |
| |
| - Qt Designer |
| Some small usability improvements and crash fixes. Fixed |
| editing properties of multiple selected widgets for custom |
| widgets. Fixed some problems with pixmaps, when using a pixmap |
| function. Allow entering ':' in the class name in the |
| form settings dialog (for namespaces). Do not show deleted |
| toolbars in the object explorer. Fixed inserting widgets into |
| toolbars. Fixed displaying nested widget stacks in the object |
| explorer. Added an option to enable auto saving. Fixed some |
| issues with auto-indent in the C++ editor plugin. Fixed |
| problems with slots which have namespaces in their function |
| arguments. Do not save invalid pixmaps. whatsThis properties |
| can now be edited with the richtext editor. |
| |
| - Qt Assistant |
| Fixed crash when printing to file was cancelled. Fixed |
| mimesource settings when a link is opened in a new window. |
| Added missing translator. Fixed reloading pages when the |
| font was changed. Added accelerator for exiting Assistant. |
| Full text search now supports Unicode. Search accepts special |
| characters like '_'. Added option for disabling the first run |
| initialization. Now it is possible to open a link or new |
| window directly from the sidebar. |
| |
| - moc |
| Make 'moc -p foo bar/baz.h' generates #include "foo/baz.h" |
| instead of #include "foo/bar/baz.h". Also avoid redundant "./" |
| at the beginning. Accept identifiers trailing the function |
| signature to allows sneaking in compiler specific attributes |
| via a macro. |
| |
| - qmake |
| Qmake will no longer put the version number on plugins. These are |
| not a necessary part of the filename. A parser bug got into qmake |
| causing (right hand side) functions from being evaluated properly, |
| additionally the argument parser has been improved to allow functions |
| calling functions. Qmake now has support for ProjectBuilder 2.1, it |
| will no longer respect OBJECTS_DIR in ProjectBuilder (as this exposed |
| a bug in ProjectBuilder itself). It will automatically detect qt-mt |
| (when linking against Qt) so "CONFIG += thread" is not necessary, |
| however this will not turn on Q_THREAD_SUPPORT. A new test operator |
| has been added 'equals()' to allow testing for equality to a variable. |
| In 'project mode' qmake will now detect TRANSLATIONS files |
| automatically. |
| |
| - uic |
| Some small fixes in code generation. |
| |
| **************************************************************************** |
| * Extensions * |
| **************************************************************************** |
| |
| - Netscape Plugin |
| The Netscape Plugin is supported again, now on both Netscape 4.x and |
| current versions based on the Mozilla code. |
| |
| - ActiveQt |
| Activate socket notifiers and process config requests even if |
| Qt does not own the event loop. |
| |