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

Commit 2907a8fa authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Automerger Merge Worker
Browse files

Merge "Show toast if app doesn't support split" into tm-qpr-dev am: b35a7810 am: 640e801d

parents 0f5526c3 640e801d
Loading
Loading
Loading
Loading
+9 −4
Original line number Original line Diff line number Diff line
@@ -207,6 +207,7 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler,
    private int mTopStageAfterFoldDismiss = STAGE_TYPE_UNDEFINED;
    private int mTopStageAfterFoldDismiss = STAGE_TYPE_UNDEFINED;


    private DefaultMixedHandler mMixedHandler;
    private DefaultMixedHandler mMixedHandler;
    private final Toast mSplitUnsupportedToast;


    private final SplitWindowManager.ParentContainerCallbacks mParentContainerCallbacks =
    private final SplitWindowManager.ParentContainerCallbacks mParentContainerCallbacks =
            new SplitWindowManager.ParentContainerCallbacks() {
            new SplitWindowManager.ParentContainerCallbacks() {
@@ -300,6 +301,8 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler,
        mDisplayLayout = new DisplayLayout(displayController.getDisplayLayout(displayId));
        mDisplayLayout = new DisplayLayout(displayController.getDisplayLayout(displayId));
        transitions.addHandler(this);
        transitions.addHandler(this);
        mTaskOrganizer.addFocusListener(this);
        mTaskOrganizer.addFocusListener(this);
        mSplitUnsupportedToast = Toast.makeText(mContext,
                R.string.dock_non_resizeble_failed_to_dock_text, Toast.LENGTH_SHORT);
    }
    }


    @VisibleForTesting
    @VisibleForTesting
@@ -329,6 +332,8 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler,
        mDisplayController.addDisplayWindowListener(this);
        mDisplayController.addDisplayWindowListener(this);
        mDisplayLayout = new DisplayLayout();
        mDisplayLayout = new DisplayLayout();
        transitions.addHandler(this);
        transitions.addHandler(this);
        mSplitUnsupportedToast = Toast.makeText(mContext,
                R.string.dock_non_resizeble_failed_to_dock_text, Toast.LENGTH_SHORT);
    }
    }


    public void setMixedHandler(DefaultMixedHandler mixedHandler) {
    public void setMixedHandler(DefaultMixedHandler mixedHandler) {
@@ -470,6 +475,7 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler,
                        mMainExecutor.execute(() ->
                        mMainExecutor.execute(() ->
                                exitSplitScreen(mMainStage.getChildCount() == 0
                                exitSplitScreen(mMainStage.getChildCount() == 0
                                        ? mSideStage : mMainStage, EXIT_REASON_UNKNOWN));
                                        ? mSideStage : mMainStage, EXIT_REASON_UNKNOWN));
                        mSplitUnsupportedToast.show();
                    } else {
                    } else {
                        // Switch the split position if launching as MULTIPLE_TASK failed.
                        // Switch the split position if launching as MULTIPLE_TASK failed.
                        if ((fillInIntent.getFlags() & FLAG_ACTIVITY_MULTIPLE_TASK) != 0) {
                        if ((fillInIntent.getFlags() & FLAG_ACTIVITY_MULTIPLE_TASK) != 0) {
@@ -736,6 +742,7 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler,
            mMainExecutor.execute(() ->
            mMainExecutor.execute(() ->
                    exitSplitScreen(mMainStage.getChildCount() == 0
                    exitSplitScreen(mMainStage.getChildCount() == 0
                            ? mSideStage : mMainStage, EXIT_REASON_UNKNOWN));
                            ? mSideStage : mMainStage, EXIT_REASON_UNKNOWN));
            mSplitUnsupportedToast.show();
        } else {
        } else {
            mSyncQueue.queue(evictWct);
            mSyncQueue.queue(evictWct);
        }
        }
@@ -2287,13 +2294,11 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler,
        @Override
        @Override
        public void onNoLongerSupportMultiWindow() {
        public void onNoLongerSupportMultiWindow() {
            if (mMainStage.isActive()) {
            if (mMainStage.isActive()) {
                final Toast splitUnsupportedToast = Toast.makeText(mContext,
                        R.string.dock_non_resizeble_failed_to_dock_text, Toast.LENGTH_SHORT);
                final boolean isMainStage = mMainStageListener == this;
                final boolean isMainStage = mMainStageListener == this;
                if (!ENABLE_SHELL_TRANSITIONS) {
                if (!ENABLE_SHELL_TRANSITIONS) {
                    StageCoordinator.this.exitSplitScreen(isMainStage ? mMainStage : mSideStage,
                    StageCoordinator.this.exitSplitScreen(isMainStage ? mMainStage : mSideStage,
                            EXIT_REASON_APP_DOES_NOT_SUPPORT_MULTIWINDOW);
                            EXIT_REASON_APP_DOES_NOT_SUPPORT_MULTIWINDOW);
                    splitUnsupportedToast.show();
                    mSplitUnsupportedToast.show();
                    return;
                    return;
                }
                }


@@ -2302,7 +2307,7 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler,
                prepareExitSplitScreen(stageType, wct);
                prepareExitSplitScreen(stageType, wct);
                mSplitTransitions.startDismissTransition(wct,StageCoordinator.this, stageType,
                mSplitTransitions.startDismissTransition(wct,StageCoordinator.this, stageType,
                        EXIT_REASON_APP_DOES_NOT_SUPPORT_MULTIWINDOW);
                        EXIT_REASON_APP_DOES_NOT_SUPPORT_MULTIWINDOW);
                splitUnsupportedToast.show();
                mSplitUnsupportedToast.show();
            }
            }
        }
        }