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

Commit bb9a0c58 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:...

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

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

Change-Id: Ibfe63e311260fcc507b8789cd515e49cc9fda271
parents e890c101 31f7dcd7
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);