From 745d7271733300cc7987acf6c83da2e4ab346558 Mon Sep 17 00:00:00 2001 From: stom79 Date: Sat, 20 Oct 2018 15:16:57 +0200 Subject: [PATCH] Improve when no comments --- .../etalab/mastodon/activities/PeertubeActivity.java | 7 ++++++- .../main/java/fr/gouv/etalab/mastodon/client/API.java | 1 + .../gouv/etalab/mastodon/client/Entities/Peertube.java | 9 +++++++++ app/src/main/res/layout/activity_peertube.xml | 1 + app/src/main/res/values/strings.xml | 1 + 5 files changed, 18 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/fr/gouv/etalab/mastodon/activities/PeertubeActivity.java b/app/src/main/java/fr/gouv/etalab/mastodon/activities/PeertubeActivity.java index 030d48027..0ff61c576 100644 --- a/app/src/main/java/fr/gouv/etalab/mastodon/activities/PeertubeActivity.java +++ b/app/src/main/java/fr/gouv/etalab/mastodon/activities/PeertubeActivity.java @@ -83,6 +83,7 @@ public class PeertubeActivity extends BaseActivity implements OnRetrievePeertube private MediaPlayer mediaPlayer; private FullScreenMediaController fullScreenMediaController; private int stopPosition; + private Peertube peertube; @Override protected void onCreate(Bundle savedInstanceState) { @@ -224,7 +225,7 @@ public class PeertubeActivity extends BaseActivity implements OnRetrievePeertube loader.setVisibility(View.GONE); return; } - Peertube peertube = apiResponse.getPeertubes().get(0); + peertube = apiResponse.getPeertubes().get(0); SharedPreferences sharedpreferences = getSharedPreferences(Helper.APP_PREFS, Context.MODE_PRIVATE); setTitle(peertube.getName()); @@ -316,6 +317,10 @@ public class PeertubeActivity extends BaseActivity implements OnRetrievePeertube List statuses = apiResponse.getStatuses(); if( statuses == null || statuses.size() == 0){ RelativeLayout no_action = findViewById(R.id.no_action); + if( peertube != null && !peertube.isCommentsEnabled()) { + TextView no_action_text = findViewById(R.id.no_action_text); + no_action_text.setText(getString(R.string.comment_no_allowed_peertube)); + } no_action.setVisibility(View.VISIBLE); RecyclerView lv_comments = findViewById(R.id.peertube_comments); lv_comments.setVisibility(View.GONE); diff --git a/app/src/main/java/fr/gouv/etalab/mastodon/client/API.java b/app/src/main/java/fr/gouv/etalab/mastodon/client/API.java index 7433cd77e..9b891feb0 100644 --- a/app/src/main/java/fr/gouv/etalab/mastodon/client/API.java +++ b/app/src/main/java/fr/gouv/etalab/mastodon/client/API.java @@ -2442,6 +2442,7 @@ public class API { peertube.setThumbnailPath(resobj.get("thumbnailPath").toString()); peertube.setView(Integer.parseInt(resobj.get("views").toString())); peertube.setLike(Integer.parseInt(resobj.get("likes").toString())); + peertube.setCommentsEnabled(Boolean.parseBoolean(resobj.get("commentsEnabled").toString())); peertube.setDislike(Integer.parseInt(resobj.get("dislikes").toString())); peertube.setDuration(Integer.parseInt(resobj.get("duration").toString())); peertube.setAccount(parseAccountResponsePeertube(context, instance, resobj.getJSONObject("account"))); diff --git a/app/src/main/java/fr/gouv/etalab/mastodon/client/Entities/Peertube.java b/app/src/main/java/fr/gouv/etalab/mastodon/client/Entities/Peertube.java index 822265878..0febba666 100644 --- a/app/src/main/java/fr/gouv/etalab/mastodon/client/Entities/Peertube.java +++ b/app/src/main/java/fr/gouv/etalab/mastodon/client/Entities/Peertube.java @@ -39,6 +39,7 @@ public class Peertube { private String instance; private Account account; private List resolution; + private boolean commentsEnabled; public Peertube() { @@ -198,4 +199,12 @@ public class Peertube { public void setHost(String host) { this.host = host; } + + public boolean isCommentsEnabled() { + return commentsEnabled; + } + + public void setCommentsEnabled(boolean commentsEnabled) { + this.commentsEnabled = commentsEnabled; + } } diff --git a/app/src/main/res/layout/activity_peertube.xml b/app/src/main/res/layout/activity_peertube.xml index 5f125a5b5..e087e7700 100644 --- a/app/src/main/res/layout/activity_peertube.xml +++ b/app/src/main/res/layout/activity_peertube.xml @@ -173,6 +173,7 @@ android:layout_height="wrap_content"> %s views Duration: %s Add an instance + Comments are not enabled on this video! Never