Qt 5.9 introduces many new features and improvements as well as bugfixes
over the 5.8.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.9 series is binary compatible with the 5.8.x series.
Applications compiled for 5.8 will continue to run with 5.9.

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.


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

Important Changes
-----------------

 - Configure options are now handled by the global configure script. This
   means options previously controlled by WEBENGINE_CONFIG options should
   now use configure flags. For instance the configure command-line option
   -proprietary-codecs replaces WEBENGINE_CONFIG+=use_proprietary_codecs.
 - [QTBUG-54650, QTBUG-59922] Accessibility is now disabled by default on
   Linux, like it is in Chrome, due to poor options for enabling it
   conditionally and its heavy performance impact. Set the environment
   variable QTWEBENGINE_ENABLE_LINUX_ACCESSIBILITY to enable it again.


Chromium Snapshot
-----------------

 - Updated the Chromium version to 56.0.2924.122.
 - Security fixes from Chromium up to version 58.0.3029.96
    Including fixes for: CVE-2017-5029, CVE-2017-5032, CVE-2017-5033,
    CVE-2017-5034, CVE-2017-5036, CVE-2017-5039, CVE-2017-5040, CVE-2017-5044,
    CVE-2017-5045, CVE-2017-5046, CVE-2017-5052, CVE-2017-5053, CVE-2017-5055,
    CVE-2017-5057, CVE-2017-5058, CVE-2017-5059, CVE-2017-5060, CVE-2017-5061,
    CVE-2017-5062, CVE-2017-5065, CVE-2017-5066, CVE-2017-5067, CVE-2017-5068,
    CVE-2017-5069
 - Changed the Chromium build-system to GN.


Qt WebengineCore
----------------

 - [QTBUG-56531] Enabled filesystem: protocol handler.
 - [QTBUG-57720] Optimized incremental scene-graph rendering in particular
   for software rendering.
 - [QTBUG-58362, QTBUG-60031] Fixed IME issues on Chinese and Japanese.
 - [QTBUG-55766, QTBUG-58362, QTBUG-55766] Fixed selection and IME issues.
 - [QTBUG-58982] Fixed crash on exit on macOS.
 - [QTBUG-59127] Fixed movementX and movementY properties of mouse events.
 - [QTBUG-59168] Fixed 5.8 regression in handling <input type="file">.
 - [QTBUG-59407] Fixed black bar on some youtube videos with OpenGL disabled.
 - [QTBUG-60049] Enabled brotli support.


****************************************************************************
*                                APIs                                      *
****************************************************************************

General
-------

 - Took Q_ENUM to use on QtWebEngineWidgets interfaces.
 - Added a setting to again allow insecure origins to request geolocation.
 - [QTBUG-54053] Fixed support for macOS Airplay.
 - [QTBUG-56677] Made printing to a PDF file emit the signal.
   pdfPrintingFinished() in both QQuickWebEngineView and QWebEnginePage.
 - [QTBUG-57354] Fixed font loading issue on macOS.
 - [QTBUG-57924] Fixed assert on right-clicking Flash apps.
 - [QTBUG-58037] Fixed drag and drop issues.
 - [QTBUG-58488] Fixed window type of popups on X11.
 - [QTBUG-58561] Stopped firing too many mousemove events.
 - [QTBUG-58650] Fixed segfault when changing cookie policy.
 - [QTBUG-58920] Fixed crash while dragging on Windows.
 - [QTBUG-59053] Fixed a conflict with single letter short-cuts and
   editable input fields.
 - [QTBUG-59273] Now handles Qt::AA_UseSoftwareOpenGL.


DownloadItem
------------

 - [QTBUG-58155] Fixed that (QWebEngine)DownloadItem::path() incorrectly
   returned percentage-encoded filenames when the suggested path was based
   on a URL. Percentage-decoding the path is generally not only incorrect
   when the path is not based on URL, but also dangerous as it can lead to
   downloads that escape the download folder.
 - [QTBUG-56839] Added a downloadInterruptReason property for interrupted
   downloads to download items.


Qt WebEngine
------------

 - [QTBUG-51034] Added profile-wide user scripts like the widgets API has.


Qt WebEngineWidgets
-------------------

 - [QTBUG-53314, QTBUG-53372] Added the QWebEngineHttpRequest class for
   sending HTTP requests over the network using HTTP POST or with custom
   HTTP headers.
 - [QTBUG-58381] Fixed active tab bug (5.8 regression).
 - [QTBUG-58515] Fixed issue with QWebEngineView::setFocus().
 - [QTBUG-58563] Fixed segfault when closing tab with active search.
 - [QTBUG-58673] QWebEnginePage: Started calling the javaScriptConfirm
   method also for unload dialogs (onbeforeunload handlers).
 - [QTBUG-59599] Fixed QWebEngineHistory::currentItem() segfault.
 - [QTBUG-60236] Fixed crash on exit with url-request interceptors.
