mirror of
https://github.com/crystalidea/qt6windows7.git
synced 2024-11-29 15:35:52 +08:00
620 lines
25 KiB
Plaintext
620 lines
25 KiB
Plaintext
|
Qt 5.5 introduces many new features and improvements as well as bugfixes
|
|||
|
over the 5.4.x series. For more details, refer to the online documentation
|
|||
|
included in this distribution. The documentation is also available online:
|
|||
|
|
|||
|
http://doc.qt.io/qt-5.5
|
|||
|
|
|||
|
The Qt version 5.5 series is binary compatible with the 5.4.x series.
|
|||
|
Applications compiled for 5.4 will continue to run with 5.5.
|
|||
|
|
|||
|
Some of the changes listed in this file include issue tracking numbers
|
|||
|
corresponding to tasks in the Qt Bug Tracker:
|
|||
|
|
|||
|
http://bugreports.qt.io/
|
|||
|
|
|||
|
Each of these identifiers can be entered in the bug tracker to obtain more
|
|||
|
information about a particular change.
|
|||
|
|
|||
|
****************************************************************************
|
|||
|
* Deprecation Notice *
|
|||
|
****************************************************************************
|
|||
|
|
|||
|
- Support for the following platforms or toolchains is deprecated in Qt
|
|||
|
5.5 and will be removed as of Qt 5.6:
|
|||
|
* Apple OS X builds using GNU libstdc++
|
|||
|
* BlackBerry 10
|
|||
|
* QNX 6.5
|
|||
|
|
|||
|
The following platforms or toolchains are deprecated and will be
|
|||
|
removed as of Qt 5.7:
|
|||
|
* Apple OS X 10.7 (Lion)
|
|||
|
* GNU Compiler Collection (GCC) versions 4.6 and earlier
|
|||
|
* Microsoft Visual Studio compiler versions 2008 and 2010
|
|||
|
* Microsoft Windows XP, Windows Vista
|
|||
|
* Microsoft Windows Embedded Compact 7
|
|||
|
|
|||
|
Deprecated platforms and toolchains continue to work until removed.
|
|||
|
|
|||
|
- The QtWebKit and QtQuick1 modules and support for the QML 1 language
|
|||
|
are deprecated and Qt 5.5 will be the last release to include
|
|||
|
them. Starting with Qt 5.6, the source code for those modules will
|
|||
|
not be included in Qt's packaging. Compiling the 5.5 release of
|
|||
|
QtWebKit modules along with Qt 5.6 or future versions should
|
|||
|
work. QtQuick1 is not guaranteed to work in future versions after
|
|||
|
Qt 5.6.
|
|||
|
|
|||
|
- The QtScript module is deprecated and will be removed from Qt's
|
|||
|
packaging starting with version 5.7. The 5.5 and 5.6 releases of
|
|||
|
QtScript should continue to work along with Qt 5.7 and future
|
|||
|
versions.
|
|||
|
|
|||
|
- [QTBUG-25121] The usage of the QStyleOptionProgressBar::orientation
|
|||
|
member has been deprecated.
|
|||
|
|
|||
|
- QLibraryInfo::buildDate() was deprecated and will return a constant
|
|||
|
date now.
|
|||
|
|
|||
|
****************************************************************************
|
|||
|
* Future Direction Notice *
|
|||
|
****************************************************************************
|
|||
|
|
|||
|
- In Qt 6, QCoreApplication::notify() will not be called for events being
|
|||
|
delivered to objects outside the main thread. The reason for that is
|
|||
|
that the main application object may begin destruction while those
|
|||
|
threads are still delivering events, which is undefined behavior.
|
|||
|
Applications that currently override notify() and use that function
|
|||
|
outside the main thread are advised to find other solutions in the mean
|
|||
|
time.
|
|||
|
|
|||
|
- Qt 5.7 will begin requiring certain C++11 features in order to
|
|||
|
compile. The minimum compiler versions for that release will be:
|
|||
|
* Clang 3.2 (included in XCode 5.0)
|
|||
|
* GCC 4.7
|
|||
|
* Intel C++ Composer XE 2013 SP1 (compiler version 14.0)
|
|||
|
* Microsoft Visual Studio 2012 (compiler version 17.0)
|
|||
|
|
|||
|
****************************************************************************
|
|||
|
* Important Behavior Changes *
|
|||
|
****************************************************************************
|
|||
|
|
|||
|
- Q_ASSERT will now expand the condition even in release mode when asserts
|
|||
|
are disabled, albeit in an unreachable code path. This solves compiler
|
|||
|
warnings about variables and functions that were unused in release mode
|
|||
|
because they were only used in assertions. Unfortunately, codebases that
|
|||
|
hid those functions and variables via #ifndef will need to remove the
|
|||
|
conditionals to compile with Qt 5.5.
|
|||
|
- QDBusConnection::sender() (deprecated since Qt 4.3) has changed to
|
|||
|
always return an invalid QDBusConnection. To know what connection the
|
|||
|
incoming call was received from, use QDBusContext.
|
|||
|
- QHostAddress will no longer convert IPv6 addresses of type "v4-mapped"
|
|||
|
to IPv4. To perform this conversion manually, construct another
|
|||
|
QHostAddress with the result of toIPv4Address().
|
|||
|
- (DY)LD_LIBRARY_PATH will no longer "stick" in the process environment
|
|||
|
when starting a QProcess. This means that if a QProcess is started with
|
|||
|
a clear environment, it will not specially inherit (DY)LD_LIBRARY_PATH
|
|||
|
from the parent process. This should not affect most applications, but
|
|||
|
if the old behavior is desired, one can simply pass a clear
|
|||
|
QProcessEnvironment with the (DY)LD_LIBRARY_PATH values added, to the
|
|||
|
QProcess.
|
|||
|
- QAbstractTableModel and QAbstractListModel now reimplement sibling()
|
|||
|
to avoid calling parent() (which returns a constant). Subclasses of
|
|||
|
these models that override parent(), will likely also need to
|
|||
|
override sibling() now.
|
|||
|
- Qt 5.5 received some header #include cleanups. Code that relied on indirect
|
|||
|
includes from Qt headers may need to include some headers explicitly now.
|
|||
|
For example, qstringlist.h no longer includes QDataStream and QObject.
|
|||
|
|
|||
|
- QCoreApplication:
|
|||
|
* [QTBUG-30330][QTSOLBUG-184] On Windows, QCoreApplication::arguments()
|
|||
|
now returns a list built from argv on Windows as well if a modified
|
|||
|
argv was passed to the class' constructor.
|
|||
|
|
|||
|
- QIODevice:
|
|||
|
* Opening Android assets with QIODevice::ReadWrite now returns false to
|
|||
|
correctly indicate that the files are not writable.
|
|||
|
|
|||
|
- QItemDelegate:
|
|||
|
* [QTBUG-3305] QItemDelegate will now not close a
|
|||
|
QTextEdit/QPlainTextEdit editor when the tab key is pressed; instead,
|
|||
|
the key will reach the editor.
|
|||
|
|
|||
|
- QProgressDialog:
|
|||
|
* [QTBUG-17427][QTBUG-25316] The timer for estimating the duration of
|
|||
|
the progress dialog is now started in the constructor and in
|
|||
|
setValue(minimum()), as well as when calling setValue(0), as
|
|||
|
previously documented.
|
|||
|
|
|||
|
- QSaveFile:
|
|||
|
* [QTBUG-44086] Files created by QSaveFile do now have the same
|
|||
|
rights as files created by QFile. This also fixes a regression in
|
|||
|
QSettings: In the Qt 5.4 series, new files created by QSettings
|
|||
|
were only readable by the current user.
|
|||
|
|
|||
|
- QVariant:
|
|||
|
* [QTBUG-42722] QVariant now obeys the C++ type promotion rules when
|
|||
|
comparing numeric types (integrals, float and double), including the
|
|||
|
fact that unsigned comparisons are preferred for types of the same
|
|||
|
rank (that is, now QVariant(-1) > QVariant(0U)).
|
|||
|
|
|||
|
- QWindow:
|
|||
|
* QWindows will no longer be re-shown automatically when moved from a
|
|||
|
destroyed QScreen, unless that QScreen was a virtual sibling of the
|
|||
|
primary screen.
|
|||
|
|
|||
|
- qmake:
|
|||
|
* For commercial builds, qmake now checks for a valid Qt license. This
|
|||
|
requires setting up a Qt Account (or .qt-license file) on the
|
|||
|
development machine.
|
|||
|
* Qt configure and qmake used with a MinGW spec will no longer emulate
|
|||
|
MSVC by picking up the INCLUDE and LIB environment variables. Use the
|
|||
|
-I/-L configure options to pass additional paths, as you would under
|
|||
|
Unix.
|
|||
|
* A lot of quoting issues have been fixed. As a side effect, qmake
|
|||
|
has become more sensitive to over-quoted file names in project
|
|||
|
files.
|
|||
|
* qmake is now stricter about syntax errors in project files.
|
|||
|
|
|||
|
****************************************************************************
|
|||
|
* Library *
|
|||
|
****************************************************************************
|
|||
|
|
|||
|
QtCore
|
|||
|
------
|
|||
|
|
|||
|
- Added qEnvironmentVariableIntValue().
|
|||
|
- Added Q_DECL_RELAXED_CONSTEXPR for the corresponding C++14 feature
|
|||
|
- Added qHashRange() and qHashRangeCommutative() functions to aid
|
|||
|
implementing qHash() overloads for custom types.
|
|||
|
- Q_ENUMS and Q_FLAGS have been deprecated, and replaced by Q_ENUM and
|
|||
|
Q_FLAG macros. These two new macros automatically register the enum with
|
|||
|
the Qt metatype system, allowing automatic conversion to or from string
|
|||
|
in QVariant, or to show the strings by QDebug operators. They also
|
|||
|
enable the new QMetaEnum::fromType function.
|
|||
|
- QPersistentModel index becomes an built-in meta-type, including QVariant
|
|||
|
support.
|
|||
|
- Updated Unicode data to v.7.0
|
|||
|
- Updated QLocale data to CLDR v.27
|
|||
|
- Updated QTimeZone data to CLDR v.27
|
|||
|
|
|||
|
- Item Models:
|
|||
|
* QItemSelectionModel can now be created without a model and have one
|
|||
|
set later.
|
|||
|
|
|||
|
- Logging:
|
|||
|
* QtInfoMsg got added as a new QtMsgType. Use the new qInfo(), qCInfo()
|
|||
|
macros to log to it.
|
|||
|
|
|||
|
- Logging framework:
|
|||
|
* %{threadid} now prints the real thread ID. On Linux, OS X, iOS,
|
|||
|
FreeBSD and Windows, the value is unique system-wide. On other
|
|||
|
systems, it will print something that may be process-specific (the
|
|||
|
value of pthread_self(3)). To print the pointer to QThread::current(),
|
|||
|
use %{qthreadptr}.
|
|||
|
|
|||
|
- moc
|
|||
|
* Classes annotated with Q_GADGET can now have Q_PROPERTY and Q_INVOKABLE
|
|||
|
functions. QMetaProperty::{read,write}OnGadget and
|
|||
|
QMetaMethod::invokeOnGadget can be used with those.
|
|||
|
|
|||
|
- Objective-C:
|
|||
|
* [QTBUG-37116] Added NSDate/CDateRef converters for QDateTime
|
|||
|
|
|||
|
- QAssociativeIterable:
|
|||
|
* Added find().
|
|||
|
|
|||
|
- QCommandLineParser:
|
|||
|
* Message boxes are used to display errors and usage if no console
|
|||
|
window can be obtained on Windows.
|
|||
|
|
|||
|
- QDebug:
|
|||
|
* Printing of QStrings and QStringRefs whenever "noquote" is not active
|
|||
|
now prints the strings in a format that can be copied back to C++
|
|||
|
code. All characters that aren't printable in US-ASCII are escaped
|
|||
|
(this includes printable Unicode characters outside of US-ASCII).
|
|||
|
Pretty-printing will not respect QTextFormat padding or field widths.
|
|||
|
* Similarly, printing of QByteArrays whenever "noquote" is not active now
|
|||
|
prints the arrays in a format consumable in C++, with all non-printable
|
|||
|
characters printed in hex escape sequences.
|
|||
|
|
|||
|
- QJsonObject:
|
|||
|
* Added conversion to and from QVariantHash
|
|||
|
|
|||
|
- QLibrary:
|
|||
|
* Added DeepBindHint which maps to RTLD_DEEPBIND on Linux making it
|
|||
|
possible to load libraries with external symbols that clash with
|
|||
|
already loaded ones, such as plugins linked to Qt4.
|
|||
|
|
|||
|
- QLockFile:
|
|||
|
* [QTBUG-45497] Detection of stale lock files got more robust and takes
|
|||
|
the name of the process that belongs to the stored PID into account.
|
|||
|
|
|||
|
- QRegularExpression:
|
|||
|
* Support for matching using QStringRef as the subject's string type has
|
|||
|
been added.
|
|||
|
|
|||
|
- QSet:
|
|||
|
* Can now be used as the key in QSet and QHash.
|
|||
|
|
|||
|
- QSortFilterProxyModel:
|
|||
|
* [QTBUG-35440] QSortFilterProxyModel now properly forwards the roles
|
|||
|
that have been changed when the source model emits dataChanged().
|
|||
|
|
|||
|
- QStandardPaths:
|
|||
|
* [QTBUG-38872][QTBUG-38845] Added QStandardPaths::AppConfigLocation,
|
|||
|
for application-specific configuration directory. ConfigLocation was
|
|||
|
inconsistent.
|
|||
|
|
|||
|
- QString:
|
|||
|
* Added support for retrieving the QRegularExpressionMatch to indexOf
|
|||
|
and lastIndexOf.
|
|||
|
* Added QT_RESTRICTED_CAST_FROM_ASCII macro as less intrusive
|
|||
|
alternative to QT_NO_CAST_FROM_ASCII.
|
|||
|
* Added methods for convenient conversion to and from std::u16string and
|
|||
|
std::u32string.
|
|||
|
* Added asprintf(), vasprintf().
|
|||
|
|
|||
|
- QThreadPool:
|
|||
|
* Added QThreadPool::cancel() which allows removing from the job queue a
|
|||
|
job that hasn't been started yet.
|
|||
|
|
|||
|
- QTimeZone:
|
|||
|
* Added methods systemTimeZone() and utc() that return QTimeZone objects
|
|||
|
for the system time zone and for UTC, respectively.
|
|||
|
|
|||
|
- QVector:
|
|||
|
* Added QVector::append(const QVector &) overload
|
|||
|
|
|||
|
- QVector3D:
|
|||
|
* Added convenience project and unproject methods to use like gluProject
|
|||
|
and gluUnproject
|
|||
|
|
|||
|
- QtMath:
|
|||
|
* qmath.h no longer includes math.h, so any sources depending on that
|
|||
|
indirect inclusion may fail to build.
|
|||
|
|
|||
|
- State Machine:
|
|||
|
* Added support for internal transitions.
|
|||
|
* [QTBUG-40293] Added an addTransition() overload that takes a
|
|||
|
pointer-to-member for the signal triggering the transition.
|
|||
|
* [QTBUG-44963] Fixed an issue where a history state restore would
|
|||
|
activate too many states, possibly putting the state machine in an
|
|||
|
invalid state.
|
|||
|
* QTBUG-44783] Fixed an issue where the state machine could end up in
|
|||
|
an invalid state when transitions from a parallel state were not
|
|||
|
checked for conflicts.
|
|||
|
* Fixed a case where a parallel state was not exited and re-entered
|
|||
|
when one of its substates was exited and subsequently re-entered.
|
|||
|
* Fixed the non-deterministic behavior of picking a transition from a
|
|||
|
set of conflicting transitions.
|
|||
|
|
|||
|
QtDBus
|
|||
|
------
|
|||
|
|
|||
|
- Added annotation org.qtproject.QtDBus.MethodName to allow
|
|||
|
autogenerating C++ methods with different names to the original DBus
|
|||
|
method
|
|||
|
|
|||
|
QtGui
|
|||
|
-----
|
|||
|
|
|||
|
- Added support for device-specific backend plugins in eglfs.
|
|||
|
- eglfs is now using fullscreen mode also when running on X11.
|
|||
|
- Added a plugin to get mouse, keyboard and touch events via libinput.
|
|||
|
- The linuxfb platform plugin's input device handling is now compatible
|
|||
|
with eglfs. The evdev keyboard, mouse and touch code is compiled in by
|
|||
|
default.
|
|||
|
- The mouse cursor on Embedded Linux is now handling hotplugging correctly
|
|||
|
with eglfs and linuxfb regardless of how the input handling code is
|
|||
|
loaded (via a generic plugin or built in to the platform plugin).
|
|||
|
- QOffscreenSurface is now relying on EGL_KHR_surfaceless_context when
|
|||
|
available, and avoids creating a pbuffer surface when the extension is
|
|||
|
present.
|
|||
|
- initializeOpenGLFunctions() no longer needs to be called when querying a
|
|||
|
versioned function wrapper object via QOpenGLContext::versionFunctions().
|
|||
|
- Added version function classes for OpenGL 4.4 and 4.5 and deprecate some
|
|||
|
erroneously classified functions.
|
|||
|
- Exposed TabFocusBehavior in QStyleHints
|
|||
|
- [QTBUG-42240][QTBUG-43263] Qt now contains a built-in GPU driver
|
|||
|
blacklist for Windows that disables the usage of desktop OpenGL with
|
|||
|
some older cards that are known to be unstable with opengl32.dll.
|
|||
|
- [QTBUG-44937] Support for QScreen::grabWindow() is now available on
|
|||
|
embedded platforms (eglfs, linuxfb).
|
|||
|
- Added QStyleHints::singleClickActivation to access whether the platform
|
|||
|
expects item activation to occur on single clicks rather than double
|
|||
|
clicks.
|
|||
|
- [QTBUG-40034] QOpenGLWidget and QQuickWidget are now supported on iOS.
|
|||
|
|
|||
|
- Accessibility:
|
|||
|
* [QTBUG-44479] Qt now reports text attributes correctly on Linux, so
|
|||
|
ORCA+F now works properly in QTextEdit and other text controls.
|
|||
|
|
|||
|
- Accessibility / OS X:
|
|||
|
* QTextEdit now properly reports to accessibility visual lines
|
|||
|
(softlines) as lines, instead of whole paragraphs. This allows better
|
|||
|
VoiceOver user experience when reading text line by line using arrows
|
|||
|
up/down.
|
|||
|
* Visual bounds returned by QTextEdit were singificantly improved; this
|
|||
|
enables VoiceOver to draw properly positioned VoiceOver cursor.
|
|||
|
|
|||
|
- Image plugins:
|
|||
|
* [QTBUG-37946][QTBUG-43563][QTBUG-45552][QTBUG-45865] An option has
|
|||
|
been added to QImageReader to enable automatic application of EXIF
|
|||
|
orientation. This behavior was default in Qt 5.4.1, but reverted in Qt
|
|||
|
5.4.2.
|
|||
|
|
|||
|
- QFontDatabase:
|
|||
|
* Added QFontDatabase::isPrivateFamily()
|
|||
|
|
|||
|
- QImage:
|
|||
|
* Added support for grayscale and alpha 8-bit formats which can also be
|
|||
|
rendered to.
|
|||
|
|
|||
|
- QPainter:
|
|||
|
* [QTBUG-35830] QPainter will no longer try to replace IntersectClip
|
|||
|
with ReplaceClip if the paint engine is a QPicture.
|
|||
|
|
|||
|
- QPlatformSurfaceEvent:
|
|||
|
* [QTBUG-42476][QTBUG-42483] Added event class QPlatformSurfaceEvent,
|
|||
|
which is sent to QWindow and QOffscreenSurface when native surface is
|
|||
|
created or about to be destroyed.
|
|||
|
|
|||
|
- QQuaternion:
|
|||
|
* Added methods to convert a quaternion to/from Euler angles and to/from
|
|||
|
rotation matrix.
|
|||
|
|
|||
|
- QScreen:
|
|||
|
* Added devicePixelRatio property.
|
|||
|
|
|||
|
- QTextDocument:
|
|||
|
* Support for searching with a QRegularExpression in a document has been
|
|||
|
added.
|
|||
|
|
|||
|
- QWheelEvent:
|
|||
|
* On OSX, trackpad wheel event phase transitions now occur in the order
|
|||
|
ScrollBegin, ScrollUpdate, ..., ScrollEnd, ScrollUpdate, ...,
|
|||
|
ScrollEnd, where the second batch of updates represents momentum
|
|||
|
events (inertial scrolling).
|
|||
|
|
|||
|
- QWindow:
|
|||
|
* [QTBUG-32956] lastWindowClosed will now be emitted even if
|
|||
|
quitOnLastWindowClosed is not set.
|
|||
|
|
|||
|
- Windows:
|
|||
|
* [QTBUG-43263] Introduced experimental feature allowing the user to
|
|||
|
specify a GPU driver buglist with some additional keywords to chooose
|
|||
|
the GL renderer backend depending on GPU.
|
|||
|
|
|||
|
- i18n:
|
|||
|
* [QTBUG-43447] Fixed bug where layout direction did not switch
|
|||
|
according to the instruction in the translation file.
|
|||
|
|
|||
|
- Text:
|
|||
|
* [QTBUG-39286] Fixed position of underline on centered text when the
|
|||
|
text layout's width is an even number.
|
|||
|
|
|||
|
QtNetwork
|
|||
|
---------
|
|||
|
|
|||
|
- [QTBUG-26295] Introduced libproxy backend for Unix platforms, enabled
|
|||
|
automatically if the required dev package is present
|
|||
|
- As some legacy ifdefs for OpenSSL 0.9.7 and 0.9.8f were removed, Qt
|
|||
|
will no longer build with these versions. In addition, there is no
|
|||
|
longer support for an OpenSSL library built with NO_TLSEXT.
|
|||
|
- [QTBUG-26538] Fixed a bug that caused both QTcpSocket and QUdpSocket to
|
|||
|
close the socket and lose any bound ports before connecting. Now
|
|||
|
bind()/setSocketDescriptor() followed by connect() will retain the
|
|||
|
original file descriptor.
|
|||
|
|
|||
|
- QLocalSocket:
|
|||
|
* [QTBUG-16688] On Windows, waitForReadyRead now always waits for more
|
|||
|
data, even if bytes are still in the buffer.
|
|||
|
|
|||
|
- QNetworkAccessManager:
|
|||
|
* It is now possible to use TLS PSK ciphersuites when using HTTPS (or
|
|||
|
similar protocols working over SSL).
|
|||
|
|
|||
|
- QSslSocket:
|
|||
|
* [QTBUG-39077] It is now possible to use TLS PSK ciphersuites in client
|
|||
|
sockets.
|
|||
|
* A new SSL backend for iOS and OS X, implemented with Apple's Secure
|
|||
|
Transport (Security Framework).
|
|||
|
|
|||
|
- SSL/TLS support:
|
|||
|
* [QTBUG-18972] It is now possible to parse elliptic curve certificates.
|
|||
|
* It is now possible to choose which elliptic curves should be used by
|
|||
|
an elliptic curve cipher.
|
|||
|
|
|||
|
QtTest
|
|||
|
------
|
|||
|
|
|||
|
- QCOMPARE now pretty-prints QSizePolicy{,::Policy,::ControlType{,s}}.
|
|||
|
- QtTest now prints an escaped version of QByteArrays that failed to
|
|||
|
compare with QCOMPARE, instead of the hex dump.
|
|||
|
- QTest::toString() can now be overloaded (instead of just specialized)
|
|||
|
for custom types, and is now reliably found through argument-dependent
|
|||
|
lookup (ADL).
|
|||
|
|
|||
|
QtWidgets
|
|||
|
---------
|
|||
|
|
|||
|
- Added QPlainTextEdit::createStandardContextMenu(QPoint) overload that
|
|||
|
takes the position in document coordinates. This method enables the
|
|||
|
actions that are sensitive to the given position eg. where the user
|
|||
|
clicked.
|
|||
|
|
|||
|
- Accessibility / OS X:
|
|||
|
* VoiceOver users of QTextEdit can now use mouse and touch exploration
|
|||
|
on trackpad to point at text to have spoken to them.
|
|||
|
|
|||
|
- Layouts:
|
|||
|
* [QTBUG-43099] Fixed a bug where spans sometimes didn't distribute
|
|||
|
themselves to the last cells they covered.
|
|||
|
|
|||
|
- QAbstractItemView:
|
|||
|
* Added iconSizeChanged signal.
|
|||
|
|
|||
|
- QAbstractScrollArea:
|
|||
|
* [QTBUG-8315] A getter for the viewport margins has been added.
|
|||
|
|
|||
|
- QComboBox:
|
|||
|
* A QComboBox does not reset itself any more when setting the same model
|
|||
|
more than once.
|
|||
|
* [QTBUG-43350] QComboBox will now reset its root model index when a new
|
|||
|
model is set on it.
|
|||
|
|
|||
|
- QHeaderView:
|
|||
|
* [QTBUG-21201] Auto-scroll the view when making extended row/column
|
|||
|
selections.
|
|||
|
* Default section size is now style-dependent by default.
|
|||
|
* Added resetDefaultSectionSize().
|
|||
|
|
|||
|
- QMenu:
|
|||
|
* [QTBUG-20094] QMenu now pick up how "sloppy" submenus behave from the
|
|||
|
style.
|
|||
|
|
|||
|
- QOpenGLWidget:
|
|||
|
* [QTBUG-40717] Added an UpdateBehavior flag to QOpenGLWidget and
|
|||
|
enabled support for NoParitalUpdate for QOpenGLWidget. NoPartialUpdate
|
|||
|
is the default update behavior for QOpenGLWidget.
|
|||
|
|
|||
|
- QSizePolicy:
|
|||
|
* QSizePolicy::ControlTypes is now introspectable through QSizePolicy's
|
|||
|
meta object.
|
|||
|
|
|||
|
- QToolButton:
|
|||
|
* [QTBUG-23396] Fixed the double removal of ampersands.
|
|||
|
|
|||
|
- QTreeWidget:
|
|||
|
* [QTBUG-40060] Restored Qt 5.1 behavior of QTreeWidgetItems with
|
|||
|
ItemIsTristate to enable automatic management of the check state.
|
|||
|
User-editable tristate checkboxes are now enabled by setting the new
|
|||
|
flag ItemIsUserTristate.
|
|||
|
|
|||
|
****************************************************************************
|
|||
|
* Platform Specific Changes *
|
|||
|
****************************************************************************
|
|||
|
|
|||
|
- Removed BlackBerry PlayBook support.
|
|||
|
|
|||
|
Android
|
|||
|
-------
|
|||
|
|
|||
|
- [QTBUG-43705] Fixed canonical path for nonexistent paths on some
|
|||
|
devices.
|
|||
|
- [QTBUG-38700] On devices with translucent system UI, Qt's windows are now
|
|||
|
positioned to avoid overlapping it. This behavior can be
|
|||
|
overridden in the application's AndroidManifest.xml.
|
|||
|
- [QTBUG-45430] Fixed a bug that caused applications not to be resumable
|
|||
|
after user changed language in system settings.
|
|||
|
|
|||
|
- QtCore / QTimeZone:
|
|||
|
* [QTBUG-35908] Android timezones are now available in QTimeZone.
|
|||
|
|
|||
|
- QtWidgets:
|
|||
|
* Enable QDockWidget window decorations.
|
|||
|
|
|||
|
- The QtDBus module is now disabled by default.
|
|||
|
|
|||
|
- Added support for arm64-v8a, x86_64, and mips64 with gcc 4.9.
|
|||
|
|
|||
|
OS X
|
|||
|
----
|
|||
|
|
|||
|
- [QTBUG-43999] QApplication::setWindowIcon now changes the icon for the
|
|||
|
application in the dock.
|
|||
|
|
|||
|
- Text:
|
|||
|
* [QTBUG-44708] Fixed appending text with a different writing system and
|
|||
|
formatting to a latin ligature.
|
|||
|
|
|||
|
Windows
|
|||
|
-------
|
|||
|
|
|||
|
- QMimeData:
|
|||
|
* [QTBUG-17373] Added support for handling dropping of multiple mail
|
|||
|
attachments, adding ;index=N to the mimetype string
|
|||
|
application/x-qt-windows-mime;value="FileContents"
|
|||
|
|
|||
|
- Text:
|
|||
|
* [QTBUG-44501] Fixed design metrics for text
|
|||
|
|
|||
|
X11/XCB
|
|||
|
-------
|
|||
|
|
|||
|
- GLX and EGL code paths are now dynamically resolved, making it possible
|
|||
|
for one build of a plugin to use both code paths. The default is to use
|
|||
|
the GLX code path if available. This can be overridden by specifying
|
|||
|
QT_XCB_GL_INTEGRATION=xcb_egl as an environment variable. Enable the
|
|||
|
logging category qt.xcb.glintegration.debug to get debug log output of
|
|||
|
what integration is used.
|
|||
|
- [QTBUG-31762] QSystemTrayIcon now uses StatusNotifier D-Bus protocol
|
|||
|
when the desktop environment supports it
|
|||
|
- [QTBUG-40174][QTBUG-42985] If all QScreens (xcb outputs) are
|
|||
|
disconnected while an application is running,
|
|||
|
QGuiApplication::primaryScreen() will now return null until a screen is
|
|||
|
connected again.
|
|||
|
|
|||
|
****************************************************************************
|
|||
|
* Compiler Specific Changes *
|
|||
|
****************************************************************************
|
|||
|
|
|||
|
- Qt 5.5 now unconditionally uses the "using" keyword. Compilers that do
|
|||
|
not support this keyword are deprecated and will not be able to build
|
|||
|
Qt. Previous versions of Qt may or may not compile, as no testing was
|
|||
|
done to ensure it worked.
|
|||
|
- Visual Studio: -Zm200 (an option to specify the precompiled header
|
|||
|
memory allocation limit) is not added anymore by qmake to the compiler
|
|||
|
calls. If you encounter an C1076 compiler error you might need to re-add
|
|||
|
it in your .pro file.
|
|||
|
|
|||
|
****************************************************************************
|
|||
|
* Tools *
|
|||
|
****************************************************************************
|
|||
|
|
|||
|
configure & build system
|
|||
|
------------------------
|
|||
|
|
|||
|
- Added support for VS2015.
|
|||
|
- [QTBUG-31814][OS X/iOS] Qt is now built with a relative RPATH.
|
|||
|
- [VS2012+] Qt is now always built with C++11 with these compilers.
|
|||
|
- [Windows] Added -static-runtime option.
|
|||
|
- Added support for GCC/Clang -fsanitize= options.
|
|||
|
- Enabled tslib autodetection by default.
|
|||
|
- Added configure-time check for IPC support.
|
|||
|
- [QTBUG-44690][QNX] Fixed NEON detection when cross-compiling on Windows.
|
|||
|
- On-device compilation should work better on RaspPi and some other
|
|||
|
devices now (use linux-g++ mkspec).
|
|||
|
- configure -redo and config.status support spaces in arguments now.
|
|||
|
- Qt can be now built in and installed to directories with spaces.
|
|||
|
Note that source directories with spaces are still not supported.
|
|||
|
|
|||
|
qmake
|
|||
|
-----
|
|||
|
|
|||
|
- [QTBUG-3069][Linux] Building with -rpath will now create DT_RUNPATH tags
|
|||
|
instead of DT_RPATH, allowing LD_LIBRARY_PATH to override the rpath.
|
|||
|
- [QTBUG-41917][VS] Fixed project generation when PRECOMPILED_SOURCE is
|
|||
|
in a different directory than PRECOMPILED_HEADER.
|
|||
|
- [QTBUG-42454][MinGW] Added handling of QMAKE_MANIFEST.
|
|||
|
- [QTBUG-13496][MSVC] CONFIG+=no_batch is now automatically added when
|
|||
|
multiple sources with the same base name exist.
|
|||
|
- Added $$[QT_INSTALL_PREFIX/dev], etc. properties which reflect the
|
|||
|
on-device locations of Qt (the -prefix, etc. passed to configure).
|
|||
|
- Building under MSys is less problematic now.
|
|||
|
- [QTBUG-37269] Fixed cross-compilation for Unix on Windows/MinGW.
|
|||
|
- [QTBUG-8202][QTBUG-20566][QTBUG-44685] Fixed distclean targets.
|
|||
|
- [QTBUG-43162][VS] Added DISTFILES support for Visual Studio projects.
|
|||
|
- [QTBUG-41753][VS][WinPhone] Fixed MdilXapCompile deployment step.
|
|||
|
- [QTBUG-44960][VS] Reworked .dll deployment. Added $$QMAKE_DLL_PATHS.
|
|||
|
- [QTBUG-44823][MSVC] Fixed unreasonable values being passed in /VERSION.
|
|||
|
Added $$VERSION_PE_HEADER to override the value.
|
|||
|
- [WinRT] The icon handling was reworked/extended.
|
|||
|
- [QTBUG-12711] Fixed infinite recursion on malformed .prl files.
|
|||
|
|
|||
|
****************************************************************************
|
|||
|
* Third-party libraries *
|
|||
|
****************************************************************************
|
|||
|
|
|||
|
- [QTBUG-44815][QTBUG-37660][QTBUG-44694][QTBUG-42443] ANGLE was updated
|
|||
|
to Chromium branch 2356 (2.1~99f075dade7c).
|