Qt 5.5.2 is a bug-fix release. It maintains both forward and backward
compatibility (source and binary) with Qt 5.5.0.

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/index.html

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:

  https://bugreports.qt.io/

Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.

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

QtWebEngineCore
--------
 - [QTBUG-48309] Fixed old-style QObject connections to
   QWebEngineDownloadItem::stateChanged.
 - [QTBUG-47976] Fixed httpUserAgent setting after the view's
   initialization.
 - [QTBUG-48206] Parse suggested filename from content-disposition response
   header field.
 - Fixed crash on malformed URL (Chromium issue 533361).

****************************************************************************
*                      Platform Specific Changes                           *
****************************************************************************

OS X
----
 - [QTBUG-48228] Enabled 32 bit build.

Windows
-------
 - [QTBUG-48285] Fixed installation of PDB files.

