[Sony Cross-Device Development Themes and Apps] user26335377:
Hello, and big thanks for your work again!

I don't know, what exactly makes possible to use the new gestures and recent's provider without root, but here the list of changed smali files:

/smali/com/android/launcher3/LauncherInitListener.smali:

Original:

.method public registerAndStartActivity(Landroid/content/Intent;Lcom/android/quickstep/util/RemoteAnimationProvider;Landroid/content/Context;Landroid/os/Handler;J)V
.locals 2
.param p1, "intent" # Landroid/content/Intent;
.param p2, "animProvider" # Lcom/android/quickstep/util/RemoteAnimationProvider;
.param p3, "context" # Landroid/content/Context;
.param p4, "handler" # Landroid/os/Handler;
.param p5, "duration" # J

.line 84
iput-object p2, p0, Lcom/android/launcher3/LauncherInitListener;->mRemoteAnimationProvider:Lcom/android/quickstep/util/RemoteAnimationProvider;

.line 86
invoke-virtual {p0}, Lcom/android/launcher3/LauncherInitListener;->register()V

.line 88
invoke-interface {p2, p4, p5, p6}, Lcom/android/quickstep/util/RemoteAnimationProvider;->toActivityOptions(Landroid/os/Handler;J)Landroid/app/ActivityOptions;

move-result-object v0

invoke-virtual {v0}, Landroid/app/ActivityOptions;->toBundle()Landroid/os/Bundle;

move-result-object v0

.line 89
.local v0, "options":Landroid/os/Bundle;
new-instance v1, Landroid/content/Intent;

invoke-direct {v1, p1}, Landroid/content/Intent;-><init>(Landroid/content/Intent;)V

invoke-virtual {p0, v1}, Lcom/android/launcher3/LauncherInitListener;->addToIntent(Landroid/content/Intent;)Landroid/content/Intent;

move-result-object v1

invoke-virtual {p3, v1, v0}, Landroid/content/Context;->startActivity(Landroid/content/Intent;Landroid/os/Bundle;)V

.line 90
return-void
.end method

Mod:

.method public registerAndStartActivity(Landroid/content/Intent;Lcom/android/quickstep/util/RemoteAnimationProvider;Landroid/content/Context;Landroid/os/Handler;J)V
.locals 2
.param p1, "intent" # Landroid/content/Intent;
.param p2, "animProvider" # Lcom/android/quickstep/util/RemoteAnimationProvider;
.param p3, "context" # Landroid/content/Context;
.param p4, "handler" # Landroid/os/Handler;
.param p5, "duration" # J

new-instance v0, Landroid/os/Bundle;

invoke-direct {v0}, Landroid/os/Bundle;-><init>()V

.line 89
.local v0, "options":Landroid/os/Bundle;
new-instance v1, Landroid/content/Intent;

invoke-direct {v1, p1}, Landroid/content/Intent;-><init>(Landroid/content/Intent;)V

invoke-virtual {p0, v1}, Lcom/android/launcher3/LauncherInitListener;->addToIntent(Landroid/content/Intent;)Landroid/content/Intent;

move-result-object v1

invoke-virtual {p3, v1, v0}, Landroid/content/Context;->startActivity(Landroid/content/Intent;Landroid/os/Bundle;)V

.line 90
return-void
.end method

/smali/com/android/quickstep/login/UserEventDispatcherExtension.smali:

Original:

.method public logStateChangeAction(IIIIII)V
.locals 3
.param p1, "action" # I
.param p2, "dir" # I
.param p3, "srcChildTargetType" # I
.param p4, "srcParentContainerType" # I
.param p5, "dstContainerType" # I
.param p6, "pageIndex" # I

.line 46
new-instance v0, Lcom/android/systemui/shared/system/MetricsLoggerCompat;

invoke-direct {v0}, Lcom/android/systemui/shared/system/MetricsLoggerCompat;-><init>()V

const/16 v1, 0xc

if-ne p5, v1, :cond_0

const/4 v1, 0x1

goto :goto_0

:cond_0
const/4 v1, 0x0

:goto_0
const/16 v2, 0xe0

invoke-virtual {v0, v2, v1}, Lcom/android/systemui/shared/system/MetricsLoggerCompat;->visibility(IZ)V

