Unwarn compile of QtBluetooth

warning: 'QLowEnergyDescriptorPrivate' defined as a struct here but previously declared as a class [-Wmismatched-tags]

Change-Id: I2b90a645ed5aa2d86184d94acb2658460f26f660
Reviewed-by: Timur Pocheptsov <Timur.Pocheptsov@digia.com>
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
Fix lowenergyscanner when dealing with device scan errors

Previously the error was indicated but other UI elements were still
giving the impression that the scan was ongoing.

Change-Id: Iafab8f43bff3303eb6ad5e3385db2f81288d2e66
Reviewed-by: Timur Pocheptsov <Timur.Pocheptsov@digia.com>
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
If btle connect attempt fails return QLEController back to Unconnected

What is really needed is a new ConnectionError for this case. This new
error will shortly be introduced to the btle/5.5 branch.

Change-Id: I751fa0eeb5cf4d0b78863842c94770f4e8e74015
Reviewed-by: Timur Pocheptsov <Timur.Pocheptsov@digia.com>
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
Fix lowenergyscanner ui bugs when QLEController connection errors

1.) The QLEController may error out during connectToDevice() which does
not require the eventloop to run. At the same time the services view
is not yet loaded. Subsequently the services view never notices the
errors and loads as if the controller is still trying to connect.

2.) The services view can only be left when a disconnect() signal is
received. During a connection error the disconnect never happens
because the connect never happened. Artificially introduce a disconnect()
when the controller is not connected but disconnect was called by the UI.
This part should be cleaned up to properly allow tracking of the
controller's state in the future.

Change-Id: I2cbd90d55b5e70fb275a8f4563d9436419874e6d
Reviewed-by: Timur Pocheptsov <Timur.Pocheptsov@digia.com>
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
Force lowenergyscanner to show empty list if we did not find services

Previously the UI was only updated when a new service was discovered
on a device. In the extremely rare event of no services being found
the UI was hanging in the "Searching for services" view.

Change-Id: I245216ac4e373a765dea2e182ab541e8830417d0
Reviewed-by: Timur Pocheptsov <Timur.Pocheptsov@digia.com>
Reviewed-by: Alex Blasche <alexander.blasche@digia.com>
Merge branch '5.4' into dev

Change-Id: Ia31c386999846dd0af91830bfdd4f7c5454c8e23