diff options
| -rw-r--r-- | packages/SystemUI/src/com/android/systemui/dagger/FrameworkServicesModule.java | 7 | ||||
| -rw-r--r-- | packages/SystemUI/src/com/android/systemui/media/MediaProjectionPermissionActivity.java | 8 |
2 files changed, 14 insertions, 1 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/dagger/FrameworkServicesModule.java b/packages/SystemUI/src/com/android/systemui/dagger/FrameworkServicesModule.java index 0dcba50df4ca..ef0f4941d4cd 100644 --- a/packages/SystemUI/src/com/android/systemui/dagger/FrameworkServicesModule.java +++ b/packages/SystemUI/src/com/android/systemui/dagger/FrameworkServicesModule.java @@ -29,6 +29,7 @@ import android.app.IWallpaperManager; import android.app.KeyguardManager; import android.app.NotificationManager; import android.app.StatsManager; +import android.app.StatusBarManager; import android.app.UiModeManager; import android.app.WallpaperManager; import android.app.admin.DevicePolicyManager; @@ -680,4 +681,10 @@ public class FrameworkServicesModule { static TextClassificationManager provideTextClassificationManager(Context context) { return context.getSystemService(TextClassificationManager.class); } + + @Provides + @Singleton + static StatusBarManager provideStatusBarManager(Context context) { + return context.getSystemService(StatusBarManager.class); + } } diff --git a/packages/SystemUI/src/com/android/systemui/media/MediaProjectionPermissionActivity.java b/packages/SystemUI/src/com/android/systemui/media/MediaProjectionPermissionActivity.java index 4be572f8c0f6..d403788f2c66 100644 --- a/packages/SystemUI/src/com/android/systemui/media/MediaProjectionPermissionActivity.java +++ b/packages/SystemUI/src/com/android/systemui/media/MediaProjectionPermissionActivity.java @@ -29,6 +29,7 @@ import android.annotation.Nullable; import android.app.Activity; import android.app.ActivityManager; import android.app.AlertDialog; +import android.app.StatusBarManager; import android.content.Context; import android.content.DialogInterface; import android.content.Intent; @@ -72,6 +73,7 @@ public class MediaProjectionPermissionActivity extends Activity private final FeatureFlags mFeatureFlags; private final Lazy<ScreenCaptureDevicePolicyResolver> mScreenCaptureDevicePolicyResolver; + private final StatusBarManager mStatusBarManager; private String mPackageName; private int mUid; @@ -87,9 +89,11 @@ public class MediaProjectionPermissionActivity extends Activity @Inject public MediaProjectionPermissionActivity(FeatureFlags featureFlags, - Lazy<ScreenCaptureDevicePolicyResolver> screenCaptureDevicePolicyResolver) { + Lazy<ScreenCaptureDevicePolicyResolver> screenCaptureDevicePolicyResolver, + StatusBarManager statusBarManager) { mFeatureFlags = featureFlags; mScreenCaptureDevicePolicyResolver = screenCaptureDevicePolicyResolver; + mStatusBarManager = statusBarManager; } @Override @@ -311,6 +315,8 @@ public class MediaProjectionPermissionActivity extends Activity // WM Shell running inside. mUserSelectingTask = true; startActivityAsUser(intent, UserHandle.of(ActivityManager.getCurrentUser())); + // close shade if it's open + mStatusBarManager.collapsePanels(); } } catch (RemoteException e) { Log.e(TAG, "Error granting projection permission", e); |