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

Commit 22795b02 authored by Valentin Iftime's avatar Valentin Iftime Committed by Iavor-Valentin Iftime
Browse files

Update HW toggle state on boot only if enabled

 Do not notify HW toggle changes on device boot unless enabled (muted),
 otherwise the software privacy toggles will be disabled.

Test: Disable HW mic toggle (unmute) > Mute mic via software toggle >
   Reboot device > Mic is still muted via SW toggles

Bug: 258070117
Change-Id: I6cbabac476cdbf6c16bb7a8eaa9d1850d7239e83
parent 43b2c08e
Loading
Loading
Loading
Loading
+5 −5
Original line number Diff line number Diff line
@@ -369,7 +369,7 @@ public class InputManagerService extends IInputManager.Stub
    /** Switch code: Camera lens cover. When set the lens is covered. */
    public static final int SW_CAMERA_LENS_COVER = 0x09;

    /** Switch code: Microphone. When set it is off. */
    /** Switch code: Microphone. When set, the mic is muted. */
    public static final int SW_MUTE_DEVICE = 0x0e;

    public static final int SW_LID_BIT = 1 << SW_LID;
@@ -536,14 +536,14 @@ public class InputManagerService extends IInputManager.Stub
        // Set the HW mic toggle switch state
        final int micMuteState = getSwitchState(-1 /* deviceId */, InputDevice.SOURCE_ANY,
                SW_MUTE_DEVICE);
        if (micMuteState != InputManager.SWITCH_STATE_UNKNOWN) {
            setSensorPrivacy(Sensors.MICROPHONE, micMuteState != InputManager.SWITCH_STATE_OFF);
        if (micMuteState == InputManager.SWITCH_STATE_ON) {
            setSensorPrivacy(Sensors.MICROPHONE, true);
        }
        // Set the HW camera toggle switch state
        final int cameraMuteState = getSwitchState(-1 /* deviceId */, InputDevice.SOURCE_ANY,
                SW_CAMERA_LENS_COVER);
        if (cameraMuteState != InputManager.SWITCH_STATE_UNKNOWN) {
            setSensorPrivacy(Sensors.CAMERA, cameraMuteState != InputManager.SWITCH_STATE_OFF);
        if (cameraMuteState == InputManager.SWITCH_STATE_ON) {
            setSensorPrivacy(Sensors.CAMERA, true);
        }

        IntentFilter filter = new IntentFilter(Intent.ACTION_PACKAGE_ADDED);