.line 48
invoke-super/range {p0 .. p6}, Lcom/android/launcher3/logging/UserEventDispatcher;->logStateChangeAction(IIIIII)V

.line 50
return-void
.end method

Mod:

.method public logStateChangeAction(IIIIII)V
.locals 0
.param p1, "action" # I
.param p2, "dir" # I
.param p3, "srcChildTargetType" # I
.param p4, "srcParentContainerType" # I
.param p5, "dstContainerType" # I
.param p6, "pageIndex" # I

.line 51
invoke-super/range {p0 .. p6}, Lcom/android/launcher3/logging/UserEventDispatcher;->logStateChangeAction(IIIIII)V

.line 53
return-void
.end method

/smali/com/android/quickstep/TaskSystemShortcut$SplitScreen.smali:

Original:

.method public static synthetic lambda$getOnClickListener$1(Lcom/android/quickstep/TaskSystemShortcut$SplitScreen;Lcom/android/quickstep/views/TaskView;Lcom/android/quickstep/views/RecentsView;Lcom/android/launcher3/BaseDraggingActivity;ILcom/android/quickstep/views/TaskThumbnailView;Landroid/view/View;)V
.locals 23
.param p1, "taskView" # Lcom/android/quickstep/views/TaskView;
.param p2, "recentsView" # Lcom/android/quickstep/views/RecentsView;
.param p3, "activity" # Lcom/android/launcher3/BaseDraggingActivity;
.param p4, "taskId" # I
.param p5, "thumbnailView" # Lcom/android/quickstep/views/TaskThumbnailView;
.param p6, "v" # Landroid/view/View;

move-object/from16 v7, p0

move-object/from16 v8, p1

move-object/from16 v9, p2

move-object/from16 v10, p3

move-object/from16 v11, p5

.line 130
new-instance v0, Lcom/android/quickstep/TaskSystemShortcut$SplitScreen$1;

invoke-direct {v0, v7, v8, v9}, Lcom/android/quickstep/TaskSystemShortcut$SplitScreen$1;-><init>(Lcom/android/quickstep/TaskSystemShortcut$SplitScreen;Lcom/android/quickstep/views/TaskView;Lcom/android/quickstep/views/RecentsView;)V

move-object v12, v0

.line 143
.local v12, "onLayoutChangeListener":Landroid/view/View$OnLayoutChangeListener;
new-instance v0, Lcom/android/quickstep/TaskSystemShortcut$SplitScreen$2;

invoke-direct {v0, v7, v10, v8, v12}, Lcom/android/quickstep/TaskSystemShortcut$SplitScreen$2;-><init>(Lcom/android/quickstep/TaskSystemShortcut$SplitScreen;Lcom/android/launcher3/BaseDraggingActivity;Lcom/android/quickstep/views/TaskView;Landroid/view/View$OnLayoutChangeListener;)V

move-object v13, v0

.line 155
.local v13, "onDeviceProfileChangeListener":Lcom/android/launcher3/DeviceProfile$OnDeviceProfileChangeListener;
const/4 v0, 0x1

const/16 v1, 0x18f

invoke-static {v10, v0, v1}, Lcom/android/launcher3/AbstractFloatingView;->closeOpenViews(Lcom/android/launcher3/BaseDraggingActivity;ZI)V

.line 158
invoke-static {}, Lcom/android/systemui/shared/system/WindowManagerWrapper;->getInstance()Lcom/android/systemui/shared/system/WindowManagerWrapper;

move-result-object v1

invoke-virtual {v1}, Lcom/android/systemui/shared/system/WindowManagerWrapper;->getNavBarPosition()I

move-result v14

.line 159
.local v14, "navBarPosition":I
const/4 v1, -0x1

if-ne v14, v1, :cond_0

.line 160
return-void

.line 162
:cond_0
const/4 v1, 0x0

if-eq v14, v0, :cond_1

move v2, v0

goto :goto_0

:cond_1
move v2, v1

:goto_0
move v15, v2

.line 163
.local v15, "dockTopOrLeft":Z
invoke-static {}, Lcom/android/systemui/shared/system/ActivityManagerWrapper;->getInstance()Lcom/android/systemui/shared/system/ActivityManagerWrapper;

move-result-object v2

.line 164
invoke-static {v15}, Lcom/android/systemui/shared/system/ActivityOptionsCompat;->makeSplitScreenOptions(Z)Landroid/app/ActivityOptions;

move-result-object v3

.line 163
move/from16 v6, p4

invoke-virtual {v2, v6, v3}, Lcom/android/systemui/shared/system/ActivityManagerWrapper;->startActivityFromRecents(ILandroid/app/ActivityOptions;)Z

move-result v2

if-eqz v2, :cond_2

.line 165
invoke-static/range {p3 .. p3}, Lcom/android/quickstep/RecentsModel;->getInstance(Landroid/content/Context;)Lcom/android/quickstep/RecentsModel;

move-result-object v2

invoke-virtual {v2}, Lcom/android/quickstep/RecentsModel;->getSystemUiProxy()Lcom/android/systemui/shared/recents/ISystemUiProxy;

move-result-object v2

move-object v5, v2

.line 167
.local v5, "sysUiProxy":Lcom/android/systemui/shared/recents/ISystemUiProxy;
:try_start_0
invoke-interface {v5}, Lcom/android/systemui/shared/recents/ISystemUiProxy;->onSplitScreenInvoked()V
:try_end_0
.catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_0} :catch_0

.line 171
nop

.line 172
invoke-virtual/range {p3 .. p3}, Lcom/android/launcher3/BaseDraggingActivity;->getUserEventDispatcher()Lcom/android/launcher3/logging/UserEventDispatcher;

move-result-object v2

const/16 v3, 0x10

invoke-virtual {v2, v1, v3}, Lcom/android/launcher3/logging/UserEventDispatcher;->logActionOnControl(II)V

.line 176
invoke-virtual {v10, v13}, Lcom/android/launcher3/BaseDraggingActivity;->addOnDeviceProfileChangeListener(Lcom/android/launcher3/DeviceProfile$OnDeviceProfileChangeListener;)V

.line 178
new-instance v4, Lcom/android/quickstep/-$$Lambda$TaskSystemShortcut$SplitScreen$bIIgvqKYPaQItPy-_-PUOmKY14k;

.local v4, "animStartedListener":Ljava/lang/Runnable;
invoke-direct {v4, v9, v8}, Lcom/android/quickstep/-$$Lambda$TaskSystemShortcut$SplitScreen$bIIgvqKYPaQItPy-_-PUOmKY14k;-><init>(Lcom/android/quickstep/views/RecentsView;Lcom/android/quickstep/views/TaskView;)V

.line 186
const/4 v2, 0x2

