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

Commit adaa7f2c 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: I05b4b6acd5bc841ee27e0fc9ce0261535c6e6ce6
parents 570cb74d 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();