Commit c8745896 authored by Liang Qi's avatar Liang Qi
Browse files

Merge remote-tracking branch 'origin/5.6.0' into 5.6

Change-Id: Iabf0939a5f23c5da85de3a73545cd8abdc9a3e65
parents dec32076 8b550f0a
Branches
Tags
No related merge requests found
Showing with 91 additions and 267 deletions
Qt 5.6 introduces new features and improvements as well as bugfixes
over the 5.5.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.6 series is binary compatible with the 5.5.x series.
Applications compiled for 5.5 will continue to run with 5.6.
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.
****************************************************************************
* Library *
****************************************************************************
QtBluetooth
-----------
- [QTBUG-46377] Added QBluetoothSocket::(set)preferredSecurityFlag().
- Q_DECLARE_METATYPE declarations added for various Q_ENUMS
- Fixed crash in btscanner example
- Added several documentation fixes
- Fixed wrong emission of CharacteristicWriteError where CharacteristicReadError
should have been emitted
- Fixed wrong emission of DescriptorWriteError where DescriptorReadError
should have been emitted
- Fixed wrong endianness handling in heartlistener example
QtNfc
-----
- API has been ported to Android
- Significantly improved implementation and documentation of QML NdefFilter
API
- Added general documentation improvements
- Fixed memory leak due to missing QQmlNdefRecord destructor
****************************************************************************
* Platform Specific Changes *
****************************************************************************
Android
-------
- Increased robustness of Bluetooth Low Energy Service detail discovery
- [QTBUG-49367] Fixed missing jar file creation due to wrong build dependencies
- [QTBUG-50125] Fixed missing invalidation of QLowEnergyService details on
disconnect from device
- [QTBUG-50345] Fixed QBluetoothSocket::bytesAvailable()
Linux/Bluez
-----------
- [MER#1231] Enforce proper checking of error codes during device discovery
when using Bluez 4.x
- [MER#1225] Adjusted QBluetoothSocket::peerName() to comply with Jolla security
restrictions
- [MER1230] Enforced pairing of StartDiscovery() and StopDiscovery() during device
discovery on Bluez 4
- Fixed memory leak in Bluez 4 code path of QBluetoothServiceDiscoveryAgent
- [QTBUG-48481] Fixed crash during device discovery due to null pointer access on
Bluez 5
- [QTBUG-49650] Forcing usage of unbuffered L2CAP sockets for GATT protocol
- [QTBUG-49402] Sanitized handling of app names when registering internal agents
The app name is used to name the dbus path and not every permissible app name
character is a permissible dbus path character
- Removed assert in QLowEnergyController which could be caused by malicious device
QNX/BlackBerry
--------------
- Removed support for this platform from QtNfc
- Removed support for this platform from QtBluetooth
iOS
---
- [QTBUG-48518] Fixed compile and crash bugs when using iOS 9.x
- [QTBUG-48713] Enabled support for Bluetooth system alert dialog
- Fixed threading related timer issues
- [QTBUG-49476] Moved Low Energy code base to non-main dispatch queue
- [QTBUG-50125] Fixed missing invalidation of QLowEnergyService details on
disconnect from device
...@@ -7,272 +7,7 @@ import QtQuick.tooling 1.2 ...@@ -7,272 +7,7 @@ import QtQuick.tooling 1.2
// 'qmlplugindump -nonrelocatable QtBluetooth 5.6' // 'qmlplugindump -nonrelocatable QtBluetooth 5.6'
Module { Module {
dependencies: [] dependencies: ["QtQuick 2.0"]
Component {
name: "QAbstractItemModel"
prototype: "QObject"
Enum {
name: "LayoutChangeHint"
values: {
"NoLayoutChangeHint": 0,
"VerticalSortHint": 1,
"HorizontalSortHint": 2
}
}
Signal {
name: "dataChanged"
Parameter { name: "topLeft"; type: "QModelIndex" }
Parameter { name: "bottomRight"; type: "QModelIndex" }
Parameter { name: "roles"; type: "QVector<int>" }
}
Signal {
name: "dataChanged"
Parameter { name: "topLeft"; type: "QModelIndex" }
Parameter { name: "bottomRight"; type: "QModelIndex" }
}
Signal {
name: "headerDataChanged"
Parameter { name: "orientation"; type: "Qt::Orientation" }
Parameter { name: "first"; type: "int" }
Parameter { name: "last"; type: "int" }
}
Signal {
name: "layoutChanged"
Parameter { name: "parents"; type: "QList<QPersistentModelIndex>" }
Parameter { name: "hint"; type: "QAbstractItemModel::LayoutChangeHint" }
}
Signal {
name: "layoutChanged"
Parameter { name: "parents"; type: "QList<QPersistentModelIndex>" }
}
Signal { name: "layoutChanged" }
Signal {
name: "layoutAboutToBeChanged"
Parameter { name: "parents"; type: "QList<QPersistentModelIndex>" }
Parameter { name: "hint"; type: "QAbstractItemModel::LayoutChangeHint" }
}
Signal {
name: "layoutAboutToBeChanged"
Parameter { name: "parents"; type: "QList<QPersistentModelIndex>" }
}
Signal { name: "layoutAboutToBeChanged" }
Signal {
name: "rowsAboutToBeInserted"
Parameter { name: "parent"; type: "QModelIndex" }
Parameter { name: "first"; type: "int" }
Parameter { name: "last"; type: "int" }
}
Signal {
name: "rowsInserted"
Parameter { name: "parent"; type: "QModelIndex" }
Parameter { name: "first"; type: "int" }
Parameter { name: "last"; type: "int" }
}
Signal {
name: "rowsAboutToBeRemoved"
Parameter { name: "parent"; type: "QModelIndex" }
Parameter { name: "first"; type: "int" }
Parameter { name: "last"; type: "int" }
}
Signal {
name: "rowsRemoved"
Parameter { name: "parent"; type: "QModelIndex" }
Parameter { name: "first"; type: "int" }
Parameter { name: "last"; type: "int" }
}
Signal {
name: "columnsAboutToBeInserted"
Parameter { name: "parent"; type: "QModelIndex" }
Parameter { name: "first"; type: "int" }
Parameter { name: "last"; type: "int" }
}
Signal {
name: "columnsInserted"
Parameter { name: "parent"; type: "QModelIndex" }
Parameter { name: "first"; type: "int" }
Parameter { name: "last"; type: "int" }
}
Signal {
name: "columnsAboutToBeRemoved"
Parameter { name: "parent"; type: "QModelIndex" }
Parameter { name: "first"; type: "int" }
Parameter { name: "last"; type: "int" }
}
Signal {
name: "columnsRemoved"
Parameter { name: "parent"; type: "QModelIndex" }
Parameter { name: "first"; type: "int" }
Parameter { name: "last"; type: "int" }
}
Signal { name: "modelAboutToBeReset" }
Signal { name: "modelReset" }
Signal {
name: "rowsAboutToBeMoved"
Parameter { name: "sourceParent"; type: "QModelIndex" }
Parameter { name: "sourceStart"; type: "int" }
Parameter { name: "sourceEnd"; type: "int" }
Parameter { name: "destinationParent"; type: "QModelIndex" }
Parameter { name: "destinationRow"; type: "int" }
}
Signal {
name: "rowsMoved"
Parameter { name: "parent"; type: "QModelIndex" }
Parameter { name: "start"; type: "int" }
Parameter { name: "end"; type: "int" }
Parameter { name: "destination"; type: "QModelIndex" }
Parameter { name: "row"; type: "int" }
}
Signal {
name: "columnsAboutToBeMoved"
Parameter { name: "sourceParent"; type: "QModelIndex" }
Parameter { name: "sourceStart"; type: "int" }
Parameter { name: "sourceEnd"; type: "int" }
Parameter { name: "destinationParent"; type: "QModelIndex" }
Parameter { name: "destinationColumn"; type: "int" }
}
Signal {
name: "columnsMoved"
Parameter { name: "parent"; type: "QModelIndex" }
Parameter { name: "start"; type: "int" }
Parameter { name: "end"; type: "int" }
Parameter { name: "destination"; type: "QModelIndex" }
Parameter { name: "column"; type: "int" }
}
Method { name: "submit"; type: "bool" }
Method { name: "revert" }
Method {
name: "hasIndex"
type: "bool"
Parameter { name: "row"; type: "int" }
Parameter { name: "column"; type: "int" }
Parameter { name: "parent"; type: "QModelIndex" }
}
Method {
name: "hasIndex"
type: "bool"
Parameter { name: "row"; type: "int" }
Parameter { name: "column"; type: "int" }
}
Method {
name: "index"
type: "QModelIndex"
Parameter { name: "row"; type: "int" }
Parameter { name: "column"; type: "int" }
Parameter { name: "parent"; type: "QModelIndex" }
}
Method {
name: "index"
type: "QModelIndex"
Parameter { name: "row"; type: "int" }
Parameter { name: "column"; type: "int" }
}
Method {
name: "parent"
type: "QModelIndex"
Parameter { name: "child"; type: "QModelIndex" }
}
Method {
name: "sibling"
type: "QModelIndex"
Parameter { name: "row"; type: "int" }
Parameter { name: "column"; type: "int" }
Parameter { name: "idx"; type: "QModelIndex" }
}
Method {
name: "rowCount"
type: "int"
Parameter { name: "parent"; type: "QModelIndex" }
}
Method { name: "rowCount"; type: "int" }
Method {
name: "columnCount"
type: "int"
Parameter { name: "parent"; type: "QModelIndex" }
}
Method { name: "columnCount"; type: "int" }
Method {
name: "hasChildren"
type: "bool"
Parameter { name: "parent"; type: "QModelIndex" }
}
Method { name: "hasChildren"; type: "bool" }
Method {
name: "data"
type: "QVariant"
Parameter { name: "index"; type: "QModelIndex" }
Parameter { name: "role"; type: "int" }
}
Method {
name: "data"
type: "QVariant"
Parameter { name: "index"; type: "QModelIndex" }
}
Method {
name: "setData"
type: "bool"
Parameter { name: "index"; type: "QModelIndex" }
Parameter { name: "value"; type: "QVariant" }
Parameter { name: "role"; type: "int" }
}
Method {
name: "setData"
type: "bool"
Parameter { name: "index"; type: "QModelIndex" }
Parameter { name: "value"; type: "QVariant" }
}
Method {
name: "headerData"
type: "QVariant"
Parameter { name: "section"; type: "int" }
Parameter { name: "orientation"; type: "Qt::Orientation" }
Parameter { name: "role"; type: "int" }
}
Method {
name: "headerData"
type: "QVariant"
Parameter { name: "section"; type: "int" }
Parameter { name: "orientation"; type: "Qt::Orientation" }
}
Method {
name: "fetchMore"
Parameter { name: "parent"; type: "QModelIndex" }
}
Method {
name: "canFetchMore"
type: "bool"
Parameter { name: "parent"; type: "QModelIndex" }
}
Method {
name: "flags"
type: "Qt::ItemFlags"
Parameter { name: "index"; type: "QModelIndex" }
}
Method {
name: "match"
type: "QModelIndexList"
Parameter { name: "start"; type: "QModelIndex" }
Parameter { name: "role"; type: "int" }
Parameter { name: "value"; type: "QVariant" }
Parameter { name: "hits"; type: "int" }
Parameter { name: "flags"; type: "Qt::MatchFlags" }
}
Method {
name: "match"
type: "QModelIndexList"
Parameter { name: "start"; type: "QModelIndex" }
Parameter { name: "role"; type: "int" }
Parameter { name: "value"; type: "QVariant" }
Parameter { name: "hits"; type: "int" }
}
Method {
name: "match"
type: "QModelIndexList"
Parameter { name: "start"; type: "QModelIndex" }
Parameter { name: "role"; type: "int" }
Parameter { name: "value"; type: "QVariant" }
}
}
Component { name: "QAbstractListModel"; prototype: "QAbstractItemModel" }
Component { Component {
name: "QDeclarativeBluetoothDiscoveryModel" name: "QDeclarativeBluetoothDiscoveryModel"
prototype: "QAbstractListModel" prototype: "QAbstractListModel"
......
...@@ -7,7 +7,7 @@ import QtQuick.tooling 1.2 ...@@ -7,7 +7,7 @@ import QtQuick.tooling 1.2
// 'qmlplugindump -nonrelocatable QtNfc 5.6' // 'qmlplugindump -nonrelocatable QtNfc 5.6'
Module { Module {
dependencies: [] dependencies: ["QtQuick 2.0"]
Component { Component {
name: "QDeclarativeNdefFilter" name: "QDeclarativeNdefFilter"
prototype: "QObject" prototype: "QObject"
......
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment