Files
Flexera-Launcher/compatLib/src/main/java/app/lawnchair/compatlib/ActivityManagerCompat.java
T
Zongle WangandMrSluffy bfb4ddfa48 Reimplement QuickSwitch compat libs (#4084)
* Reimplement makeDefaultActivityOptions

* No need to post again

* Cleanups

* Tweak LawnchairQuickstepCompat

* Let compatLibVR depend on compatLibVQ

* Let compatLibVS depend on compatLibVR

* Cleanup compatLibVT

* Let compatLibVU depend on compatLibVT

* Add ActivityManagerCompatVS.getRunningTasks back

* Fix ActivityManagerCompatVS

* Don't return null running tasks

* Annotate getTaskSnapshot

* Fix style

* Retrun list from getRunningTasks

* Tweaks

* Cleanups

* null check

* Add ActivityManagerCompatVS.invalidateHomeTaskSnapshot back

* Move ThumbnailData

* Fixed err

* Cleanup

* Add RequiresApi

* Make RemoteTransitionCompat as an interface

* Annotate ActivityOptionsCompat

* More interfaces

* Replace aidl files with generated sources

* Reformat

* Revert "Replace aidl files with generated sources"

This reverts commit ee450e696d93bce5361224710d225b13c5a3127a.

Revert "Reformat"

This reverts commit 38c8f21ed3cd016e5bf58973483555bd44b3ef18.

* Use launcherNullable

* Fixes more crashes

---------

Co-authored-by: MrSluffy <werdna.jac@gmail.com>
2024-03-10 11:24:14 +08:00

66 lines
1.9 KiB
Java

package app.lawnchair.compatlib;
import android.app.Activity;
import android.app.ActivityManager;
import android.content.Intent;
import android.graphics.Bitmap;
import android.graphics.Rect;
import android.view.IRecentsAnimationController;
import android.window.TaskSnapshot;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.annotation.RequiresApi;
import java.util.List;
public interface ActivityManagerCompat {
int NUM_RECENT_ACTIVITIES_REQUEST = 3;
void invalidateHomeTaskSnapshot(final Activity homeActivity);
void startRecentsActivity(
Intent intent, long eventTime, RecentsAnimationRunnerCompat runnerCompat);
@Nullable
@RequiresApi(31)
default TaskSnapshot getTaskSnapshot(
int taskId, boolean isLowResolution, boolean takeSnapshotIfNeeded) {
return null;
}
default ThumbnailData getTaskThumbnail(int taskId, boolean isLowResolution) {
return null;
}
default ThumbnailData takeScreenshot(
IRecentsAnimationController animationController, int taskId) {
return null;
}
default ThumbnailData convertTaskSnapshotToThumbnailData(Object taskSnapshot) {
return null;
}
@Nullable
ActivityManager.RunningTaskInfo getRunningTask(boolean filterOnlyVisibleRecents);
@NonNull
List<ActivityManager.RunningTaskInfo> getRunningTasks(boolean filterOnlyVisibleRecents);
@NonNull
List<ActivityManager.RecentTaskInfo> getRecentTasks(int numTasks, int userId);
public static class ThumbnailData {
public Bitmap thumbnail;
public int orientation;
public int rotation;
public Rect insets;
public boolean reducedResolution;
public boolean isRealSnapshot;
public boolean isTranslucent;
public int windowingMode;
public int systemUiVisibility;
public float scale;
public long snapshotId;
}
}