From 9c1f0f80ee06bef63ab8a681aae0c1fed60e4d96 Mon Sep 17 00:00:00 2001 From: Joshua Trask Date: Fri, 17 Feb 2023 15:59:54 +0000 Subject: Extract component for work-profile availability. The new `WorkProfileAvailabilityManager` component consolidates responsibilities that were previously associated with the `QuietModeManager` interface and resolver's work-profile-state `BroadcastReceiver`. See code review comments for further discussion of CL diffs. Test: `atest IntentResolverUnitTests` Bug: 202167050 Change-Id: I5fd0385e161959a5fbcdf9c27dbc757d5faa2a06 --- .../ChooserActivityOverrideData.java | 18 ++++++++------- .../intentresolver/ChooserWrapperActivity.java | 9 ++++---- .../intentresolver/ResolverWrapperActivity.java | 26 ++++++++++++---------- 3 files changed, 28 insertions(+), 25 deletions(-) (limited to 'java/tests') diff --git a/java/tests/src/com/android/intentresolver/ChooserActivityOverrideData.java b/java/tests/src/com/android/intentresolver/ChooserActivityOverrideData.java index 857fa124..0d5b58dc 100644 --- a/java/tests/src/com/android/intentresolver/ChooserActivityOverrideData.java +++ b/java/tests/src/com/android/intentresolver/ChooserActivityOverrideData.java @@ -29,7 +29,6 @@ import android.os.UserHandle; import com.android.intentresolver.AbstractMultiProfilePagerAdapter.CrossProfileIntentsChecker; import com.android.intentresolver.AbstractMultiProfilePagerAdapter.MyUserIdProvider; -import com.android.intentresolver.AbstractMultiProfilePagerAdapter.QuietModeManager; import com.android.intentresolver.chooser.TargetInfo; import com.android.intentresolver.flags.FeatureFlagRepository; import com.android.intentresolver.shortcuts.ShortcutLoader; @@ -73,7 +72,7 @@ public class ChooserActivityOverrideData { public boolean hasCrossProfileIntents; public boolean isQuietModeEnabled; public Integer myUserId; - public QuietModeManager mQuietModeManager; + public WorkProfileAvailabilityManager mWorkProfileAvailability; public MyUserIdProvider mMyUserIdProvider; public CrossProfileIntentsChecker mCrossProfileIntentsChecker; public PackageManager packageManager; @@ -97,22 +96,25 @@ public class ChooserActivityOverrideData { isQuietModeEnabled = false; myUserId = null; packageManager = null; - mQuietModeManager = new QuietModeManager() { + mWorkProfileAvailability = new WorkProfileAvailabilityManager(null, null, null) { @Override - public boolean isQuietModeEnabled(UserHandle workProfileUserHandle) { + public boolean isQuietModeEnabled() { return isQuietModeEnabled; } @Override - public void requestQuietModeEnabled(boolean enabled, - UserHandle workProfileUserHandle) { - isQuietModeEnabled = enabled; + public boolean isWorkProfileUserUnlocked() { + return true; } @Override - public void markWorkProfileEnabledBroadcastReceived() { + public void requestQuietModeEnabled(boolean enabled) { + isQuietModeEnabled = enabled; } + @Override + public void markWorkProfileEnabledBroadcastReceived() {} + @Override public boolean isWaitingToEnableWorkProfile() { return false; diff --git a/java/tests/src/com/android/intentresolver/ChooserWrapperActivity.java b/java/tests/src/com/android/intentresolver/ChooserWrapperActivity.java index 17084e1c..c1c34604 100644 --- a/java/tests/src/com/android/intentresolver/ChooserWrapperActivity.java +++ b/java/tests/src/com/android/intentresolver/ChooserWrapperActivity.java @@ -35,7 +35,6 @@ import android.os.UserHandle; import com.android.intentresolver.AbstractMultiProfilePagerAdapter.CrossProfileIntentsChecker; import com.android.intentresolver.AbstractMultiProfilePagerAdapter.MyUserIdProvider; -import com.android.intentresolver.AbstractMultiProfilePagerAdapter.QuietModeManager; import com.android.intentresolver.chooser.DisplayResolveInfo; import com.android.intentresolver.chooser.TargetInfo; import com.android.intentresolver.flags.FeatureFlagRepository; @@ -161,11 +160,11 @@ public class ChooserWrapperActivity } @Override - protected QuietModeManager createQuietModeManager() { - if (sOverrides.mQuietModeManager != null) { - return sOverrides.mQuietModeManager; + protected WorkProfileAvailabilityManager createWorkProfileAvailabilityManager() { + if (sOverrides.mWorkProfileAvailability != null) { + return sOverrides.mWorkProfileAvailability; } - return super.createQuietModeManager(); + return super.createWorkProfileAvailabilityManager(); } @Override diff --git a/java/tests/src/com/android/intentresolver/ResolverWrapperActivity.java b/java/tests/src/com/android/intentresolver/ResolverWrapperActivity.java index 239bffe0..ade8cc77 100644 --- a/java/tests/src/com/android/intentresolver/ResolverWrapperActivity.java +++ b/java/tests/src/com/android/intentresolver/ResolverWrapperActivity.java @@ -31,7 +31,6 @@ import android.os.UserHandle; import com.android.intentresolver.AbstractMultiProfilePagerAdapter.CrossProfileIntentsChecker; import com.android.intentresolver.AbstractMultiProfilePagerAdapter.MyUserIdProvider; -import com.android.intentresolver.AbstractMultiProfilePagerAdapter.QuietModeManager; import com.android.intentresolver.chooser.TargetInfo; import java.util.List; @@ -88,11 +87,11 @@ public class ResolverWrapperActivity extends ResolverActivity { } @Override - protected QuietModeManager createQuietModeManager() { - if (sOverrides.mQuietModeManager != null) { - return sOverrides.mQuietModeManager; + protected WorkProfileAvailabilityManager createWorkProfileAvailabilityManager() { + if (sOverrides.mWorkProfileAvailability != null) { + return sOverrides.mWorkProfileAvailability; } - return super.createQuietModeManager(); + return super.createWorkProfileAvailabilityManager(); } ResolverWrapperAdapter getAdapter() { @@ -175,7 +174,7 @@ public class ResolverWrapperActivity extends ResolverActivity { public Integer myUserId; public boolean hasCrossProfileIntents; public boolean isQuietModeEnabled; - public QuietModeManager mQuietModeManager; + public WorkProfileAvailabilityManager mWorkProfileAvailability; public MyUserIdProvider mMyUserIdProvider; public CrossProfileIntentsChecker mCrossProfileIntentsChecker; @@ -190,22 +189,25 @@ public class ResolverWrapperActivity extends ResolverActivity { hasCrossProfileIntents = true; isQuietModeEnabled = false; - mQuietModeManager = new QuietModeManager() { + mWorkProfileAvailability = new WorkProfileAvailabilityManager(null, null, null) { @Override - public boolean isQuietModeEnabled(UserHandle workProfileUserHandle) { + public boolean isQuietModeEnabled() { return isQuietModeEnabled; } @Override - public void requestQuietModeEnabled(boolean enabled, - UserHandle workProfileUserHandle) { - isQuietModeEnabled = enabled; + public boolean isWorkProfileUserUnlocked() { + return true; } @Override - public void markWorkProfileEnabledBroadcastReceived() { + public void requestQuietModeEnabled(boolean enabled) { + isQuietModeEnabled = enabled; } + @Override + public void markWorkProfileEnabledBroadcastReceived() {} + @Override public boolean isWaitingToEnableWorkProfile() { return false; -- cgit v1.2.3-59-g8ed1b