summaryrefslogtreecommitdiff
path: root/org.fox.ttrss
diff options
context:
space:
mode:
authorAndrew Dolgov <[email protected]>2015-07-17 19:15:27 +0300
committerAndrew Dolgov <[email protected]>2015-07-17 19:15:27 +0300
commitaa3e9d0c7ce0c39a07286db7b87bbaede8333c51 (patch)
tree1395fe171017af142716a93521ab9df9a646655b /org.fox.ttrss
parent0c7250442137bcd07bbaf1f8fff847218ba53c41 (diff)
add another check for flavor images maybe loading in the wrong list entry because of recycling
Diffstat (limited to 'org.fox.ttrss')
-rwxr-xr-xorg.fox.ttrss/src/main/java/org/fox/ttrss/HeadlinesFragment.java61
1 files changed, 36 insertions, 25 deletions
diff --git a/org.fox.ttrss/src/main/java/org/fox/ttrss/HeadlinesFragment.java b/org.fox.ttrss/src/main/java/org/fox/ttrss/HeadlinesFragment.java
index 03b39868..c5bf5337 100755
--- a/org.fox.ttrss/src/main/java/org/fox/ttrss/HeadlinesFragment.java
+++ b/org.fox.ttrss/src/main/java/org/fox/ttrss/HeadlinesFragment.java
@@ -1147,6 +1147,7 @@ public class HeadlinesFragment extends Fragment implements OnItemClickListener,
if (!posterUri.equals(holder.flavorImageView.getTag())) {
+ holder.flavorImageView.setTag("LOADING:" + posterUri);
ImageAware imageAware = new ImageViewAware(holder.flavorImageView, false);
m_imageLoader.displayImage(posterUri, imageAware, displayImageOptions, new ImageLoadingListener() {
@@ -1161,13 +1162,16 @@ public class HeadlinesFragment extends Fragment implements OnItemClickListener,
}
@Override
- public void onLoadingComplete(String s, View view, Bitmap bitmap) {
- holder.flavorImageLoadingBar.setVisibility(View.GONE);
- holder.flavorImageView.setTag(posterUri);
- holder.flavorImageView.setVisibility(View.VISIBLE);
- holder.flavorVideoKindView.setVisibility(View.VISIBLE);
+ public void onLoadingComplete(String imageUri, View view, Bitmap bitmap) {
+ if (("LOADING:" + imageUri).equals(view.getTag())) {
- maybeRepositionFlavorImage(view, bitmap, holder);
+ holder.flavorImageLoadingBar.setVisibility(View.GONE);
+ holder.flavorImageView.setTag(posterUri);
+ holder.flavorImageView.setVisibility(View.VISIBLE);
+ holder.flavorVideoKindView.setVisibility(View.VISIBLE);
+
+ maybeRepositionFlavorImage(view, bitmap, holder);
+ }
}
@Override
@@ -1252,6 +1256,8 @@ public class HeadlinesFragment extends Fragment implements OnItemClickListener,
holder.flavorVideoKindView.setImageResource(R.drawable.ic_youtube_play);
if (!thumbUri.equals(holder.flavorImageView.getTag())) {
+ holder.flavorImageView.setTag("LOADING:" + thumbUri);
+
ImageAware imageAware = new ImageViewAware(holder.flavorImageView, false);
m_imageLoader.displayImage(thumbUri, imageAware, displayImageOptions, new ImageLoadingListener() {
@Override
@@ -1265,13 +1271,15 @@ public class HeadlinesFragment extends Fragment implements OnItemClickListener,
}
@Override
- public void onLoadingComplete(String s, View view, Bitmap bitmap) {
- holder.flavorImageLoadingBar.setVisibility(View.GONE);
- holder.flavorImageView.setTag(thumbUri);
- holder.flavorImageView.setVisibility(View.VISIBLE);
- holder.flavorVideoKindView.setVisibility(View.VISIBLE);
+ public void onLoadingComplete(String imageUri, View view, Bitmap bitmap) {
+ if (("LOADING:" + imageUri).equals(view.getTag())) {
+ holder.flavorImageLoadingBar.setVisibility(View.GONE);
+ holder.flavorImageView.setTag(thumbUri);
+ holder.flavorImageView.setVisibility(View.VISIBLE);
+ holder.flavorVideoKindView.setVisibility(View.VISIBLE);
- maybeRepositionFlavorImage(view, bitmap, holder);
+ maybeRepositionFlavorImage(view, bitmap, holder);
+ }
}
@Override
@@ -1366,6 +1374,7 @@ public class HeadlinesFragment extends Fragment implements OnItemClickListener,
if (!imgSrc.equals(holder.flavorImageView.getTag())) {
+ holder.flavorImageView.setTag("LOADING:" + imgSrc);
ImageAware imageAware = new ImageViewAware(holder.flavorImageView, false);
final String finalImgSrc = imgSrc;
@@ -1379,24 +1388,26 @@ public class HeadlinesFragment extends Fragment implements OnItemClickListener,
}
@Override
- public void onLoadingComplete(String arg0,
+ public void onLoadingComplete(String imageUri,
View view, Bitmap bitmap) {
- if (!isAdded() || bitmap == null) return;
- holder.flavorImageLoadingBar.setVisibility(View.GONE);
- holder.flavorImageView.setTag(finalImgSrc);
+ if (("LOADING:" + imageUri).equals(view.getTag())) {
- if (bitmap.getWidth() > FLAVOR_IMG_MIN_SIZE && bitmap.getHeight() > FLAVOR_IMG_MIN_SIZE) {
- holder.flavorImageView.setVisibility(View.VISIBLE);
+ holder.flavorImageLoadingBar.setVisibility(View.GONE);
+ holder.flavorImageView.setTag(finalImgSrc);
- if (article.flavorImageCount > 1) {
- holder.flavorVideoKindView.setVisibility(View.VISIBLE);
- holder.flavorVideoKindView.setImageResource(R.drawable.ic_image_album);
- }
+ if (bitmap.getWidth() > FLAVOR_IMG_MIN_SIZE && bitmap.getHeight() > FLAVOR_IMG_MIN_SIZE) {
+ holder.flavorImageView.setVisibility(View.VISIBLE);
- maybeRepositionFlavorImage(view, bitmap, holder);
- } else {
- holder.flavorImageView.setImageDrawable(null);
+ if (article.flavorImageCount > 1) {
+ holder.flavorVideoKindView.setVisibility(View.VISIBLE);
+ holder.flavorVideoKindView.setImageResource(R.drawable.ic_image_album);
+ }
+
+ maybeRepositionFlavorImage(view, bitmap, holder);
+ } else {
+ holder.flavorImageView.setImageDrawable(null);
+ }
}
}