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

Commit 37f9de99 authored by Amith Yamasani's avatar Amith Yamasani
Browse files

Reinitialize voice interaction service on unlock

Fixes the incomplete initialization on FBE devices when
voice interaction service is not available before unlock.

Change-Id: I397237e4554453d29da643aee59384e289fa3654
Fixes: 28183380
parent 7ecd7671
Loading
Loading
Loading
Loading
+12 −0
Original line number Diff line number Diff line
@@ -127,6 +127,12 @@ public class VoiceInteractionManagerService extends SystemService {
        mServiceStub.initForUser(userHandle);
    }

    @Override
    public void onUnlockUser(int userHandle) {
        mServiceStub.initForUser(userHandle);
        mServiceStub.switchImplementationIfNeeded(false);
    }

    @Override
    public void onSwitchUser(int userHandle) {
        mServiceStub.switchUser(userHandle);
@@ -362,6 +368,12 @@ public class VoiceInteractionManagerService extends SystemService {
            }
        }

        void switchImplementationIfNeeded(boolean force) {
            synchronized (this) {
                switchImplementationIfNeededLocked(force);
            }
        }

        void switchImplementationIfNeededLocked(boolean force) {
            if (!mSafeMode) {
                String curService = Settings.Secure.getStringForUser(