summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authornicolasroard <nicolasroard@google.com>2012-10-16 14:25:09 -0700
committernicolasroard <nicolasroard@google.com>2012-10-16 14:25:09 -0700
commitc057d64b701fc2de9f0d5fec7dbd34779647a442 (patch)
treecbaace3521cb06cf75430e0fbb77d21436b00dcd
parent5a69dcc8de22788cf57425e317337d5017c3673c (diff)
downloadandroid_packages_apps_Snap-c057d64b701fc2de9f0d5fec7dbd34779647a442.tar.gz
android_packages_apps_Snap-c057d64b701fc2de9f0d5fec7dbd34779647a442.tar.bz2
android_packages_apps_Snap-c057d64b701fc2de9f0d5fec7dbd34779647a442.zip
Fix when we cannot load an image
bug:7321636 Change-Id: I82cd603d531a1b743737a7c5b65005d370f2cdb1
-rw-r--r--src/com/android/gallery3d/filtershow/FilterShowActivity.java11
-rw-r--r--src/com/android/gallery3d/filtershow/cache/ImageLoader.java9
2 files changed, 18 insertions, 2 deletions
diff --git a/src/com/android/gallery3d/filtershow/FilterShowActivity.java b/src/com/android/gallery3d/filtershow/FilterShowActivity.java
index abbd596ab..f76179d8b 100644
--- a/src/com/android/gallery3d/filtershow/FilterShowActivity.java
+++ b/src/com/android/gallery3d/filtershow/FilterShowActivity.java
@@ -31,6 +31,7 @@ import android.widget.ListView;
import android.widget.SeekBar;
import android.widget.ShareActionProvider;
import android.widget.ShareActionProvider.OnShareTargetSelectedListener;
+import android.widget.Toast;
import com.android.gallery3d.R;
import com.android.gallery3d.filtershow.cache.ImageLoader;
@@ -145,7 +146,7 @@ public class FilterShowActivity extends Activity implements OnItemClickListener,
}
});
- mImageLoader = new ImageLoader(getApplicationContext());
+ mImageLoader = new ImageLoader(this, getApplicationContext());
LinearLayout listFilters = (LinearLayout) findViewById(R.id.listFilters);
LinearLayout listBorders = (LinearLayout) findViewById(R.id.listBorders);
@@ -729,6 +730,14 @@ public class FilterShowActivity extends Activity implements OnItemClickListener,
finish();
}
}
+
+ public void cannotLoadImage() {
+ CharSequence text = getString(R.string.cannot_load_image);
+ Toast toast = Toast.makeText(this, text, Toast.LENGTH_SHORT);
+ toast.show();
+ finish();
+ }
+
// //////////////////////////////////////////////////////////////////////////////
public float getPixelsFromDip(float value) {
diff --git a/src/com/android/gallery3d/filtershow/cache/ImageLoader.java b/src/com/android/gallery3d/filtershow/cache/ImageLoader.java
index 3fabc4493..eeba4da41 100644
--- a/src/com/android/gallery3d/filtershow/cache/ImageLoader.java
+++ b/src/com/android/gallery3d/filtershow/cache/ImageLoader.java
@@ -49,6 +49,8 @@ public class ImageLoader {
private int mOrientation = 0;
private HistoryAdapter mAdapter = null;
+ private FilterShowActivity mActivity = null;
+
private static final int ORI_NORMAL = ExifInterface.ORIENTATION_NORMAL;
private static final int ORI_ROTATE_90 = ExifInterface.ORIENTATION_ROTATE_90;
private static final int ORI_ROTATE_180 = ExifInterface.ORIENTATION_ROTATE_180;
@@ -63,7 +65,8 @@ public class ImageLoader {
private Rect mOriginalBounds = null;
- public ImageLoader(Context context) {
+ public ImageLoader(FilterShowActivity activity, Context context) {
+ mActivity = activity;
mContext = context;
mCache = new DelayedPresetCache(this, 30);
mHiresCache = new DelayedPresetCache(this, 2);
@@ -74,6 +77,10 @@ public class ImageLoader {
mOrientation = getOrientation(uri);
mOriginalBitmapSmall = loadScaledBitmap(uri, 160);
+ if (mOriginalBitmapSmall == null) {
+ // Couldn't read the bitmap, let's exit
+ mActivity.cannotLoadImage();
+ }
mOriginalBitmapLarge = loadScaledBitmap(uri, size);
updateBitmaps();
}