From 29a41fb14ba7dd31c204f5721445e9fc109eab7b Mon Sep 17 00:00:00 2001 From: Alex Baker Date: Thu, 16 May 2019 14:11:16 -0500 Subject: [PATCH] Update sync indicator after one second --- .../todoroo/astrid/activity/TaskListFragment.java | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/com/todoroo/astrid/activity/TaskListFragment.java b/app/src/main/java/com/todoroo/astrid/activity/TaskListFragment.java index 42b15c96d..460d643c1 100644 --- a/app/src/main/java/com/todoroo/astrid/activity/TaskListFragment.java +++ b/app/src/main/java/com/todoroo/astrid/activity/TaskListFragment.java @@ -167,17 +167,26 @@ public final class TaskListFragment extends InjectingFragment disposables.add( syncAdapters .sync(true) - .subscribe( + .doOnSuccess( initiated -> { if (!initiated) { refresh(); } + }) + .delay(1, TimeUnit.SECONDS, AndroidSchedulers.mainThread()) + .subscribe( + initiated -> { + if (initiated) { + setSyncOngoing(); + } })); } - private void setSyncOngoing(final boolean ongoing) { + private void setSyncOngoing() { assertMainThread(); + boolean ongoing = preferences.isSyncOngoing(); + swipeRefreshLayout.setRefreshing(ongoing); emptyRefreshLayout.setRefreshing(ongoing); } @@ -505,7 +514,7 @@ public final class TaskListFragment extends InjectingFragment private void refresh() { loadTaskListContent(); - setSyncOngoing(preferences.isSyncOngoing()); + setSyncOngoing(); } public void loadTaskListContent() {