blob: 92f24f2f4bf5a8888357670e7ecf03440f88c53d [file] [log] [blame]
package com.android.wallpaperpicker.common;
import android.content.Context;
import android.graphics.Rect;
import java.io.IOException;
import java.io.InputStream;
public abstract class WallpaperManagerCompat {
public static final int FLAG_SET_SYSTEM = 1 << 0; // TODO: use WallpaperManager.FLAG_SET_SYSTEM
public static final int FLAG_SET_LOCK = 1 << 1; // TODO: use WallpaperManager.FLAG_SET_LOCK
private static WallpaperManagerCompat sInstance;
private static final Object sInstanceLock = new Object();
public static WallpaperManagerCompat getInstance(Context context) {
synchronized (sInstanceLock) {
if (sInstance == null) {
if (Utilities.isAtLeastN()) {
sInstance = new WallpaperManagerCompatVN(context.getApplicationContext());
} else {
sInstance = new WallpaperManagerCompatV16(context.getApplicationContext());
}
}
return sInstance;
}
}
public abstract void setStream(InputStream stream, Rect visibleCropHint, boolean allowBackup,
int whichWallpaper) throws IOException;
public abstract void clear(int whichWallpaper) throws IOException;
public abstract int getWallpaperId(int whichWallpaper);
}