| Index: device/bluetooth/android/java/src/org/chromium/device/bluetooth/ChromeBluetoothAdapter.java
|
| diff --git a/device/bluetooth/android/java/src/org/chromium/device/bluetooth/ChromeBluetoothAdapter.java b/device/bluetooth/android/java/src/org/chromium/device/bluetooth/ChromeBluetoothAdapter.java
|
| index 6b5792b691cc5f779db4038fec2d85e15f8276f2..dab1e0d2db9283a16f7ff9cd34e45212bcf1af5d 100644
|
| --- a/device/bluetooth/android/java/src/org/chromium/device/bluetooth/ChromeBluetoothAdapter.java
|
| +++ b/device/bluetooth/android/java/src/org/chromium/device/bluetooth/ChromeBluetoothAdapter.java
|
| @@ -185,12 +185,15 @@ final class ChromeBluetoothAdapter extends BroadcastReceiver {
|
| // Implementation details:
|
|
|
| /**
|
| - * @return true if Chromium has permission to scan for Bluetooth devices.
|
| + * @return true if Chromium has permission to scan for Bluetooth devices and location services
|
| + * are on.
|
| */
|
| private boolean canScan() {
|
| Wrappers.ContextWrapper context = mAdapter.getContext();
|
| + boolean havePermission = context.chromeHasLocationPermission();
|
| + boolean locationServicesOn = context.isSystemLocationSettingEnabled();
|
|
|
| - return context.chromeHasLocationPermission();
|
| + return havePermission && locationServicesOn;
|
| }
|
|
|
| private void registerBroadcastReceiver() {
|
|
|