dist/changes-3.3.2
author Alex Gilkes <alex.gilkes@nokia.com>
Mon, 11 Jan 2010 14:00:40 +0000
changeset 0 1918ee327afb
permissions -rw-r--r--
Revision: 200952

Qt 3.3.2 is a bugfix release. It maintains both forward and backward
compatibility (source and binary) with Qt 3.3.1 and Qt 3.3.0.


****************************************************************************
*                           General                                        *
****************************************************************************

Compilers
---------

MinGW: It is now possible to build the WinXP style on MinGW.

FreeBSD: Enable DragonFly to build Qt with its native compiler.

Mac: Assistant builds with Professional edition when Fink is installed.

AIX: Fixed compile problem with OpenType.

Tru64: Correctly detects the Compaq C++ compiler.

HP-UX 64: Fixed link failure for Designer.

Intel: Fixed compile failure on icc version 8.0 p42+.

Qt/Embedded: Compiles with gcc 3.4.0 (prerelease).

Added macro QT_QLOCALE_USES_FCVT for systems with non-IEEE-compliant
floating point implementations (notably some versions of ARM
Linux). These systems are not autodetected; use
"-DQT_QLOCALE_USES_FCVT" as a parameter to ./configure.

Qt Designer
-----------

Allows saving of the column and label information for QDataTable, even
when Qt is compiled without the SQL module.

Fixed data corruption in .pro files with whitespace.

Fixed crash on closing a new, modified, unsaved C++ file.

Fixed crash with QicsTable.

Fixed corrupted .ui files caused by '<' or '>' in the object name.

Fixed freeze when opening a modal Wizard Dialog from file.

Fixed crash when adding a new separator using drag and drop.

Qt Assistant
------------

Fixed the Settings font combobox to not re-add font entries.


****************************************************************************
*                          Library                                         *
****************************************************************************

General Fixes
-------------

- QAction
	Fixed bug when adding invisible/disabled actions to
	visible/enabled action groups.

- QCanvas
	Cleans up old animations in setCanvas().

- QClipboard
	Fixed potential double deletion in clean up.

- QColorDialog
	Fixed crash when running on very small screens (less than
	480x350).

- QDateEdit
	Fixed bug that would accept invalid dates when losing focus.

- QDialog
	Made showMaximized() and showFullScreen() work for dialogs
	again.

- QDns
	Improved handling of literal IP addresses for both IPv4 and
	IPv6.
	Improved handling of disappearing/reappearing name servers.

- QFont
	Fixed handling of Oblique fonts.

- QImage
	Fixed crash when loading MNG animations.

- QLabel
	Fixed bug with labels without buddies that have '&' in the
	text.

- QLineEdit
	Handles input method events according to the specification,
	fixing severe problems with Korean input on Windows. This
	change could show up problems with buggy input methods.
	Fixed disappearing cursor for right-aligned text and Xft1.

- QListBox
	Fixed bug in itemAt() when listbox has wide line/framestyle.

- QListView
	Fixed problem with editor sometimes having zero width.

- QLocale
	Fixed crash on FreeBSD/Alpha.

- QPainter
	Fixed QPicture transformation bug.


- QPopupMenu
	Fixed crash-on-exit bug when using floating menus.

- QRegExp
	Fixed bug with patterns of the form "^A|B".

- QSocket
	Fixed bug where connecting two QSockets simultaneously would
	cause both to connect to the same address.
	Fixed bug where ErrConnectionRefused would not be emitted in
	rare cases.

- QSql
	Fixed data corruption in OCI driver.
	Fixed data corruption with SQLite driver when using non-UTF-8
	databases with special characters.
	Updated to work with SQLite version 2.8.13.

- QString
	Made string-to-number conversions interpret strings according
	to the current locale.
	Fixed the format of the %p sprintf flag.
	Perform sanity check on the length parameter to fromUtf8().
	Fixed toDouble() to again return a value even when failing on
	trailing whitespace.
	Performance optimization for startsWith()/endsWith().

- QTable
	Fixed crash caused by calling addLabel() on a horizontal header
	when there are no columns in the table.
	Fixed crash that occurs when deleting a QTable while editing
	a cell.
	Made it possible to override the grid line color.
	Fixed selectionChanged() to be emitted correctly when dealing
	with selections of multiple items.

- QTabWidget
	Fixed setAutoMask().

- QToolButton
	Icon and label now move the same distance when pressed.

- QTextEdit
	Does not override Ctrl+Alt+key accelerators.
	Performance optimization: do not call ensureCursorVisible() when
	isUpdatesEnabled() is not true.
	Fixed crash when using removeParagraph() to remove QTextTable
	items.
	Fixed data corruption when saving documents with overline or
	strikeout.

- QTextBrowser
	Fixed Purify warning about array-bound reads.

- QVariant
	Fixed bug in detaching LongLong and ULongLong values.

- QWidget
	Made showMaximized()/showFullScreen()/showMinimized() work
	correctly again.
	Posts events from the windowing system as before.

- QWizard
	Does not show enabled Next button on the last page if the
	Finish button was enabled on an earlier page.

- QWorkspace
	Scales down maximize icon correctly.
	Fixed active window/focus bug.
	Ensured that children added to invisible workspaces are
	painted correctly.
	Fixed flicker with tooltips for maximize, minimize and close
	buttons.

