summaryrefslogtreecommitdiff
path: root/dist
diff options
context:
space:
mode:
Diffstat (limited to 'dist')
-rw-r--r--dist/changes-5.3.0465
1 files changed, 459 insertions, 6 deletions
diff --git a/dist/changes-5.3.0 b/dist/changes-5.3.0
index cb2c3608f0..ae837fc023 100644
--- a/dist/changes-5.3.0
+++ b/dist/changes-5.3.0
@@ -16,6 +16,50 @@ Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
****************************************************************************
+* Important Behavior Changes *
+****************************************************************************
+
+ - SIMD support in CPUs:
+ * [QTBUG-30440] Qt no longer checks for support for the Neon FPU on
+ ARM platforms at runtime. Code optimized for Neon must be enabled
+ unconditionally at compile time by ensuring the compiler supports
+ Neon. You may need to edit your mkspec for that.
+
+ * Qt now automatically generates code for processors supporting SSE2
+ on i386 platforms. To disable this, pass the -no-sse2 option during
+ Qt configuration. Since this feature has been present on CPUs for
+ 10 years and since Qt no longer checks for runtime support for
+ SSE2, we strongly encourage users to leave the default setting on
+ for best performance.
+ - For Linux distributions that must retain support for CPUs without
+ SSE2, we recommend doing two builds of Qt and installing the
+ SSE2-enabled libraries in the LIBDIR/sse2 directory (specially
+ QtGui, QtQml and QtQuick libraries). Tools, plugins, and examples
+ are not affected.
+ - See discussion on the Qt development mailing list:
+ http://lists.qt-project.org/pipermail/development/2013-November/014085.html
+
+ - SSL and security:
+ * The default set of ciphers used by QSslSocket has been changed to
+ exclude ciphers that are using key lengths smaller than 128
+ bits. These ciphers are still available and can be enabled by
+ applications if required.
+ * [QTBUG-20666] Support for DH and ECDH key exchange cipher suites
+ when acting as an SSL server has been made possible. This change
+ means the you can now implement servers that offer forward-secrecy
+ using Qt.
+ * Running Qt applications that are setuid is no longer allowed by
+ default. If you really need to do this then you can call
+ QCoreApplication::setSetuidAllowed(true) before creating the
+ QCoreApplication instance.
+
+ - UTF-8 decoding:
+ * The QString and QTextCodec UTF-8 decoder changed behavior slightly:
+ when it encounters invalid sequences, it will insert one
+ replacement character per byte that is invalid, instead of one
+ replacement character for the whole invalid length.
+
+****************************************************************************
* Platform deprecation notice *
****************************************************************************
@@ -24,17 +68,125 @@ information about a particular change.
not tested, and most likely has issues that are not fully documented.
****************************************************************************
-* Library *
+* General *
****************************************************************************
-QtWidgets
----------
+ - Support for the following platforms has been removed, due to lack of
+ interest in updating support: INTEGRITY, VxWorks, Solaris on UltraSPARC
+ (with the Sun Studio compiler suite), AIX on POWER processors (with IBM
+ Visual Age compiler suite).
+ - Builtin command-line options such as -reverse, -session, -style
+ -etc. now all support double dash, e.g. --reverse, --session,
+ --style...
+
+****************************************************************************
+* Library *
+****************************************************************************
QtCore
------
- Added QSignalBlocker, a RAII-style wrapper around
QObject::blockSignals().
+ - QLibraryInfo provides information on how Qt was built.
+ - Added class QMarginsF to support handling margins with floating-point
+ values.
+
+ - Atomic support:
+ * Added more operations to the atomic classes, including operator T(),
+ operator=(T), operator++, operator--. For the QAtomicInteger,
+ bit-manipulation operations are also provided, both in operator and in
+ fetchAndXxxYyyyyy modes.
+
+ - Event loop:
+ * [QTBUG-36611] QCoreApplication::hasPendingEvents and
+ QAbstractEventDispatcher::hasPendingEvents are now deprecated. Please
+ refer to the documentation for more information.
+
+ - Logging:
+ * It is now possible for the qCDebug macros to be used in a printf
+ style.
+ * All qCDebug categories are enabled by default, except for Qt's own
+ categories.
+ * The logging framework can now be configured with an .ini file.
+ * Q_LOGGING_CATEGORY and Q_DECLARE_LOGGING_CATEGORY now return a const
+ object.
+
+ - QByteArray:
+ * Added NSData/CDataRef converters for QByteArray.
+
+ - QChar:
+ * Added JoiningType enum and joiningType() method that deprecates the
+ old QChar::Joining enum and joining() method.
+
+ - QFileSelector:
+ * [QTBUG-35073] The identifier for OS X has been changed back to
+ 'osx' from 'mac', and 'mac' and 'darwin' have now been added as
+ selectors for Darwin OS (which is the base of both OS X and iOS).
+
+ - QHash/QSet:
+ * Added qHash overloads for float, double and long double.
+
+ - QJsonArray:
+ * Added convenience methods to QJsonArray for appending QJsonValues
+
+ - QJsonValue:
+ * Added constructor to QJsonValue for const char *
+ * QJsonValue::fromVariant() will now convert single-precision Floats
+ into Doubles instead of Strings
+
+ - QMargins:
+ * Added missing addition and subtraction operators.
+
+ - QProcess:
+ * [QTBUG-26136] Added processId() to QProcess. This function will,
+ unlike pid(), return the actual process identifier on both Windows
+ and Unix.
+
+ - QRect:
+ * Added QMargins subtraction operator.
+
+ - QSettings:
+ * [QTBUG-9824][QTBUG-21062][QTBUG-22745] QSettings now returns the
+ correct value for isWritable() when using SystemScope settings.
+
+ - QSortFilterProxyModel:
+ * [QTBUG-30662] Fixed sorting when a previously empty proxy model
+ becomes populated because of a change in the filter.
+
+ - QStandardPaths:
+ * [QTBUG-34631] Added QStandardPaths implementation for Android.
+
+ - QString:
+ * Added QLatin1String overload of contains()
+ * QString::toUcs4 now does not return invalid UCS-4 code units belonging
+ to the surrogate range (U+D800 to U+DFFF) when the QString contains
+ malformed UTF-16 data. Instead, U+FFFD is returned in place of the
+ malformed subsequence.
+
+ - QTextCodec:
+ * Encoding a QString in UTF-32 will now replace malformed UTF-16
+ subsequences in the string with the Unicode replacement character
+ (U+FFFD).
+
+ - QVarLengthArray:
+ * Added the indexOf, lastIndexOf and contains functions to
+ QVarLengthArray. These functions make the class more similar to
+ QVector.
+
+ - Windows:
+ * [QTBUG-35194] Now QStandardPaths::DownloadLocation returns the proper
+ path for Windows Vista and up
+
+QtDBus
+------
+
+ - QtDBus adaptors now include the PropertiesChanged signal in
+ introspection data
+
+ - QDBusServer:
+ * Added method to QDBusServer to allow anonymous client connections,
+ even if the connecting client is not authenticated as a user.
QtGui
-----
@@ -42,12 +194,313 @@ QtGui
- Added setSwapInterval() to QSurfaceFormat. Platforms that support
setting the swap interval are now defaulting to the value of 1,
meaning vsync is enabled.
+ - [QTBUG-35220] Reading bmp images with alpha channel is now supported
+ - [QTBUG-36394] The main Embedded Linux platform plugins (eglfs, linuxfb,
+ kms) are changed to behave identically with regards to terminal keyboard
+ input: it is turned off by default on all of these platforms. If this
+ feature is not desired, it can be disabled by setting the environment
+ variable QT_QPA_ENABLE_TERMINAL_KEYBOARD.
+ - [QTBUG-36374] Mouse hotplugging is now fully supported in eglfs when
+ running on Embedded Linux systems with libudev support enabled.
+ - [QTBUG-36603] Windows Accessibility now handles the disabled state of
+ widgets correctly.
+ - Accessibility on Linux now reports the active state correctly.
+ - [QTBUG-36483] Qt builds on Windows can now be configured for dynamic
+ loading of the OpenGL implementation. This can be requested by passing
+ -opengl dynamic to configure. In this mode no modules will link to
+ opengl32.dll or Angle's libegl/libglesv2. Instead, QtGui will
+ dynamically choose between desktop and Angle during the first GL/EGL/WGL
+ call. This allows deploying applications with a single set of Qt
+ libraries with the ability of transparently falling back to Angle in
+ case the opengl32.dll is not suitable, due to missing graphics drivers
+ for example.
+ - Added class QPageLayout to support handling page layouts including the
+ page size, orientation and margins.
+ - [QTBUG-28813][QTBUG-29930][QTBUG-35836] Fixed regression in
+ arabic text rendering.
+ - [QTBUG-37332] GLES3 and desktop OpenGL are now fully supported with
+ EGL
+ - [QTBUG-36993] Native (that is, not distance field based) text
+ rendering is now functional on OpenGL 3.2+ core profiles too.
+
+ - Accessibility:
+ * [QTBUG-37204] Implemented text attributes to enable VoiceOver to read
+ QTextEdit and QPlainTextEdit.
+ * Assistive apps such as VoiceOver can now set the focus on widgets
+ and controls.
+
+ - QColor:
+ * Exported highly optimized methods for premultiply and unpremultiply of
+ QRgb values.
+
+ - QFont:
+ * Added qHash overload for this class.
+
+ - QGuiApplication:
+ * Restored support for -title command line argument on X11 and added
+ -qwindowtitle on all platforms.
+
+ - QImage:
+ * Added rvalue-qualified overloads for mirrored(), rgbSwapped() and
+ convertToFormat(), allowing in-place conversion in some cases
+
+ - QOpenGLFramebufferObject:
+ * [QTBUG-35881] Added takeTexture() for retrieving and detaching the
+ texture from the framebuffer object.
+
+ - QPageSize:
+ * Added new QPageSize class to implement Adobe Postscript PPD standard
+ page sizes. This class supports the standard page sizes, names and
+ keys from the PPD standard, and provides convenient size and rect
+ conversion methods.
+
+ - QPagedPaintDevice:
+ * [QTBUG-27685][QTBUG-25744] Paged paint devices such as QPrinter and
+ QPdfWriter now support all Postscript standard page sizes.
+
+ - QPdfWriter:
+ * The QPdfWriter now supports setting the PDF orientation, layout and
+ resolution by using QPageSize and QPageLayout.
+
+ - QTextLayout:
+ * [QTBUG-18060] Fixed visual cursor movement in bidirectional text.
+
+ - QWindow:
+ * QWindow::icon() now defaults to the application icon, which can be set
+ with QGuiApplication::setWindowIcon().
+
+QtNetwork
+---------
+
+ - [QTBUG-18714] Added support for the SPDY protocol (version 3.0).
+
+ - QNetworkReply:
+ * [QTBUG-30880] Added more (specific) HTTP status codes to NetworkError
+ enum.
+
+ - QSslConfiguration:
+ * [QTBUG-33208] Added support for the Next Protocol Negotiation (NPN)
+ TLS extension.
+
+QtPrintSupport
+--------------
+
+ - [QTBUG-29663] Made the Qt buildsystem automatically include the
+ necessary plugins so that static applications can print.
+ - CUPS 1.4 is now required for print support on Linux and other *nix
+ platforms.
+
+ - QPrintPreviewDialog:
+ * [QTBUG-36561] Fixed initialization of QPrintPreviewDialog's image
+ resources for static builds.
+
+ - QPrinter:
+ * QPrinter can now use QPageSize and QPageLayout in the public api to
+ control the page layout for a print job.
+
+ - QPrinterInfo:
+ * [QTBUG-35248] Added new public api for isRemote(), state(),
+ defaultPageSize(), supportedPageSizes(), supportsCustomPageSizes(),
+ minimumPhysicalPageSize(), maximumPhysicalPageSize(),
+ supportedResolutions(), availablePrinterNames(), and
+ defaultPrinterName(). The use of availablePrinters() is discouraged
+ due to performance concerns.
QtSql
-----
- QSqlQuery::isNull(field) now correctly returns true for "no such field".
- QSqlQuery::isNull(fieldname) is a new overload.
- - QSQLITE: Empty database name now opens in-memory database.
- - QSqlError: Now handles alphanumeric error codes. Used by QPSQL.
- Old numeric code is deprecated.
+ - [QTBUG-12186] Fixed the order of values with positional binding in a
+ QSqlQuery
+
+ - QSQLITE:
+ * Creating temporary databases is now possible
+ * Empty database name now opens in-memory database.
+
+ - QSqlError
+ * Now handles alphanumeric error codes. Used by QPSQL. Old numeric
+ code is deprecated.
+
+QtTest
+------
+
+ - Added test duration to xml output. When running tests with xml output a
+ new tag of the form
+ <duration msecs="123"/> is added to each test function and the test as a
+ whole.
+ - Added a CSV logging mode that is suitable for importing benchmark
+ results into spreadsheets. This can be enabled by the -csv option on the
+ command-line. The CSV logging mode will not print test failures, debug
+ messages, warnings, etc.
+ - QtTest now prints an escaped version of QStrings that failed to compare
+ with QCOMPARE. That is, instead of converting non-printable characters
+ to question marks, QtTest will print the Unicode representation of the
+ character in question.
+
+ - Windows:
+ * [QTBUG-35743] Use correct UTF-8 encoding for XML test results on
+ platforms with different console encoding.
+
+QtWidgets
+---------
+
+ - Accessibility:
+ * Fixed QTextEdit not reporting newlines to accessibility frameworks and
+ add editable text interface.
+
+ - QAbstractSpinBox:
+ * [QTBUG-5142] QSpinBox and QDoubleSpinBox widgets can now show the
+ group (thousands) separators.
+
+ - QColorDialog:
+ * Ensured QColorDialog::DontUseNativeDialog is respected when showing
+ the dialog.
+
+ - QDateEdit:
+ * [QTBUG-36692] Fixed incorrect appearance on OS X of QDateEdit with
+ calendarPopup enabled.
+
+ - QDrag
+ * Fixed Drag and Drop driven by touch-synthesized mouse events on
+ Windows.
+
+ - QListView:
+ * [QTBUG-4714] Fixed QListView ignoring the grid size for word
+ wrapping in icon mode
+
+ - QMdiSubWindow:
+ * [QTBUG-9933][QTBUG-27274] Fixed setWindowFlags() for QMdiSubWindow.
+
+ - QMenu:
+ * [QTBUG-20094] Enabled sloppy submenu mouse navigation.
+ * [QTBUG-36142] QMenu now correctly uses text color set by style
+ sheet for menu items on Windows.
+ * [QTBUG-36218] Fixed position of menu gutter on Windows when using a
+ custom widget action.
+
+ - QPlainTextEdit:
+ * Added find method overload using QRegExp
+
+ - QSpinBox:
+ * [QTBUG-3032] Fixed keyboard selection with multiple-character strings.
+
+ - QScrollArea:
+ * [QTBUG-36314] The setting for click position is now respected on OS X.
+
+ - QTextDocument:
+ * [QTBUG-33336] Added support for empty inline elements in block tags.
+
+ - QTextEdit:
+ * Added find method overload using QRegExp
+
+ - QWidget:
+ * [QTBUG-25831] Restored the Qt 4 behavior in the sequence of events
+ that are delivered to widget windows and their children when a
+ mouse double click happens: the second MouseButtonPress event from
+ Qt 5.0-5.2 is no longer sent.
+ * [QTBUG-33716] QWidgets embedded in QGraphicsProxyWidget are no longer
+ sent close events when the app is closed on OS X.
+ * [QTBUG-36178] Fixed an issue where stay-on-top widgets would cover
+ their own children on OS X.
+
+ - QWizard:
+ * [QTBUG-7484] Added NoCancelButtonOnLastPage option.
+ * [QTBUG-36192] Fixed frame when using Vista style/MSVC2012.
+
+ - Text support:
+ * [QTBUG-36444] Fixed off-by-one in the height of text background.
+
+ - Windows:
+ * [QTBUG-21371][QTBUG-4397] QWidget::restoreGeometry() now restores
+ maximized/full screen widgets to the correct screen.
+
+****************************************************************************
+* Compiler Specific Changes *
+****************************************************************************
+
+ - Variadic macros are now enabled more liberally for gcc, clang, icc. If
+ you have warnings (because you e.g. compile with -pedantic), disable
+ them by -Wno-variadic-macros.
+
+****************************************************************************
+* Platform Specific Changes *
+****************************************************************************
+
+Android
+-------
+
+ - [QTBUG-34781] Fixed regression in "make install" on library projects on
+ Android so they can be used inside subdirs projects again.
+ - [QTBUG-36074] Fixed crash on populating large combo boxes or menus.
+ - [QTBUG-36528] Fixed QDir::entryList() for assets scheme to no longer
+ skip the first file in the directory.
+ - [QTBUG-30652] It is now possible to define a splash screen which will be
+ visible until the first window is created.
+ - [QTBUG-33704] Sped up first time directory listing in assets by using
+ pregenerated entry list.
+ - [QTBUG-37738] Fixed font merging problem which caused e.g. missing
+ glyphs for Arabic numerals.
+ - [QTBUG-36025] Fixed a memory leak in the clipboard
+
+ - Fonts:
+ * [QTBUG-36789] Fixed support for Arabic text.
+
+Linux
+-----
+
+ - Systems with systemd may now pass -journald to configure to send
+ logging output to journald. Logging will still be sent to stderr for
+ interactive applications (run from a tty) or with QT_NO_JOURNALD_LOG
+ set to a non-empty value.
+
+OS X
+----
+
+ - [QTBUG-18980][QTBUG-38246] Use CoreText text shaping engine for
+ support of complex scripts. If required, the shaping engine used in
+ previous versions can be preferred by configuring Qt with
+ -no-harfbuzz. Alternatively, the QT_HARFBUZZ environment variable
+ could be set to "old".
+
+Windows
+-------
+
+ - Introduced experimental direct2d platform plugin for Windows. This
+ plugin shares most code with the current windows plugin, but
+ substitutes a direct2d-based paint engine for window backing stores
+ and pixmaps.
+
+ - QtWidgets / QFileDialog:
+ * Handled the case of having trailing spaces in a filename correctly so
+ if the filename ends up being empty that the parent path is used
+ instead.
+
+ - Windows Embedded:
+ * Fixed building issue when configuring Qt with -qtlibinfix
+
+X11 / XCB
+---------
+
+ - Qt now supports XInput2 smooth scrolling events
+
+****************************************************************************
+* Tools *
+****************************************************************************
+
+moc
+---
+
+ - [QTBUG-33668] Fixed passing -D of a macro defined to something more
+ complex than a single identifier.
+
+ - QTBUG-36128:
+ * [QTBUG-36128] Fixed sign conversion warning in generated file.
+
+qdbus
+-----
+
+ - [QTBUG-36524] Fixed a bug that caused the qdbus tool to crash when
+ trying to display remote interfaces that had complex types without a
+ matching base Qt type.
+