summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorstom79 <tschneider.ac@gmail.com>2018-12-28 12:09:06 +0100
committerstom79 <tschneider.ac@gmail.com>2018-12-28 12:09:06 +0100
commit2ea75860a6a72de18b617dd9ba74d5bdc2e663c3 (patch)
treefb35d651ba5db2a7c208be8597866138bf79796f
parent0e396655c6f4a868a482bbeb098fb84118986c11 (diff)
Small fixes for nsfw
-rw-r--r--app/src/main/java/fr/gouv/etalab/mastodon/fragments/DisplayStatusFragment.java16
1 files changed, 13 insertions, 3 deletions
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 87c0682a9..17bb3169c 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
@@ -794,9 +794,19 @@ public class DisplayStatusFragment extends Fragment implements OnRetrieveFeedsIn
for (int i = statuses.size() - 1; i >= 0; i--) {
if( this.statuses != null) {
if( type != RetrieveFeedsAsyncTask.Type.HOME){
- if( Long.parseLong(statuses.get(i).getId()) > Long.parseLong(this.statuses.get(0).getId())) {
- inserted++;
- this.statuses.add(0, statuses.get(i));
+ if( tagTimeline == null || !tagTimeline.isART() || (tagTimeline.isART() && tagTimeline.isNSFW())) {
+ if (Long.parseLong(statuses.get(i).getId()) > Long.parseLong(this.statuses.get(0).getId())) {
+ inserted++;
+ this.statuses.add(0, statuses.get(i));
+ }
+ }else{
+ ArrayList<Status> safeStatuses = new ArrayList<>();
+ for(Status status: statuses){
+ if( !status.isSensitive())
+ safeStatuses.add(status);
+ }
+ this.statuses.addAll(safeStatuses);
+ statusListAdapter.notifyItemRangeInserted(0, safeStatuses.size());
}
}else {
if( lastReadToot != null && Long.parseLong(statuses.get(i).getId()) > Long.parseLong(lastReadToot)) {