diff options
3 files changed, 8 insertions, 1 deletions
diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/tiling/DesktopTilingWindowDecoration.kt b/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/tiling/DesktopTilingWindowDecoration.kt index 8f089dcf62d8..2303ec9da685 100644 --- a/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/tiling/DesktopTilingWindowDecoration.kt +++ b/libs/WindowManager/Shell/src/com/android/wm/shell/windowdecor/tiling/DesktopTilingWindowDecoration.kt @@ -23,6 +23,7 @@ import android.content.res.Resources import android.graphics.Bitmap import android.graphics.Rect import android.os.IBinder +import android.os.UserHandle import android.util.Slog import android.view.SurfaceControl import android.view.SurfaceControl.Transaction @@ -361,6 +362,8 @@ class DesktopTilingWindowDecoration( private lateinit var resizeVeilBitmap: Bitmap private lateinit var resizeVeil: ResizeVeil private val displayContext = displayController.getDisplayContext(taskInfo.displayId) + private val userContext = + context.createContextAsUser(UserHandle.of(taskInfo.userId), /* flags= */ 0) fun initIfNeeded() { if (!isInitialised) { @@ -379,7 +382,7 @@ class DesktopTilingWindowDecoration( displayContext?.let { createIconFactory(displayContext, R.dimen.desktop_mode_resize_veil_icon_size) } ?: return - val pm = context.getApplicationContext().getPackageManager() + val pm = userContext.getPackageManager() val activityInfo = pm.getActivityInfo(baseActivity, 0 /* flags */) val provider = IconProvider(displayContext) val appIconDrawable = provider.getIcon(activityInfo) diff --git a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/windowdecor/tiling/DesktopTilingDecorViewModelTest.kt b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/windowdecor/tiling/DesktopTilingDecorViewModelTest.kt index 0ccd424c2b30..52e93bb87ea3 100644 --- a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/windowdecor/tiling/DesktopTilingDecorViewModelTest.kt +++ b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/windowdecor/tiling/DesktopTilingDecorViewModelTest.kt @@ -39,6 +39,7 @@ import org.mockito.kotlin.any import org.mockito.kotlin.mock import org.mockito.kotlin.times import org.mockito.kotlin.verify +import org.mockito.kotlin.whenever @SmallTest @RunWith(AndroidTestingRunner::class) @@ -73,6 +74,7 @@ class DesktopTilingDecorViewModelTest : ShellTestCase() { returnToDragStartAnimatorMock, desktopRepository, ) + whenever(contextMock.createContextAsUser(any(), any())).thenReturn(contextMock) } @Test diff --git a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/windowdecor/tiling/DesktopTilingWindowDecorationTest.kt b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/windowdecor/tiling/DesktopTilingWindowDecorationTest.kt index 0b04a211f717..5b0cdc3ed223 100644 --- a/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/windowdecor/tiling/DesktopTilingWindowDecorationTest.kt +++ b/libs/WindowManager/Shell/tests/unittest/src/com/android/wm/shell/windowdecor/tiling/DesktopTilingWindowDecorationTest.kt @@ -112,6 +112,7 @@ class DesktopTilingWindowDecorationTest : ShellTestCase() { returnToDragStartAnimator, desktopRepository, ) + whenever(context.createContextAsUser(any(), any())).thenReturn(context) } @Test @@ -479,6 +480,7 @@ class DesktopTilingWindowDecorationTest : ShellTestCase() { assertThat(tilingDecoration.rightTaskResizingHelper).isNull() verify(desktopWindowDecoration, times(2)).removeDragResizeListener(any()) verify(tiledTaskHelper, times(2)).dispose() + verify(context, never()).getApplicationContext() } private fun initTiledTaskHelperMock(taskInfo: ActivityManager.RunningTaskInfo) { |