0
Files
src/content/browser/bluetooth
James Hollyer 1928093a00 Notify developers of inefficiency to be fixed.
When BluetoothAdapter::Observer::GattCharacteristicValueChanged() is
called WebBluetoothServiceImpl notifies all
blink::BluetoothRemoteGattCharacteristic objects even if
startNotifications() has not been called or there are no listeners. This
is inefficient.

We have decided not to fix this at the moment but we wanted to put a
comment in the code so if anyone is working on that function in the
future they could be aware of this inefficiency and fix it if the change
becomes more straightforward.

Bug: 541390
Change-Id: Icfc54cb17ac76b856effbfac97af98574a6ee17a
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1724588
Reviewed-by: Reilly Grant <reillyg@chromium.org>
Commit-Queue: James Hollyer <jameshollyer@chromium.org>
Cr-Commit-Position: refs/heads/master@{#682070}
2019-07-30 00:43:42 +00:00
..

Web Bluetooth Service in Content

content/*/bluetooth implements the Web Bluetooth specification using the /device/bluetooth code module.

This service is exposed to the web in the blink bluetooth module.

Testing

Bluetooth web tests in third_party/blink/web_tests/bluetooth/ rely on fake Bluetooth implementation classes constructed in content/shell/browser/layout_test/layout_test_bluetooth_adapter_provider. These tests span JavaScript binding to the device/bluetooth API layer.

Design Documents

See: Class Diagram of Web Bluetooth through Bluetooth Android