summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMark Wagner <mxw@google.com>2011-10-04 13:48:37 -0700
committerMark Wagner <mxw@google.com>2011-10-04 13:48:37 -0700
commit9a7cba43937e7c74ebd9778bca40afc89145e3e1 (patch)
treeec4739c59b8858b9cbb96b0e440dbc6a75f4587b
parentff1c641693cf537703fef3949ccf15898c3ad5d0 (diff)
downloadLegacyCamera-9a7cba43937e7c74ebd9778bca40afc89145e3e1.zip
LegacyCamera-9a7cba43937e7c74ebd9778bca40afc89145e3e1.tar.gz
LegacyCamera-9a7cba43937e7c74ebd9778bca40afc89145e3e1.tar.bz2
bugfix 5388221 Last captured (photo, video, panorama) thumbnail disappears in panaromic mode
Change-Id: I6dc31868870e27ea2c8446deb1cbb430bafe44ca
-rwxr-xr-xsrc/com/android/camera/panorama/PanoramaActivity.java26
1 files changed, 23 insertions, 3 deletions
diff --git a/src/com/android/camera/panorama/PanoramaActivity.java b/src/com/android/camera/panorama/PanoramaActivity.java
index a1605de..05c5024 100755
--- a/src/com/android/camera/panorama/PanoramaActivity.java
+++ b/src/com/android/camera/panorama/PanoramaActivity.java
@@ -38,6 +38,7 @@ import android.animation.ValueAnimator;
import android.app.Activity;
import android.app.AlertDialog;
import android.app.ProgressDialog;
+import android.content.ContentResolver;
import android.content.Context;
import android.content.DialogInterface;
import android.content.res.Resources;
@@ -71,6 +72,7 @@ import android.widget.ImageView;
import android.widget.TextView;
import java.io.ByteArrayOutputStream;
+import java.io.File;
import java.util.List;
/**
@@ -271,9 +273,8 @@ public class PanoramaActivity extends ActivityBase implements
onBackgroundThreadFinished();
// Set the thumbnail bitmap here because mThumbnailView must be accessed
// from the UI thread.
- if (mThumbnail != null) {
- mThumbnailView.setBitmap(mThumbnail.getBitmap());
- }
+ updateThumbnailButton();
+
// Share popup may still have the reference to the old thumbnail. Clear it.
mSharePopup = null;
resetToPreview();
@@ -309,6 +310,12 @@ public class PanoramaActivity extends ActivityBase implements
});
}
+ @Override
+ public void onStart() {
+ super.onStart();
+ updateThumbnailButton();
+ }
+
private void setupCamera() {
openCamera();
Parameters parameters = mCameraDevice.getParameters();
@@ -749,6 +756,19 @@ public class PanoramaActivity extends ActivityBase implements
t.start();
}
+ private void updateThumbnailButton() {
+ // Update last image if URI is invalid and the storage is ready.
+ ContentResolver contentResolver = getContentResolver();
+ if ((mThumbnail == null || !Util.isUriValid(mThumbnail.getUri(), contentResolver))) {
+ mThumbnail = Thumbnail.getLastThumbnail(contentResolver);
+ }
+ if (mThumbnail != null) {
+ mThumbnailView.setBitmap(mThumbnail.getBitmap());
+ } else {
+ mThumbnailView.setBitmap(null);
+ }
+ }
+
public void saveHighResMosaic() {
runBackgroundThread(new Thread() {
@Override