import com.android.gallery3d.filtershow.ui.FramedTextButton;
import com.android.gallery3d.filtershow.ui.Spline;
import com.android.gallery3d.util.GalleryUtils;
-import com.android.photos.data.GalleryBitmapPool;
import java.io.File;
import java.io.IOException;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- clearGalleryBitmapPoolInBackground();
-
setupMasterImage();
setDefaultValues();
fillEditors();
}
- void clearGalleryBitmapPoolInBackground() {
- BitmapTask.Callbacks<Object, Object> cb = new BitmapTask.Callbacks<Object, Object>() {
- @Override
- public void onComplete(Object result) {}
-
- @Override
- public void onCancel() {}
-
- @Override
- public Object onExecute(Object param) {
- // Free memory held in Gallery's Bitmap pool. May be O(n) for n bitmaps.
- GalleryBitmapPool.getInstance().clear();
- return null;
- }
- };
- (new BitmapTask<Object, Object>(cb)).execute(0);
- }
-
private void fillButtonIcons() {
Bitmap bmap = mImageLoader.getOriginalBitmapSmall();
if (bmap != null && bmap.getWidth() > 0 && bmap.getHeight() > 0) {
void setWallpaperInBackground(final Bitmap bmap) {
Toast.makeText(this, R.string.setting_wallpaper, Toast.LENGTH_LONG).show();
- BitmapTask.Callbacks<FilterShowActivity, Bitmap> cb = new BitmapTask.Callbacks<FilterShowActivity, Bitmap>() {
+ BitmapTask.Callbacks<FilterShowActivity> cb = new BitmapTask.Callbacks<FilterShowActivity>() {
@Override
public void onComplete(Bitmap result) {}
@Override
public Bitmap onExecute(FilterShowActivity param) {
- if (param == null) {
- return null;
- }
try {
WallpaperManager.getInstance(param).setBitmap(bmap);
} catch (IOException e) {
return null;
}
};
- (new BitmapTask<FilterShowActivity, Bitmap>(cb)).execute(this);
+ (new BitmapTask<FilterShowActivity>(cb)).execute(this);
}
public void done() {
preset.setQuality(ImagePreset.QUALITY_FINAL);
preset.setScaleFactor(1.0f);
- BitmapTask.Callbacks<ImagePreset, Bitmap> cb = new BitmapTask.Callbacks<ImagePreset, Bitmap>() {
+ BitmapTask.Callbacks<ImagePreset> cb = new BitmapTask.Callbacks<ImagePreset>() {
@Override
public void onComplete(Bitmap result) {
}
};
- (new BitmapTask<ImagePreset, Bitmap>(cb)).execute(preset);
+ (new BitmapTask<ImagePreset>(cb)).execute(preset);
}
private String getFileExtension(String requestFormat) {
final InterruptableOutputStream ios = new InterruptableOutputStream(out);
- BitmapTask.Callbacks<Bitmap, Bitmap> cb = new BitmapTask.Callbacks<Bitmap, Bitmap>() {
+ BitmapTask.Callbacks<Bitmap> cb = new BitmapTask.Callbacks<Bitmap>() {
@Override
public void onComplete(Bitmap result) {
@Override
public Bitmap onExecute(Bitmap param) {
- if (param == null) {
- return null;
- }
CompressFormat cf = convertExtensionToCompressFormat(getFileExtension(outputFormat));
param.compress(cf, DEFAULT_COMPRESS_QUALITY, ios);
Utils.closeSilently(ios);
}
};
- (new BitmapTask<Bitmap, Bitmap>(cb)).execute(bmap);
+ (new BitmapTask<Bitmap>(cb)).execute(bmap);
}
public void setAdapter(HistoryAdapter adapter) {
package com.android.gallery3d.filtershow.tools;
+import android.graphics.Bitmap;
import android.os.AsyncTask;
/**
- * Asynchronous task wrapper class for doing Bitmap I/O.
+ * Asynchronous task filtering or doign I/O with bitmaps.
*/
-public class BitmapTask <T, K> extends AsyncTask<T, Void, K> {
+public class BitmapTask <T> extends AsyncTask<T, Void, Bitmap> {
- private Callbacks<T, K> mCallbacks;
+ private Callbacks<T> mCallbacks;
private static final String LOGTAG = "BitmapTask";
- public BitmapTask(Callbacks<T, K> callbacks) {
+ public BitmapTask(Callbacks<T> callbacks) {
mCallbacks = callbacks;
}
@Override
- protected K doInBackground(T... params) {
+ protected Bitmap doInBackground(T... params) {
if (params == null || mCallbacks == null) {
return null;
}
}
@Override
- protected void onPostExecute(K result) {
+ protected void onPostExecute(Bitmap result) {
if (mCallbacks == null) {
return;
}
/**
* Callbacks for the asynchronous task.
*/
- public interface Callbacks<P, J> {
- void onComplete(J result);
+ public interface Callbacks<P> {
+ void onComplete(Bitmap result);
void onCancel();
- J onExecute(P param);
+ Bitmap onExecute(P param);
}
}