mirror of
https://codeberg.org/Bazsalanszky/Infinity-For-Lemmy.git
synced 2024-12-28 11:58:23 +01:00
Revert "Download unprocessed gallery picture"
This reverts commit 886eb68341
.
This commit is contained in:
parent
886eb68341
commit
a663359f9a
@ -111,7 +111,6 @@ public class ViewRedditGalleryImageOrGifFragment extends Fragment {
|
|||||||
private boolean isDownloading = false;
|
private boolean isDownloading = false;
|
||||||
private boolean isActionBarHidden = false;
|
private boolean isActionBarHidden = false;
|
||||||
private boolean isUseBottomCaption = false;
|
private boolean isUseBottomCaption = false;
|
||||||
private boolean isFallback = false;
|
|
||||||
|
|
||||||
public ViewRedditGalleryImageOrGifFragment() {
|
public ViewRedditGalleryImageOrGifFragment() {
|
||||||
// Required empty public constructor
|
// Required empty public constructor
|
||||||
@ -178,21 +177,6 @@ public class ViewRedditGalleryImageOrGifFragment extends Fragment {
|
|||||||
view.setQuickScaleEnabled(true);
|
view.setQuickScaleEnabled(true);
|
||||||
view.resetScaleAndCenter();
|
view.resetScaleAndCenter();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onImageLoadError(Exception e) {
|
|
||||||
e.printStackTrace();
|
|
||||||
// For issue #558
|
|
||||||
// Make sure it's not stuck in a loop if it comes to that
|
|
||||||
// Fallback url should be empty if it's not an album item
|
|
||||||
if (!isFallback && media.hasFallback()) {
|
|
||||||
imageView.cancel();
|
|
||||||
isFallback = true;
|
|
||||||
loadImage();
|
|
||||||
} else {
|
|
||||||
isFallback = false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -226,6 +210,7 @@ public class ViewRedditGalleryImageOrGifFragment extends Fragment {
|
|||||||
errorLinearLayout.setOnClickListener(view -> {
|
errorLinearLayout.setOnClickListener(view -> {
|
||||||
progressBar.setVisibility(View.VISIBLE);
|
progressBar.setVisibility(View.VISIBLE);
|
||||||
errorLinearLayout.setVisibility(View.GONE);
|
errorLinearLayout.setVisibility(View.GONE);
|
||||||
|
loadImage();
|
||||||
});
|
});
|
||||||
|
|
||||||
if (activity.isUseBottomAppBar()) {
|
if (activity.isUseBottomAppBar()) {
|
||||||
@ -332,12 +317,7 @@ public class ViewRedditGalleryImageOrGifFragment extends Fragment {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private void loadImage() {
|
private void loadImage() {
|
||||||
if(isFallback) {
|
imageView.showImage(Uri.parse(media.url));
|
||||||
imageView.showImage(Uri.parse(media.fallbackUrl));
|
|
||||||
}
|
|
||||||
else{
|
|
||||||
imageView.showImage(Uri.parse(media.url));
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@ -394,7 +374,7 @@ public class ViewRedditGalleryImageOrGifFragment extends Fragment {
|
|||||||
isDownloading = false;
|
isDownloading = false;
|
||||||
|
|
||||||
Intent intent = new Intent(activity, DownloadMediaService.class);
|
Intent intent = new Intent(activity, DownloadMediaService.class);
|
||||||
intent.putExtra(DownloadMediaService.EXTRA_URL, media.hasFallback() ? media.fallbackUrl : media.url); // Retrieve original instead of the one additionally compressed by reddit
|
intent.putExtra(DownloadMediaService.EXTRA_URL, media.url);
|
||||||
intent.putExtra(DownloadMediaService.EXTRA_MEDIA_TYPE, media.mediaType == Post.Gallery.TYPE_GIF ? DownloadMediaService.EXTRA_MEDIA_TYPE_GIF : DownloadMediaService.EXTRA_MEDIA_TYPE_IMAGE);
|
intent.putExtra(DownloadMediaService.EXTRA_MEDIA_TYPE, media.mediaType == Post.Gallery.TYPE_GIF ? DownloadMediaService.EXTRA_MEDIA_TYPE_GIF : DownloadMediaService.EXTRA_MEDIA_TYPE_IMAGE);
|
||||||
intent.putExtra(DownloadMediaService.EXTRA_FILE_NAME, media.fileName);
|
intent.putExtra(DownloadMediaService.EXTRA_FILE_NAME, media.fileName);
|
||||||
intent.putExtra(DownloadMediaService.EXTRA_SUBREDDIT_NAME, subredditName);
|
intent.putExtra(DownloadMediaService.EXTRA_SUBREDDIT_NAME, subredditName);
|
||||||
@ -402,10 +382,8 @@ public class ViewRedditGalleryImageOrGifFragment extends Fragment {
|
|||||||
Toast.makeText(activity, R.string.download_started, Toast.LENGTH_SHORT).show();
|
Toast.makeText(activity, R.string.download_started, Toast.LENGTH_SHORT).show();
|
||||||
}
|
}
|
||||||
|
|
||||||
//TODO: Find a way to share original image, Glide messes with the size and quality,
|
|
||||||
// compression should be up to the app being shared with (WhatsApp for example)
|
|
||||||
private void shareImage() {
|
private void shareImage() {
|
||||||
glide.asBitmap().load(media.hasFallback() ? media.fallbackUrl : media.url).into(new CustomTarget<Bitmap>() {
|
glide.asBitmap().load(media.url).into(new CustomTarget<Bitmap>() {
|
||||||
@Override
|
@Override
|
||||||
public void onResourceReady(@NonNull Bitmap resource, @Nullable Transition<? super Bitmap> transition) {
|
public void onResourceReady(@NonNull Bitmap resource, @Nullable Transition<? super Bitmap> transition) {
|
||||||
if (activity.getExternalCacheDir() != null) {
|
if (activity.getExternalCacheDir() != null) {
|
||||||
@ -521,7 +499,7 @@ public class ViewRedditGalleryImageOrGifFragment extends Fragment {
|
|||||||
super.onResume();
|
super.onResume();
|
||||||
SubsamplingScaleImageView ssiv = imageView.getSSIV();
|
SubsamplingScaleImageView ssiv = imageView.getSSIV();
|
||||||
if (ssiv == null || !ssiv.hasImage()) {
|
if (ssiv == null || !ssiv.hasImage()) {
|
||||||
loadImage();
|
imageView.showImage(Uri.parse(media.url));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -529,7 +507,6 @@ public class ViewRedditGalleryImageOrGifFragment extends Fragment {
|
|||||||
public void onDestroyView() {
|
public void onDestroyView() {
|
||||||
super.onDestroyView();
|
super.onDestroyView();
|
||||||
imageView.cancel();
|
imageView.cancel();
|
||||||
isFallback = false;
|
|
||||||
SubsamplingScaleImageView subsamplingScaleImageView = imageView.getSSIV();
|
SubsamplingScaleImageView subsamplingScaleImageView = imageView.getSSIV();
|
||||||
if (subsamplingScaleImageView != null) {
|
if (subsamplingScaleImageView != null) {
|
||||||
subsamplingScaleImageView.recycle();
|
subsamplingScaleImageView.recycle();
|
||||||
|
@ -3,7 +3,6 @@ package ml.docilealligator.infinityforreddit.post;
|
|||||||
import android.net.Uri;
|
import android.net.Uri;
|
||||||
import android.os.Handler;
|
import android.os.Handler;
|
||||||
import android.text.Html;
|
import android.text.Html;
|
||||||
import android.text.TextUtils;
|
|
||||||
|
|
||||||
import org.json.JSONArray;
|
import org.json.JSONArray;
|
||||||
import org.json.JSONException;
|
import org.json.JSONException;
|
||||||
@ -576,17 +575,8 @@ public class ParsePost {
|
|||||||
previews.add(new Post.Preview(galleryItemUrl, singleGalleryObject.getJSONObject(JSONUtils.S_KEY).getInt(JSONUtils.X_KEY),
|
previews.add(new Post.Preview(galleryItemUrl, singleGalleryObject.getJSONObject(JSONUtils.S_KEY).getInt(JSONUtils.X_KEY),
|
||||||
singleGalleryObject.getJSONObject(JSONUtils.S_KEY).getInt(JSONUtils.Y_KEY), galleryItemCaption, galleryItemCaptionUrl));
|
singleGalleryObject.getJSONObject(JSONUtils.S_KEY).getInt(JSONUtils.Y_KEY), galleryItemCaption, galleryItemCaptionUrl));
|
||||||
}
|
}
|
||||||
|
|
||||||
Post.Gallery postGalleryItem = new Post.Gallery(mimeType, galleryItemUrl, "", subredditName + "-" + galleryId + "." + mimeType.substring(mimeType.lastIndexOf("/") + 1), galleryItemCaption, galleryItemCaptionUrl);
|
|
||||||
|
|
||||||
// For issue #558
|
gallery.add(new Post.Gallery(mimeType, galleryItemUrl, subredditName + "-" + galleryId + "." + mimeType.substring(mimeType.lastIndexOf("/") + 1), galleryItemCaption, galleryItemCaptionUrl));
|
||||||
// Construct a fallback image url
|
|
||||||
if(!TextUtils.isEmpty(galleryItemUrl) && !TextUtils.isEmpty(mimeType) && (mimeType.contains("jpg") || mimeType.contains("png"))) {
|
|
||||||
postGalleryItem.setFallbackUrl("https://i.redd.it/" + galleryId + "." + mimeType.substring(mimeType.lastIndexOf("/") + 1));
|
|
||||||
postGalleryItem.setHasFallback(true);
|
|
||||||
}
|
|
||||||
|
|
||||||
gallery.add(postGalleryItem);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!gallery.isEmpty()) {
|
if (!gallery.isEmpty()) {
|
||||||
|
@ -580,17 +580,14 @@ public class Post implements Parcelable {
|
|||||||
|
|
||||||
public String mimeType;
|
public String mimeType;
|
||||||
public String url;
|
public String url;
|
||||||
public String fallbackUrl;
|
|
||||||
private boolean hasFallback;
|
|
||||||
public String fileName;
|
public String fileName;
|
||||||
public int mediaType;
|
public int mediaType;
|
||||||
public String caption;
|
public String caption;
|
||||||
public String captionUrl;
|
public String captionUrl;
|
||||||
|
|
||||||
public Gallery(String mimeType, String url, String fallbackUrl, String fileName, String caption, String captionUrl) {
|
public Gallery(String mimeType, String url, String fileName, String caption, String captionUrl) {
|
||||||
this.mimeType = mimeType;
|
this.mimeType = mimeType;
|
||||||
this.url = url;
|
this.url = url;
|
||||||
this.fallbackUrl = fallbackUrl;
|
|
||||||
this.fileName = fileName;
|
this.fileName = fileName;
|
||||||
if (mimeType.contains("gif")) {
|
if (mimeType.contains("gif")) {
|
||||||
mediaType = TYPE_GIF;
|
mediaType = TYPE_GIF;
|
||||||
@ -606,8 +603,6 @@ public class Post implements Parcelable {
|
|||||||
protected Gallery(Parcel in) {
|
protected Gallery(Parcel in) {
|
||||||
mimeType = in.readString();
|
mimeType = in.readString();
|
||||||
url = in.readString();
|
url = in.readString();
|
||||||
fallbackUrl = in.readString();
|
|
||||||
hasFallback = in.readByte() != 0;
|
|
||||||
fileName = in.readString();
|
fileName = in.readString();
|
||||||
mediaType = in.readInt();
|
mediaType = in.readInt();
|
||||||
caption = in.readString();
|
caption = in.readString();
|
||||||
@ -635,19 +630,11 @@ public class Post implements Parcelable {
|
|||||||
public void writeToParcel(Parcel parcel, int i) {
|
public void writeToParcel(Parcel parcel, int i) {
|
||||||
parcel.writeString(mimeType);
|
parcel.writeString(mimeType);
|
||||||
parcel.writeString(url);
|
parcel.writeString(url);
|
||||||
parcel.writeString(fallbackUrl);
|
|
||||||
parcel.writeByte((byte) (hasFallback ? 1 : 0));
|
|
||||||
parcel.writeString(fileName);
|
parcel.writeString(fileName);
|
||||||
parcel.writeInt(mediaType);
|
parcel.writeInt(mediaType);
|
||||||
parcel.writeString(caption);
|
parcel.writeString(caption);
|
||||||
parcel.writeString(captionUrl);
|
parcel.writeString(captionUrl);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setFallbackUrl(String fallbackUrl) { this.fallbackUrl = fallbackUrl; }
|
|
||||||
|
|
||||||
public void setHasFallback(boolean hasFallback) { this.hasFallback = hasFallback; }
|
|
||||||
|
|
||||||
public boolean hasFallback() { return this.hasFallback; }
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public static class Preview implements Parcelable {
|
public static class Preview implements Parcelable {
|
||||||
|
Loading…
Reference in New Issue
Block a user