new-array v3, v2, [I

.line 187
.local v3, "position":[I
invoke-virtual {v11, v3}, Lcom/android/quickstep/views/TaskThumbnailView;->getLocationOnScreen([I)V

.line 188
invoke-virtual/range {p5 .. p5}, Lcom/android/quickstep/views/TaskThumbnailView;->getWidth()I

move-result v2

int-to-float v2, v2

invoke-virtual/range {p1 .. p1}, Lcom/android/quickstep/views/TaskView;->getScaleX()F

move-result v16

mul-float v2, v2, v16

float-to-int v2, v2

.line 189
.local v2, "width":I
invoke-virtual/range {p5 .. p5}, Lcom/android/quickstep/views/TaskThumbnailView;->getHeight()I

move-result v0

int-to-float v0, v0

invoke-virtual/range {p1 .. p1}, Lcom/android/quickstep/views/TaskView;->getScaleY()F

move-result v16

mul-float v0, v0, v16

float-to-int v0, v0

.line 190
.local v0, "height":I
move-object/from16 v17, v4

new-instance v4, Landroid/graphics/Rect;

.end local v4 # "animStartedListener":Ljava/lang/Runnable;
.local v17, "animStartedListener":Ljava/lang/Runnable;
move-object/from16 v18, v5

aget v5, v3, v1

.end local v5 # "sysUiProxy":Lcom/android/systemui/shared/recents/ISystemUiProxy;
.local v18, "sysUiProxy":Lcom/android/systemui/shared/recents/ISystemUiProxy;
const/16 v16, 0x1

aget v8, v3, v16

aget v1, v3, v1

add-int/2addr v1, v2

aget v19, v3, v16

move/from16 v20, v2

add-int v2, v19, v0

.end local v2 # "width":I
.local v20, "width":I
invoke-direct {v4, v5, v8, v1, v2}, Landroid/graphics/Rect;-><init>(IIII)V

move-object v8, v4

.line 193
.local v8, "taskBounds":Landroid/graphics/Rect;
nop

.line 194
invoke-virtual {v8}, Landroid/graphics/Rect;->width()I

move-result v1

invoke-virtual {v8}, Landroid/graphics/Rect;->height()I

move-result v2

const/high16 v4, 0x3f800000 # 1.0f

const/high16 v5, -0x1000000

.line 193
invoke-static {v1, v2, v11, v4, v5}, Lcom/android/systemui/shared/recents/view/RecentsTransition;->drawViewIntoHardwareBitmap(IILandroid/view/View;FI)Landroid/graphics/Bitmap;

move-result-object v16

.line 196
.local v16, "thumbnail":Landroid/graphics/Bitmap;
new-instance v19, Lcom/android/quickstep/TaskSystemShortcut$SplitScreen$3;

iget-object v4, v7, Lcom/android/quickstep/TaskSystemShortcut$SplitScreen;->mHandler:Landroid/os/Handler;

move-object/from16 v1, v19

move-object v2, v7

move-object/from16 v21, v3

move-object v3, v4

.end local v3 # "position":[I
.local v21, "position":[I
move-object/from16 v5, v17

move v4, v6

.end local v17 # "animStartedListener":Ljava/lang/Runnable;
.local v5, "animStartedListener":Ljava/lang/Runnable;
move/from16 v22, v0

move-object v0, v5

move-object/from16 v17, v18

move-object/from16 v5, v16

.end local v5 # "animStartedListener":Ljava/lang/Runnable;
.end local v18 # "sysUiProxy":Lcom/android/systemui/shared/recents/ISystemUiProxy;
.local v0, "animStartedListener":Ljava/lang/Runnable;
.local v17, "sysUiProxy":Lcom/android/systemui/shared/recents/ISystemUiProxy;
.local v22, "height":I
move-object v6, v8

invoke-direct/range {v1 .. v6}, Lcom/android/quickstep/TaskSystemShortcut$SplitScreen$3;-><init>(Lcom/android/quickstep/TaskSystemShortcut$SplitScreen;Landroid/os/Handler;ILandroid/graphics/Bitmap;Landroid/graphics/Rect;)V

.line 204
.local v1, "future":Lcom/android/systemui/shared/recents/view/AppTransitionAnimationSpecsFuture;
invoke-static {}, Lcom/android/systemui/shared/system/WindowManagerWrapper;->getInstance()Lcom/android/systemui/shared/system/WindowManagerWrapper;

move-result-object v2

iget-object v3, v7, Lcom/android/quickstep/TaskSystemShortcut$SplitScreen;->mHandler:Landroid/os/Handler;

const/4 v4, 0x1

invoke-virtual {v2, v1, v0, v3, v4}, Lcom/android/systemui/shared/system/WindowManagerWrapper;->overridePendingAppTransitionMultiThumbFuture(Lcom/android/systemui/shared/recents/view/AppTransitionAnimationSpecsFuture;Ljava/lang/Runnable;Landroid/os/Handler;Z)V

.end local v0 # "animStartedListener":Ljava/lang/Runnable;
.end local v1 # "future":Lcom/android/systemui/shared/recents/view/AppTransitionAnimationSpecsFuture;
.end local v8 # "taskBounds":Landroid/graphics/Rect;
.end local v16 # "thumbnail":Landroid/graphics/Bitmap;
.end local v17 # "sysUiProxy":Lcom/android/systemui/shared/recents/ISystemUiProxy;
.end local v20 # "width":I
.end local v21 # "position":[I
.end local v22 # "height":I
goto :goto_1

.line 168
.local v5, "sysUiProxy":Lcom/android/systemui/shared/recents/ISystemUiProxy;
:catch_0
move-exception v0

move-object/from16 v17, v5

.end local v5 # "sysUiProxy":Lcom/android/systemui/shared/recents/ISystemUiProxy;
.restart local v17 # "sysUiProxy":Lcom/android/systemui/shared/recents/ISystemUiProxy;
move-object v1, v0

.line 169
.local v0, "e":Landroid/os/RemoteException;
const-string v1, "TaskSystemShortcut"

const-string v2, "Failed to notify SysUI of split screen: "

invoke-static {v1, v2, v0}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I

.line 170
return-void

.line 207
.end local v0 # "e":Landroid/os/RemoteException;
.end local v17 # "sysUiProxy":Lcom/android/systemui/shared/recents/ISystemUiProxy;
:cond_2
:goto_1
return-void
.end method

Mod:

.method public static synthetic lambda$getOnClickListener$1(Lcom/android/quickstep/TaskSystemShortcut$SplitScreen;Lcom/android/quickstep/views/TaskView;Lcom/android/quickstep/views/RecentsView;Lcom/android/launcher3/BaseDraggingActivity;ILcom/android/quickstep/views/TaskThumbnailView;Landroid/view/View;)V
.locals 23
.param p1, "taskView" # Lcom/android/quickstep/views/TaskView;
.param p2, "recentsView" # Lcom/android/quickstep/views/RecentsView;
.param p3, "activity" # Lcom/android/launcher3/BaseDraggingActivity;
.param p4, "taskId" # I
.param p5, "thumbnailView" # Lcom/android/quickstep/views/TaskThumbnailView;
.param p6, "v" # Landroid/view/View;

move-object/from16 v7, p0

move-object/from16 v8, p1

move-object/from16 v9, p2

move-object/from16 v10, p3

move-object/from16 v11, p5

.line 130
new-instance v0, Lcom/android/quickstep/TaskSystemShortcut$SplitScreen$1;

invoke-direct {v0, v7, v8, v9}, Lcom/android/quickstep/TaskSystemShortcut$SplitScreen$1;-><init>(Lcom/android/quickstep/TaskSystemShortcut$SplitScreen;Lcom/android/quickstep/views/TaskView;Lcom/android/quickstep/views/RecentsView;)V

move-object v12, v0

.line 143
.local v12, "onLayoutChangeListener":Landroid/view/View$OnLayoutChangeListener;
new-instance v0, Lcom/android/quickstep/TaskSystemShortcut$SplitScreen$2;

invoke-direct {v0, v7, v10, v8, v12}, Lcom/android/quickstep/TaskSystemShortcut$SplitScreen$2;-><init>(Lcom/android/quickstep/TaskSystemShortcut$SplitScreen;Lcom/android/launcher3/BaseDraggingActivity;Lcom/android/quickstep/views/TaskView;Landroid/view/View$OnLayoutChangeListener;)V

move-object v13, v0

.line 155
.local v13, "onDeviceProfileChangeListener":Lcom/android/launcher3/DeviceProfile$OnDeviceProfileChangeListener;
const/4 v0, 0x1

const/16 v1, 0x18f

invoke-static {v10, v0, v1}, Lcom/android/launcher3/AbstractFloatingView;->closeOpenViews(Lcom/android/launcher3/BaseDraggingActivity;ZI)V

.line 158
invoke-static {}, Lcom/android/systemui/shared/system/WindowManagerWrapper;->getInstance()Lcom/android/systemui/shared/system/WindowManagerWrapper;

move-result-object v1

invoke-virtual {v1}, Lcom/android/systemui/shared/system/WindowManagerWrapper;->getNavBarPosition()I

move-result v14

.line 159
.local v14, "navBarPosition":I
const/4 v1, -0x1

if-ne v14, v1, :cond_0

.line 160

.line 162
:cond_0
const/4 v1, 0x0

if-eq v14, v0, :cond_1

move v2, v0

goto :goto_0

:cond_1
move v2, v1

:goto_0
move v15, v2

.line 163
.local v15, "dockTopOrLeft":Z
invoke-static {}, Lcom/android/systemui/shared/system/ActivityManagerWrapper;->getInstance()Lcom/android/systemui/shared/system/ActivityManagerWrapper;

move-result-object v2

.line 164
invoke-static {v15}, Lcom/android/systemui/shared/system/ActivityOptionsCompat;->makeSplitScreenOptions(Z)Landroid/app/ActivityOptions;

move-result-object v3

.line 163
move/from16 v6, p4

invoke-virtual {v2, v6, v3}, Lcom/android/systemui/shared/system/ActivityManagerWrapper;->startActivityFromRecents(ILandroid/app/ActivityOptions;)Z

move-result v2

if-eqz v2, :cond_2

.line 165
invoke-static/range {p3 .. p3}, Lcom/android/quickstep/RecentsModel;->getInstance(Landroid/content/Context;)Lcom/android/quickstep/RecentsModel;

move-result-object v2

invoke-virtual {v2}, Lcom/android/quickstep/RecentsModel;->getSystemUiProxy()Lcom/android/systemui/shared/recents/ISystemUiProxy;

move-result-object v2

move-object v5, v2

.line 167
.local v5, "sysUiProxy":Lcom/android/systemui/shared/recents/ISystemUiProxy;
:try_start_0
invoke-interface {v5}, Lcom/android/systemui/shared/recents/ISystemUiProxy;->onSplitScreenInvoked()V
:try_end_0
.catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_0} :catch_0

.line 171
nop

.line 172
invoke-virtual/range {p3 .. p3}, Lcom/android/launcher3/BaseDraggingActivity;->getUserEventDispatcher()Lcom/android/launcher3/logging/UserEventDispatcher;

move-result-object v2

const/16 v3, 0x10

invoke-virtual {v2, v1, v3}, Lcom/android/launcher3/logging/UserEventDispatcher;->logActionOnControl(II)V

.line 176
invoke-virtual {v10, v13}, Lcom/android/launcher3/BaseDraggingActivity;->addOnDeviceProfileChangeListener(Lcom/android/launcher3/DeviceProfile$OnDeviceProfileChangeListener;)V

.line 178
new-instance v4, Lcom/android/quickstep/-$$Lambda$TaskSystemShortcut$SplitScreen$bIIgvqKYPaQItPy-_-PUOmKY14k;

.local v4, "animStartedListener":Ljava/lang/Runnable;
invoke-direct {v4, v9, v8}, Lcom/android/quickstep/-$$Lambda$TaskSystemShortcut$SplitScreen$bIIgvqKYPaQItPy-_-PUOmKY14k;-><init>(Lcom/android/quickstep/views/RecentsView;Lcom/android/quickstep/views/TaskView;)V

.line 186
const/4 v2, 0x2

new-array v3, v2, [I

.line 187
.local v3, "position":[I
invoke-virtual {v11, v3}, Lcom/android/quickstep/views/TaskThumbnailView;->getLocationOnScreen([I)V

.line 188
invoke-virtual/range {p5 .. p5}, Lcom/android/quickstep/views/TaskThumbnailView;->getWidth()I

move-result v2

int-to-float v2, v2

invoke-virtual/range {p1 .. p1}, Lcom/android/quickstep/views/TaskView;->getScaleX()F

move-result v16

mul-float v2, v2, v16

float-to-int v2, v2

.line 189
.local v2, "width":I
invoke-virtual/range {p5 .. p5}, Lcom/android/quickstep/views/TaskThumbnailView;->getHeight()I

move-result v0

int-to-float v0, v0

invoke-virtual/range {p1 .. p1}, Lcom/android/quickstep/views/TaskView;->getScaleY()F

move-result v16

mul-float v0, v0, v16

float-to-int v0, v0

.line 190
.local v0, "height":I
move-object/from16 v17, v4

new-instance v4, Landroid/graphics/Rect;

.end local v4 # "animStartedListener":Ljava/lang/Runnable;
.local v17, "animStartedListener":Ljava/lang/Runnable;
move-object/from16 v18, v5

aget v5, v3, v1

.end local v5 # "sysUiProxy":Lcom/android/systemui/shared/recents/ISystemUiProxy;
.local v18, "sysUiProxy":Lcom/android/systemui/shared/recents/ISystemUiProxy;
const/16 v16, 0x1

aget v8, v3, v16

aget v1, v3, v1

add-int/2addr v1, v2

aget v19, v3, v16

move/from16 v20, v2

add-int v2, v19, v0

.end local v2 # "width":I
.local v20, "width":I
invoke-direct {v4, v5, v8, v1, v2}, Landroid/graphics/Rect;-><init>(IIII)V

move-object v8, v4

.line 193
.local v8, "taskBounds":Landroid/graphics/Rect;
nop

.line 194
invoke-virtual {v8}, Landroid/graphics/Rect;->width()I

move-result v1

invoke-virtual {v8}, Landroid/graphics/Rect;->height()I

move-result v2

const/high16 v4, 0x3f800000 # 1.0f

const/high16 v5, -0x1000000

.line 193
invoke-static {v1, v2, v11, v4, v5}, Lcom/android/systemui/shared/recents/view/RecentsTransition;->drawViewIntoHardwareBitmap(IILandroid/view/View;FI)Landroid/graphics/Bitmap;

move-result-object v16

.line 196
.local v16, "thumbnail":Landroid/graphics/Bitmap;
new-instance v19, Lcom/android/quickstep/TaskSystemShortcut$SplitScreen$3;

iget-object v4, v7, Lcom/android/quickstep/TaskSystemShortcut$SplitScreen;->mHandler:Landroid/os/Handler;

move-object/from16 v1, v19

move-object v2, v7

move-object/from16 v21, v3

move-object v3, v4

.end local v3 # "position":[I
.local v21, "position":[I
move-object/from16 v5, v17

move v4, v6

.end local v17 # "animStartedListener":Ljava/lang/Runnable;
.local v5, "animStartedListener":Ljava/lang/Runnable;
move/from16 v22, v0

move-object v0, v5

move-object/from16 v17, v18

move-object/from16 v5, v16

.end local v5 # "animStartedListener":Ljava/lang/Runnable;
.end local v18 # "sysUiProxy":Lcom/android/systemui/shared/recents/ISystemUiProxy;
.local v0, "animStartedListener":Ljava/lang/Runnable;
.local v17, "sysUiProxy":Lcom/android/systemui/shared/recents/ISystemUiProxy;
.local v22, "height":I
move-object v6, v8

invoke-direct/range {v1 .. v6}, Lcom/android/quickstep/TaskSystemShortcut$SplitScreen$3;-><init>(Lcom/android/quickstep/TaskSystemShortcut$SplitScreen;Landroid/os/Handler;ILandroid/graphics/Bitmap;Landroid/graphics/Rect;)V

.line 204
.local v1, "future":Lcom/android/systemui/shared/recents/view/AppTransitionAnimationSpecsFuture;
invoke-static {}, Lcom/android/systemui/shared/system/WindowManagerWrapper;->getInstance()Lcom/android/systemui/shared/system/WindowManagerWrapper;

move-result-object v2

iget-object v3, v7, Lcom/android/quickstep/TaskSystemShortcut$SplitScreen;->mHandler:Landroid/os/Handler;

const/4 v4, 0x1

invoke-virtual {v2, v1, v0, v3, v4}, Lcom/android/systemui/shared/system/WindowManagerWrapper;->overridePendingAppTransitionMultiThumbFuture(Lcom/android/systemui/shared/recents/view/AppTransitionAnimationSpecsFuture;Ljava/lang/Runnable;Landroid/os/Handler;Z)V

.end local v0 # "animStartedListener":Ljava/lang/Runnable;
.end local v1 # "future":Lcom/android/systemui/shared/recents/view/AppTransitionAnimationSpecsFuture;
.end local v8 # "taskBounds":Landroid/graphics/Rect;
.end local v16 # "thumbnail":Landroid/graphics/Bitmap;
.end local v17 # "sysUiProxy":Lcom/android/systemui/shared/recents/ISystemUiProxy;
.end local v20 # "width":I
.end local v21 # "position":[I
.end local v22 # "height":I
goto :goto_1

.line 168
.local v5, "sysUiProxy":Lcom/android/systemui/shared/recents/ISystemUiProxy;
:catch_0
move-exception v0

move-object/from16 v17, v5

.end local v5 # "sysUiProxy":Lcom/android/systemui/shared/recents/ISystemUiProxy;
.restart local v17 # "sysUiProxy":Lcom/android/systemui/shared/recents/ISystemUiProxy;
move-object v1, v0

.line 169
.local v0, "e":Landroid/os/RemoteException;
const-string v1, "TaskSystemShortcut"

const-string v2, "Failed to notify SysUI of split screen: "

invoke-static {v1, v2, v0}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I

.line 170
return-void

.line 207
.end local v0 # "e":Landroid/os/RemoteException;
.end local v17 # "sysUiProxy":Lcom/android/systemui/shared/recents/ISystemUiProxy;
:cond_2
:goto_1
return-void
.end method