Add changes file for Qt 5.10.0
Change-Id: I66bfe7a8897c7b2b4986a12dec37229e0ad82755 Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
This commit is contained in:
parent
0817e2a81e
commit
42005951de
564
dist/changes-5.10.0
vendored
Normal file
564
dist/changes-5.10.0
vendored
Normal file
@ -0,0 +1,564 @@
|
|||||||
|
Qt 5.10 introduces many new features and improvements as well as bugfixes
|
||||||
|
over the 5.9.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/index.html
|
||||||
|
|
||||||
|
The Qt version 5.10 series is binary compatible with the 5.9.x series.
|
||||||
|
Applications compiled for 5.9 will continue to run with 5.10.
|
||||||
|
|
||||||
|
Some of the changes listed in this file include issue tracking numbers
|
||||||
|
corresponding to tasks in the Qt Bug Tracker:
|
||||||
|
|
||||||
|
https://bugreports.qt.io/
|
||||||
|
|
||||||
|
Each of these identifiers can be entered in the bug tracker to obtain more
|
||||||
|
information about a particular change.
|
||||||
|
|
||||||
|
****************************************************************************
|
||||||
|
* Important Behavior Changes *
|
||||||
|
****************************************************************************
|
||||||
|
|
||||||
|
- [QTBUG-60857] The names of the roles returned by
|
||||||
|
QSqlQueryModel::roleNames now only include a name for the
|
||||||
|
Qt::DisplayRole. Previously all the roles names of QSqlQueryModel were
|
||||||
|
returned.
|
||||||
|
- QFileInfo on empty strings now behaves like the default-constructed
|
||||||
|
QFileInfo. Notably, path() will now be the empty string too, instead of
|
||||||
|
".", which means absoluteFilePath() is no longer the current working
|
||||||
|
directory.
|
||||||
|
|
||||||
|
- QTemporaryFile:
|
||||||
|
* rename() no longer attempts to do block copying, as that usually
|
||||||
|
indicates a mistake in the user's code. Instead, either create the
|
||||||
|
temporary file in the same directory as the new name to be, or use
|
||||||
|
QSaveFile.
|
||||||
|
* On Linux, QTemporaryFile will attempt to create unnamed temporary
|
||||||
|
files. If that succeeds, open() will return true but exists() will be
|
||||||
|
false. If you call fileName() or any function that calls it,
|
||||||
|
QTemporaryFile will give the file a name, so most applications will
|
||||||
|
not see a difference.
|
||||||
|
|
||||||
|
- Windows:
|
||||||
|
* [QTBUG-62662] On Windows, a drag & drop operation of local file URIs,
|
||||||
|
like QListView items backed by a QFileSystemModel, will result in the
|
||||||
|
attachment or opening of the files by the target application, instead
|
||||||
|
of the creation of hyperlinks.
|
||||||
|
|
||||||
|
****************************************************************************
|
||||||
|
* General Notes *
|
||||||
|
****************************************************************************
|
||||||
|
|
||||||
|
Deprecation Notice
|
||||||
|
------------------
|
||||||
|
|
||||||
|
- Starting with Qt 5.10, IPv6 support is mandatory for all platforms.
|
||||||
|
Systems without proper IPv6 support, such as the getaddrinfo() function
|
||||||
|
or the proper socket address structures, will not be able to build
|
||||||
|
QtNetwork anymore.
|
||||||
|
|
||||||
|
- QSignalMapper is now marked as deprecated.
|
||||||
|
|
||||||
|
Potentially Source-Incompatible Changes
|
||||||
|
---------------------------------------
|
||||||
|
|
||||||
|
- QByteArray:
|
||||||
|
* qbytearray.h no longer includes qstring.h. In particular, this means
|
||||||
|
that in order to use QStringBuilder with QByteArray, you need to
|
||||||
|
include both qbytearray.h and qstring.h now (or <QByteArray> and
|
||||||
|
<QString>, resp.).
|
||||||
|
|
||||||
|
- QStaticText:
|
||||||
|
* The QStaticText(const QString &) constructor is now explicit.
|
||||||
|
|
||||||
|
Third-Party Code
|
||||||
|
----------------
|
||||||
|
|
||||||
|
- PCRE2 has been updated to version 10.30.
|
||||||
|
- Replaced bundled libjpeg by libjpeg-turbo 1.5.2
|
||||||
|
- Improve documentation about Freetype 2 licenses.
|
||||||
|
- Sqlite was updated to version 3.20.1
|
||||||
|
|
||||||
|
****************************************************************************
|
||||||
|
* Library *
|
||||||
|
****************************************************************************
|
||||||
|
|
||||||
|
QtCore
|
||||||
|
------
|
||||||
|
|
||||||
|
- Added qHash(QStringView).
|
||||||
|
- [QTBUG-37253] Added QMetaObject::invokeMethod() overloads for function
|
||||||
|
pointers.
|
||||||
|
- [QTBUG-41006] Added qEnvironmentVariable, which returns the value of an
|
||||||
|
environment variable in a QString, while qgetenv continues to be used to
|
||||||
|
return it in a QByteArray. For Unix, since most environment variables
|
||||||
|
seem to contain path names, qEnvironmentVariable will do the same as
|
||||||
|
QFile::decodeName, which means NFC/NFD conversion on Apple OSes.
|
||||||
|
- [QTBUG-62915] qAddPostRoutine() and qRemovePostRoutine() are now
|
||||||
|
thread-safe.
|
||||||
|
|
||||||
|
- Containers:
|
||||||
|
* Added an STL-like iterator to go through QHash/QMap returning both the
|
||||||
|
key and the value of the element pointed to. That lets QHash/QMap
|
||||||
|
interoperate better with stl's algorithms like std::set_union.
|
||||||
|
|
||||||
|
- JSON:
|
||||||
|
* QJsonArray, QJsonDocument, QJsonObject and QJsonValue now have move
|
||||||
|
operations and a swap() member function.
|
||||||
|
|
||||||
|
- Logging:
|
||||||
|
* If you set QT_FATAL_WARNINGS to a number n > 1, Qt will stop the
|
||||||
|
application on that n-th warning, instead of on the first. For the
|
||||||
|
sake of compatibility with previous versions, if the variable is set
|
||||||
|
to any non-empty and non-numeric value, Qt will understand it as "stop
|
||||||
|
on first warning".
|
||||||
|
|
||||||
|
- QByteArray:
|
||||||
|
* Added shrink_to_fit() for compatibility with the Standard Library. This
|
||||||
|
function does the same as squeeze().
|
||||||
|
|
||||||
|
- QChar:
|
||||||
|
* Added constructors from char16_t and, on Windows, wchar_t.
|
||||||
|
|
||||||
|
- QCoreApplication:
|
||||||
|
* [QTBUG-57095] Calling QCoreApplication::translate() is now
|
||||||
|
thread-safe.
|
||||||
|
|
||||||
|
- QCryptographicHash:
|
||||||
|
* [QTBUG-59770] In order to preserve compatibility with earlier versions
|
||||||
|
of Qt, QCryptographicHash is now able to calculate Keccak message
|
||||||
|
digests. Please see the release notes for Qt 5.9.2 for more details.
|
||||||
|
|
||||||
|
- QDate/QTime/QDateTime:
|
||||||
|
* Added toString() overloads taking the format as a QStringView.
|
||||||
|
* [QTBUG-22833] Added support for parsing of time-zones.
|
||||||
|
|
||||||
|
- QDebug:
|
||||||
|
* Added streaming of QStringViews.
|
||||||
|
|
||||||
|
- QFile:
|
||||||
|
* [QTBUG-984] Added fileTime() and setFileTime().
|
||||||
|
|
||||||
|
- QFileInfo:
|
||||||
|
* [QTBUG-984] Added fileTime().
|
||||||
|
* Deprecated created() because it could return one of three different
|
||||||
|
file times depending on the OS and filesystem type, without the
|
||||||
|
ability to determine which one is which. It is replaced by
|
||||||
|
metadataChangeTime() and birthTime().
|
||||||
|
* Added QFileInfo::metadataChangeTime(), which returns the time the
|
||||||
|
file's metadata was last changed, if it is known, and falling back to
|
||||||
|
the same value as lastModified() otherwise. On Unix systems, this
|
||||||
|
corresponds to the file's ctime.
|
||||||
|
* Added QFileInfo::birthTime(), which returns the file's birth time if
|
||||||
|
it is known, an invalid QDateTime otherwise. This function is
|
||||||
|
supported on Windows and on some Unix systems.
|
||||||
|
|
||||||
|
- QIODevice:
|
||||||
|
* Added skip() method to improve performance in read operations.
|
||||||
|
|
||||||
|
- QLatin1String:
|
||||||
|
* Added isEmpty(), isNull().
|
||||||
|
* Added iterators, {c,}{r,}{begin,end}().
|
||||||
|
* Added chopped(), chop(), truncate().
|
||||||
|
* Added startsWith(), endsWith().
|
||||||
|
* Added a constructor taking two pointers, complementing the constructor
|
||||||
|
that takes a pointer and a length.
|
||||||
|
* Added trimmed() function.
|
||||||
|
|
||||||
|
- QLocale:
|
||||||
|
* Added toString(QDate/QTime/QDateTime) overloads taking the format
|
||||||
|
string as a QStringView.
|
||||||
|
* Added QLocale::formattedDataSize() for formatting quantities of bytes
|
||||||
|
as kB, MB, GB etc.
|
||||||
|
|
||||||
|
- QLockFile:
|
||||||
|
* Fixed a bug that would cause QLockFile to mis-identify valid lock
|
||||||
|
files as stale if the application name was set with
|
||||||
|
QCoreApplication::setApplicationName().
|
||||||
|
|
||||||
|
- QMimeType:
|
||||||
|
* Add Q_GADGET, so that QML applications can make use of QMimeType's
|
||||||
|
properties and methods.
|
||||||
|
|
||||||
|
- QObject:
|
||||||
|
* [QTBUG-60339] Added connect() support for move-only function objects.
|
||||||
|
|
||||||
|
- QProcess:
|
||||||
|
* [QTBUG-2058][QTBUG-2284][QTBUG-37656][QTBUG-52405][QTBUG-57687] Added
|
||||||
|
non-static QProcess::startDetached to support more features for
|
||||||
|
detached processes.
|
||||||
|
* [QTBUG-2284] Added the ability to set a custom process environment for
|
||||||
|
detached processes.
|
||||||
|
* [QTBUG-52405] Added the ability to specify native arguments for
|
||||||
|
detached processes on Windows.
|
||||||
|
* [QTBUG-2058][QTBUG-37656] Added support for standard channel
|
||||||
|
redirection using setStandard{Input|Output|Error}File to
|
||||||
|
QProcess::startDetached.
|
||||||
|
|
||||||
|
- QSaveFile:
|
||||||
|
* [QTBUG-47379] Saving to Alternate Data Streams on NTFS on Windows is
|
||||||
|
now possible, but requires setDirectWriteFallback(true).
|
||||||
|
|
||||||
|
- QSemaphore:
|
||||||
|
* Added a new RAII class, QSemaphoreReleaser, to reliably perform
|
||||||
|
release() calls.
|
||||||
|
|
||||||
|
- QSettings:
|
||||||
|
* [QTBUG-47379] Added setAtomicSyncRequired(), which allows one to use
|
||||||
|
QSettings with config files in unwriteable directories or in Alternate
|
||||||
|
Data Streams on NTFS on Windows. This used to work before Qt 5.4, but
|
||||||
|
remains a non-default behavior due to the potential of data
|
||||||
|
corruption.
|
||||||
|
|
||||||
|
- QSortFilterProxyModel:
|
||||||
|
* QSortFilterProxyModel now does not emit an unnecessary layoutChanged()
|
||||||
|
following a model reset.
|
||||||
|
|
||||||
|
- QStandardPaths:
|
||||||
|
* On Windows, QStandardPaths now also looks into
|
||||||
|
"<APPDIR>/data/<APPNAME>" for non-generic paths.
|
||||||
|
|
||||||
|
- QString:
|
||||||
|
* Added arg(QStringView), arg(QLatin1String) overloads.
|
||||||
|
* Added shrink_to_fit(), for compatibility with the Standard
|
||||||
|
Library. This function does the same as squeeze().
|
||||||
|
|
||||||
|
- QString/QStringRef:
|
||||||
|
* Added startsWith(), endsWith() overloads taking QStringView.
|
||||||
|
|
||||||
|
- QString/QStringRef/QByteArray:
|
||||||
|
* Added chopped(n), a const version of chop(n).
|
||||||
|
|
||||||
|
- QString/QStringRef/QByteArray/QLatin1String:
|
||||||
|
* Added front() and back() for STL compatibility.
|
||||||
|
|
||||||
|
- QStringBuilder:
|
||||||
|
* Added support for (non-const) char*.
|
||||||
|
|
||||||
|
- QStringList:
|
||||||
|
* Added contains(QLatin1String) overload.
|
||||||
|
|
||||||
|
- QStringRef:
|
||||||
|
* trimmed() now returns an empty string-ref for an empty input. Before,
|
||||||
|
it would return a null one.
|
||||||
|
|
||||||
|
- QStringView:
|
||||||
|
* New class, superseding const QString and QStringRef as function
|
||||||
|
parameters, accepting a wide variety of UTF-16 string data sources,
|
||||||
|
e.g. u"string", std::u16string{,_view}, and, on Windows, L"string",
|
||||||
|
std::wstring{,_view} without converting to QString first.
|
||||||
|
|
||||||
|
- QTemporaryDir:
|
||||||
|
* The class now supports the "XXXXXX" replacement token anywhere in the
|
||||||
|
template, not just at the end. This behavior is similar to what
|
||||||
|
QTemporaryFile supports.
|
||||||
|
|
||||||
|
- QTextCodec:
|
||||||
|
* Added fromUnicode() and canEncode() overloads taking QStringView.
|
||||||
|
|
||||||
|
- QTextEncoder:
|
||||||
|
* Added fromUnicode() overload taking QStringView.
|
||||||
|
|
||||||
|
- QThread:
|
||||||
|
* Added the QThread::create() function.
|
||||||
|
* An exception escaping from QThread::run() will now result in immediate
|
||||||
|
and abnormal program termination. The same applies if an exception
|
||||||
|
leaves a slot connected directly to the QThread::started() or
|
||||||
|
QThread::finished() signals.
|
||||||
|
|
||||||
|
- QUuid:
|
||||||
|
* Added fromString(QStringView/QLatin1String).
|
||||||
|
|
||||||
|
- QVariant:
|
||||||
|
* QVariants containing pointers will now return true on isNull() if the
|
||||||
|
contained pointer is null.
|
||||||
|
|
||||||
|
- QVarLengthArray:
|
||||||
|
* Added shrink_to_fit(), for compatibility with the Standard Library.
|
||||||
|
|
||||||
|
- QVector:
|
||||||
|
* Added shrink_to_fit(), for compatibility with the Standard Library.
|
||||||
|
|
||||||
|
- QVersionNumber:
|
||||||
|
* Added QStringView and QLatin1String overloads of fromString().
|
||||||
|
|
||||||
|
- QtGlobal:
|
||||||
|
* Q_ASSERT() and Q_ASSERT_X() now always expand to expressions of type
|
||||||
|
void that are usable in constexpr contexts. This makes them usable in
|
||||||
|
both C++11 and C++14 constexpr functions and in comma expressions.
|
||||||
|
|
||||||
|
QtGui
|
||||||
|
-----
|
||||||
|
|
||||||
|
- [QTBUG-55981] Added support for rendering to QWindow via the Vulkan
|
||||||
|
graphics API.
|
||||||
|
- [QTBUG-55981] Added QVulkanWindow, a convenience subclass of QWindow.
|
||||||
|
- Added support for the OpenGL ES 3.2 API in QOpenGLExtraFunctions
|
||||||
|
- [QTBUG-50987] Added support for requesting OpenGL windows with
|
||||||
|
sRGB-capable default framebuffers. While this is implicit on some
|
||||||
|
platforms, QSurfaceFormat now has the necessary flags to request such
|
||||||
|
windows in a cross-platform manner.
|
||||||
|
- High DPI variants of 9-patch images can now be loaded using the
|
||||||
|
following syntax: "foo@2x.9.png"
|
||||||
|
- It's now possible to retrieve the screen at a given point via
|
||||||
|
QGuiApplication::screenAt().
|
||||||
|
|
||||||
|
- Important Behvior Changes:
|
||||||
|
* [QTBUG-56848][QTCREATORBUG-17683] Changed CSS line-height property
|
||||||
|
with multiplier to follow CSS spec
|
||||||
|
|
||||||
|
- Tablet support:
|
||||||
|
* [QTBUG-44964] If the application attribute AA_CompressTabletEvents is
|
||||||
|
set in addition to AA_CompressHighFrequencyEvents, even the
|
||||||
|
QTabletEvents will be compressed (only on the X11 platform so far).
|
||||||
|
AA_CompressHighFrequencyEvents does not enable compression of tablet
|
||||||
|
events by itself, because paint applications typically need to process
|
||||||
|
all possible tablet events in order to draw the smoothest curves.
|
||||||
|
|
||||||
|
- QPA:
|
||||||
|
* [QTBUG-57608] QWindowSystemInterfacePrivate::handleGeometryChange no
|
||||||
|
longer takes the old geometry as an argument.
|
||||||
|
|
||||||
|
- QImage:
|
||||||
|
* QImages can now use more than 2GByte of pixel data.
|
||||||
|
|
||||||
|
- QCursor:
|
||||||
|
* Added equality operators.
|
||||||
|
|
||||||
|
- QImageWriter:
|
||||||
|
* Add QImageWriter::InvalidImageError to communicate invalid attempts to
|
||||||
|
write a bad QImage (for instance, a null QImage).
|
||||||
|
|
||||||
|
- QMovie:
|
||||||
|
* Added lastError and lastErrorString accessors, as a convenience over
|
||||||
|
connecting to the error() signal.
|
||||||
|
|
||||||
|
- QWindow:
|
||||||
|
* setMask() no longer requires the window to be created to have an
|
||||||
|
effect; it can be set at any time.
|
||||||
|
|
||||||
|
- Text:
|
||||||
|
* [QTBUG-56728] Added QFont::PreferNoShaping style strategy to support
|
||||||
|
improvements to performance at the expense of some cosmetic font
|
||||||
|
features.
|
||||||
|
|
||||||
|
- Windows:
|
||||||
|
* [QTBUG-55967] Native menus have been implemented.
|
||||||
|
* A native system tray icon is now available for SystemTrayIcon.
|
||||||
|
|
||||||
|
QtNetwork
|
||||||
|
---------
|
||||||
|
|
||||||
|
- [QTBUG-56102] QSslSocket can now use a temporary keychain on macOS.
|
||||||
|
- Fixed a proxy-authentication issue, after a wrong password has been used,
|
||||||
|
when supplying the right password.
|
||||||
|
|
||||||
|
- HTTP/2:
|
||||||
|
* [QTBUG-61397] In case of clear text HTTP/2 we now initiate a required
|
||||||
|
protocol upgrade procedure instead of 'H2Direct' connection.
|
||||||
|
|
||||||
|
- QHostInfo:
|
||||||
|
* Added swap() and move operator.
|
||||||
|
|
||||||
|
- QLocalServer:
|
||||||
|
* [QTBUG-55043] Added a function to retrieve the socket descriptor.
|
||||||
|
|
||||||
|
- QNetworkAccessManager:
|
||||||
|
* [QTBUG-63075] Added support for HTTP status 308.
|
||||||
|
|
||||||
|
- QNetworkInterface:
|
||||||
|
* [QTBUG-51922] Changed allAddresses() to not include addresses found in
|
||||||
|
inactive interfaces, matching the user expectations of this function.
|
||||||
|
If those addresses are needed for some purpose, the application can
|
||||||
|
call allInterfaces() and obtain the addresses in each interface.
|
||||||
|
|
||||||
|
- QNetworkProxy:
|
||||||
|
* [QTBUG-45495] Setting of network proxies is now supported on UWP.
|
||||||
|
* [QTBUG-45495] UWP now supports proxies using SOCKS5.
|
||||||
|
* The functions related to QNetworkConfiguration are deprecated. They've
|
||||||
|
performed no action since Qt 5.0, so code using them can safely stop
|
||||||
|
doing so.
|
||||||
|
|
||||||
|
- QSslSocket:
|
||||||
|
* [QTBUG-52905] Added OpenSSL 1.1 backend.
|
||||||
|
|
||||||
|
QtSql
|
||||||
|
-----
|
||||||
|
|
||||||
|
- QSqlError:
|
||||||
|
* Added swap().
|
||||||
|
|
||||||
|
- SQLite:
|
||||||
|
* Named placeholder can now be used. If compiling Qt by hand and using
|
||||||
|
system libraries, this feature requires at least SQLite 3.3.11.
|
||||||
|
* [QTBUG-18084] Added QSQLITE_ENABLE_REGEXP connect option for the SQLite
|
||||||
|
backend. If set, a Qt based regexp() implementation is provided
|
||||||
|
allowing use of REGEXP in SQL statements.
|
||||||
|
|
||||||
|
QtTest
|
||||||
|
------
|
||||||
|
|
||||||
|
- [QTBUG-53381] Added keySequence() function.
|
||||||
|
|
||||||
|
- QCOMPARE:
|
||||||
|
* Can now be used for mixed-type comparisons.
|
||||||
|
* Now outputs contents of QPair and std::pair on failure.
|
||||||
|
* Now supports printing QStringViews in case of test failures.
|
||||||
|
|
||||||
|
QtWidgets
|
||||||
|
---------
|
||||||
|
|
||||||
|
- The windowsxp style is no longer available as a separate style, because
|
||||||
|
it did not (and cannot) actually provide an XP-style appearance on
|
||||||
|
currently supported Qt platforms.
|
||||||
|
- Added AA_DisableWindowContextHelpButton attribute. Setting this
|
||||||
|
attribute globally prevents the automatic "What's this" button on
|
||||||
|
dialogs on Windows (WindowsContextHelpButtonHint).
|
||||||
|
- [QTBUG-56860] Fixed widget losing focus after showing menu second time.
|
||||||
|
- [QTBUG-47185][QTBUG-61280] QOpenGLWidget is now able to render and
|
||||||
|
return its content via grabFramebuffer(), QWidget::grab() or
|
||||||
|
QWidget::render() even when the widget has not been made visible.
|
||||||
|
- [QTBUG-10907] When tabbing to a widget with focus proxy, focus will now
|
||||||
|
be given to the proxy rather than just being ignored.
|
||||||
|
|
||||||
|
- ItemViews:
|
||||||
|
* Made it easier to drop above and below items.
|
||||||
|
|
||||||
|
- QAbstractItemView/QTreeWidget/QTableWidget/QListWidget:
|
||||||
|
* [QTBUG-61139] Added isPersistentEditorOpen().
|
||||||
|
|
||||||
|
- QDockWidget:
|
||||||
|
* When QMainWindow::GrouppedDragging and QMainWindow::AllowNestedDocks
|
||||||
|
are both enabled, floating dock widgets now have the ability to be
|
||||||
|
dropped together side by side.
|
||||||
|
* [QTBUG-63526] Fixed an issue in QDockWidgets where the widget would
|
||||||
|
not resize despite showing a resize cursor.
|
||||||
|
|
||||||
|
- QFusionStyle:
|
||||||
|
* The default palette used by the platform-agnostic Fusion style has
|
||||||
|
been desaturated. Previously the window background color, and other
|
||||||
|
colors derived from it, were brown shades. Now these colors are
|
||||||
|
neutral gray that fit better on any desktop.
|
||||||
|
|
||||||
|
- QInputDialog:
|
||||||
|
* [QTBUG-17547] Added setDoubleStep to enable changing of the step
|
||||||
|
amount for getDouble().
|
||||||
|
|
||||||
|
- QLineEdit:
|
||||||
|
* Added selectionEnd(), selectionLength(), complementing
|
||||||
|
selectionStart().
|
||||||
|
|
||||||
|
- QOpenGLWidget:
|
||||||
|
* [QTBUG-50987] Added support for specifying custom internal texture
|
||||||
|
formats in QOpenGLWidget in order to make it possible to have the
|
||||||
|
widget backed by an sRGB-capable framebuffer.
|
||||||
|
|
||||||
|
- QSplashScreen:
|
||||||
|
* All constructors now implicitly set Qt::FramelessWindowHint, not just
|
||||||
|
the (pixmap, flags) one.
|
||||||
|
|
||||||
|
- QWidget:
|
||||||
|
* [QTBUG-10907] QWidget::setTabOrder() will now preserve the local tab
|
||||||
|
order inside a widget if it has a focus proxy set to an inner child.
|
||||||
|
|
||||||
|
- Styles:
|
||||||
|
* Added SH_Widget_Animation_Duration style hint which supersedes
|
||||||
|
SH_Widget_Animate, which is now deprecated.
|
||||||
|
|
||||||
|
- Text:
|
||||||
|
* Introduced tabStopDistance property in QTextOption, QTextEdit and
|
||||||
|
QPlainTextEdit as replacement for the inconsistently named tabStop and
|
||||||
|
tabStopWidth properties. QTextOption::tabStop, QTextEdit::tabStopWidth
|
||||||
|
and QPlainTextEdit::tabStopWidth are now deprecated.
|
||||||
|
|
||||||
|
****************************************************************************
|
||||||
|
* Platform-specific Changes *
|
||||||
|
****************************************************************************
|
||||||
|
|
||||||
|
- [QTBUG-60268] Input context is now supported with the offscreen platform.
|
||||||
|
|
||||||
|
Android
|
||||||
|
-------
|
||||||
|
|
||||||
|
- QtLoader: Enabled loading shared libraries from /system/lib or a custom
|
||||||
|
path specified with the android.app.system_libs_prefix metadata variable in
|
||||||
|
AndroidManifest.xml. This supports deploying Qt apps as Android system
|
||||||
|
apps.
|
||||||
|
- [QTBUG-58060] Android dialogs now have more appropriate button layouts,
|
||||||
|
with affirmative actions on the right.
|
||||||
|
- [QTBUG-59175] QWidget::createWindowContainer() is now supported on
|
||||||
|
Android for embedding OpenGL-based QWindows into widget UIs.
|
||||||
|
|
||||||
|
iOS
|
||||||
|
---
|
||||||
|
|
||||||
|
- [QTBUG-59403] Support added for using the input panel as a trackpad
|
||||||
|
using two-finger swipe.
|
||||||
|
- The minimum deployment target for applications is now iOS 10.0.
|
||||||
|
|
||||||
|
Linux
|
||||||
|
-----
|
||||||
|
|
||||||
|
- XInput device property changes are now detected at runtime (no
|
||||||
|
application restart required).
|
||||||
|
- [QTBUG-60513][QTBUG-29278][QTBUG-43768][QTBUG-18380] The _NET_WORKAREA
|
||||||
|
atom is used for calculating QScreen::availableGeometry() only on systems
|
||||||
|
with one monitor. In all other cases QScreen::availableGeometry() is
|
||||||
|
equal to QScreen::geometry(). To restore the legacy behavior with
|
||||||
|
untrustworthy values in QScreen::availableGeometry() set
|
||||||
|
QT_RELY_ON_NET_WORKAREA_ATOM=1 in the environment.
|
||||||
|
- The QT_XCB_NO_XI2_MOUSE environment variable is deprecated and will be
|
||||||
|
removed in Qt 6. If your application relies on behavior set by
|
||||||
|
QT_XCB_NO_XI2_MOUSE, it should be updated accordingly.
|
||||||
|
|
||||||
|
- Pointer event delivery on X11 is now done starting from XInput version
|
||||||
|
2.0 (when available) instead of 2.2. XInput support can be disabled by
|
||||||
|
setting QT_XCB_NO_XI2=1 in the environment; note that doing so will also
|
||||||
|
disable tablet and touch support.
|
||||||
|
|
||||||
|
- Qt uses the statx(2) system call for obtaining file information on
|
||||||
|
kernels 4.12 and later. Some older container systems install system call
|
||||||
|
protection rules that do not include this system call. If you experience
|
||||||
|
problems running Qt applications inside containers (such as the report of
|
||||||
|
a file not existing when it does), ensure the statx(2) is allowed in the
|
||||||
|
container configuration.
|
||||||
|
|
||||||
|
- Linux/XCB:
|
||||||
|
* Added screen product information from EDID.
|
||||||
|
|
||||||
|
- eglfs/KMS:
|
||||||
|
* Screen modes, including current and preferred ones, are now listed.
|
||||||
|
* Added screen product information from EDID.
|
||||||
|
|
||||||
|
Windows
|
||||||
|
-------
|
||||||
|
|
||||||
|
- Accessibility:
|
||||||
|
* MinGW builds now support IAccessible2.
|
||||||
|
|
||||||
|
- Fonts:
|
||||||
|
* [QTBUG-62176] Some key fonts, such as Calibri, were being detected as
|
||||||
|
bitmap fonts and not rendered correctly in Qt Quick. This has now been
|
||||||
|
fixed.
|
||||||
|
|
||||||
|
****************************************************************************
|
||||||
|
* Tools *
|
||||||
|
****************************************************************************
|
||||||
|
|
||||||
|
moc
|
||||||
|
---
|
||||||
|
|
||||||
|
- moc now supports NOTIFY signals of parent classes in Q_PROPERTY
|
||||||
|
|
||||||
|
qmake
|
||||||
|
-----
|
||||||
|
|
||||||
|
- If you use CONFIG+=qmltestcase with no SOURCES, 'make check' will now
|
||||||
|
run qmltestrunner for you.
|
||||||
|
|
||||||
|
uic
|
||||||
|
---
|
||||||
|
|
||||||
|
- Old images embedded in ui files, imported from Qt 3, are now ignored.
|
||||||
|
uic will now behave consistently with Qt Designer - both will ignore
|
||||||
|
them.
|
Loading…
Reference in New Issue
Block a user