blob: 7933426623ab2dc0598dfd6d0dfab252d76cd9c6 [file] [log] [blame]
Qt 4.3.3 is a bug-fix release. It maintains both forward and backward
compatibility (source and binary) with Qt 4.3.0 through Qt 4.3.2.
The Qt version 4.3 series is binary compatible with the 4.2.x, 4.1.x and
4.0.x series. Applications compiled for Qt 4.0, 4.1 or 4.2 will continue to
run with Qt 4.3.
****************************************************************************
* General *
****************************************************************************
General Improvements
--------------------
- Legal
* This version adds the Common Development and Distribution License
(CDDL) to the GPL Exception for developers using the Open Source
Edition of Qt.
See the GPL Exception Version 1.1 page in the documentation
for more information.
* This version upgrades the Qt Commercial License to version 3.4,
the Qtopia Core Commercial License to 1.2 and the Qt Academic
License to 1.4
Build System
------------
* [177865] Fixed the Unix configure script to correctly identify
g++ 4.3.0 as "g++-4" in the build key.
* [186588] Added the missing QSsl forwarding header file.
* [181414] Fixed an issue that caused moc to bail out on C++0X >> as
used in some templates.
****************************************************************************
* Library *
****************************************************************************
- QDir
* [186068] Fixed documentation for QDir::CaseSensitive.
* [177988] Fixed a regression from 4.2.3 causing entryList() to ignore
QDir::System.
- QDirIterator
* [185502] Fixed fileInfo() which could return an incorrect value for
some paths.
- QDockWidget
* Fixed an issue that caused close buttons of dock widgets to be hidden
when they were resized to their minimum sizes.
* [180199] Dock widgets with vertical title bars can now be re-docked
on Mac OS X.
* [184668] Fixed crash that could occur when setting the title bar
widget twice.
- QFileDialog
* [178894] Fixed a bug that prevented the OK button from being enabled
when there were files selected, but no current file.
* [179146] Fixed abug in selectFile() that prevented the selection from
being cleared when called with an empty string.
* [279490] Ensured that filesSelected() is emitted in AnyFile mode and
directoryEntered() is emitted when the sidebar is clicked.
* [277161] Fixed a bug that caused incorrect permissions for files to be
obtained, resulting in the Delete action being incorrectly enabled.
* [184314] Fixed an assertion in completer on Windows and fixed top-
level completion on all platforms.
- QGLWidget
* [177996] Fixed a crash that could occur when drawing QImages created
outside of the GUI thread.
* [180832] Fixed potential crashes in renderText().
- QGraphicsScene
* [182442] Fixed regression from 4.2 that could cause a crash when
deleting a scene being viewed by more than one view.
- QGraphicsTextItem
* [181027] Fixed regression from 4.3.0 that caused movable text items to
jump around.
- QHeaderView
* [178483] Fixed crash that would occur when attempting to compute a
visual index for an invalid model index.
* [182501] Fixed regression that caused stretched sections to use the
minimum size when not visible.
- QTableView
* [175328] Fixed grid drawing errors in table views containing spanned
items.
- QListView
* [184204] Fixed broken layout in right-to-left mode with no horizontal
scroll bar.
- QTreeView
* [182041] Fixed problem with drag and drop in cases where the columns
were swapped.
* [186624] Fixed branch expanding animation.
- QItemDelegate
* [181221] Fixed problem with the rectangle that was used to check the
mouse coordinates when clicking on the check box.
- QHttp
* [178715] Fixed a problem where QHttp would not correctly parse the
server response if Content-Length was 0 and authentication was
required.
* [170860] Fixed a problem where QHttp would emit the done() signal
if the HTTP proxy server closed the connection after requesting
authentication.
- QLabel
* [173188] Fixed QLabel::setAlignment(Qt::AlignJustify) to have the
desired effect.
- QMainWindow
* [154834] Fixed restoreState() to be able to load data from previous
minor releases.
* [179713] Fixed failed assertions when inserting toolbars.
* [180824] Fixed a crash when removing a toolbar on a main window with
the unifiedTitleAndToolBarOnMac property set.
- QMdiArea
* [185281] Fixed a bug where closing a modal dialog caused a different
sub-window to be activated.
- QMdiSubWindow
* [183647] Improved WindowBlinds support.
* [188849] Fixed a crash that occurred when using a regular QWidget as
the menu bar in a QMainWindow.
- QMenuBar
* [173556] Fixed a bug where the corner widgets did not swap sides when
changing layout direction.
- QProcess
* [180836] Fixed issue with defunct processes on Unix.
- QPainter
* Made the QPainter::drawText() overload with the QTextOption argument
support justified text.
* [179726] Fixed a problem with the bounds calculation for handling
fallback in certain painting operations. This could be perceived as a
clipping bug on some platforms.
- QPainterPath
* [169280, 170046, 173034] Fixed cases where calling
QPainterPath::united(), QPainterPath::intersected(), or
QPainterPath::subtracted() would cause infinite loops or would not
produce the expected result.
* [178260] Fixed a bug in the stroking of painter paths which could
cause uninitialized data access for paths with extreme curvature.
* [183725] Fixed a bug where intersecting a path against itself would
return an empty path.
- QPixmap
* [178986] Fixed a regression from 4.2: image/pixmap scaling caused the
sampling to be shifted by half a pixel.
- QRasterPaintEngine
* [177919] Fixed a problem with drawing bitmaps.
- QScriptEngine
* Fixed the parsing of large numbers (larger than 2^32).
- QStyle
* [186511] Fixed the default QStyle() constructor to create a
QStylePrivate object, which is required by QStyle::layoutSpacing().
- QStyleSheet
* [178598] Fixed a memory leak when using border images.
* [175722] Fixed a bug which broke mouse handling in checkbox items
when styling the check mark.
- QStyleSheetStyle
* [182862] Setting a stylesheet with background-image on QMenu::item
now works.
- QSvgGenerator
* [176705] Fixed a bug which caused radial gradients to produce
malformed XML output.
* [182196] Fixed a regression which caused gradient fills to be stored
as image data instead of native data.
* [182244] Fixed a bug in SVG export of ObjectBoundingMode gradients.
- QStringListModel
* [180184] Fixed a bug that prevented sorting from updating persistent
model indexes.
- QTableView
* [182210] Fixed a bug which caused the table view to hang when it had
views with 100,000,000 rows.
- QTextBrowser
* [176042] Fixed incorrect behavior with selectAll() that caused it to
select all links if a link had the focus.
- QTextDocument
* [177489] Fixed a bug in page breaking of text frames which could cause
missing page breaks and overdrawing.
- QTreeView
* Fixed a possible crash that could occur when setting scrollPerPixel
while height was 0.
* [178771] Fixed an assertion that could occur when pressing the left or
right arrow key when the root index had no children, but when the
current index had not been set to invalid.
* [182618] Improved the performance of adding expanded or spanned items.
* [184072] Improved the performance of hiding rows.
- Q3DockWindow
* [176167] Fixed an issue that made it impossible to move a Q3DockWindow
with the mouse if it did not have a title.
- Q3ToolBar
* [182657, 185381] Fixed crashes caused by calling clear() and then
re-adding items.
- Q3Wizard
* [176548] Fixed a crash caused by calling removePage() before a wizard
is shown.
****************************************************************************
* Platform Specific Changes *
****************************************************************************
X11
---
- QApplication
* Fixed a bug that could cause a programmer specified application font
to be overridden by the automatically-detected system font.
- QCUPSSupport
* [180669] QCUPSSupport::QCUPSSupport() no longer crashes when the CUPS
library cannot be loaded.
- QPrintDialog
* Fixed a bug that caused the selected file to be truncated before the
overwrite dialog was shown.
- QWidget
* Fixed a bug that caused QWidget::windowState() to return an incorrect
state after restoring a maximized window.
- QX11EmbedContainer
* [186819] Fixed embedClient() to not cause an X server lock-up when
passed an invalid window ID.
HP-UX
-----
* [179538] Fixed a bug that caused uic3 to hang in q_atomic_lock()
on PA-RISC based HP-UX machines.
* [177397] Fixed a QGL module compile problem on HP-UX systems.
Windows
-------
- QFileDialog
* Fixed occasional crashes when dealing with the system icons.
* [175041] [181912] Ensured that shortcuts are handled correctly.
* Fixed a crash that could occur when opened with QDir::temp() as the
initial path.
- QGLPixelBuffer
* [177154] Fixed support for floating point buffers with NVIDIA hardware
through the GL_NV_float_buffer extension.
* [179143] Fixed a memory leak that could occur when deleting a
QGLPixelBuffer.
- QPixmap
* [185715] Fixed an assertion that could occur when reading icon
information for file types.
- QPixmapCache
* [182363] Fixed a crash that could occur when inserting a null pixmap.
Mac OS X
--------
- Fixed multiple issues preventing binaries built on Leopard from being
deployed on Tiger and Panther systems.
- QCoreGraphicsPaintEngine
* [170352] Fixed a problem where all aliased strokes were offset by
1 pixel to the left on Mac OS X < 10.4.
* [172006] Fixed a problem with drawing points when FlatCap or
SquareCap was set as the pen style.
- QGLWidget
* [181819] Fixed a bug that caused the contents of QGLWidgets not to
be moved or updated.
- QCheckBox
* [182827] Fixed a crash caused by deleting a QCheckBox in an event
posted from the toggled() slot.
- QDialog
* [281331] Fixed a bug that caused a QDialog with a modal parent to not
be modal.
* [279513] Fixed a bug that could occur when using the
Qt::WindowStaysOnTopHint flag on dialogs that would cause the drop down
menu to be hidden.
- [180466] Ensured that an Embedded HIWebView in a floating window will
receive an activation.
- Fixed brushed metal windows on Leopard.
- Made QMenus have proper rounded edges on Leopard.
- Fixed a regression that caused text to always be rendered with anti-
aliasing in OpenGL.
- [179882] Fixed a regression where applications with both full-screen and
non-full-screen windows could get into an indeterminate state.
- [182908] Fixed a crash on PPC which was caused by using a static Qt in a
plugin in another application.
Qtopia Core
-----------
* [179060] Fixed a potential crash when Qtopia Core is compiled without
FreeType support.
* [187589] Fixed a problem that caused windows not to appear on screen
when using gcc 4.1.1 ARM EABI toolchains.
* [179533] Fixed temporary blitting of uninitialized data to the screen
areas of some windows when they are shown for the first time.
* [180487] Fixed the use of FreeType fonts for unprivileged processes
in a LIDS environment.
* [179883] Fixed the use of -D QT_QWS_DEPTH_GENERIC configure options
when using a transformed screen driver.
* [182150] Fixed the use of incorrect colors that resulted from using
the VNC driver on top of the Linux framebuffer driver on big-endian
systems.
* Optimized drawing of images on 16-bit screens when using a painter
with an opacity value of less than 1.0.
* [183118] Updated the framebuffer test application to work on 18 bit
screens.
* [184181] Ensured that the QDesktopWidget::workAreaChanged() is emitted
when the available screen geometry is changed.
* [185508] Fixed missing mouse move/press event on touch screens when
pressing on a newly-activated window.
* [185301] Fixed a crash in QImage::convertToFormat() that could occur
when converting an image having a stride that is not a multiple of 4.
* [186266] Fixed a race condition which could result in painting errors
around the window decoration under certain circumstances.
* [186409] Fixed string to number conversions in QtScript when
configured with -D QT_QLOCALE_USES_FCVT.
* [186611] Fixed color conversion in QScreen::solidFill() (used when
drawing the screen background) when configured with
-D QT_QWS_DEPTH_GENERIC.
* [125481] Fixed a painting error with RGBA framebuffers and partially
transparent windows.
* Fixed inconsistency in 16-bit alpha blending which caused the
leftmost/rightmost pixels to be calculated differently due to
rounding errors.