Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 5b84cfae authored by Hemant Gupta's avatar Hemant Gupta Committed by Myles Watson
Browse files

Bluetooth: Give PBAP permission only if device is AUDIO_VIDEO_HANDSFREE

Step by step:
1. Pair and connect with BTHS (e.g. SBH50).
2. Click the settings icon of paired device, and check "Use for" items.
-----------------------------------------------------------------
Expected Result:
After step 2, "Contact sharing" should not be checked.

Actual Result:
After step 2, "Contact sharing" is checked.

Fix:
Set phone book permission as REJECTED if class of Device is
not AUDIO_VIDEO_HANDSFREE

Test: Checked above usecase and issue is not observed

Bug: 64372703
Change-Id: I178a09dd9e76d67c461c4b04d9b2ee0078ed24c9
parent 8aeb6939
Loading
Loading
Loading
Loading
+16 −0
Original line number Diff line number Diff line
@@ -171,6 +171,22 @@ public class BluetoothPairingController implements OnCheckedChangeListener,
        }
    }

    /**
     * Update Phone book permission
     *
     */
     public void  setContactSharingState() {
        if ((mDevice.getPhonebookAccessPermission() != BluetoothDevice.ACCESS_ALLOWED)
                && (mDevice.getPhonebookAccessPermission() != BluetoothDevice.ACCESS_REJECTED)) {
                 if (mDevice.getBluetoothClass().getDeviceClass()
                        == BluetoothClass.Device.AUDIO_VIDEO_HANDSFREE) {
                    onCheckedChanged(null, true);
            } else {
                onCheckedChanged(null, false);
            }
        }
    }

    /**
     * A method for querying if the provided editable is a valid passkey/pin format for this device.
     *
+2 −0
Original line number Diff line number Diff line
@@ -224,6 +224,7 @@ public class BluetoothPairingDialogFragment extends InstrumentedDialogFragment i

        contactSharing.setVisibility(mPairingController.isProfileReady()
                ? View.GONE : View.VISIBLE);
        mPairingController.setContactSharingState();
        contactSharing.setOnCheckedChangeListener(mPairingController);
        contactSharing.setChecked(mPairingController.getContactSharingState());

@@ -314,6 +315,7 @@ public class BluetoothPairingDialogFragment extends InstrumentedDialogFragment i

        contactSharing.setVisibility(
                mPairingController.isProfileReady() ? View.GONE : View.VISIBLE);
        mPairingController.setContactSharingState();
        contactSharing.setChecked(mPairingController.getContactSharingState());
        contactSharing.setOnCheckedChangeListener(mPairingController);