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

Commit 9260d804 authored by Ahmad Khalil's avatar Ahmad Khalil Committed by Automerger Merge Worker
Browse files

Merge "VibrationSettings: add synchronized control for access of...

Merge "VibrationSettings: add synchronized control for access of mProcStatesCache" into main am: 266f845d am: 190201f6 am: ed9c88c9

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



Change-Id: I7c22df9fcc57f0a98b9feb80c3ccda912a2687ee
Signed-off-by: default avatarAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
parents 47ec040a ed9c88c9
Loading
Loading
Loading
Loading
+10 −4
Original line number Diff line number Diff line
@@ -833,20 +833,26 @@ final class VibrationSettings {
        private final SparseArray<Integer> mProcStatesCache = new SparseArray<>();

        public boolean isUidForeground(int uid) {
            synchronized (this) {
                return mProcStatesCache.get(uid, ActivityManager.PROCESS_STATE_IMPORTANT_FOREGROUND)
                        <= ActivityManager.PROCESS_STATE_IMPORTANT_FOREGROUND;
            }
        }

        @Override
        public void onUidGone(int uid, boolean disabled) {
            synchronized (this) {
                mProcStatesCache.delete(uid);
            }
        }

        @Override
        public void onUidStateChanged(int uid, int procState, long procStateSeq, int capability) {
            synchronized (this) {
                mProcStatesCache.put(uid, procState);
            }
        }
    }

    /**
     * Implementation of Virtual Device listeners for the changes of virtual displays and of apps