Loading services/companion/java/com/android/server/companion/virtual/GenericWindowPolicyController.java +13 −6 Original line number Diff line number Diff line Loading @@ -37,6 +37,7 @@ import android.util.Slog; import android.view.Display; import android.window.DisplayWindowPolicyController; import com.android.internal.annotations.GuardedBy; import com.android.internal.app.BlockedAppStreamingActivity; import java.util.List; Loading Loading @@ -75,9 +76,11 @@ public class GenericWindowPolicyController extends DisplayWindowPolicyController private final ArraySet<ComponentName> mAllowedActivities; @Nullable private final ArraySet<ComponentName> mBlockedActivities; private final Object mGenericWindowPolicyControllerLock = new Object(); private Consumer<ActivityInfo> mActivityBlockedCallback; @NonNull @GuardedBy("mGenericWindowPolicyControllerLock") final ArraySet<Integer> mRunningUids = new ArraySet<>(); @Nullable private final ActivityListener mActivityListener; private final Handler mHandler = new Handler(Looper.getMainLooper()); Loading Loading @@ -149,12 +152,14 @@ public class GenericWindowPolicyController extends DisplayWindowPolicyController @Override public void onRunningAppsChanged(ArraySet<Integer> runningUids) { synchronized (mGenericWindowPolicyControllerLock) { mRunningUids.clear(); mRunningUids.addAll(runningUids); if (mActivityListener != null && mRunningUids.isEmpty()) { // Post callback on the main thread so it doesn't block activity launching mHandler.post(() -> mActivityListener.onDisplayEmpty(Display.INVALID_DISPLAY)); } } if (mRunningAppsChangedListener != null) { mRunningAppsChangedListener.onRunningAppsChanged(runningUids); } Loading @@ -165,8 +170,10 @@ public class GenericWindowPolicyController extends DisplayWindowPolicyController * this controller. */ boolean containsUid(int uid) { synchronized (mGenericWindowPolicyControllerLock) { return mRunningUids.contains(uid); } } private boolean canContainActivity(ActivityInfo activityInfo, int windowFlags, int systemWindowFlags) { Loading Loading
services/companion/java/com/android/server/companion/virtual/GenericWindowPolicyController.java +13 −6 Original line number Diff line number Diff line Loading @@ -37,6 +37,7 @@ import android.util.Slog; import android.view.Display; import android.window.DisplayWindowPolicyController; import com.android.internal.annotations.GuardedBy; import com.android.internal.app.BlockedAppStreamingActivity; import java.util.List; Loading Loading @@ -75,9 +76,11 @@ public class GenericWindowPolicyController extends DisplayWindowPolicyController private final ArraySet<ComponentName> mAllowedActivities; @Nullable private final ArraySet<ComponentName> mBlockedActivities; private final Object mGenericWindowPolicyControllerLock = new Object(); private Consumer<ActivityInfo> mActivityBlockedCallback; @NonNull @GuardedBy("mGenericWindowPolicyControllerLock") final ArraySet<Integer> mRunningUids = new ArraySet<>(); @Nullable private final ActivityListener mActivityListener; private final Handler mHandler = new Handler(Looper.getMainLooper()); Loading Loading @@ -149,12 +152,14 @@ public class GenericWindowPolicyController extends DisplayWindowPolicyController @Override public void onRunningAppsChanged(ArraySet<Integer> runningUids) { synchronized (mGenericWindowPolicyControllerLock) { mRunningUids.clear(); mRunningUids.addAll(runningUids); if (mActivityListener != null && mRunningUids.isEmpty()) { // Post callback on the main thread so it doesn't block activity launching mHandler.post(() -> mActivityListener.onDisplayEmpty(Display.INVALID_DISPLAY)); } } if (mRunningAppsChangedListener != null) { mRunningAppsChangedListener.onRunningAppsChanged(runningUids); } Loading @@ -165,8 +170,10 @@ public class GenericWindowPolicyController extends DisplayWindowPolicyController * this controller. */ boolean containsUid(int uid) { synchronized (mGenericWindowPolicyControllerLock) { return mRunningUids.contains(uid); } } private boolean canContainActivity(ActivityInfo activityInfo, int windowFlags, int systemWindowFlags) { Loading