From c51b1fd399cf4ea8c4752f074804ce55c71e685a Mon Sep 17 00:00:00 2001 From: Alinson Xavier Date: Sun, 3 Apr 2016 07:51:54 -0400 Subject: [PATCH] Remove progress bar; switch to BaseTask --- .../uhabits/fragments/ListHabitsFragment.java | 1 - .../uhabits/loaders/HabitListLoader.java | 73 +++---------------- 2 files changed, 10 insertions(+), 64 deletions(-) diff --git a/app/src/main/java/org/isoron/uhabits/fragments/ListHabitsFragment.java b/app/src/main/java/org/isoron/uhabits/fragments/ListHabitsFragment.java index 62bbaaf47..f6f24dcc8 100644 --- a/app/src/main/java/org/isoron/uhabits/fragments/ListHabitsFragment.java +++ b/app/src/main/java/org/isoron/uhabits/fragments/ListHabitsFragment.java @@ -115,7 +115,6 @@ public class ListHabitsFragment extends Fragment loader.setListener(this); loader.setCheckmarkCount(helper.getButtonCount()); - loader.setProgressBar(progressBar); llHint.setOnClickListener(this); tvStarEmpty.setTypeface(helper.getFontawesome()); diff --git a/app/src/main/java/org/isoron/uhabits/loaders/HabitListLoader.java b/app/src/main/java/org/isoron/uhabits/loaders/HabitListLoader.java index 48a736455..0f35ba44c 100644 --- a/app/src/main/java/org/isoron/uhabits/loaders/HabitListLoader.java +++ b/app/src/main/java/org/isoron/uhabits/loaders/HabitListLoader.java @@ -19,13 +19,9 @@ package org.isoron.uhabits.loaders; -import android.os.AsyncTask; -import android.os.Handler; -import android.view.View; -import android.widget.ProgressBar; - import org.isoron.uhabits.helpers.DateHelper; import org.isoron.uhabits.models.Habit; +import org.isoron.uhabits.tasks.BaseTask; import java.util.HashMap; import java.util.List; @@ -37,9 +33,8 @@ public class HabitListLoader void onLoadFinished(); } - private AsyncTask currentFetchTask; + private BaseTask currentFetchTask; private int checkmarkCount; - private ProgressBar progressBar; private Listener listener; private Long lastLoadTimestamp; @@ -56,11 +51,6 @@ public class HabitListLoader this.includeArchived = includeArchived; } - public void setProgressBar(ProgressBar progressBar) - { - this.progressBar = progressBar; - } - public void setCheckmarkCount(int checkmarkCount) { this.checkmarkCount = checkmarkCount; @@ -98,7 +88,7 @@ public class HabitListLoader { if (currentFetchTask != null) currentFetchTask.cancel(true); - currentFetchTask = new AsyncTask() + currentFetchTask = new BaseTask() { public HashMap newHabits; public HashMap newCheckmarks; @@ -106,7 +96,7 @@ public class HabitListLoader public List newHabitList; @Override - protected Void doInBackground(Void... params) + protected void doInBackground() { newHabits = new HashMap<>(); newCheckmarks = new HashMap<>(); @@ -136,12 +126,12 @@ public class HabitListLoader commit(); - if(!updateScoresAndCheckmarks) return null; + if(!updateScoresAndCheckmarks) return; int current = 0; for (Habit h : newHabitList) { - if (isCancelled()) return null; + if (isCancelled()) return; Long id = h.getId(); newScores.put(id, h.scores.getTodayValue()); @@ -149,8 +139,6 @@ public class HabitListLoader publishProgress(current++, newHabits.size()); } - - return null; } private void commit() @@ -161,26 +149,9 @@ public class HabitListLoader habitsList = newHabitList; } - @Override - protected void onPreExecute() - { - if(progressBar != null) - { - progressBar.setIndeterminate(false); - progressBar.setProgress(0); - progressBar.setVisibility(View.VISIBLE); - } - } - @Override protected void onProgressUpdate(Integer... values) { - if(progressBar != null) - { - progressBar.setMax(values[1]); - progressBar.setProgress(values[0]); - } - if(listener != null) listener.onLoadFinished(); } @@ -189,7 +160,6 @@ public class HabitListLoader { if (isCancelled()) return; - if(progressBar != null) progressBar.setVisibility(View.INVISIBLE); lastLoadTimestamp = DateHelper.getStartOfToday(); currentFetchTask = null; @@ -203,50 +173,27 @@ public class HabitListLoader public void updateHabit(final Long id) { - new AsyncTask() + new BaseTask() { @Override - protected Void doInBackground(Void... params) + protected void doInBackground() { long dateTo = DateHelper.getStartOfDay(DateHelper.getLocalTime()); long dateFrom = dateTo - (checkmarkCount - 1) * DateHelper.millisecondsInOneDay; Habit h = Habit.get(id); + if(h == null) return; + habits.put(id, h); scores.put(id, h.scores.getTodayValue()); checkmarks.put(id, h.checkmarks.getValues(dateFrom, dateTo)); - - return null; - } - - @Override - protected void onPreExecute() - { - new Handler().postDelayed(new Runnable() - { - @Override - public void run() - { - if (getStatus() == Status.RUNNING) - { - if(progressBar != null) - { - progressBar.setIndeterminate(true); - progressBar.setVisibility(View.VISIBLE); - } - } - } - }, 500); } @Override protected void onPostExecute(Void aVoid) { - if(progressBar != null) progressBar.setVisibility(View.GONE); - if(listener != null) listener.onLoadFinished(); - } }.execute(); }