From d7e7d87d0edf0d3680373e30ae004a50020d6c20 Mon Sep 17 00:00:00 2001 From: Phillip Thelen Date: Mon, 30 Jan 2017 15:05:34 +0100 Subject: [PATCH] fix challenge refreshing --- .../social/challenges/ChallengeListFragment.java | 7 +++++-- .../habitrpgwrapper/lib/models/HabitRPGUser.java | 12 ++++++++---- 2 files changed, 13 insertions(+), 6 deletions(-) diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/social/challenges/ChallengeListFragment.java b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/social/challenges/ChallengeListFragment.java index eae9104d5..17b716fc4 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/social/challenges/ChallengeListFragment.java +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/social/challenges/ChallengeListFragment.java @@ -75,14 +75,15 @@ public class ChallengeListFragment extends BaseMainFragment implements SwipeRefr challenge.async().save(); } + setRefreshingIfVisible(swipeRefreshLayout, false); + setRefreshingIfVisible(swipeRefreshEmptyLayout, false); + if (viewUserChallengesOnly) { setChallengeEntries(userChallenges); } else { setChallengeEntries(challenges); } - setRefreshingIfVisible(swipeRefreshLayout, false); - setRefreshingIfVisible(swipeRefreshEmptyLayout, false); }, throwable -> { Log.e("ChallengeListFragment", "", throwable); @@ -160,8 +161,10 @@ public class ChallengeListFragment extends BaseMainFragment implements SwipeRefr } if (viewUserChallengesOnly && challenges.size() == 0) { swipeRefreshEmptyLayout.setVisibility(View.VISIBLE); + swipeRefreshLayout.setRefreshing(false); swipeRefreshLayout.setVisibility(View.GONE); } else { + swipeRefreshEmptyLayout.setRefreshing(false); swipeRefreshEmptyLayout.setVisibility(View.GONE); swipeRefreshLayout.setVisibility(View.VISIBLE); } diff --git a/Habitica/src/main/java/com/magicmicky/habitrpgwrapper/lib/models/HabitRPGUser.java b/Habitica/src/main/java/com/magicmicky/habitrpgwrapper/lib/models/HabitRPGUser.java index 6d9e56c48..d5c12f4c3 100644 --- a/Habitica/src/main/java/com/magicmicky/habitrpgwrapper/lib/models/HabitRPGUser.java +++ b/Habitica/src/main/java/com/magicmicky/habitrpgwrapper/lib/models/HabitRPGUser.java @@ -393,7 +393,7 @@ public class HabitRPGUser extends BaseModel { } List challenges = getChallengeList(); - + List newChallenges = new ArrayList<>(); if (getChallenges() != null) { for (String s : getChallenges()) { boolean challengeExistInDatabase = false; @@ -401,7 +401,8 @@ public class HabitRPGUser extends BaseModel { for (Challenge challenge : challenges) { if (challenge.id.equals(s)) { challengeExistInDatabase = true; - + challenges.remove(challenge); + newChallenges.add(challenge); break; } } @@ -411,12 +412,15 @@ public class HabitRPGUser extends BaseModel { challenge.id = s; challenge.user_id = id; - challenges.add(challenge); + newChallenges.add(challenge); } } + for (Challenge challenge : challenges) { + challenge.user_id = null; + } } - setChallengeList(challenges); + setChallengeList(newChallenges); super.save(); }