diff --git a/app/src/main/java/fr/gouv/etalab/mastodon/client/Entities/Status.java b/app/src/main/java/fr/gouv/etalab/mastodon/client/Entities/Status.java index 38a9c6c25..315243f5b 100644 --- a/app/src/main/java/fr/gouv/etalab/mastodon/client/Entities/Status.java +++ b/app/src/main/java/fr/gouv/etalab/mastodon/client/Entities/Status.java @@ -45,6 +45,7 @@ import com.bumptech.glide.request.transition.Transition; import java.util.ArrayList; import java.util.Date; import java.util.List; +import java.util.Objects; import java.util.regex.Matcher; import fr.gouv.etalab.mastodon.activities.HashTagActivity; @@ -741,4 +742,12 @@ public class Status implements Parcelable { public void setFetchMore(boolean fetchMore) { this.fetchMore = fetchMore; } + + + + @Override + public boolean equals(Object otherStatus) { + return otherStatus != null && (otherStatus == this || otherStatus instanceof Status && this.getId().equals(((Status) otherStatus).getId())); + } + } diff --git a/app/src/main/java/fr/gouv/etalab/mastodon/fragments/DisplayStatusFragment.java b/app/src/main/java/fr/gouv/etalab/mastodon/fragments/DisplayStatusFragment.java index e1bf066dc..77cadd20a 100644 --- a/app/src/main/java/fr/gouv/etalab/mastodon/fragments/DisplayStatusFragment.java +++ b/app/src/main/java/fr/gouv/etalab/mastodon/fragments/DisplayStatusFragment.java @@ -285,11 +285,9 @@ public class DisplayStatusFragment extends Fragment implements OnRetrieveFeedsIn int lastLoop = 0; for (Status tmpStatus : statuses) { //Mark status at new ones when their id is greater than the bookmark id / Also increments counter - if (bookmark != null) { - if (Long.parseLong(tmpStatus.getId()) > Long.parseLong(bookmark)) { - tmpStatus.setNew(true); - MainActivity.countNewStatus++; - } + if (Long.parseLong(tmpStatus.getId()) > Long.parseLong(bookmark)) { + tmpStatus.setNew(true); + MainActivity.countNewStatus++; } //Put the toot at its place in the list (id desc) if (this.statuses != null) {