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

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 Changes                                 *
****************************************************************************

 -  Renamed QML import from
   "import QtQuick.Enterprise.VirtualKeyboard" to
   "import QtQuick.VirtualKeyboard", as the module is now also available
   under the open-source GPLv3 license.

 - Added support for selection handles. Currently, it's only supported for
   the integrated VKB. Support for the dedicated VKB will be a separate
   commit.
