fixing workflow author avatar caching so the avatars load properly and are cached properly
Project: http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/commit/8371cca8 Tree: http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/tree/8371cca8 Diff: http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/diff/8371cca8 Branch: refs/heads/master Commit: 8371cca8ac7ba14af19240a21a735ebfd3bdf3c4 Parents: 977590e Author: larrytech7 <larrya...@gmail.com> Authored: Tue Aug 4 21:41:38 2015 +0100 Committer: larrytech7 <larrya...@gmail.com> Committed: Tue Aug 4 21:41:38 2015 +0100 ---------------------------------------------------------------------- .../adapters/FavoriteWorkflowAdapter.java | 3 +- .../mobile/fragments/WorkflowItemFragment.java | 51 +++----------------- 2 files changed, 7 insertions(+), 47 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/8371cca8/app/src/main/java/org/apache/taverna/mobile/adapters/FavoriteWorkflowAdapter.java ---------------------------------------------------------------------- diff --git a/app/src/main/java/org/apache/taverna/mobile/adapters/FavoriteWorkflowAdapter.java b/app/src/main/java/org/apache/taverna/mobile/adapters/FavoriteWorkflowAdapter.java index b7af828..c2bdfa6 100644 --- a/app/src/main/java/org/apache/taverna/mobile/adapters/FavoriteWorkflowAdapter.java +++ b/app/src/main/java/org/apache/taverna/mobile/adapters/FavoriteWorkflowAdapter.java @@ -29,7 +29,6 @@ import android.support.v7.widget.RecyclerView; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; -import android.widget.Button; import android.widget.ImageButton; import android.widget.ImageView; import android.widget.TextView; @@ -109,7 +108,7 @@ public class FavoriteWorkflowAdapter extends RecyclerView.Adapter<FavoriteWorkfl fViewHolder.btn_delete.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { - Toast.makeText(context, String.format("%s %s", "Removed " , String.valueOf(data.get(0))),Toast.LENGTH_SHORT).show(); + Toast.makeText(context, String.format("%s", "Removed "),Toast.LENGTH_SHORT).show(); try { favDB.delete(String.valueOf(data.get(0))); notifyDataSetChanged(); http://git-wip-us.apache.org/repos/asf/incubator-taverna-mobile/blob/8371cca8/app/src/main/java/org/apache/taverna/mobile/fragments/WorkflowItemFragment.java ---------------------------------------------------------------------- diff --git a/app/src/main/java/org/apache/taverna/mobile/fragments/WorkflowItemFragment.java b/app/src/main/java/org/apache/taverna/mobile/fragments/WorkflowItemFragment.java index 75053ce..73be405 100644 --- a/app/src/main/java/org/apache/taverna/mobile/fragments/WorkflowItemFragment.java +++ b/app/src/main/java/org/apache/taverna/mobile/fragments/WorkflowItemFragment.java @@ -137,7 +137,7 @@ public class WorkflowItemFragment extends Fragment implements SwipeRefreshLayout mParam2 = getArguments().getString(ARG_PARAM2); } in = AnimationUtils.loadAnimation(getActivity(),android.R.anim.slide_in_left); - List<Workflow> mlist = new ArrayList<Workflow>(); + // List<Workflow> mlist = new ArrayList<Workflow>(); // mlist.add(new Workflow(getActivity(),"Testing title","Larry","Ok testing",0,"http://127.0.0.1")); /* mlist.add(new Workflow(getActivity(),"Testing title","Larry","Ok testing",0,"http://127.0.0.1")); */ @@ -322,14 +322,14 @@ public class WorkflowItemFragment extends Fragment implements SwipeRefreshLayout @Override public void run() { synchronized (this) { + ((TextView) rootView.findViewById(R.id.workflow_author)).setText(author.getName()); //check whether avatar is already in the cache before trying to download it from remote resource - //((ImageView) rootView.findViewById(R.id.author_profile_image)) - if(avatarCache.get(author.getRow_id()) == null) + if(avatarCache.get(author.getDetails_uri()) == null) new AvatarLoader().execute(author.getDetails_uri(), author.getRow_id()); else{ - ((ImageView) rootView.findViewById(R.id.author_profile_image)).setImageBitmap(avatarCache.get(author.getRow_id())); + ((ImageView) rootView.findViewById(R.id.author_profile_image)).setImageBitmap(avatarCache.get(author.getDetails_uri())); } - System.out.println("Author cached ID "+author.getRow_id()); + System.out.println("Author cached ID "+author.getDetails_uri()); } } }); @@ -344,15 +344,8 @@ public class WorkflowItemFragment extends Fragment implements SwipeRefreshLayout ((Activity)cx).runOnUiThread(new Runnable() { @Override public void run() { - synchronized (this) { - try { - ((TextView) rootView.findViewById(R.id.workflow_author)).setText(author.getName()); - new LoadAuthorAvatar((ImageView) rootView.findViewById(R.id.author_profile_image),author.getRow_id()).execute(author.getAvatar_url()); - }catch(NullPointerException np){ - - } + new LoadAuthorAvatar((ImageView) rootView.findViewById(R.id.author_profile_image),author.getDetails_uri()).execute(author.getAvatar_url()); } - } }); } /** @@ -392,37 +385,5 @@ public class WorkflowItemFragment extends Fragment implements SwipeRefreshLayout //cache this image for faster loading next time avatarCache.put(row_id_as_key, bitmap); } - private Bitmap processingBitmap(Bitmap bmp){ - Bitmap bm1 = null; - Bitmap newBitmap = null; - - bm1 = bmp; - int w = bm1.getWidth(); - int h = bm1.getHeight(); - - Bitmap.Config config = bm1.getConfig(); - if(config == null){ - config = Bitmap.Config.ARGB_8888; - } - - newBitmap = Bitmap.createBitmap(w, h, config); - Canvas newCanvas = new Canvas(newBitmap); - newCanvas.drawColor(Color.WHITE); - - Paint paint = new Paint(); - paint.setColor(Color.TRANSPARENT); - Rect frame = new Rect( - (int)(w*0.05), - (int)(w*0.05), - (int)(w*0.95), - (int)(h*0.95)); - RectF frameF = new RectF(frame); - newCanvas.drawRoundRect(frameF, (float)(w*0.5), (float)(h*0.05), paint); - - paint.setXfermode(new PorterDuffXfermode(PorterDuff.Mode.SCREEN)); - newCanvas.drawBitmap(bm1, 0, 0, paint); - - return newBitmap; - } } }