aboutsummaryrefslogtreecommitdiffstats
path: root/main/src
diff options
context:
space:
mode:
Diffstat (limited to 'main/src')
-rw-r--r--main/src/cgeo/geocaching/network/HtmlImage.java12
-rw-r--r--main/src/cgeo/geocaching/ui/ImagesList.java7
2 files changed, 8 insertions, 11 deletions
diff --git a/main/src/cgeo/geocaching/network/HtmlImage.java b/main/src/cgeo/geocaching/network/HtmlImage.java
index 9f60200..bebce42 100644
--- a/main/src/cgeo/geocaching/network/HtmlImage.java
+++ b/main/src/cgeo/geocaching/network/HtmlImage.java
@@ -78,7 +78,6 @@ public class HtmlImage implements Html.ImageGetter {
final private boolean returnErrorImage;
final private int listId;
final private boolean onlySave;
- final private BitmapFactory.Options bfOptions;
final private int maxWidth;
final private int maxHeight;
final private Resources resources;
@@ -97,10 +96,6 @@ public class HtmlImage implements Html.ImageGetter {
this.listId = listId;
this.onlySave = onlySave;
- bfOptions = new BitmapFactory.Options();
- bfOptions.inTempStorage = new byte[16 * 1024];
- bfOptions.inPreferredConfig = Bitmap.Config.RGB_565;
-
Point displaySize = Compatibility.getDisplaySize();
this.maxWidth = displaySize.x - 25;
this.maxHeight = displaySize.y - 25;
@@ -299,7 +294,10 @@ public class HtmlImage implements Html.ImageGetter {
private Bitmap loadCachedImage(final File file, final boolean forceKeep) {
if (file.exists()) {
if (listId >= StoredList.STANDARD_LIST_ID || file.lastModified() > (new Date().getTime() - (24 * 60 * 60 * 1000)) || forceKeep) {
- setSampleSize(file);
+ final BitmapFactory.Options bfOptions = new BitmapFactory.Options();
+ bfOptions.inTempStorage = new byte[16 * 1024];
+ bfOptions.inPreferredConfig = Bitmap.Config.RGB_565;
+ setSampleSize(file, bfOptions);
final Bitmap image = BitmapFactory.decodeFile(file.getPath(), bfOptions);
if (image == null) {
Log.e("Cannot decode bitmap from " + file.getPath());
@@ -310,7 +308,7 @@ public class HtmlImage implements Html.ImageGetter {
return null;
}
- private void setSampleSize(final File file) {
+ private void setSampleSize(final File file, final BitmapFactory.Options bfOptions) {
//Decode image size only
BitmapFactory.Options options = new BitmapFactory.Options();
options.inJustDecodeBounds = true;
diff --git a/main/src/cgeo/geocaching/ui/ImagesList.java b/main/src/cgeo/geocaching/ui/ImagesList.java
index 3848398..1cd5a48 100644
--- a/main/src/cgeo/geocaching/ui/ImagesList.java
+++ b/main/src/cgeo/geocaching/ui/ImagesList.java
@@ -9,7 +9,7 @@ import cgeo.geocaching.utils.Log;
import org.apache.commons.io.IOUtils;
import org.apache.commons.lang3.StringUtils;
-import rx.android.schedulers.AndroidSchedulers;
+import rx.android.observables.AndroidObservable;
import rx.subscriptions.CompositeSubscription;
import rx.util.functions.Action1;
@@ -97,14 +97,13 @@ public class ImagesList {
descView.setVisibility(View.VISIBLE);
}
- subscriptions.add(imgGetter.fetchDrawable(img.getUrl())
- .observeOn(AndroidSchedulers.mainThread()).subscribe(new Action1<BitmapDrawable>() {
+ subscriptions.add(AndroidObservable.fromActivity(activity, imgGetter.fetchDrawable(img.getUrl()))
+ .subscribe(new Action1<BitmapDrawable>() {
@Override
public void call(final BitmapDrawable image) {
display(image, img, rowView);
}
}));
-
imagesView.addView(rowView);
}
}