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

Commit 014a5435 authored by Tom Natan's avatar Tom Natan Committed by Automerger Merge Worker
Browse files

Merge "Fix issue where KidsModeTaskOrganizer registers itself as...

Merge "Fix issue where KidsModeTaskOrganizer registers itself as CompatUICallback" into tm-dev am: ad03eb31

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

Change-Id: I58891f8d74a6d49a72190624ad43dcd0a1950f17
parents 3c48c4ee ad03eb31
Loading
Loading
Loading
Loading
+6 −2
Original line number Diff line number Diff line
@@ -165,8 +165,12 @@ public class ShellTaskOrganizer extends TaskOrganizer implements
    private StartingWindowController mStartingWindow;

    /**
     * In charge of showing compat UI. Can be {@code null} if device doesn't support size
     * compat.
     * In charge of showing compat UI. Can be {@code null} if the device doesn't support size
     * compat or if this isn't the main {@link ShellTaskOrganizer}.
     *
     * <p>NOTE: only the main {@link ShellTaskOrganizer} should have a {@link CompatUIController},
     * and register itself as a {@link CompatUIController.CompatUICallback}. Subclasses should be
     * initialized with a {@code null} {@link CompatUIController}.
     */
    @Nullable
    private final CompatUIController mCompatUI;
+2 −4
Original line number Diff line number Diff line
@@ -190,15 +190,13 @@ public abstract class WMShellBaseModule {
            @ShellMainThread ShellExecutor mainExecutor,
            @ShellMainThread Handler mainHandler,
            Context context,
            CompatUIController compatUI,
            SyncTransactionQueue syncTransactionQueue,
            DisplayController displayController,
            DisplayInsetsController displayInsetsController,
            Optional<RecentTasksController> recentTasksOptional
    ) {
        return new KidsModeTaskOrganizer(mainExecutor, mainHandler, context, compatUI,
                syncTransactionQueue, displayController, displayInsetsController,
                recentTasksOptional);
        return new KidsModeTaskOrganizer(mainExecutor, mainHandler, context, syncTransactionQueue,
                displayController, displayInsetsController, recentTasksOptional);
    }

    @WMSingleton
+2 −6
Original line number Diff line number Diff line
@@ -38,7 +38,6 @@ import android.window.WindowContainerToken;
import android.window.WindowContainerTransaction;

import androidx.annotation.NonNull;
import androidx.annotation.Nullable;

import com.android.internal.annotations.VisibleForTesting;
import com.android.internal.policy.ForceShowNavigationBarSettingsObserver;
@@ -48,7 +47,6 @@ import com.android.wm.shell.common.DisplayInsetsController;
import com.android.wm.shell.common.DisplayLayout;
import com.android.wm.shell.common.ShellExecutor;
import com.android.wm.shell.common.SyncTransactionQueue;
import com.android.wm.shell.compatui.CompatUIController;
import com.android.wm.shell.recents.RecentTasksController;
import com.android.wm.shell.startingsurface.StartingWindowController;

@@ -136,13 +134,12 @@ public class KidsModeTaskOrganizer extends ShellTaskOrganizer {
            ShellExecutor mainExecutor,
            Handler mainHandler,
            Context context,
            @Nullable CompatUIController compatUI,
            SyncTransactionQueue syncTransactionQueue,
            DisplayController displayController,
            DisplayInsetsController displayInsetsController,
            Optional<RecentTasksController> recentTasks,
            ForceShowNavigationBarSettingsObserver forceShowNavigationBarSettingsObserver) {
        super(taskOrganizerController, mainExecutor, context, compatUI, recentTasks);
        super(taskOrganizerController, mainExecutor, context, /* compatUI= */ null, recentTasks);
        mContext = context;
        mMainHandler = mainHandler;
        mSyncQueue = syncTransactionQueue;
@@ -155,12 +152,11 @@ public class KidsModeTaskOrganizer extends ShellTaskOrganizer {
            ShellExecutor mainExecutor,
            Handler mainHandler,
            Context context,
            @Nullable CompatUIController compatUI,
            SyncTransactionQueue syncTransactionQueue,
            DisplayController displayController,
            DisplayInsetsController displayInsetsController,
            Optional<RecentTasksController> recentTasks) {
        super(mainExecutor, context, compatUI, recentTasks);
        super(mainExecutor, context, /* compatUI= */ null, recentTasks);
        mContext = context;
        mMainHandler = mainHandler;
        mSyncQueue = syncTransactionQueue;
+4 −4
Original line number Diff line number Diff line
@@ -49,7 +49,6 @@ import com.android.wm.shell.common.DisplayController;
import com.android.wm.shell.common.DisplayInsetsController;
import com.android.wm.shell.common.ShellExecutor;
import com.android.wm.shell.common.SyncTransactionQueue;
import com.android.wm.shell.compatui.CompatUIController;
import com.android.wm.shell.startingsurface.StartingWindowController;

import org.junit.Before;
@@ -67,7 +66,6 @@ public class KidsModeTaskOrganizerTest {
    @Mock private ITaskOrganizerController mTaskOrganizerController;
    @Mock private Context mContext;
    @Mock private Handler mHandler;
    @Mock private CompatUIController mCompatUI;
    @Mock private SyncTransactionQueue mSyncTransactionQueue;
    @Mock private ShellExecutor mTestExecutor;
    @Mock private DisplayController mDisplayController;
@@ -86,9 +84,11 @@ public class KidsModeTaskOrganizerTest {
        try {
            doReturn(ParceledListSlice.<TaskAppearedInfo>emptyList())
                    .when(mTaskOrganizerController).registerTaskOrganizer(any());
        } catch (RemoteException e) { }
        } catch (RemoteException e) {
        }
        // NOTE: KidsModeTaskOrganizer should have a null CompatUIController.
        mOrganizer = spy(new KidsModeTaskOrganizer(mTaskOrganizerController, mTestExecutor,
                mHandler, mContext, mCompatUI, mSyncTransactionQueue, mDisplayController,
                mHandler, mContext, mSyncTransactionQueue, mDisplayController,
                mDisplayInsetsController, Optional.empty(), mObserver));
        mOrganizer.initialize(mStartingWindowController);
        doReturn(mTransaction).when(mOrganizer).getWindowContainerTransaction();