- QXml
	Fixed bug causing data corruption when reading invalid XML
	files.


Platform-Specific Issues
------------------------

Windows:

- QApplication
	Does not handle GUI messages for non-GUI appliations.
	Disabled MenuItem highlight color for XP in non-themed
	Classical Style.

- QContextMenuEvent
	Made right mouse button send menu event also for popup widgets
	such as the QListBox in QComboBox.

- QDesktopWidget
	Made qApp->desktop()->size() give the correct size after a
	display resolution change.

- QFont
	Loading a Japanese font using the English name now works when
	running in a Japanese locale.

- QLineEdit
	Fixed drawing problems that affected very long strings and the
	handling of trailing spaces when using Uniscribe.

- QPainter
	Fixed possible crash in setBrush().
	Draw bitmaps using painter's foreground color when painter is
	using a complex transformation.
	Fixed inter-letter spacings for scaled fonts.

- QPrinter
	Fixed crash when using buggy printer drivers.

- QSound
	Made setLoops(-1) work again (plays the sound in a loop).
	Made setLoops(0) play no sound.
	Made setLoops(1) set isFinished() correctly.
	Fixed memory leak.
	If a new sound is started then stop the existing one, and play
	the new one.

- QTextEngine
	Performs auto-detection of Asian scripts even if Uniscribe is
	not installed.

- QWidget
	Returns correct isMinimized/isMaximized state if an application
	is started through a shortcut using "Minimized" or "Maximized".

Mac:

- QAccel
	Solved the problem where we received two accel override events
	for each keypress.

- QApplication
	Uses better technique for obtaining applicationFilePath().
	Allows non-GUI applications to run without the GUI.
	Stopped using EnableSecureEventInput() because of
	Jaguar/Panther compatibility problems.
	Updates the text highlight color when the system changes it.

- QClipboard
	Fixed posting to the clipboard and access rights.

- QComboBox
	Ensures that the item list stays within the screen size.

- QCursor
	Uses native splitter cursors when available.

- QFontMetrics
	Fixed fontmetrics for Asian fonts.

- QLineEdit
	Uses secure keyboard input in Password mode, so that keyboard
	events cannot be intercepted.

- QMacStyle
	Fixed painting of radio buttons to be perfectly circular.

- QMenuBar
	Fixed bug when using pixmaps without an alpha channel.

- QPainter
	Improved raster operations.
	Made custom bitmap brushes work.
	Draws text using painter's foreground color.

- QPrinter
	Ensures that the printer name and page range are correct after
	setup.
	Always uses the native print dialog.
	Implemented setPageSize() and pageSize() properly.
	Made QPrinter work when no printer is installed.
	Fixed font width bug in postscript when font embedding is
	disabled.

- QSettings
	Returns correct value for global settings when scope is User.

- QSlider
	Fixed drawing of tickmarks when minimum value is non-zero.

- QStyle
	Does not change pixmap of QToolbutton if the button is not
	auto-raised.

- QWidget
	Fixed bug where the toolbar is partially hidden when showing a
	mainwindow in fullscreen mode.
	Made WStyle_StaysOnTop work in the same way as on the other
	platforms.
	Fixed bug in maximizing windows with a maximum size.

- QWorkspace
	Fixed bug giving frozen child windows when maximizing and
	restoring.

X11:

Fixed crash bug when using X Input Method Chinput.

- Drag and Drop
	Ignores accelerator events when dragging.

- QClipboard
	Fixed bug where data()->format() would return the wrong value.
	Fixed potential crashes with regards to iterators.

- QFont
	Avoids badly scaled fonts, and prefers exact matches.
	Made sure symbol fonts get loaded correctly.
	Made it possible to load Latin fonts that do not contain the
	Euro symbol.
	Fixed glyph width bug observed with some Khmer fonts.
	Fixed crash with misconfigured Xft.
	Fixed problem with font selection for Xft2 when having Latin
	text with non-Latin locale.
	Respects custom dpi settings for Xft.
	Does not use Xft if we have FreeType1 but no XRender.
	Fixed memory leak in the font engine when drawing transformed
	fonts.

- QGL
	Fixed crash when rendering text in GL widgets.

- QLocale
	Tru64: Fixed crash when INFINITY is compared to another double.
	Tru64: Uses DBL_INFINITY for Compaq C++ compiler.

- QMimeSource
	Does not re-enter the event loop in provides().

- QPainter
	Fixed rendering of anti-aliased text on non-XRender enabled
	displays.

- QPrinter
	Fixed setFromTo().
	Fixed printing of Arabic text with XLFD fonts.

- QTextEdit
	Fixed bug with extremely long lines.

- QThread
	Fixed bug that made program require superuser privileges on
	some Linux machines.

- QWidget
	Fixed showFullScreen() and showMaximized() for window managers
	that do not support extended window manager hints (EWMH).

Embedded:

- QFontInfo
	Made QFontInfo work properly on Qt/Embedded.

- QGfxVNC
	Fixed crash if VNC viewer is closed while Qt/E is painting.

- QWidget
	Uses correct focus handling if the focus widget is hidden or
	deleted while a popup is open.

Linux virtual console switching:
	Fixed race condition in handling of virtual console switching
	that could cause a deadlock in some cases.
	Switch consoles on key press event.
	Fixed QWSServer::hideCursor()/showCursor() display locking bug
	which could block client processes.