=== modified file 'src/imports/systeminfo/qdeclarativeinputdevicemodel.cpp' --- src/imports/systeminfo/qdeclarativeinputdevicemodel.cpp 2016-11-30 14:49:50 +0000 +++ src/imports/systeminfo/qdeclarativeinputdevicemodel.cpp 2016-11-30 15:21:59 +0000 @@ -50,8 +50,6 @@ this,&QDeclarativeInputDeviceModel::addedDevice); connect(deviceInfoManager, &QInputInfoManager::deviceRemoved, this,&QDeclarativeInputDeviceModel::removedDevice); - connect(deviceInfoManager, &QInputInfoManager::countChanged, - this,&QDeclarativeInputDeviceModel::countChanged); } QDeclarativeInputDeviceModel::~QDeclarativeInputDeviceModel() @@ -132,6 +130,7 @@ beginInsertRows(QModelIndex(), i, i); inputDevices.insert(i, newDevices.value(i)); endInsertRows(); + Q_EMIT countChanged(); } else if (i != j) { // changed its position -> move it QInputDevice* device = inputDevices.value(j); @@ -151,6 +150,7 @@ beginRemoveRows(QModelIndex(), numNew, numOld - 1); inputDevices.remove(numNew, numOld - numNew); endRemoveRows(); + Q_EMIT countChanged(); } } === modified file 'src/imports/systeminfo/qdeclarativeinputdevicemodel_p.h' --- src/imports/systeminfo/qdeclarativeinputdevicemodel_p.h 2016-11-30 14:49:50 +0000 +++ src/imports/systeminfo/qdeclarativeinputdevicemodel_p.h 2016-11-30 14:56:03 +0000 @@ -78,7 +78,7 @@ void added(QInputDevice *inputDevice); void removed(const QString &deviceId); void filterChanged(QInputDevice::InputTypeFlags filterFlags); - void countChanged(int devices); + void countChanged(); public Q_SLOTS: void updateDeviceList();