This MR adds a basic implementation for the BluetoothAdapter interface in Windows.Devices.Bluetooth, including winebth.sys support for getting properties associated with the radio's Low Energy capabilities.
--
v4: windows.devices.bluetooth: Implement BluetoothAdapter::get_BluetoothAddress.
windows.devices.bluetooth: Implement IBluetoothAdapterStatics::GetDefaultAsync().
windows.devices.bluetooth/tests: Add tests for IBluetoothAdapter.
https://gitlab.winehq.org/wine/wine/-/merge_requests/7659
This MR mainly tackle the exit code generated from running
cmd.exe with /c command line option.
Things are a little bit torturous (as shown by tests) and
require a bit of refactoring.
The /k option is not covered as the tests trigger other bugs
that we'll need to tackle beforehand (mainly proper escaping
when rewriting builtin commands in pipe, that we'll need
also for real pipes implementation, and also some echo
features).
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/8655
`BluetoothLEAdvertisementWatcher` is required for LE device discovery on WinRT. Several WinRT apps, like Zwift will try getting this interface, and crash if they are not able to.
--
v2: windows.devices.bluetooth: BluetoothLEAdvertisementWatcher::get_{Min, Max}OutOfRangeTimeout.
windows.devices.bluetooth: Implement BluetoothLEAdvertisementWatcher::get_{Min, Max}SamplingInterval.
windows.devices.bluetooth: Add stubs for BluetoothLEAdvertisementWatcher.
windows.devices.bluetooth/tests: Add tests for IBluetoothLEAdvertisementWatcher.
windows.devices.bluetooth/tests: Add tests for BluetoothLEAdvertisementDataSection.
windows.devices.bluetooth/tests: Add tests for IBluetoothLEAdvertisementBytePattern.
windows.devices.bluetooth/tests: Add tests for BluetoothLEAdvertisementFilter.
include: Add windows.devices.bluetooth.advertisement.idl.
https://gitlab.winehq.org/wine/wine/-/merge_requests/8654
!8598 will require some more work, so I wrote a number of tests in preparation for it. There will be another MR for capturing tests.
This MR also enable 32-bit PCM samples for PulseAudio, since they're already enabled for other drivers and it's useful to have some uniformity between the drivers in order to avoid making writing todo conditions even more of a nightmare than it already is. 32-bit samples are already enabled to extensible wave formats, so it doesn't seem intentional that they were not enabled for non-extensible formats.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/8653