From a5a06b260e7cf1e9b07c99e1da90eaf7fc7f6b62 Mon Sep 17 00:00:00 2001 From: Portree-Kid Date: Thu, 21 Feb 2013 20:36:58 +0100 Subject: Loading of Images outside the ui Thread Fixes #2214 --- main/src/cgeo/geocaching/CacheDetailActivity.java | 61 +++++++++++++++++------ 1 file changed, 46 insertions(+), 15 deletions(-) diff --git a/main/src/cgeo/geocaching/CacheDetailActivity.java b/main/src/cgeo/geocaching/CacheDetailActivity.java index f35d599..0cf016d 100644 --- a/main/src/cgeo/geocaching/CacheDetailActivity.java +++ b/main/src/cgeo/geocaching/CacheDetailActivity.java @@ -1883,6 +1883,21 @@ public class CacheDetailActivity extends AbstractViewPagerActivity *
@@ -1899,20 +1914,6 @@ public class CacheDetailActivity extends AbstractViewPagerActivity 0) { + // Complete view: parse again with loading images - if necessary ! If there are any images causing problems the user can see at least the preview + LogImageLoader loader = new LogImageLoader(holder); + loader.execute(new String[] { logText }); + } } else { holder.text.setText(logText); @@ -2131,6 +2140,28 @@ public class CacheDetailActivity extends AbstractViewPagerActivity + { + private LogViewHolder holder; + + public LogImageLoader(LogViewHolder holder) { + this.holder = holder; + } + + @Override + protected Spanned doInBackground(String... logtext) { + return Html.fromHtml(logtext[0], new HtmlImage(cache.getGeocode(), false, cache.getListId(), false), null); //, TextView.BufferType.SPANNABLE) + } + + @Override + protected void onPostExecute(Spanned result) { + holder.text.setText(result); + } + + } + private class LogViewHolder { final TextView date; final TextView type; -- cgit v1.1