aboutsummaryrefslogtreecommitdiffstats
path: root/src/main/java/de/pixart/messenger/ui/util
diff options
context:
space:
mode:
authorChristian Schneppe <christian@pix-art.de>2018-09-23 16:50:55 +0200
committerChristian Schneppe <christian@pix-art.de>2018-09-23 16:50:55 +0200
commit60820f3e14e8ea1d756641646f50bc2dc54de528 (patch)
treed722933432ccff25771c892cdeec3ea786d649a3 /src/main/java/de/pixart/messenger/ui/util
parent1e63a8291579043659f86dbb46d4d63d3225c471 (diff)
make media previews survive rotations
Diffstat (limited to 'src/main/java/de/pixart/messenger/ui/util')
-rw-r--r--src/main/java/de/pixart/messenger/ui/util/Attachment.java34
1 files changed, 33 insertions, 1 deletions
diff --git a/src/main/java/de/pixart/messenger/ui/util/Attachment.java b/src/main/java/de/pixart/messenger/ui/util/Attachment.java
index 8c1d0c75e..f11efd0d1 100644
--- a/src/main/java/de/pixart/messenger/ui/util/Attachment.java
+++ b/src/main/java/de/pixart/messenger/ui/util/Attachment.java
@@ -33,6 +33,8 @@ import android.content.ClipData;
import android.content.Context;
import android.content.Intent;
import android.net.Uri;
+import android.os.Parcel;
+import android.os.Parcelable;
import android.util.Log;
import java.util.ArrayList;
@@ -43,11 +45,28 @@ import java.util.UUID;
import de.pixart.messenger.Config;
import de.pixart.messenger.utils.MimeUtils;
-public class Attachment {
+public class Attachment implements Parcelable {
+ public static final Creator<Attachment> CREATOR = new Parcelable.Creator<Attachment>() {
+ @Override
+ public Attachment createFromParcel(Parcel in) {
+ return new Attachment(in);
+ }
+
+ @Override
+ public Attachment[] newArray(int size) {
+ return new Attachment[size];
+ }
+ };
private final Uri uri;
private final Type type;
private final UUID uuid;
private final String mime;
+ Attachment(Parcel in) {
+ uri = in.readParcelable(Uri.class.getClassLoader());
+ mime = in.readString();
+ uuid = UUID.fromString(in.readString());
+ type = Type.valueOf(in.readString());
+ }
private Attachment(Uri uri, Type type, String mime) {
this.uri = uri;
this.type = type;
@@ -94,6 +113,19 @@ public class Attachment {
return uris;
}
+ @Override
+ public void writeToParcel(Parcel dest, int flags) {
+ dest.writeParcelable(uri, flags);
+ dest.writeString(mime);
+ dest.writeString(uuid.toString());
+ dest.writeString(type.toString());
+ }
+
+ @Override
+ public int describeContents() {
+ return 0;
+ }
+
public String getMime() {
return mime;
}