diff options
| author | 2022-09-29 00:25:36 +0000 | |
|---|---|---|
| committer | 2022-09-29 20:36:26 +0000 | |
| commit | 2da6ee0d2784a7b0a8c7b40c024c654de29aaef2 (patch) | |
| tree | f5392c5490edfba9d1332aada575f5f76e0db9d3 | |
| parent | 5c4704b781a1236588fcf719d9918cf85b29ff7a (diff) | |
Add config for registering shell task organizer
- This should be temporary until we resolve b/238217847 to not
initialize base WM components unless requested to do so
Bug: 238217847
Test: Manual
Change-Id: I205a8e457f12924f797a5cd1a34e499e7efe5a04
| -rw-r--r-- | libs/WindowManager/Shell/res/values/config.xml | 4 | ||||
| -rw-r--r-- | libs/WindowManager/Shell/src/com/android/wm/shell/dagger/WMShellBaseModule.java | 6 |
2 files changed, 10 insertions, 0 deletions
diff --git a/libs/WindowManager/Shell/res/values/config.xml b/libs/WindowManager/Shell/res/values/config.xml index f03b7f66cdc8..30c3d50ed8ad 100644 --- a/libs/WindowManager/Shell/res/values/config.xml +++ b/libs/WindowManager/Shell/res/values/config.xml @@ -19,6 +19,10 @@ by the resources of the app using the Shell library. --> <bool name="config_enableShellMainThread">false</bool> + <!-- Determines whether to register the shell task organizer on init. + TODO(b/238217847): This config is temporary until we refactor the base WMComponent. --> + <bool name="config_registerShellTaskOrganizerOnInit">true</bool> + <!-- Animation duration for PIP when entering. --> <integer name="config_pipEnterAnimationDuration">425</integer> diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/dagger/WMShellBaseModule.java b/libs/WindowManager/Shell/src/com/android/wm/shell/dagger/WMShellBaseModule.java index f4dda4cc461a..ed7082332504 100644 --- a/libs/WindowManager/Shell/src/com/android/wm/shell/dagger/WMShellBaseModule.java +++ b/libs/WindowManager/Shell/src/com/android/wm/shell/dagger/WMShellBaseModule.java @@ -29,6 +29,7 @@ import android.view.WindowManager; import com.android.internal.logging.UiEventLogger; import com.android.launcher3.icons.IconProvider; import com.android.wm.shell.ProtoLogController; +import com.android.wm.shell.R; import com.android.wm.shell.RootDisplayAreaOrganizer; import com.android.wm.shell.RootTaskDisplayAreaOrganizer; import com.android.wm.shell.ShellTaskOrganizer; @@ -173,6 +174,7 @@ public abstract class WMShellBaseModule { @WMSingleton @Provides static ShellTaskOrganizer provideShellTaskOrganizer( + Context context, ShellInit shellInit, ShellCommandHandler shellCommandHandler, CompatUIController compatUI, @@ -180,6 +182,10 @@ public abstract class WMShellBaseModule { Optional<RecentTasksController> recentTasksOptional, @ShellMainThread ShellExecutor mainExecutor ) { + if (!context.getResources().getBoolean(R.bool.config_registerShellTaskOrganizerOnInit)) { + // TODO(b/238217847): Force override shell init if registration is disabled + shellInit = new ShellInit(mainExecutor); + } return new ShellTaskOrganizer(shellInit, shellCommandHandler, compatUI, unfoldAnimationController, recentTasksOptional, mainExecutor); } |