130 lines
4.9 KiB
Java
130 lines
4.9 KiB
Java
package androidx.core.app;
|
|
|
|
import android.app.Activity;
|
|
import android.app.ActivityOptions;
|
|
import android.app.PendingIntent;
|
|
import android.content.Context;
|
|
import android.graphics.Bitmap;
|
|
import android.graphics.Rect;
|
|
import android.os.Build;
|
|
import android.os.Bundle;
|
|
import android.view.View;
|
|
import androidx.annotation.NonNull;
|
|
import androidx.annotation.Nullable;
|
|
import androidx.annotation.RequiresApi;
|
|
import androidx.core.util.Pair;
|
|
public class ActivityOptionsCompat {
|
|
public static final String EXTRA_USAGE_TIME_REPORT = "android.activity.usage_time";
|
|
public static final String EXTRA_USAGE_TIME_REPORT_PACKAGES = "android.usage_time_packages";
|
|
|
|
@RequiresApi(16)
|
|
public static class ActivityOptionsCompatImpl extends ActivityOptionsCompat {
|
|
private final ActivityOptions mActivityOptions;
|
|
|
|
public ActivityOptionsCompatImpl(ActivityOptions activityOptions) {
|
|
this.mActivityOptions = activityOptions;
|
|
}
|
|
|
|
@Override // androidx.core.app.ActivityOptionsCompat
|
|
public Rect getLaunchBounds() {
|
|
if (Build.VERSION.SDK_INT < 24) {
|
|
return null;
|
|
}
|
|
return this.mActivityOptions.getLaunchBounds();
|
|
}
|
|
|
|
@Override // androidx.core.app.ActivityOptionsCompat
|
|
public void requestUsageTimeReport(@NonNull PendingIntent pendingIntent) {
|
|
if (Build.VERSION.SDK_INT >= 23) {
|
|
this.mActivityOptions.requestUsageTimeReport(pendingIntent);
|
|
}
|
|
}
|
|
|
|
@Override // androidx.core.app.ActivityOptionsCompat
|
|
@NonNull
|
|
public ActivityOptionsCompat setLaunchBounds(@Nullable Rect rect) {
|
|
return Build.VERSION.SDK_INT < 24 ? this : new ActivityOptionsCompatImpl(this.mActivityOptions.setLaunchBounds(rect));
|
|
}
|
|
|
|
@Override // androidx.core.app.ActivityOptionsCompat
|
|
public Bundle toBundle() {
|
|
return this.mActivityOptions.toBundle();
|
|
}
|
|
|
|
@Override // androidx.core.app.ActivityOptionsCompat
|
|
public void update(@NonNull ActivityOptionsCompat activityOptionsCompat) {
|
|
if (activityOptionsCompat instanceof ActivityOptionsCompatImpl) {
|
|
this.mActivityOptions.update(((ActivityOptionsCompatImpl) activityOptionsCompat).mActivityOptions);
|
|
}
|
|
}
|
|
}
|
|
|
|
@NonNull
|
|
public static ActivityOptionsCompat makeBasic() {
|
|
return Build.VERSION.SDK_INT >= 23 ? new ActivityOptionsCompatImpl(ActivityOptions.makeBasic()) : new ActivityOptionsCompat();
|
|
}
|
|
|
|
@NonNull
|
|
public static ActivityOptionsCompat makeClipRevealAnimation(@NonNull View view, int i, int i2, int i3, int i4) {
|
|
return Build.VERSION.SDK_INT >= 23 ? new ActivityOptionsCompatImpl(ActivityOptions.makeClipRevealAnimation(view, i, i2, i3, i4)) : new ActivityOptionsCompat();
|
|
}
|
|
|
|
@NonNull
|
|
public static ActivityOptionsCompat makeCustomAnimation(@NonNull Context context, int i, int i2) {
|
|
return new ActivityOptionsCompatImpl(ActivityOptions.makeCustomAnimation(context, i, i2));
|
|
}
|
|
|
|
@NonNull
|
|
public static ActivityOptionsCompat makeScaleUpAnimation(@NonNull View view, int i, int i2, int i3, int i4) {
|
|
return new ActivityOptionsCompatImpl(ActivityOptions.makeScaleUpAnimation(view, i, i2, i3, i4));
|
|
}
|
|
|
|
@NonNull
|
|
public static ActivityOptionsCompat makeSceneTransitionAnimation(@NonNull Activity activity, @NonNull View view, @NonNull String str) {
|
|
return new ActivityOptionsCompatImpl(ActivityOptions.makeSceneTransitionAnimation(activity, view, str));
|
|
}
|
|
|
|
@NonNull
|
|
public static ActivityOptionsCompat makeSceneTransitionAnimation(@NonNull Activity activity, Pair<View, String>... pairArr) {
|
|
android.util.Pair[] pairArr2 = null;
|
|
if (pairArr != null) {
|
|
pairArr2 = new android.util.Pair[pairArr.length];
|
|
for (int i = 0; i < pairArr.length; i++) {
|
|
pairArr2[i] = android.util.Pair.create(pairArr[i].first, pairArr[i].second);
|
|
}
|
|
}
|
|
return new ActivityOptionsCompatImpl(ActivityOptions.makeSceneTransitionAnimation(activity, pairArr2));
|
|
}
|
|
|
|
@NonNull
|
|
public static ActivityOptionsCompat makeTaskLaunchBehind() {
|
|
return new ActivityOptionsCompatImpl(ActivityOptions.makeTaskLaunchBehind());
|
|
}
|
|
|
|
@NonNull
|
|
public static ActivityOptionsCompat makeThumbnailScaleUpAnimation(@NonNull View view, @NonNull Bitmap bitmap, int i, int i2) {
|
|
return new ActivityOptionsCompatImpl(ActivityOptions.makeThumbnailScaleUpAnimation(view, bitmap, i, i2));
|
|
}
|
|
|
|
@Nullable
|
|
public Rect getLaunchBounds() {
|
|
return null;
|
|
}
|
|
|
|
public void requestUsageTimeReport(@NonNull PendingIntent pendingIntent) {
|
|
}
|
|
|
|
@NonNull
|
|
public ActivityOptionsCompat setLaunchBounds(@Nullable Rect rect) {
|
|
return this;
|
|
}
|
|
|
|
@Nullable
|
|
public Bundle toBundle() {
|
|
return null;
|
|
}
|
|
|
|
public void update(@NonNull ActivityOptionsCompat activityOptionsCompat) {
|
|
}
|
|
}
|