/dist/changes-4.7.0
https://bitbucket.org/ultra_iter/qt-vtl · Unknown · 513 lines · 405 code · 108 blank · 0 comment · 0 complexity · 2d1f05223f7365dcb37359ed1ad9e969 MD5 · raw file
- Qt 4.7 introduces many new features and improvements as well as bugfixes
- over the 4.6.x series. For more details, refer to the online documentation
- included in this distribution. The documentation is also available online:
- http://qt.nokia.com/doc/4.7
- The Qt version 4.7 series is binary compatible with the 4.6.x series.
- Applications compiled for 4.6 will continue to run with 4.7.
- Some of the changes listed in this file include issue tracking numbers
- corresponding to tasks in the Qt Bug Tracker:
- http://bugreports.qt.nokia.com/
- Each of these identifiers can be entered in the bug tracker to obtain more
- information about a particular change.
- ****************************************************************************
- * General *
- ****************************************************************************
- General Improvements
- --------------------
- - Documentation and Examples
- - Support for the GL_EXT_geometry_shader4, aka Geometry Shaders, was added
- to QGLShaderProgram.
- New features
- ------------
- - QNetworkSession, QNetworkConfiguration, QNetworkConfigurationManager
- * New bearer management classes added.
-
- - QStaticText class was added to support high-performance output of
- seldomly altered text.
-
- Third party components
- ----------------------
- - Updated libpng to version 1.4.0
- - Updated libjpeg to version 8
- - Updated libtiff to version 3.9.2
- ****************************************************************************
- * Library *
- ****************************************************************************
- QtCore
- ------
- - QString
- * Added QString(const QChar *) constructor.
- NOTE: This is source-incompatible for the bogus QString(0) case.
- * Removed internal but exported qt_winQString2MB() and qt_winMB2QString()
- * Added setRawData() function (also revived the one in QByteArray)
- * Various performance improvements
- - QList
- * Added reserve() function
- * Various performance improvements
- - QMetaType
- * Significantly improved performance of the type() function
- * [QTBUG-8235] Support QEasingCurve as a built in metatype.
- * Added possibility to register several name for the same type with
- qRegisterMetaType<>() (ie. for typedef)
- - QState
- * [QTBUG-7741] Added a function to get the out-going transitions
- - QXmlStreamReader
- * [QTBUG-9196] fixed crash when parsing
- - QTimer
- * singleShot with 0 timeout will now avoid allocating objects
- - QAbstractAnimation
- * [QTBUG-10654] Avoids animation with loopCount == 0 to change state
- to running and stopped.
- - QVarLenghtArray
- * Added some API to be more consistant with other containers
- QtGui
- -----
-
- - QAbstractItemView
- * Fixed a bug that would cause keyboard searches not to behave
- properly when used within 400 milliseconds of midnight.
- - QComboBox
- * [QTBUG-8796] Made ForegroundRole work for all styles.
- - QCommandLinkButton
- * [QTBUG-5995] Fixed text and icon alignment issues.
-
- - QPrinter
- * Obsoleted the slightly confusing setNumCopies() and numCopies()
- functions, and replaced them with setCopyCount(), copyCount() and
- supportsMultipleCopies().
- - QPrintDialog/QPrinter
- * Added support for printing the current page.
- - QCommonStyle
- * Fixed a bug that led to missing text pixels in QTabBar when using
- small font sizes. (QTBUG-7137)
- - QGraphicsEffect
- * Fixed rendering bugs when scrolling graphics items with drop
- shadows.
- - QGraphicsItem
- * [QTBUG-8112] itemChange() is now called when transformation
- properties change (setRotation, setScale, setTransformOriginPoint).
- * [QTBUG-9024] Improved performance when calling update() on items that
- are clipped by an ancestor (QGraphicsItem::ItemClipsChildrenToShape).
- * [QTBUG-7703], [QTBUG-8378] Fixed scrolling issues
- * [QTBUG-12112] Fixed focusItem() returning incorrect value.
- - QGraphicsTextItem
- * [QTBUG-7333] Fixed keyboard shortcuts not being triggered when the
- the item has focus and something else has the same shortcut sequence.
- * [QTBUG-10574] Fixed crash when flag "QGraphicsItem::ItemIgnoresTransformations"
- is set.
- - QGraphicsView
- * [QTBUG-7438] Fixed viewport cursor getting reset when releasing
- the mouse.
- * [QTBUG-10338] Fixed drawing artifacts due to rounding errors.
- - QGraphicsWidget
- * [QTBUG-12056] Fixed a crash occuring when adding a QGraphicsWidget
- to a scene after removing and deleting another QGraphicsWidget.
- - QImage
- * [QTBUG-9640] Prevented unneccessary copy in QImage::setAlphaChannel().
- * [QTBUG-7982] Added QImage::bitPlaneCount().
- * [QTBUG-9072] Fixed alpha check for 1-bit-per-pixel images.
- - QLineEdit
- * [QTBUG-9823] Placeholder text is now correctly aligned with text.
- - QPicture
- * [QTBUG-4974] Printing QPictures containing text to a high resolution
- QPrinter would in many cases cause incorrect character spacing.
- - QPainter
- * Added QPainter::drawPixmapFragments(), which makes it possible to draw
- pixmaps, or sub-rectangles of pixmaps, at various positions with
- different scale, opacity and rotation.
- * [QTBUG-10018] Fixed image drawing inconsistencies when drawing
- 1x1 source rects with rotating / shear / perspective transforms.
- * Optimized various blending and rendering operations for ARM
- processors with a NEON vector unit.
- * Fixed some performance issues when drawing sub-pixmaps of large
- pixmaps and falling back to raster in the X11 paint engine.
- * [QTBUG-7596] Safeguard ourselves against corrupt registry values for
- ClearType gamma on Windows.
- * [QTBUG-9218] Fixed flattening of largely scaled, thin, dashed beziers.
- * [QTBUG-9437] Fixed crash in the raster paint engine when drawing largely
- scaled images.
- - QPainterPath
- * [QTBUG-3778] Fixed bug in painter path polygon intersection code.
- * [QTBUG-7396] Optimized painter path intersections for when at
- least one of the paths is a rectangle by special casing.
- * [QTBUG-8035] Got rid of bezier intersection code in the boolean
- operators (intersect, subtract, unite) to prevent numerical
- stability issues.
- * [QTBUG-11291] Fixed infinite recursion when drawing very large painter
- paths.
- - QPixmap
- * [QTBUG-4149] Fixed QPixmap::grabWidget() on widgets that have not yet
- been shown.
-
- - QPlastiqueStyle
- * [QTBUG-6516] Respect AlternateBase role for list views.
- - QRegion
- * [QTBUG-7699] Fixed crash caused by large x-coordinates.
- - QSplitter
- * [QTBUG-9335] Improve support for 1-pixel splitters by using a
- larger drag area.
-
- - QTextDocumentWriter
- * Fixed tab-stops and table padding in ODF export.
- - QTextLayout
- * [QTBUG-11427] Fix possible crash in QTextLayout for glyphless
- items.
- * [QTBUG-8864] Fix regression in right alignment of text with
- negative right bearing.
-
- - QTransform
- * [QTBUG-8557] Fixed bug in QTransform::type() potentially occuring
- after using operator/ or operator* or their overloads.
-
- QtOpenGL
- --------
- - Improve performance of text by adding special cased fragment shader.
-
- - Made width and height of glyph cache power-of-two for performance
- improvements on some hardware.
-
- - [QTBUG-9706] Improved appearance of text antialiasing.
- - QTreeView
- * Optimized
- QtNetwork
- ---------
- - QHostInfo: Added a small 60 second DNS cache
- - QNetworkAccessManager
- * Performance improvements for file:// and http://
- * Crash fixes
- * Improvements on HTTP pipelining
- * Fix problem with canReadLine()
- * Fix problem with HTTP 100 reply
- * Some new attributes for QNetworkRequest
- * [QTBUG-8206] add method to send custom requests
- * [QTBUG-9618] [MR 2372] send secure cookies only over secure connections
- * [QTBUG-7713] Fix bug related to re-sending request
- * [QTBUG-7673] Fix issue with some webservers
- * [QTBUG-11029] do not accept cookies with non-alpha-numerical domain
- - Sockets
- * Better support for derived QTcpServer
- * [QTBUG-7054] Fix error handling with waitFor*() for socket engine
- * [QTBUG-7316, QTBUG-7317] Also handle unknown errors from socket engine
- - SSL
- * [QTBUG-2515] Do not make OpenSSL prompt for a password
- * [QTBUG-6504, QTBUG-8924, QTBUG-5645] Fix memleak
- * [QTBUG-9973] QSslCertificate: support large serial numbers
- * [QTBUG-8833] make QSslSocket::systemCaCertificates() use system certs
- * [QT-3567] QSslSocket: improve error handling (fixes Secunia Advisory SA40389)
- * [QBTUG-4455, MR 731] Fix handling of SSL certificates with wildcard domain names
- QtScript
- --------
- - Updated src/3rdparty/javascriptcore to a more recent version
- - Significantly improved performance of the Qt/C++<-->JavaScript bridge
- - QScriptValueIterator: Significantly improved performance
- - [QTBUG-3637] Added a wrap option for excluding slots from a QObject binding
- - [QTBUG-6238] Added a function for reporting additional memory cost
- - [QTBUG-6908] Significantly improved performance of qsTr()
- QtSvg
- -----
- - QSvgRenderer
- * [QTBUG-8264] Fixed rounded rectangles when 'rx' or 'ry' is zero.
- * [QTBUG-10022] Fixed assert failure when loading an invalid SVG.
- QtXmlPatterns
- -------------
- - [QTBUG-8920] fixed crash with anonymous types in XsdSchemaChecker
- - [QTBUG-8394] include/import/redefine schemas only once
- - QXmlSchema: fix crash with referencing elements
- - [QBTUG-6485] QXmlSchema: allow usage of xsd:all
- Qt Plugins
- ----------
- - Jpeg image IO plugin
- * Fixed failure to store certain QImage formats as jpeg (QTBUG-7780)
- * Optimized smoothscaling
- * Optimized to avoid data copy when reading from memory device (QTBUG-9095)
- - SVG image IO plugin
- * Added support for svgz format (QTBUG-8227)
- * Fixed canRead() so that it can be used also for non-sequential
- devices. (QTBUG-9053)
- * Added support for clipping and scaling and backgroundcolor
- * Optimized to avoid data copy when reading from memory device (QTBUG-9095)
- ****************************************************************************
- * Database Drivers *
- ****************************************************************************
- - Sqlite
- * [QTBUG-11904] Pointer aliasing problem in sqlite
- - OCI
- * [QTBUG-10919] Unable to insert unicode chars with codepoint > 255
- in nvarchar2 column on oracle
- * [QTBUG-8210] Oracle - DATE in db with a year greater or equal to 2800
- returns an invalid date
- ****************************************************************************
- * Platform Specific Changes *
- ****************************************************************************
- Qt for Linux/X11
- ----------------
- - QGtkStyle
- * Fixed rtl issues with sliders (QTBUG-8986)
- * Fixed missing pressed appearance on scroll bar handles. (QTBUG-10396)
- * Fixed crash when creating QGtkStyle before QApplication. (QTBUG-10758)
- - QFontDatabase
- * [QTBUG-4428] Fixed regression when using bitmap fonts on some
- Linux systems.
-
- - QFontEngine
- * [QTBUG-9442] Avoid possible square root of negative number in
- FreeType font engine.
-
- - QFontMetrics
- * [QTBUG-10448] Fix crash when using fonts in non-gui QApplication.
-
-
- Qt for Windows
- --------------
- - Popup windows now implicitly activate when shown. (QTBUG-7386)
- - QComboBox [QTBUG-7552] Fix an issue where only "..." would be shown for
- QComboBox with certain DPI settings.
- - Fixed a problem where menus exec'ed on system tray icons did not
- disappear. (QTBUG-7386)
- - Improved look and feel for QWizard on Windows 7 and Vista. (QTBUG-9873),
- (QTBUG-11974) and (QTBUG-6120)
- - QLocalSocket
- * Pipe handle leak fixed, when closing a QLocalSocket that still has
- unwritten data. (QTBUG-7815)
- * Fixed closing state for local sockets with unwritten data. (QTBUG-9681)
- * Improved performance of writing to QLocalSocket.
- Qt for Mac OS X
- ---------------
- - QMacStyle
- * Removed frame around statusbar items. (QTBUG-3574)
- * More native appearance of item view headers and frames. (QTBUG-10047)
- * Increased spacing between tree view items. (QTBUG-10190)
- * Removed frame around status bar items. (QTBUG-3574)
- - QFontEngine
- * Enable fractional metrics for the font engine on Mac in all
- stages of text layout.
- * [QTBUG-5529] Enable design metrics for correct character spacing
- in ATSUI font engine. (Mac/Carbon)
- - QTextDocument
- * [QTBUG-8791] Fix misalignment of fixed width fonts between
- format changes on Cocoa.
-
- - QTextLayout
- * [QTBUG-9879] Fix off-by-one in vertical position for elided and
- non-elided text.
-
- Qt for Embedded Linux
- ---------------------
- * Add support for WA_TranslucentBackground (QTBUG-5739)
- * Add support for QFont::NoAntialias (QTBUG-5936)
- Qt for Windows CE
- -----------------
- - Core changes
- * Fixed menu handling on Windows mobile. (QTBUG-8754)
- * Fixed a crash when receiving a certain type of WM_SETTINGSCHANGE
- message. (QTBUG-7943)
- - QWindowsMobileStyle
- * Huge performance penalty for QTabWidget fixed for
- Windows mobile 6.5. (QTBUG-8419)
- * QTabBar scroll button size has been fixed. (QTBUG-8757)
- * Detection of Windows mobile 6.5 fixed. (QTBUG-8418)
- Qt for Symbian
- --------------
- - QSplashScreen
- * [QTBUG-11129] Fixed a hanging bug in QSplashScreen on 3.1 devices.
- - QS60Main... classes
- * The future compatibility of QS60MainAppUi, QS60MainDocument and
- QS60MainApplication are improved by removing the need for any
- sub-class to link to Avkon functions that may not exist in future.
- ****************************************************************************
- * Compiler Specific Changes *
- ****************************************************************************
- ****************************************************************************
- * Tools *
- ****************************************************************************
- - Build System
- - [QT-3540] Fixed Symbian resources not honoring TARGET with a path.
- - "configure -fast" on Windows now also works for other make tools than
- nmake. (QTBUG-8562)
- - [QTBUG-11351] Fixed memory restrictions not being passed on to elf2e32.
- - [QTBUG-11385] Removed the need to specify -arch symbian when compiling
- for Symbian on Linux.
- - [QTBUG-11396] "configure -qtlibinfix" now works when compiling for
- Symbian on Linux.
- - [QTBUG-11670] Fixed a bug which caused "make runonphone" to look for
- package in the wrong place.
- - [QTBUG-11727] Fixed a bug which made builds outside of the Qt tree fail
- to compile.
- - [QTBUG-11927] "configure -silent" now works with the
- symbian/linux-armcc and symbian/linux-gcce mkspecs.
- - Assistant
- - Designer
- - [QTBUG-9351] Fixed a bug that caused modified headerview-properties
- of item views to be duplicated in the UI-file.
- - [QTBUG-8347] Fixed a layout problem caused by embedded images in the rich
- text of a QLabel.
- - [QTBUG-8041], [QTBUG-8213] Fixed a crash related to undo while moving
- widgets by arrow keys.
- - [QTBUG-7822] Added support for the 'windowOpacity'-property.
- - [QTBUG-7764] Fixed the emission of the propertyChanged()-signal of
- QDesignerPropertyEditorInterface.
- - [QTBUG-5492] Made widgetbox-filter match on class names, too.
- - Linguist
- * The GNU gettext PO format support has been improved
- - rcc
- - moc
- * Fixed several parsing bugs. Including changes in the normalized signature.
- - uic
- - uic3
- - [QTBUG-9207] Fixed export of image files of type XPM, added
- compatibility option -limit-xpm-linelength.
- - qmake
- * Removed remainder of tmake compatibility
- * Removed remainder of mac9 mode
- * Removed MSVC6 generator
- * Removed makespecs for MSVC.NET and MSVC2002
- * Deprecated -win32/-unix/-macx options, following various cleanups
- relating to platform support. Cross-building makespecs should now
- specify a TARGET_PLATFORM.
- * Started to warn about use of various constructs:
- - non-lowercased replace $$function() calls
- - deprecated variables
- - unescaped backslashes.
- NOTE: You should use UNIX path separators where possible. qmake
- will warn about unnecessary Windows path separators in the future.
- * Removed expansion of qmake- & environment variables in some unexpected
- cases (double expansions, command line options, etc.)
- * Removed splitting at semicolons of literal values which were assigned
- directly to INCLUDEPATH and DEPENDPATH
- * Removed UNIX-specific exporting of all qmake variables to the environment
- of subprocesses invoked via system(). You should put specific assignments
- into the invoked shell command instead.
- * Started to short-cut evaluation inside if() tests, consistently with
- evaluation outside if().
- * Added possibility to request project recursion from within a PRO file
- - configure
- - qtconfig
- - qt3to4
- ****************************************************************************
- * Plugins *
- ****************************************************************************
- ****************************************************************************
- * Important Behavior Changes *
- ****************************************************************************
- QtScript: Changes due to updating src/3rdparty/javascriptcore:
- - It is no longer possible to delete an undeletable property from C++
- using QScriptValue::setProperty().
- - The QScriptEngineAgent::positionChange() callback will always report
- a column number of 1.
- - QScriptValueIterator will include the "length" property when iterating
- over Array objects.
- QtCore:
- - QChar no longer carries the Q_PACKED tag on ARM. This flag was
- used to allow proper alignment of QChar on 2 bytes on older ARM
- ABIs, but it also allowed for unaligned access. Qt never generates
- or uses unaligned access and the new EABI aligns as expected, so
- the flag was removed.
- - QTextBoundaryFinder is now consistent with ICU when it comes to
- line breaking, reporting the index of the boundary at which the line
- break should occur rather than the index of the character.
- QtGui:
- - QWidget::setLayoutDirection no longer affects the text layout
- direction (Qt::LeftToRight or Qt::RightToLeft) of QTextEdit, QLineEdit
- and widgets based on them. The default text layout direction
- (Qt::LayoutDirectionAuto) is now detected from keyboard layout and
- language of the text (conforms to Unicode standards). To
- programmatically force the text direction of a QTextEdit, you can
- change the defaultTextOption of the QTextDocument associated with that
- widget with a new QTextOption of different textDirection property. For
- QLineEdit, the only way so far is sending a Qt::Key_Direction_L/R
- keyboard event to that widget.
- QtNetwork:
- - Qt does no longer provide its own CA bundle, but uses system APIs for
- retrieving the default system certificates.