summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKhalid Zubair <kzubair@cyngn.com>2016-05-18 17:05:16 -0700
committerChippa-a <vusal1372@gmail.com>2019-10-25 15:55:25 +0300
commit537860a47f79306d7d4deda8d4a8f8c23e461552 (patch)
tree6a4ab61c0279395acfb489da9a31438fb015276d
parent5e7995dc3bab665baae12a93833776452a724af6 (diff)
downloadandroid_packages_apps_Snap-537860a47f79306d7d4deda8d4a8f8c23e461552.tar.gz
android_packages_apps_Snap-537860a47f79306d7d4deda8d4a8f8c23e461552.tar.bz2
android_packages_apps_Snap-537860a47f79306d7d4deda8d4a8f8c23e461552.zip
CropActivity: notify MediaScanner on save complete
MediaScanner should be notified when a file is created or changed. Add an explicit call at the end of the async task writing saving the bitmap. Fixes FEIJ-479 where the cropped file was being shown as a 0 byte file over MTP. Change-Id: I2220654a75f502089f44e1cb24682b73516c43b0
-rw-r--r--src/com/android/camera/crop/CropActivity.java13
-rw-r--r--src/com/android/camera/crop/SaveImage.java2
2 files changed, 13 insertions, 2 deletions
diff --git a/src/com/android/camera/crop/CropActivity.java b/src/com/android/camera/crop/CropActivity.java
index 9c09b9a87..45455ccad 100644
--- a/src/com/android/camera/crop/CropActivity.java
+++ b/src/com/android/camera/crop/CropActivity.java
@@ -31,6 +31,7 @@ import android.graphics.Matrix;
import android.graphics.Paint;
import android.graphics.Rect;
import android.graphics.RectF;
+import android.media.MediaScannerConnection;
import android.net.Uri;
import android.os.AsyncTask;
import android.os.Bundle;
@@ -46,6 +47,7 @@ import org.codeaurora.snapcam.R;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
+import java.io.File;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;
@@ -581,6 +583,16 @@ public class CropActivity extends Activity {
}
}
}
+
+ File dest = SaveImage.getLocalFileFromUri(CropActivity.this, mOutUri);
+ if (dest != null) {
+ MediaScannerConnection.scanFile(
+ CropActivity.this,
+ new String[] { dest.toString() },
+ null /* no mimetype, let scanner guess */,
+ null /* no callback */);
+ }
+
return !failure; // True if any of the operations failed
}
@@ -590,7 +602,6 @@ public class CropActivity extends Activity {
Utils.closeSilently(mInStream);
doneBitmapIO(result.booleanValue(), mResultIntent);
}
-
}
private void done() {
diff --git a/src/com/android/camera/crop/SaveImage.java b/src/com/android/camera/crop/SaveImage.java
index f5e89de4b..1701fb6eb 100644
--- a/src/com/android/camera/crop/SaveImage.java
+++ b/src/com/android/camera/crop/SaveImage.java
@@ -385,7 +385,7 @@ public class SaveImage {
* @return The file object. Return null if srcUri is invalid or not a local
* file.
*/
- private static File getLocalFileFromUri(Context context, Uri srcUri) {
+ static File getLocalFileFromUri(Context context, Uri srcUri) {
if (srcUri == null) {
Log.e(LOGTAG, "srcUri is null.");
return null;