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

Commit 31f7dcd7 authored by Jerry Chang's avatar Jerry Chang Committed by Automerger Merge Worker
Browse files

Merge "Support to transfer freeform task into split screen" into sc-v2-dev am: 7d7857b2

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

Change-Id: Ibb058b437f1fcea9ba7f84229c21b1e2324f2431
parents 86cab34c 7d7857b2
Loading
Loading
Loading
Loading
+9 −0
Original line number Diff line number Diff line
@@ -16,6 +16,7 @@

package com.android.wm.shell.freeform;

import static android.app.WindowConfiguration.WINDOWING_MODE_UNDEFINED;
import static android.content.pm.PackageManager.FEATURE_FREEFORM_WINDOW_MANAGEMENT;
import static android.provider.Settings.Global.DEVELOPMENT_ENABLE_FREEFORM_WINDOWS_SUPPORT;

@@ -27,6 +28,7 @@ import android.provider.Settings;
import android.util.Slog;
import android.util.SparseArray;
import android.view.SurfaceControl;
import android.window.WindowContainerTransaction;

import com.android.internal.protolog.common.ProtoLog;
import com.android.wm.shell.ShellTaskOrganizer;
@@ -83,6 +85,13 @@ public class FreeformTaskListener implements ShellTaskOrganizer.TaskListener {
            Slog.e(TAG, "Task already vanished: #" + taskInfo.taskId);
            return;
        }

        // Clears windowing mode and window bounds to let the task inherits from its new parent.
        final WindowContainerTransaction wct = new WindowContainerTransaction();
        wct.setBounds(taskInfo.token, null)
                .setWindowingMode(taskInfo.token, WINDOWING_MODE_UNDEFINED);
        mSyncQueue.queue(wct);

        ProtoLog.v(ShellProtoLogGroup.WM_SHELL_TASK_ORG, "Freeform Task Vanished: #%d",
                taskInfo.taskId);
        mTasks.remove(taskInfo.taskId);