aboutsummaryrefslogtreecommitdiff
path: root/app
diff options
context:
space:
mode:
authorAlex Ning <chineseperson5@gmail.com>2021-01-06 14:46:22 +0000
committerAlex Ning <chineseperson5@gmail.com>2021-01-06 14:46:22 +0000
commit07390678e0830aafa3a64bfaa15a64d101f197a8 (patch)
tree06aec09a36d493e015b8da7c4dea7e4c04464ea7 /app
parent99129a2b144f1d2eddda49eb2e870ce41a52bee1 (diff)
downloadinfinity-for-reddit-07390678e0830aafa3a64bfaa15a64d101f197a8.tar
infinity-for-reddit-07390678e0830aafa3a64bfaa15a64d101f197a8.tar.gz
infinity-for-reddit-07390678e0830aafa3a64bfaa15a64d101f197a8.tar.bz2
infinity-for-reddit-07390678e0830aafa3a64bfaa15a64d101f197a8.tar.lz
infinity-for-reddit-07390678e0830aafa3a64bfaa15a64d101f197a8.tar.xz
infinity-for-reddit-07390678e0830aafa3a64bfaa15a64d101f197a8.tar.zst
infinity-for-reddit-07390678e0830aafa3a64bfaa15a64d101f197a8.zip
Fix memory leaks caused by BigImageView. Remove unused custom views.
Diffstat (limited to '')
-rw-r--r--app/src/main/java/ml/docilealligator/infinityforreddit/activities/ViewImageOrGifActivity.java6
-rw-r--r--app/src/main/java/ml/docilealligator/infinityforreddit/activities/ViewPostDetailActivity.java1
-rw-r--r--app/src/main/java/ml/docilealligator/infinityforreddit/customviews/AspectRatioBigImageView.java60
-rw-r--r--app/src/main/java/ml/docilealligator/infinityforreddit/customviews/AspectRatioSubsamplingScaleImageView.java54
-rw-r--r--app/src/main/java/ml/docilealligator/infinityforreddit/fragments/ViewRedditGalleryImageOrGifFragment.java6
5 files changed, 13 insertions, 114 deletions
diff --git a/app/src/main/java/ml/docilealligator/infinityforreddit/activities/ViewImageOrGifActivity.java b/app/src/main/java/ml/docilealligator/infinityforreddit/activities/ViewImageOrGifActivity.java
index a86e2c86..63fc42a9 100644
--- a/app/src/main/java/ml/docilealligator/infinityforreddit/activities/ViewImageOrGifActivity.java
+++ b/app/src/main/java/ml/docilealligator/infinityforreddit/activities/ViewImageOrGifActivity.java
@@ -484,4 +484,10 @@ public class ViewImageOrGifActivity extends AppCompatActivity implements SetAsWa
}
});
}
+
+ @Override
+ public void onDestroy() {
+ super.onDestroy();
+ BigImageViewer.imageLoader().cancelAll();
+ }
}
diff --git a/app/src/main/java/ml/docilealligator/infinityforreddit/activities/ViewPostDetailActivity.java b/app/src/main/java/ml/docilealligator/infinityforreddit/activities/ViewPostDetailActivity.java
index 7af1bcc4..c7bf94b4 100644
--- a/app/src/main/java/ml/docilealligator/infinityforreddit/activities/ViewPostDetailActivity.java
+++ b/app/src/main/java/ml/docilealligator/infinityforreddit/activities/ViewPostDetailActivity.java
@@ -1774,6 +1774,7 @@ public class ViewPostDetailActivity extends BaseActivity implements FlairBottomS
EventBus.getDefault().unregister(this);
super.onDestroy();
Bridge.clear(this);
+ BigImageViewer.imageLoader().cancelAll();
}
@Override
diff --git a/app/src/main/java/ml/docilealligator/infinityforreddit/customviews/AspectRatioBigImageView.java b/app/src/main/java/ml/docilealligator/infinityforreddit/customviews/AspectRatioBigImageView.java
deleted file mode 100644
index d001faa3..00000000
--- a/app/src/main/java/ml/docilealligator/infinityforreddit/customviews/AspectRatioBigImageView.java
+++ /dev/null
@@ -1,60 +0,0 @@
-package ml.docilealligator.infinityforreddit.customviews;
-
-import android.content.Context;
-import android.content.res.TypedArray;
-import android.util.AttributeSet;
-
-import com.github.piasy.biv.view.BigImageView;
-
-public class AspectRatioBigImageView extends BigImageView {
- private float ratio;
-
- public AspectRatioBigImageView(Context context) {
- super(context);
- ratio = 1.0F;
- }
-
- public AspectRatioBigImageView(Context context, AttributeSet attrs) {
- super(context, attrs);
- this.ratio = 1.0F;
- this.init(context, attrs);
- }
-
- public AspectRatioBigImageView(Context context, AttributeSet attrs, int defStyleAttr) {
- super(context, attrs, defStyleAttr);
- this.ratio = 1.0F;
- this.init(context, attrs);
- }
-
- public final float getRatio() {
- return this.ratio;
- }
-
- public final void setRatio(float var1) {
- this.ratio = var1;
- }
-
- private void init(Context context, AttributeSet attrs) {
- if (attrs != null) {
- TypedArray a = context.obtainStyledAttributes(attrs, com.santalu.aspectratioimageview.R.styleable.AspectRatioImageView);
- this.ratio = a.getFloat(com.santalu.aspectratioimageview.R.styleable.AspectRatioImageView_ari_ratio, 1.0F);
- a.recycle();
- }
-
- }
-
- protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
- super.onMeasure(widthMeasureSpec, heightMeasureSpec);
- int width = this.getMeasuredWidth();
- int height = this.getMeasuredHeight();
- if (width != 0 || height != 0) {
- if (width > 0) {
- height = (int) ((float) width * this.ratio);
- } else {
- width = (int) ((float) height / this.ratio);
- }
-
- this.setMeasuredDimension(width, height);
- }
- }
-}
diff --git a/app/src/main/java/ml/docilealligator/infinityforreddit/customviews/AspectRatioSubsamplingScaleImageView.java b/app/src/main/java/ml/docilealligator/infinityforreddit/customviews/AspectRatioSubsamplingScaleImageView.java
deleted file mode 100644
index dffdb9af..00000000
--- a/app/src/main/java/ml/docilealligator/infinityforreddit/customviews/AspectRatioSubsamplingScaleImageView.java
+++ /dev/null
@@ -1,54 +0,0 @@
-package ml.docilealligator.infinityforreddit.customviews;
-
-import android.content.Context;
-import android.content.res.TypedArray;
-import android.util.AttributeSet;
-
-import com.davemorrissey.labs.subscaleview.SubsamplingScaleImageView;
-
-public class AspectRatioSubsamplingScaleImageView extends SubsamplingScaleImageView {
- private float ratio;
-
- public AspectRatioSubsamplingScaleImageView(Context context) {
- super(context);
- ratio = 1.0F;
- }
-
- public AspectRatioSubsamplingScaleImageView(Context context, AttributeSet attr) {
- super(context, attr);
- this.ratio = 1.0F;
- this.init(context, attr);
- }
-
- public final float getRatio() {
- return this.ratio;
- }
-
- public final void setRatio(float var1) {
- this.ratio = var1;
- }
-
- private void init(Context context, AttributeSet attrs) {
- if (attrs != null) {
- TypedArray a = context.obtainStyledAttributes(attrs, com.santalu.aspectratioimageview.R.styleable.AspectRatioImageView);
- this.ratio = a.getFloat(com.santalu.aspectratioimageview.R.styleable.AspectRatioImageView_ari_ratio, 1.0F);
- a.recycle();
- }
-
- }
-
- protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
- super.onMeasure(widthMeasureSpec, heightMeasureSpec);
- int width = this.getMeasuredWidth();
- int height = this.getMeasuredHeight();
- if (width != 0 || height != 0) {
- if (width > 0) {
- height = (int) ((float) width * this.ratio);
- } else {
- width = (int) ((float) height / this.ratio);
- }
-
- this.setMeasuredDimension(width, height);
- }
- }
-}
diff --git a/app/src/main/java/ml/docilealligator/infinityforreddit/fragments/ViewRedditGalleryImageOrGifFragment.java b/app/src/main/java/ml/docilealligator/infinityforreddit/fragments/ViewRedditGalleryImageOrGifFragment.java
index 585730d5..b93068c5 100644
--- a/app/src/main/java/ml/docilealligator/infinityforreddit/fragments/ViewRedditGalleryImageOrGifFragment.java
+++ b/app/src/main/java/ml/docilealligator/infinityforreddit/fragments/ViewRedditGalleryImageOrGifFragment.java
@@ -373,4 +373,10 @@ public class ViewRedditGalleryImageOrGifFragment extends Fragment {
super.onAttach(context);
activity = (ViewRedditGalleryActivity) context;
}
+
+ @Override
+ public void onDestroy() {
+ super.onDestroy();
+ BigImageViewer.imageLoader().cancelAll();
+ }
}