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

Commit b50c07cc authored by Chun-Wei Wang's avatar Chun-Wei Wang Committed by Automerger Merge Worker
Browse files

Merge "Don't show notifications for locked slots" into main am: c2e02586 am:...

Merge "Don't show notifications for locked slots" into main am: c2e02586 am: 7ff75ffe am: e400e294

Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/2655023



Change-Id: I11da0cb9c5d8aa0ef8cfb7e8a86f252613353813
Signed-off-by: default avatarAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
parents 8f539fe7 e400e294
Loading
Loading
Loading
Loading
+11 −3
Original line number Diff line number Diff line
@@ -419,12 +419,20 @@ public class DynamicSystemInstallationService extends Service
        mDynSystem.remove();
    }

    private boolean isDsuSlotLocked() {
        // Slot names ending with ".lock" are a customized installation.
        // We expect the client app to provide custom UI to enter/exit DSU mode.
        // We will ignore the ACTION_REBOOT_TO_NORMAL command and will not show
        // notifications in this case.
        return mDynSystem.getActiveDsuSlot().endsWith(".lock");
    }

    private void executeRebootToNormalCommand() {
        if (!isInDynamicSystem()) {
            Log.e(TAG, "It's already running in normal system.");
            return;
        }
        if (mDynSystem.getActiveDsuSlot().endsWith(".lock")) {
        if (isDsuSlotLocked()) {
            Log.e(TAG, "Ignore the reboot intent for a locked DSU slot");
            return;
        }
@@ -449,13 +457,13 @@ public class DynamicSystemInstallationService extends Service
    private void executeNotifyIfInUseCommand() {
        switch (getStatus()) {
            case STATUS_IN_USE:
                if (!mHideNotification) {
                if (!mHideNotification && !isDsuSlotLocked()) {
                    startForeground(NOTIFICATION_ID,
                            buildNotification(STATUS_IN_USE, CAUSE_NOT_SPECIFIED));
                }
                break;
            case STATUS_READY:
                if (!mHideNotification) {
                if (!mHideNotification && !isDsuSlotLocked()) {
                    startForeground(NOTIFICATION_ID,
                            buildNotification(STATUS_READY, CAUSE_NOT_SPECIFIED));
                }