aboutsummaryrefslogtreecommitdiff
path: root/app/src/main
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--app/src/main/AndroidManifest.xml6
-rw-r--r--app/src/main/java/ml/docilealligator/infinityforreddit/AppComponent.java6
-rw-r--r--app/src/main/java/ml/docilealligator/infinityforreddit/RPANBroadcast.java236
-rw-r--r--app/src/main/java/ml/docilealligator/infinityforreddit/RPANComment.java15
-rw-r--r--app/src/main/java/ml/docilealligator/infinityforreddit/activities/LinkResolverActivity.java5
-rw-r--r--app/src/main/java/ml/docilealligator/infinityforreddit/activities/MainActivity.java2
-rw-r--r--app/src/main/java/ml/docilealligator/infinityforreddit/activities/RPANActivity.java426
-rw-r--r--app/src/main/java/ml/docilealligator/infinityforreddit/adapters/RPANCommentStreamRecyclerViewAdapter.java89
-rw-r--r--app/src/main/java/ml/docilealligator/infinityforreddit/adapters/navigationdrawer/RedditSectionRecyclerViewAdapter.java6
-rw-r--r--app/src/main/java/ml/docilealligator/infinityforreddit/apis/Strapi.java13
-rw-r--r--app/src/main/java/ml/docilealligator/infinityforreddit/fragments/ViewRPANBroadcastFragment.java423
-rw-r--r--app/src/main/res/drawable-night/ic_rpan_24dp.xml9
-rw-r--r--app/src/main/res/drawable/ic_rpan_24dp.xml9
-rw-r--r--app/src/main/res/layout/activity_rpanactivity.xml23
-rw-r--r--app/src/main/res/layout/exo_rpan_broadcast_playback_control_view.xml192
-rw-r--r--app/src/main/res/layout/fragment_view_rpan_broadcast.xml15
-rw-r--r--app/src/main/res/layout/item_rpan_comment.xml38
-rw-r--r--app/src/main/res/menu/rpan_activity.xml15
-rw-r--r--app/src/main/res/values-cs/strings.xml6
-rw-r--r--app/src/main/res/values-de/strings.xml6
-rw-r--r--app/src/main/res/values-es/strings.xml6
-rw-r--r--app/src/main/res/values-fr/strings.xml6
-rw-r--r--app/src/main/res/values-it/strings.xml6
-rw-r--r--app/src/main/res/values-nl/strings.xml4
-rw-r--r--app/src/main/res/values-pt-rBR/strings.xml6
-rw-r--r--app/src/main/res/values-pt/strings.xml6
-rw-r--r--app/src/main/res/values-ro/strings.xml6
-rw-r--r--app/src/main/res/values-ru/strings.xml6
-rw-r--r--app/src/main/res/values-tr-rTR/strings.xml6
-rw-r--r--app/src/main/res/values-uk/strings.xml6
-rw-r--r--app/src/main/res/values-vi/strings.xml6
-rw-r--r--app/src/main/res/values-zh-rCN/strings.xml6
-rw-r--r--app/src/main/res/values/strings.xml7
33 files changed, 1 insertions, 1616 deletions
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 53394d05..eda0bba2 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -71,12 +71,6 @@
android:theme="@style/AppTheme.NoActionBar"
android:windowSoftInputMode="adjustResize" />
<activity
- android:name=".activities.RPANActivity"
- android:configChanges="orientation|screenSize|layoutDirection"
- android:parentActivityName=".activities.MainActivity"
- android:theme="@style/AppTheme.TranslucentStatusBar"
- android:windowSoftInputMode="adjustPan" />
- <activity
android:name=".activities.LockScreenActivity"
android:theme="@style/AppTheme.NoActionBar" />
<activity
diff --git a/app/src/main/java/ml/docilealligator/infinityforreddit/AppComponent.java b/app/src/main/java/ml/docilealligator/infinityforreddit/AppComponent.java
index 8b8f5533..2bf647ec 100644
--- a/app/src/main/java/ml/docilealligator/infinityforreddit/AppComponent.java
+++ b/app/src/main/java/ml/docilealligator/infinityforreddit/AppComponent.java
@@ -37,7 +37,6 @@ import ml.docilealligator.infinityforreddit.activities.PostLinkActivity;
import ml.docilealligator.infinityforreddit.activities.PostPollActivity;
import ml.docilealligator.infinityforreddit.activities.PostTextActivity;
import ml.docilealligator.infinityforreddit.activities.PostVideoActivity;
-import ml.docilealligator.infinityforreddit.activities.RPANActivity;
import ml.docilealligator.infinityforreddit.activities.ReportActivity;
import ml.docilealligator.infinityforreddit.activities.RulesActivity;
import ml.docilealligator.infinityforreddit.activities.SearchActivity;
@@ -81,7 +80,6 @@ import ml.docilealligator.infinityforreddit.fragments.UserListingFragment;
import ml.docilealligator.infinityforreddit.fragments.ViewImgurImageFragment;
import ml.docilealligator.infinityforreddit.fragments.ViewImgurVideoFragment;
import ml.docilealligator.infinityforreddit.fragments.ViewPostDetailFragment;
-import ml.docilealligator.infinityforreddit.fragments.ViewRPANBroadcastFragment;
import ml.docilealligator.infinityforreddit.fragments.ViewRedditGalleryImageOrGifFragment;
import ml.docilealligator.infinityforreddit.fragments.ViewRedditGalleryVideoFragment;
import ml.docilealligator.infinityforreddit.services.DownloadMediaService;
@@ -281,10 +279,6 @@ public interface AppComponent {
void inject(LockScreenActivity lockScreenActivity);
- void inject(RPANActivity rpanActivity);
-
- void inject(ViewRPANBroadcastFragment viewRPANBroadcastFragment);
-
void inject(PostGalleryActivity postGalleryActivity);
void inject(TrendingActivity trendingActivity);
diff --git a/app/src/main/java/ml/docilealligator/infinityforreddit/RPANBroadcast.java b/app/src/main/java/ml/docilealligator/infinityforreddit/RPANBroadcast.java
deleted file mode 100644
index d7c936c2..00000000
--- a/app/src/main/java/ml/docilealligator/infinityforreddit/RPANBroadcast.java
+++ /dev/null
@@ -1,236 +0,0 @@
-package ml.docilealligator.infinityforreddit;
-
-import android.os.Parcel;
-import android.os.Parcelable;
-
-import ml.docilealligator.infinityforreddit.utils.APIUtils;
-
-public class RPANBroadcast implements Parcelable {
-
- public int upvotes;
- public int downvotes;
- public int uniqueWatchers;
- public int continuousWatchers;
- public int totalContinuousWatchers;
- public boolean chatDisabled;
- public double broadcastTime;
- public double estimatedRemainingTime;
-
- public RPANPost rpanPost;
- public RPANStream rpanStream;
-
- public RPANBroadcast(int upvotes, int downvotes, int uniqueWatchers, int continuousWatchers,
- int totalContinuousWatchers, boolean chatDisabled, double broadcastTime,
- double estimatedRemainingTime, RPANPost rpanPost, RPANStream rpanStream) {
- this.upvotes = upvotes;
- this.downvotes = downvotes;
- this.uniqueWatchers = uniqueWatchers;
- this.continuousWatchers = continuousWatchers;
- this.totalContinuousWatchers = totalContinuousWatchers;
- this.chatDisabled = chatDisabled;
- this.broadcastTime = broadcastTime;
- this.estimatedRemainingTime = estimatedRemainingTime;
- this.rpanPost = rpanPost;
- this.rpanStream = rpanStream;
- }
-
- protected RPANBroadcast(Parcel in) {
- upvotes = in.readInt();
- downvotes = in.readInt();
- uniqueWatchers = in.readInt();
- continuousWatchers = in.readInt();
- totalContinuousWatchers = in.readInt();
- chatDisabled = in.readByte() != 0;
- broadcastTime = in.readDouble();
- estimatedRemainingTime = in.readDouble();
- rpanPost = in.readParcelable(RPANPost.class.getClassLoader());
- rpanStream = in.readParcelable(RPANStream.class.getClassLoader());
- }
-
- public static final Creator<RPANBroadcast> CREATOR = new Creator<RPANBroadcast>() {
- @Override
- public RPANBroadcast createFromParcel(Parcel in) {
- return new RPANBroadcast(in);
- }
-
- @Override
- public RPANBroadcast[] newArray(int size) {
- return new RPANBroadcast[size];
- }
- };
-
- @Override
- public int describeContents() {
- return 0;
- }
-
- @Override
- public void writeToParcel(Parcel parcel, int i) {
- parcel.writeInt(upvotes);
- parcel.writeInt(downvotes);
- parcel.writeInt(uniqueWatchers);
- parcel.writeInt(continuousWatchers);
- parcel.writeInt(totalContinuousWatchers);
- parcel.writeByte((byte) (chatDisabled ? 1 : 0));
- parcel.writeDouble(broadcastTime);
- parcel.writeDouble(estimatedRemainingTime);
- parcel.writeParcelable(rpanPost, i);
- parcel.writeParcelable(rpanStream, i);
- }
-
- public static class RPANPost implements Parcelable {
- public String fullname;
- public String title;
- public String subredditName;
- public String subredditIconUrl;
- public String username;
- public int postScore;
- public String voteState;
- public double upvoteRatio;
- public String postPermalink;
- public String rpanUrl;
- public boolean isNsfw;
- public boolean isLocked;
- public boolean isArchived;
- public boolean isSpoiler;
- public String suggestedCommentSort;
- public String liveCommentsWebsocketUrl;
-
- public RPANPost(String fullname, String title, String subredditName, String subredditIconUrl, String username,
- int postScore, String voteState, double upvoteRatio, String postPermalink, String rpanUrl,
- boolean isNsfw, boolean isLocked, boolean isArchived, boolean isSpoiler,
- String suggestedCommentSort, String liveCommentsWebsocketUrl) {
- this.fullname = fullname;
- this.title = title;
- this.subredditName = subredditName;
- this.subredditIconUrl = subredditIconUrl;
- this.username = username;
- this.postScore = postScore;
- this.voteState = voteState;
- this.upvoteRatio = upvoteRatio;
- this.postPermalink = APIUtils.API_BASE_URI + postPermalink;
- this.rpanUrl = rpanUrl;
- this.isNsfw = isNsfw;
- this.isLocked = isLocked;
- this.isArchived = isArchived;
- this.isSpoiler = isSpoiler;
- this.suggestedCommentSort = suggestedCommentSort;
- this.liveCommentsWebsocketUrl = liveCommentsWebsocketUrl;
- }
-
- protected RPANPost(Parcel in) {
- fullname = in.readString();
- title = in.readString();
- subredditName = in.readString();
- subredditIconUrl = in.readString();
- username = in.readString();
- postScore = in.readInt();
- voteState = in.readString();
- upvoteRatio = in.readDouble();
- postPermalink = in.readString();
- rpanUrl = in.readString();
- isNsfw = in.readByte() != 0;
- isLocked = in.readByte() != 0;
- isArchived = in.readByte() != 0;
- isSpoiler = in.readByte() != 0;
- suggestedCommentSort = in.readString();
- liveCommentsWebsocketUrl = in.readString();
- }
-
- public static final Creator<RPANPost> CREATOR = new Creator<RPANPost>() {
- @Override
- public RPANPost createFromParcel(Parcel in) {
- return new RPANPost(in);
- }
-
- @Override
- public RPANPost[] newArray(int size) {
- return new RPANPost[size];
- }
- };
-
- @Override
- public int describeContents() {
- return 0;
- }
-
- @Override
- public void writeToParcel(Parcel parcel, int i) {
- parcel.writeString(fullname);
- parcel.writeString(title);
- parcel.writeString(subredditName);
- parcel.writeString(subredditIconUrl);
- parcel.writeString(username);
- parcel.writeInt(postScore);
- parcel.writeString(voteState);
- parcel.writeDouble(upvoteRatio);
- parcel.writeString(postPermalink);
- parcel.writeString(rpanUrl);
- parcel.writeByte((byte) (isNsfw ? 1 : 0));
- parcel.writeByte((byte) (isLocked ? 1 : 0));
- parcel.writeByte((byte) (isArchived ? 1 : 0));
- parcel.writeByte((byte) (isSpoiler ? 1 : 0));
- parcel.writeString(suggestedCommentSort);
- parcel.writeString(liveCommentsWebsocketUrl);
- }
- }
-
- public static class RPANStream implements Parcelable {
- public String streamId;
- public String hlsUrl;
- public String thumbnail;
- public int width;
- public int height;
- public long publishAt;
- public String state;
-
- public RPANStream(String streamId, String hlsUrl, String thumbnail, int width, int height, long publishAt,
- String state) {
- this.streamId = streamId;
- this.hlsUrl = hlsUrl;
- this.thumbnail = thumbnail;
- this.width = width;
- this.height = height;
- this.publishAt = publishAt;
- this.state = state;
- }
-
- protected RPANStream(Parcel in) {
- streamId = in.readString();
- hlsUrl = in.readString();
- thumbnail = in.readString();
- width = in.readInt();
- height = in.readInt();
- publishAt = in.readLong();
- state = in.readString();
- }
-
- public static final Creator<RPANStream> CREATOR = new Creator<RPANStream>() {
- @Override
- public RPANStream createFromParcel(Parcel in) {
- return new RPANStream(in);
- }
-
- @Override
- public RPANStream[] newArray(int size) {
- return new RPANStream[size];
- }
- };
-
- @Override
- public int describeContents() {
- return 0;
- }
-
- @Override
- public void writeToParcel(Parcel parcel, int i) {
- parcel.writeString(streamId);
- parcel.writeString(hlsUrl);
- parcel.writeString(thumbnail);
- parcel.writeInt(width);
- parcel.writeInt(height);
- parcel.writeLong(publishAt);
- parcel.writeString(state);
- }
- }
-}
diff --git a/app/src/main/java/ml/docilealligator/infinityforreddit/RPANComment.java b/app/src/main/java/ml/docilealligator/infinityforreddit/RPANComment.java
deleted file mode 100644
index 077031bf..00000000
--- a/app/src/main/java/ml/docilealligator/infinityforreddit/RPANComment.java
+++ /dev/null
@@ -1,15 +0,0 @@
-package ml.docilealligator.infinityforreddit;
-
-public class RPANComment {
- public String author;
- public String authorIconImage;
- public String content;
- public long createdUTC;
-
- public RPANComment(String author, String authorIconImage, String content, long createdUTC) {
- this.author = author;
- this.authorIconImage = authorIconImage;
- this.content = content;
- this.createdUTC = createdUTC;
- }
-}
diff --git a/app/src/main/java/ml/docilealligator/infinityforreddit/activities/LinkResolverActivity.java b/app/src/main/java/ml/docilealligator/infinityforreddit/activities/LinkResolverActivity.java
index 5bba98bc..9fba9cdf 100644
--- a/app/src/main/java/ml/docilealligator/infinityforreddit/activities/LinkResolverActivity.java
+++ b/app/src/main/java/ml/docilealligator/infinityforreddit/activities/LinkResolverActivity.java
@@ -49,7 +49,6 @@ public class LinkResolverActivity extends AppCompatActivity {
private static final String IMGUR_GALLERY_PATTERN = "/gallery/\\w+/?";
private static final String IMGUR_ALBUM_PATTERN = "/(album|a)/\\w+/?";
private static final String IMGUR_IMAGE_PATTERN = "/\\w+/?";
- private static final String RPAN_BROADCAST_PATTERN = "/rpan/r/[\\w-]+/\\w+/?\\w+/?";
private static final String WIKI_PATTERN = "/[rR]/[\\w-]+/(wiki|w)(?:/[\\w-]+)*";
private static final String GOOGLE_AMP_PATTERN = "/amp/s/amp.reddit.com/.*";
private static final String STREAMABLE_PATTERN = "/\\w+/?";
@@ -248,10 +247,6 @@ public class LinkResolverActivity extends AppCompatActivity {
intent.putExtra(ViewSubredditDetailActivity.EXTRA_MESSAGE_FULLNAME, messageFullname);
intent.putExtra(ViewSubredditDetailActivity.EXTRA_NEW_ACCOUNT_NAME, newAccountName);
startActivity(intent);
- } else if (path.matches(RPAN_BROADCAST_PATTERN)) {
- Intent intent = new Intent(this, RPANActivity.class);
- intent.putExtra(RPANActivity.EXTRA_RPAN_BROADCAST_FULLNAME_OR_ID, path.substring(path.lastIndexOf('/') + 1));
- startActivity(intent);
} else if (authority.equals("redd.it") && path.matches(REDD_IT_POST_PATTERN)) {
Intent intent = new Intent(this, ViewPostDetailActivity.class);
intent.putExtra(ViewPostDetailActivity.EXTRA_POST_ID, path.substring(1));
diff --git a/app/src/main/java/ml/docilealligator/infinityforreddit/activities/MainActivity.java b/app/src/main/java/ml/docilealligator/infinityforreddit/activities/MainActivity.java
index 43d41e8a..bbc23811 100644
--- a/app/src/main/java/ml/docilealligator/infinityforreddit/activities/MainActivity.java
+++ b/app/src/main/java/ml/docilealligator/infinityforreddit/activities/MainActivity.java
@@ -779,8 +779,6 @@ public class MainActivity extends BaseActivity implements SortTypeSelectionCallb
intent.putExtra(SubscribedThingListingActivity.EXTRA_SHOW_MULTIREDDITS, true);
} else if (stringId == R.string.history) {
intent = new Intent(MainActivity.this, HistoryActivity.class);
- } else if (stringId == R.string.rpan) {
- intent = new Intent(MainActivity.this, RPANActivity.class);
} else if (stringId == R.string.trending) {
intent = new Intent(MainActivity.this, TrendingActivity.class);
} else if (stringId == R.string.upvoted) {
diff --git a/app/src/main/java/ml/docilealligator/infinityforreddit/activities/RPANActivity.java b/app/src/main/java/ml/docilealligator/infinityforreddit/activities/RPANActivity.java
deleted file mode 100644
index ecc459a4..00000000
--- a/app/src/main/java/ml/docilealligator/infinityforreddit/activities/RPANActivity.java
+++ /dev/null
@@ -1,426 +0,0 @@
-package ml.docilealligator.infinityforreddit.activities;
-
-import android.content.ActivityNotFoundException;
-import android.content.Intent;
-import android.content.SharedPreferences;
-import android.graphics.Color;
-import android.graphics.Typeface;
-import android.graphics.drawable.ColorDrawable;
-import android.graphics.drawable.Drawable;
-import android.media.AudioManager;
-import android.os.Bundle;
-import android.os.Handler;
-import android.text.Html;
-import android.view.Menu;
-import android.view.MenuItem;
-import android.view.View;
-import android.widget.ProgressBar;
-import android.widget.Toast;
-
-import androidx.annotation.NonNull;
-import androidx.annotation.Nullable;
-import androidx.appcompat.app.ActionBar;
-import androidx.appcompat.app.AppCompatActivity;
-import androidx.coordinatorlayout.widget.CoordinatorLayout;
-import androidx.fragment.app.Fragment;
-import androidx.fragment.app.FragmentActivity;
-import androidx.recyclerview.widget.RecyclerView;
-import androidx.viewpager2.adapter.FragmentStateAdapter;
-import androidx.viewpager2.widget.ViewPager2;
-
-import com.evernote.android.state.State;
-import com.google.android.material.snackbar.Snackbar;
-import com.livefront.bridge.Bridge;
-
-import org.greenrobot.eventbus.EventBus;
-import org.json.JSONArray;
-import org.json.JSONException;
-import org.json.JSONObject;
-
-import java.io.IOException;
-import java.lang.reflect.Field;
-import java.util.ArrayList;
-import java.util.concurrent.Executor;
-
-import javax.inject.Inject;
-import javax.inject.Named;
-
-import butterknife.BindView;
-import butterknife.ButterKnife;
-import ml.docilealligator.infinityforreddit.CustomFontReceiver;
-import ml.docilealligator.infinityforreddit.Infinity;
-import ml.docilealligator.infinityforreddit.R;
-import ml.docilealligator.infinityforreddit.RPANBroadcast;
-import ml.docilealligator.infinityforreddit.apis.Strapi;
-import ml.docilealligator.infinityforreddit.customtheme.CustomThemeWrapper;
-import ml.docilealligator.infinityforreddit.font.ContentFontFamily;
-import ml.docilealligator.infinityforreddit.font.ContentFontStyle;
-import ml.docilealligator.infinityforreddit.font.FontFamily;
-import ml.docilealligator.infinityforreddit.font.FontStyle;
-import ml.docilealligator.infinityforreddit.font.TitleFontFamily;
-import ml.docilealligator.infinityforreddit.font.TitleFontStyle;
-import ml.docilealligator.infinityforreddit.fragments.ViewRPANBroadcastFragment;
-import ml.docilealligator.infinityforreddit.utils.JSONUtils;
-import ml.docilealligator.infinityforreddit.utils.SharedPreferencesUtils;
-import ml.docilealligator.infinityforreddit.utils.Utils;
-import okhttp3.ResponseBody;
-import retrofit2.Call;
-import retrofit2.Callback;
-import retrofit2.Response;
-import retrofit2.Retrofit;
-
-public class RPANActivity extends AppCompatActivity implements CustomFontReceiver {
-
- public static final String EXTRA_RPAN_BROADCAST_FULLNAME_OR_ID = "ERBFOI";
-
- @BindView(R.id.coordinator_layout_rpan_activity)
- CoordinatorLayout coordinatorLayout;
- @BindView(R.id.view_pager_2_rpan_activity)
- ViewPager2 viewPager2;
- @BindView(R.id.progress_bar_rpan_activity)
- ProgressBar progressBar;
- @Inject
- @Named("strapi")
- Retrofit strapiRetrofit;
- @Inject
- @Named("default")
- SharedPreferences mSharedPreferences;
- @Inject
- CustomThemeWrapper mCustomThemeWrapper;
- @Inject
- Executor mExecutor;
- @State
- ArrayList<RPANBroadcast> rpanBroadcasts;
- @State
- String nextCursor;
- public Typeface typeface;
- private SectionsPagerAdapter sectionsPagerAdapter;
-
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- ((Infinity) getApplication()).getAppComponent().inject(this);
-
- super.onCreate(savedInstanceState);
-
- getTheme().applyStyle(R.style.Theme_Normal, true);
-
- getTheme().applyStyle(FontStyle.valueOf(mSharedPreferences
- .getString(SharedPreferencesUtils.FONT_SIZE_KEY, FontStyle.Normal.name())).getResId(), true);
-
- getTheme().applyStyle(TitleFontStyle.valueOf(mSharedPreferences
- .getString(SharedPreferencesUtils.TITLE_FONT_SIZE_KEY, TitleFontStyle.Normal.name())).getResId(), true);
-
- getTheme().applyStyle(ContentFontStyle.valueOf(mSharedPreferences
- .getString(SharedPreferencesUtils.CONTENT_FONT_SIZE_KEY, ContentFontStyle.Normal.name())).getResId(), true);
-
- getTheme().applyStyle(FontFamily.valueOf(mSharedPreferences
- .getString(SharedPreferencesUtils.FONT_FAMILY_KEY, FontFamily.Default.name())).getResId(), true);
-
- getTheme().applyStyle(TitleFontFamily.valueOf(mSharedPreferences
- .getString(SharedPreferencesUtils.TITLE_FONT_FAMILY_KEY, TitleFontFamily.Default.name())).getResId(), true);
-
- getTheme().applyStyle(ContentFontFamily.valueOf(mSharedPreferences
- .getString(SharedPreferencesUtils.CONTENT_FONT_FAMILY_KEY, ContentFontFamily.Default.name())).getResId(), true);
-
- setContentView(R.layout.activity_rpanactivity);
-
- setVolumeControlStream(AudioManager.STREAM_MUSIC);
-
- Bridge.restoreInstanceState(this, savedInstanceState);
-
- ButterKnife.bind(this);
-
- ActionBar actionBar = getSupportActionBar();
- Drawable upArrow = getResources().getDrawable(R.drawable.ic_arrow_back_white_24dp);
- actionBar.setHomeAsUpIndicator(upArrow);
- actionBar.setBackgroundDrawable(new ColorDrawable(Color.parseColor("#00000000")));
- actionBar.setTitle(Utils.getTabTextWithCustomFont(typeface, Html.fromHtml("<font color=\"#FFFFFF\">" + getString(R.string.rpan_activity_label) + "</font>")));
-
- if (rpanBroadcasts == null) {
- loadRPANVideos();
- } else {
- initializeViewPager();
- }
- }
-
- private void loadRPANVideos() {
- String rpanBroadcastFullNameOrId = getIntent().getStringExtra(EXTRA_RPAN_BROADCAST_FULLNAME_OR_ID);
- if (rpanBroadcastFullNameOrId == null) {
- strapiRetrofit.create(Strapi.class).getAllBroadcasts().enqueue(new Callback<String>() {
- @Override
- public void onResponse(@NonNull Call<String> call, @NonNull Response<String> response) {
- progressBar.setVisibility(View.GONE);
- if (response.isSuccessful()) {
- parseRPANBroadcasts(response.body());
- } else {
- try {
- ResponseBody responseBody = response.errorBody();
- if (responseBody != null) {
- JSONObject errorObject = new JSONObject(responseBody.string());
- String errorMessage = errorObject.getString(JSONUtils.DATA_KEY);
- if (!errorMessage.isEmpty() && !errorMessage.equals("null")) {
- Snackbar.make(coordinatorLayout, errorMessage, Snackbar.LENGTH_LONG).show();
- } else {
- Toast.makeText(RPANActivity.this,
- R.string.load_rpan_broadcasts_failed, Toast.LENGTH_SHORT).show();
- }
- } else {
- Toast.makeText(RPANActivity.this,
- R.string.load_rpan_broadcasts_failed, Toast.LENGTH_SHORT).show();
- }
- } catch (IOException | JSONException e) {
- e.printStackTrace();
- Toast.makeText(RPANActivity.this,
- R.string.load_rpan_broadcasts_failed, Toast.LENGTH_SHORT).show();
- }
- }
- }
-
- @Override
- public void onFailure(@NonNull Call<String> call, @NonNull Throwable t) {
- progressBar.setVisibility(View.GONE);
- Toast.makeText(RPANActivity.this,
- R.string.load_rpan_broadcasts_failed, Toast.LENGTH_SHORT).show();
- }
- });
- } else {
- strapiRetrofit.create(Strapi.class).getRPANBroadcast(rpanBroadcastFullNameOrId).enqueue(new Callback<String>() {
- @Override
- public void onResponse(@NonNull Call<String> call, @NonNull Response<String> response) {
- progressBar.setVisibility(View.GONE);
- if (response.isSuccessful()) {
- Handler handler = new Handler();
- mExecutor.execute(() -> {
- try {
- rpanBroadcasts = new ArrayList<>();
- rpanBroadcasts.add(parseSingleRPANBroadcast(new JSONObject(response.body()).getJSONObject(JSONUtils.DATA_KEY)));
- handler.post(() -> initializeViewPager());
- } catch (JSONException e) {
- e.printStackTrace();
- handler.post(() -> Toast.makeText(RPANActivity.this,
- R.string.parse_rpan_broadcasts_failed, Toast.LENGTH_SHORT).show());
- }
- });
- } else {
- try {
- ResponseBody responseBody = response.errorBody();
- if (responseBody != null) {
- JSONObject errorObject = new JSONObject(responseBody.string());
- String errorMessage = errorObject.getString(JSONUtils.DATA_KEY);
- if (!errorMessage.isEmpty() && !errorMessage.equals("null")) {
- Snackbar.make(coordinatorLayout, errorMessage, Snackbar.LENGTH_LONG).show();
- } else {
- Toast.makeText(RPANActivity.this,
- R.string.load_rpan_broadcasts_failed, Toast.LENGTH_SHORT).show();
- }
- } else {
- Toast.makeText(RPANActivity.this,
- R.string.load_rpan_broadcasts_failed, Toast.LENGTH_SHORT).show();
- }
- } catch (IOException | JSONException e) {
- e.printStackTrace();
- Toast.makeText(RPANActivity.this,
- R.string.load_rpan_broadcasts_failed, Toast.LENGTH_SHORT).show();
- }
- }
- }
-
- @Override
- public void onFailure(@NonNull Call<String> call, @NonNull Throwable t) {
- progressBar.setVisibility(View.GONE);
- Toast.makeText(RPANActivity.this,
- R.string.load_rpan_broadcasts_failed, Toast.LENGTH_SHORT).show();
- }
- });
- }
- }
-
- private void parseRPANBroadcasts(String response) {
- Handler handler = new Handler();
- mExecutor.execute(() -> {
- try {
- ArrayList<RPANBroadcast> rpanBroadcasts = new ArrayList<>();
- JSONObject responseObject = new JSONObject(response);
- String nextCursor = responseObject.getString(JSONUtils.NEXT_CURSOR_KEY);
-
- JSONArray dataArray = responseObject.getJSONArray(JSONUtils.DATA_KEY);
- for (int i = 0; i < dataArray.length(); i++) {
- try {
- JSONObject singleData = dataArray.getJSONObject(i);
- rpanBroadcasts.add(parseSingleRPANBroadcast(singleData));
- } catch (JSONException e) {
- e.printStackTrace();
- }
- }
-
- handler.post(() -> {
- RPANActivity.this.rpanBroadcasts = rpanBroadcasts;
- RPANActivity.this.nextCursor = nextCursor;
-
- initializeViewPager();
- });
- } catch (JSONException e) {
- e.printStackTrace();
- handler.post(() -> Toast.makeText(RPANActivity.this,
- R.string.parse_rpan_broadcasts_failed, Toast.LENGTH_SHORT).show());
- }
- });
- }
-
- private RPANBroadcast parseSingleRPANBroadcast(JSONObject singleData) throws JSONException {
- JSONObject rpanPostObject = singleData.getJSONObject(JSONUtils.POST_KEY);
- RPANBroadcast.RPANPost rpanPost = new RPANBroadcast.RPANPost(
- rpanPostObject.getString(JSONUtils.ID_KEY),
- rpanPostObject.getString(JSONUtils.TITLE_KEY),
- rpanPostObject.getJSONObject(JSONUtils.SUBREDDIT_KEY).getString(JSONUtils.NAME_KEY),
- rpanPostObject.getJSONObject(JSONUtils.SUBREDDIT_KEY).getJSONObject(JSONUtils.STYLES_KEY).getString(JSONUtils.ICON_KEY),
- rpanPostObject.getJSONObject(JSONUtils.AUTHOR_INFO_KEY).getString(JSONUtils.NAME_KEY),
- rpanPostObject.getInt(JSONUtils.SCORE_KEY),
- rpanPostObject.getString(JSONUtils.VOTE_STATE_KEY),
- rpanPostObject.getDouble(JSONUtils.UPVOTE_RATIO_CAMEL_CASE_KEY),
- rpanPostObject.getString(JSONUtils.PERMALINK_KEY),
- rpanPostObject.getJSONObject(JSONUtils.OUTBOUND_LINK_KEY).getString(JSONUtils.URL_KEY),
- rpanPostObject.getBoolean(JSONUtils.IS_NSFW_KEY),
- rpanPostObject.getBoolean(JSONUtils.IS_LOCKED_KEY),
- rpanPostObject.getBoolean(JSONUtils.IS_ARCHIVED_KEY),
- rpanPostObject.getBoolean(JSONUtils.IS_SPOILER),
- rpanPostObject.getString(JSONUtils.SUGGESTED_COMMENT_SORT_CAMEL_CASE_KEY),
- rpanPostObject.getString(JSONUtils.LIVE_COMMENTS_WEBSOCKET_KEY)
- );
-
- JSONObject rpanStreamObject = singleData.getJSONObject(JSONUtils.STREAM_KEY);
- RPANBroadcast.RPANStream rpanStream = new RPANBroadcast.RPANStream(
- rpanStreamObject.getString(JSONUtils.STREAM_ID_KEY),
- rpanStreamObject.getString(JSONUtils.HLS_URL_KEY),
- rpanStreamObject.getString(JSONUtils.THUMBNAIL_KEY),
- rpanStreamObject.getInt(JSONUtils.WIDTH_KEY),
- rpanStreamObject.getInt(JSONUtils.HEIGHT_KEY),
- rpanStreamObject.getLong(JSONUtils.PUBLISH_AT_KEY),
- rpanStreamObject.getString(JSONUtils.STATE_KEY)
- );
-
- return new RPANBroadcast(
- singleData.getInt(JSONUtils.UPVOTES_KEY),
- singleData.getInt(JSONUtils.DOWNVOTES_KEY),
- singleData.getInt(JSONUtils.UNIQUE_WATCHERS_KEY),
- singleData.getInt(JSONUtils.CONTINUOUS_WATCHERS_KEY),
- singleData.getInt(JSONUtils.TOTAL_CONTINUOUS_WATCHERS_KEY),
- singleData.getBoolean(JSONUtils.CHAT_DISABLED_KEY),
- singleData.getDouble(JSONUtils.BROADCAST_TIME_KEY),
- singleData.getDouble(JSONUtils.ESTIMATED_REMAINING_TIME_KEY),
- rpanPost,
- rpanStream
- );
- }
-
- private void initializeViewPager() {
- sectionsPagerAdapter = new SectionsPagerAdapter(this);
- viewPager2.setAdapter(sectionsPagerAdapter);
- viewPager2.setOffscreenPageLimit(3);
- fixViewPager2Sensitivity(viewPager2);
- }
-
- private void fixViewPager2Sensitivity(ViewPager2 viewPager2) {
- try {
- Field recyclerViewField = ViewPager2.class.getDeclaredField("mRecyclerView");
- recyclerViewField.setAccessible(true);
-
- RecyclerView recyclerView = (RecyclerView) recyclerViewField.get(viewPager2);
-
- Field touchSlopField = RecyclerView.class.getDeclaredField("mTouchSlop");
- touchSlopField.setAccessible(true);
-
- Object touchSlopBox = touchSlopField.get(recyclerView);
- if (touchSlopBox != null) {
- int touchSlop = (int) touchSlopBox;
- touchSlopField.set(recyclerView, touchSlop * 4);
- }
- } catch (NoSuchFieldException | IllegalAccessException ignore) {}
- }
-
- @Override
- public boolean onCreateOptionsMenu(Menu menu) {
- getMenuInflater().inflate(R.menu.rpan_activity, menu);
- for (int i = 0; i < menu.size(); i++) {
- Utils.setTitleWithCustomFontToMenuItem(typeface, menu.getItem(i), null);
- }
- return true;
- }
-
- @Override
- public boolean onOptionsItemSelected(@NonNull MenuItem item) {
- if (item.getItemId() == android.R.id.home) {
- finish();
- return true;
- } else if (item.getItemId() == R.id.action_share_rpan_link_rpan_activity) {
- if (rpanBroadcasts != null) {
- int position = viewPager2.getCurrentItem();
- if (position >= 0 && position < rpanBroadcasts.size()) {
- shareLink(rpanBroadcasts.get(position).rpanPost.rpanUrl);
- return true;
- }
- }
- } else if (item.getItemId() == R.id.action_share_post_link_rpan_activity) {
- if (rpanBroadcasts != null) {
- int position = viewPager2.getCurrentItem();
- if (position >= 0 && position < rpanBroadcasts.size()) {
- shareLink(rpanBroadcasts.get(position).rpanPost.postPermalink);
- return true;
- }
- }
- }
- return false;
- }
-
- @Override
- protected void onDestroy() {
- super.onDestroy();
- EventBus.getDefault().unregister(this);
- }
-
- private void shareLink(String link) {
- try {
- Intent intent = new Intent(Intent.ACTION_SEND);
- intent.setType("text/plain");
- intent.putExtra(Intent.EXTRA_TEXT, link);
- startActivity(Intent.createChooser(intent, getString(R.string.share)));
- } catch (ActivityNotFoundException e) {
- Toast.makeText(this, R.string.no_activity_found_for_share, Toast.LENGTH_SHORT).show();
- }
- }
-
- @Override
- public void setCustomFont(Typeface typeface, Typeface titleTypeface, Typeface contentTypeface) {
- this.typeface = typeface;
- }
-
- private class SectionsPagerAdapter extends FragmentStateAdapter {
-
- public SectionsPagerAdapter(FragmentActivity fa) {
- super(fa);
- }
-
- @NonNull
- @Override
- public Fragment createFragment(int position) {
- ViewRPANBroadcastFragment fragment = new ViewRPANBroadcastFragment();
- Bundle bundle = new Bundle();
- bundle.putParcelable(ViewRPANBroadcastFragment.EXTRA_RPAN_BROADCAST, rpanBroadcasts.get(position));
- fragment.setArguments(bundle);
- return fragment;
- }
-
- @Nullable
- private Fragment getCurrentFragment() {
- if (viewPager2 == null || getSupportFragmentManager() == null) {
- return null;
- }
- return getSupportFragmentManager().findFragmentByTag("f" + viewPager2.getCurrentItem());
- }
-
- @Override
- public int getItemCount() {
- return rpanBroadcasts == null ? 0 : rpanBroadcasts.size();
- }
- }
-} \ No newline at end of file
diff --git a/app/src/main/java/ml/docilealligator/infinityforreddit/adapters/RPANCommentStreamRecyclerViewAdapter.java b/app/src/main/java/ml/docilealligator/infinityforreddit/adapters/RPANCommentStreamRecyclerViewAdapter.java
deleted file mode 100644
index d3c029af..00000000
--- a/app/src/main/java/ml/docilealligator/infinityforreddit/adapters/RPANCommentStreamRecyclerViewAdapter.java
+++ /dev/null
@@ -1,89 +0,0 @@
-package ml.docilealligator.infinityforreddit.adapters;
-
-import android.view.LayoutInflater;
-import android.view.View;
-import android.view.ViewGroup;
-import android.widget.ImageView;
-import android.widget.TextView;
-
-import androidx.annotation.NonNull;
-import androidx.recyclerview.widget.RecyclerView;
-
-import com.bumptech.glide.Glide;
-import com.bumptech.glide.RequestManager;
-import com.bumptech.glide.request.RequestOptions;
-
-import java.util.ArrayList;
-
-import jp.wasabeef.glide.transformations.RoundedCornersTransformation;
-import ml.docilealligator.infinityforreddit.R;
-import ml.docilealligator.infinityforreddit.RPANComment;
-import ml.docilealligator.infinityforreddit.activities.RPANActivity;
-
-public class RPANCommentStreamRecyclerViewAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder> {
- private RPANActivity activity;
- private RequestManager glide;
- private ArrayList<RPANComment> rpanComments;
-
- public RPANCommentStreamRecyclerViewAdapter(RPANActivity activity) {
- this.activity = activity;
- glide = Glide.with(activity);
- rpanComments = new ArrayList<>();
- }
-
- @NonNull
- @Override
- public RecyclerView.ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
- return new RPANCommentViewHolder(LayoutInflater.from(parent.getContext()).inflate(
- R.layout.item_rpan_comment, parent, false));
- }
-
- @Override
- public void onBindViewHolder(@NonNull RecyclerView.ViewHolder holder, int position) {
- if (holder instanceof RPANCommentViewHolder) {
- ((RPANCommentViewHolder) holder).authorTextView.setText(rpanComments.get(position).author);
- ((RPANCommentViewHolder) holder).contentTextView.setText(rpanComments.get(position).content);
- glide.load(rpanComments.get(position).authorIconImage)
- .apply(RequestOptions.bitmapTransform(new RoundedCornersTransformation(72, 0)))
- .error(glide.load(R.drawable.subreddit_default_icon)
- .apply(RequestOptions.bitmapTransform(new RoundedCornersTransformation(72, 0))))
- .into(((RPANCommentViewHolder) holder).iconImageView);
- }
- }
-
- @Override
- public int getItemCount() {
- return rpanComments == null ? 0 : rpanComments.size();
- }
-
- @Override
- public void onViewRecycled(@NonNull RecyclerView.ViewHolder holder) {
- super.onViewRecycled(holder);
- if (holder instanceof RPANCommentViewHolder) {
- glide.clear(((RPANCommentViewHolder) holder).iconImageView);
- }
- }
-
- public void addRPANComment(RPANComment rpanComment) {
- rpanComments.add(rpanComment);
- notifyItemInserted(rpanComments.size() - 1);
- }
-
- class RPANCommentViewHolder extends RecyclerView.ViewHolder {
- ImageView iconImageView;
- TextView authorTextView;
- TextView contentTextView;
-
- public RPANCommentViewHolder(@NonNull View itemView) {
- super(itemView);
- iconImageView = itemView.findViewById(R.id.icon_image_view_item_rpan_comment);
- authorTextView = itemView.findViewById(R.id.author_text_view_item_rpan_comment);
- contentTextView = itemView.findViewById(R.id.content_text_view_item_rpan_comment);
-
- if (activity.typeface != null) {
- authorTextView.setTypeface(activity.typeface);
- contentTextView.setTypeface(activity.typeface);
- }
- }
- }
-}
diff --git a/app/src/main/java/ml/docilealligator/infinityforreddit/adapters/navigationdrawer/RedditSectionRecyclerViewAdapter.java b/app/src/main/java/ml/docilealligator/infinityforreddit/adapters/navigationdrawer/RedditSectionRecyclerViewAdapter.java
index ab6ed539..487e9d33 100644
--- a/app/src/main/java/ml/docilealligator/infinityforreddit/adapters/navigationdrawer/RedditSectionRecyclerViewAdapter.java
+++ b/app/src/main/java/ml/docilealligator/infinityforreddit/adapters/navigationdrawer/RedditSectionRecyclerViewAdapter.java
@@ -22,7 +22,7 @@ public class RedditSectionRecyclerViewAdapter extends RecyclerView.Adapter<Recyc
private static final int VIEW_TYPE_MENU_GROUP_TITLE = 1;
private static final int VIEW_TYPE_MENU_ITEM = 2;
- private static final int REDDIT_SECTION_ITEMS = 2;
+ private static final int REDDIT_SECTION_ITEMS = 1;
private BaseActivity baseActivity;
private int primaryTextColor;
@@ -85,10 +85,6 @@ public class RedditSectionRecyclerViewAdapter extends RecyclerView.Adapter<Recyc
switch (position) {
case 1:
- stringId = R.string.rpan;
- drawableId = R.drawable.ic_rpan_24dp;
- break;
- case 2:
stringId = R.string.trending;
drawableId = R.drawable.ic_trending_24dp;
break;
diff --git a/app/src/main/java/ml/docilealligator/infinityforreddit/apis/Strapi.java b/app/src/main/java/ml/docilealligator/infinityforreddit/apis/Strapi.java
deleted file mode 100644
index e68b8850..00000000
--- a/app/src/main/java/ml/docilealligator/infinityforreddit/apis/Strapi.java
+++ /dev/null
@@ -1,13 +0,0 @@
-package ml.docilealligator.infinityforreddit.apis;
-
-import retrofit2.Call;
-import retrofit2.http.GET;
-import retrofit2.http.Path;
-
-public interface Strapi {
- @GET("/broadcasts")
- Call<String> getAllBroadcasts();
-
- @GET("/videos/{rpan_id_or_fullname}")
- Call<String> getRPANBroadcast(@Path("rpan_id_or_fullname") String rpanIdOrFullname);
-}
diff --git a/app/src/main/java/ml/docilealligator/infinityforreddit/fragments/ViewRPANBroadcastFragment.java b/app/src/main/java/ml/docilealligator/infinityforreddit/fragments/ViewRPANBroadcastFragment.java
deleted file mode 100644
index b00f6d4c..00000000
--- a/app/src/main/java/ml/docilealligator/infinityforreddit/fragments/ViewRPANBroadcastFragment.java
+++ /dev/null
@@ -1,423 +0,0 @@
-package ml.docilealligator.infinityforreddit.fragments;
-
-import android.app.AlertDialog;
-import android.app.Dialog;
-import android.content.Context;
-import android.content.SharedPreferences;
-import android.content.res.Configuration;
-import android.os.Bundle;
-import android.os.Handler;
-import android.view.LayoutInflater;
-import android.view.MotionEvent;
-import android.view.View;
-import android.view.ViewGroup;
-import android.widget.ImageButton;
-import android.widget.ImageView;
-import android.widget.TextView;
-
-import androidx.annotation.NonNull;
-import androidx.constraintlayout.widget.ConstraintLayout;
-import androidx.fragment.app.Fragment;
-import androidx.recyclerview.widget.RecyclerView;
-
-import com.bumptech.glide.Glide;
-import com.bumptech.glide.request.RequestOptions;
-import com.google.android.exoplayer2.ExoPlaybackException;
-import com.google.android.exoplayer2.ExoPlayer;
-import com.google.android.exoplayer2.MediaItem;
-import com.google.android.exoplayer2.Player;
-import com.google.android.exoplayer2.Tracks;
-import com.google.android.exoplayer2.source.BehindLiveWindowException;
-import com.google.android.exoplayer2.source.hls.HlsMediaSource;
-import com.google.android.exoplayer2.trackselection.DefaultTrackSelector;
-import com.google.android.exoplayer2.ui.PlayerView;
-import com.google.android.exoplayer2.ui.TrackSelectionDialogBuilder;
-import com.google.android.exoplayer2.upstream.DataSource;
-import com.google.android.exoplayer2.upstream.DefaultHttpDataSource;
-import com.google.android.exoplayer2.upstream.cache.CacheDataSource;
-import com.google.android.exoplayer2.upstream.cache.SimpleCache;
-import com.google.common.collect.ImmutableList;
-
-import org.json.JSONException;
-import org.json.JSONObject;
-
-import java.util.concurrent.Executor;
-
-import javax.inject.Inject;
-import javax.inject.Named;
-
-import butterknife.BindView;
-import butterknife.ButterKnife;
-import jp.wasabeef.glide.transformations.RoundedCornersTransformation;
-import ml.docilealligator.infinityforreddit.Infinity;
-import ml.docilealligator.infinityforreddit.R;
-import ml.docilealligator.infinityforreddit.RPANBroadcast;
-import ml.docilealligator.infinityforreddit.RPANComment;
-import ml.docilealligator.infinityforreddit.activities.RPANActivity;
-import ml.docilealligator.infinityforreddit.adapters.RPANCommentStreamRecyclerViewAdapter;
-import ml.docilealligator.infinityforreddit.customtheme.CustomThemeWrapper;
-import ml.docilealligator.infinityforreddit.customviews.LinearLayoutManagerBugFixed;
-import ml.docilealligator.infinityforreddit.utils.APIUtils;
-import ml.docilealligator.infinityforreddit.utils.JSONUtils;
-import ml.docilealligator.infinityforreddit.utils.SharedPreferencesUtils;
-import okhttp3.OkHttpClient;
-import okhttp3.Request;
-import okhttp3.WebSocket;
-import okhttp3.WebSocketListener;
-import retrofit2.Retrofit;
-
-public class ViewRPANBroadcastFragment extends Fragment {
-
- public static final String EXTRA_RPAN_BROADCAST = "ERB";
- private static final String IS_MUTE_STATE = "IMS";
-
- @BindView(R.id.constraint_layout_exo_rpan_broadcast_playback_control_view)
- ConstraintLayout constraintLayout;
- @BindView(R.id.player_view_view_rpan_broadcast_fragment)
- PlayerView playerView;
- @BindView(R.id.subreddit_icon_image_view_exo_rpan_broadcast_playback_control_view)
- ImageView subredditIconImageView;
- @BindView(R.id.subreddit_name_text_view_exo_rpan_broadcast_playback_control_view)
- TextView subredditNameTextView;
- @BindView(R.id.username_text_view_exo_rpan_broadcast_playback_control_view)
- TextView usernameTextView;
- @BindView(R.id.title_text_view_exo_rpan_broadcast_playback_control_view)
- TextView titleTextView;
- @BindView(R.id.recycler_view_exo_rpan_broadcast_playback_control_view)
- RecyclerView recyclerView;
- @BindView(R.id.mute_exo_rpan_broadcast_playback_control_view)
- ImageButton muteButton;
- @BindView(R.id.hd_exo_rpan_broadcast_playback_control_view)
- ImageButton hdButton;
- @Inject
- @Named("strapi")
- Retrofit mStrapiRetrofit;
- @Inject
- @Named("default")
- SharedPreferences mSharedPreferences;
- @Inject
- @Named("current_account")
- SharedPreferences mCurrentAccountSharedPreferences;
- @Inject
- CustomThemeWrapper mCustomThemeWrapper;
- @Inject
- Executor mExecutor;
- @Inject
- @Named("rpan")
- OkHttpClient okHttpClient;
- @Inject
- SimpleCache mSimpleCache;
- private RPANActivity mActivity;
- private RPANBroadcast rpanBroadcast;
- private ExoPlayer player;
- private DefaultTrackSelector trackSelector;
- private DataSource.Factory dataSourceFactory;
- private Handler handler;
- private RPANCommentStreamRecyclerViewAdapter adapter;
- private WebSocket webSocket;
-
- private boolean wasPlaying;
- private boolean isMute = false;
- private long resumePosition = -1;
- private boolean isDataSavingMode;
-
- public ViewRPANBroadcastFragment() {
- // Required empty public constructor
- }
-
- @Override
- public View onCreateView(LayoutInflater inflater, ViewGroup container,
- Bundle savedInstanceState) {
- // Inflate the layout for this fragment
- View rootView = inflater.inflate(R.layout.fragment_view_rpan_broadcast, container, false);
-
- ((Infinity) mActivity.getApplication()).getAppComponent().inject(this);
-
- ButterKnife.bind(this, rootView);
-
- if (mActivity.typeface != null) {
- subredditNameTextView.setTypeface(mActivity.typeface);
- usernameTextView.setTypeface(mActivity.typeface);
- titleTextView.setTypeface(mActivity.typeface);
- }
-
- rpanBroadcast = getArguments().getParcelable(EXTRA_RPAN_BROADCAST);
-
- if (getResources().getConfiguration().orientation == Configuration.ORIENTATION_PORTRAIT || getResources().getBoolean(R.bool.isTablet)) {
- //Set player controller bottom margin in order to display it above the navbar
- int resourceId = getResources().getIdentifier("navigation_bar_height", "dimen", "android");
- //LinearLayout controllerLinearLayout = findViewById(R.id.linear_layout_exo_playback_control_view);
- ViewGroup.MarginLayoutParams params = (ViewGroup.MarginLayoutParams) constraintLayout.getLayoutParams();
- params.bottomMargin = getResources().getDimensionPixelSize(resourceId);
- } else {
- //Set player controller right margin in order to display it above the navbar
- int resourceId = getResources().getIdentifier("navigation_bar_height", "dimen", "android");
- //LinearLayout controllerLinearLayout = findViewById(R.id.linear_layout_exo_playback_control_view);
- ViewGroup.MarginLayoutParams params = (ViewGroup.MarginLayoutParams) constraintLayout.getLayoutParams();
- params.rightMargin = getResources().getDimensionPixelSize(resourceId);
- }
-
- playerView.setControllerVisibilityListener(visibility -> {
- switch (visibility) {
- case View.GONE:
- mActivity.getWindow().getDecorView().setSystemUiVisibility(
- View.SYSTEM_UI_FLAG_LAYOUT_STABLE
- | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
- | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
- | View.SYSTEM_UI_FLAG_HIDE_NAVIGATION
- | View.SYSTEM_UI_FLAG_FULLSCREEN
- | View.SYSTEM_UI_FLAG_IMMERSIVE);
- playerView.setControllerShowTimeoutMs(0);
- break;
- case View.VISIBLE:
- mActivity.getWindow().getDecorView().setSystemUiVisibility(
- View.SYSTEM_UI_FLAG_LAYOUT_STABLE
- | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
- | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN);
- }
- });
-
- trackSelector = new DefaultTrackSelector(mActivity);
- player = new ExoPlayer.Builder(mActivity).setTrackSelector(trackSelector).build();
- playerView.setPlayer(player);
-
- wasPlaying = true;
-
- boolean muteVideo = mSharedPreferences.getBoolean(SharedPreferencesUtils.MUTE_VIDEO, false) ||
- (mSharedPreferences.getBoolean(SharedPreferencesUtils.MUTE_NSFW_VIDEO, false) && rpanBroadcast.rpanPost.isNsfw);
-
- if (savedInstanceState != null) {
- isMute = savedInstanceState.getBoolean(IS_MUTE_STATE);
- if (isMute) {
- player.setVolume(0f);
- muteButton.setImageResource(R.drawable.ic_mute_24dp);
- } else {
- player.setVolume(1f);
- muteButton.setImageResource(R.drawable.ic_unmute_24dp);
- }
- } else if (muteVideo) {
- isMute = true;
- player.setVolume(0f);
- muteButton.setImageResource(R.drawable.ic_mute_24dp);
- } else {
- muteButton.setImageResource(R.drawable.ic_unmute_24dp);
- }
-
- player.addListener(new Player.Listener() {
- @Override
- public void onTracksChanged(@NonNull Tracks tracks) {
- ImmutableList<Tracks.Group> trackGroups = tracks.getGroups();
- if (!trackGroups.isEmpty()) {
- if (isDataSavingMode) {
- trackSelector.setParameters(
- trackSelector.buildUponParameters()
- .setMaxVideoSize(720, 720));
- }
-
- hdButton.setVisibility(View.VISIBLE);
- hdButton.setOnClickListener(view -> {
- TrackSelectionDialogBuilder builder = new TrackSelectionDialogBuilder(mActivity, getString(R.string.select_video_quality), player, 0);
- builder.setShowDisableOption(true);
- builder.setAllowAdaptiveSelections(false);
- Dialog dialog = builder.build();
- dialog.show();
- if (dialog instanceof AlertDialog) {
- ((AlertDialog) dialog).getButton(AlertDialog.BUTTON_POSITIVE).setTextColor(mCustomThemeWrapper.getPrimaryTextColor());
- ((AlertDialog) dialog).getButton(AlertDialog.BUTTON_NEGATIVE).setTextColor(mCustomThemeWrapper.getPrimaryTextColor());
- }
- });
-
- for (int i = 0; i < trackGroups.size(); i++) {
- String mimeType = trackGroups.get(i).getTrackFormat(0).sampleMimeType;
- if (mimeType != null && mimeType.contains("audio")) {
- muteButton.setVisibility(View.VISIBLE);
- muteButton.setOnClickListener(view -> {
- if (isMute) {
- isMute = false;
- player.setVolume(1f);
- muteButton.setImageResource(R.drawable.ic_unmute_24dp);
- } else {
- isMute = true;
- player.setVolume(0f);
- muteButton.setImageResource(R.drawable.ic_mute_24dp);
- }
- });
- break;
- }
- }
- } else {
- muteButton.setVisibility(View.GONE);
- }
- }
- });
-
- Glide.with(mActivity).load(rpanBroadcast.rpanPost.subredditIconUrl)
- .apply(RequestOptions.bitmapTransform(new RoundedCornersTransformation(72, 0)))
- .error(Glide.with(mActivity).load(R.drawable.subreddit_default_icon)
- .apply(RequestOptions.bitmapTransform(new RoundedCornersTransformation(72, 0))))
- .into(subredditIconImageView);
- subredditNameTextView.setText(rpanBroadcast.rpanPost.subredditName);
- usernameTextView.setText(rpanBroadcast.rpanPost.username);
- titleTextView.setText(rpanBroadcast.rpanPost.title);
-
- recyclerView.setOnTouchListener(new View.OnTouchListener() {
- float x1;
- float x2;
- float y1;
- float y2;
-
- @Override
- public boolean onTouch(View view, MotionEvent motionEvent) {
- switch (motionEvent.getAction()) {
- case MotionEvent.ACTION_DOWN:
- x1 = motionEvent.getX();
- y1 = motionEvent.getY();
- return true;
- case MotionEvent.ACTION_UP:
- x2 = motionEvent.getX();
- y2 = motionEvent.getY();
-
- if (x1 == x2 && y1 == y2) {
- playerView.hideController();
- }
-
- return true;
- }
-
- return false;
- }
- });
- adapter = new RPANCommentStreamRecyclerViewAdapter(mActivity);
- recyclerView.setAdapter(adapter);
-
- handler = new Handler();
-
- return rootView;
- }
-
- private boolean isBehindLiveWindow(ExoPlaybackException e) {
- if (e.type != ExoPlaybackException.TYPE_SOURCE) {
- return false;
- }
- Throwable cause = e.getSourceException();
- while (cause != null) {
- if (cause instanceof BehindLiveWindowException) {
- return true;
- }
- cause = cause.getCause();
- }
- return false;
- }
-
- private void parseComment(String commentJson) {
- mExecutor.execute(() -> {
- try {
- JSONObject commentObject = new JSONObject(commentJson);
- if (commentObject.getString(JSONUtils.TYPE_KEY).equals("new_comment")) {
- JSONObject payload = commentObject.getJSONObject(JSONUtils.PAYLOAD_KEY);
- RPANComment rpanComment = new RPANComment(
- payload.getString(JSONUtils.AUTHOR_KEY),
- payload.getString(JSONUtils.AUTHOR_ICON_IMAGE),
- payload.getString(JSONUtils.BODY_KEY),
- payload.getLong(JSONUtils.CREATED_UTC_KEY));
-
- handler.post(() -> {
- LinearLayoutManagerBugFixed manager = ((LinearLayoutManagerBugFixed) recyclerView.getLayoutManager());
- boolean shouldScrollToBottom = false;
- if (manager != null) {
- int lastPosition = manager.findLastCompletelyVisibleItemPosition();
- int currentItemCount = adapter.getItemCount();
- if (currentItemCount > 0 && lastPosition == currentItemCount - 1) {
- shouldScrollToBottom = true;
- }
- }
- adapter.addRPANComment(rpanComment);
- if (shouldScrollToBottom) {
- recyclerView.smoothScrollToPosition(adapter.getItemCount() - 1);
- }
- });
- }
- } catch (JSONException e) {
- e.printStackTrace();
- }
- });
- }
-
- @Override
- public void onSaveInstanceState(@NonNull Bundle outState) {
- super.onSaveInstanceState(outState);
- outState.putBoolean(IS_MUTE_STATE, isMute);
- }
-
- @Override
- public void onResume() {
- super.onResume();
- if (dataSourceFactory == null) {
- dataSourceFactory = new CacheDataSource.Factory().setCache(mSimpleCache)
- .setUpstreamDataSourceFactory(new DefaultHttpDataSource.Factory().setUserAgent(APIUtils.USER_AGENT));
- // Prepare the player with the source.
- player.prepare();
- player.setMediaSource(new HlsMediaSource.Factory(dataSourceFactory).createMediaSource(MediaItem.fromUri(rpanBroadcast.rpanStream.hlsUrl)));
- if (mSharedPreferences.getBoolean(SharedPreferencesUtils.LOOP_VIDEO, true)) {
- player.setRepeatMode(Player.REPEAT_MODE_ALL);
- } else {
- player.setRepeatMode(Player.REPEAT_MODE_OFF);
- }
- if (resumePosition > 0) {
- player.seekTo(resumePosition);
- }
- }
-
- if (wasPlaying) {
- player.setPlayWhenReady(true);
- }
-
- if (webSocket == null) {
- Request request = new Request.Builder().url(rpanBroadcast.rpanPost.liveCommentsWebsocketUrl).build();
- CommentStreamWebSocketListener listener = new CommentStreamWebSocketListener(this::parseComment);
- webSocket = okHttpClient.newWebSocket(request, listener);
- }
- }
-
- @Override
- public void onPause() {
- super.onPause();
- wasPlaying = player.getPlayWhenReady();
- player.setPlayWhenReady(false);
- }
-
- @Override
- public void onDestroy() {
- super.onDestroy();
- player.seekToDefaultPosition();
- player.stop(true);
- player.release();
-
- if (webSocket != null) {
- webSocket.cancel();
- }
- }
-
- @Override
- public void onAttach(@NonNull Context context) {
- super.onAttach(context);
- mActivity = (RPANActivity) context;
- }
-
- private static class CommentStreamWebSocketListener extends WebSocketListener {
- MessageReceivedListener messageReceivedListener;
-
- CommentStreamWebSocketListener(MessageReceivedListener messageReceivedListener) {
- this.messageReceivedListener = messageReceivedListener;
- }
-
- @Override
- public void onMessage(@NonNull WebSocket webSocket, @NonNull String text) {
- messageReceivedListener.onMessage(text);
- }
-
- interface MessageReceivedListener {
- void onMessage(String text);
- }
- }
-} \ No newline at end of file
diff --git a/app/src/main/res/drawable-night/ic_rpan_24dp.xml b/app/src/main/res/drawable-night/ic_rpan_24dp.xml
deleted file mode 100644
index 1c8156c1..00000000
--- a/app/src/main/res/drawable-night/ic_rpan_24dp.xml
+++ /dev/null
@@ -1,9 +0,0 @@
-<vector xmlns:android="http://schemas.android.com/apk/res/android"
- android:width="24dp"
- android:height="24dp"
- android:viewportWidth="24"
- android:viewportHeight="24">
- <path
- android:fillColor="@android:color/white"
- android:pathData="M21,6h-7.59l3.29,-3.29L16,2l-4,4 -4,-4 -0.71,0.71L10.59,6L3,6c-1.1,0 -2,0.89 -2,2v12c0,1.1 0.9,2 2,2h18c1.1,0 2,-0.9 2,-2L23,8c0,-1.11 -0.9,-2 -2,-2zM21,20L3,20L3,8h18v12zM9,10v8l7,-4z"/>
-</vector>
diff --git a/app/src/main/res/drawable/ic_rpan_24dp.xml b/app/src/main/res/drawable/ic_rpan_24dp.xml
deleted file mode 100644
index bb61e6ff..00000000
--- a/app/src/main/res/drawable/ic_rpan_24dp.xml
+++ /dev/null
@@ -1,9 +0,0 @@
-<vector xmlns:android="http://schemas.android.com/apk/res/android"
- android:width="24dp"
- android:height="24dp"
- android:viewportWidth="24"
- android:viewportHeight="24">
- <path
- android:fillColor="@android:color/black"
- android:pathData="M21,6h-7.59l3.29,-3.29L16,2l-4,4 -4,-4 -0.71,0.71L10.59,6L3,6c-1.1,0 -2,0.89 -2,2v12c0,1.1 0.9,2 2,2h18c1.1,0 2,-0.9 2,-2L23,8c0,-1.11 -0.9,-2 -2,-2zM21,20L3,20L3,8h18v12zM9,10v8l7,-4z"/>
-</vector>
diff --git a/app/src/main/res/layout/activity_rpanactivity.xml b/app/src/main/res/layout/activity_rpanactivity.xml
deleted file mode 100644
index b7e22b40..00000000
--- a/app/src/main/res/layout/activity_rpanactivity.xml
+++ /dev/null
@@ -1,23 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<androidx.coordinatorlayout.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
- xmlns:app="http://schemas.android.com/apk/res-auto"
- xmlns:tools="http://schemas.android.com/tools"
- android:layout_width="match_parent"
- android:layout_height="match_parent"
- android:background="#000000"
- android:id="@+id/coordinator_layout_rpan_activity"
- android:keepScreenOn="true"
- tools:context=".activities.RPANActivity">
-
- <androidx.viewpager2.widget.ViewPager2
- android:id="@+id/view_pager_2_rpan_activity"
- android:layout_width="match_parent"
- android:layout_height="match_parent" />
-
- <ProgressBar
- android:id="@+id/progress_bar_rpan_activity"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:layout_gravity="center" />
-
-</androidx.coordinatorlayout.widget.CoordinatorLayout> \ No newline at end of file
diff --git a/app/src/main/res/layout/exo_rpan_broadcast_playback_control_view.xml b/app/src/main/res/layout/exo_rpan_broadcast_playback_control_view.xml
deleted file mode 100644
index 4e224e24..00000000
--- a/app/src/main/res/layout/exo_rpan_broadcast_playback_control_view.xml
+++ /dev/null
@@ -1,192 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
- xmlns:tools="http://schemas.android.com/tools"
- android:layout_width="match_parent"
- android:layout_height="match_parent"
- android:background="#44000000"
- android:id="@+id/constraint_layout_exo_rpan_broadcast_playback_control_view"
- android:focusableInTouchMode="true"
- xmlns:app="http://schemas.android.com/apk/res-auto">
-
- <androidx.constraintlayout.widget.ConstraintLayout
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:paddingStart="16dp"
- android:paddingEnd="16dp"
- app:layout_constraintBottom_toTopOf="@id/title_text_view_exo_rpan_broadcast_playback_control_view"
- app:layout_constraintTop_toTopOf="parent"
- app:layout_constraintVertical_bias="1">
-
- <ImageView
- android:id="@+id/subreddit_icon_image_view_exo_rpan_broadcast_playback_control_view"
- android:layout_width="24dp"
- android:layout_height="24dp"
- app:layout_constraintTop_toTopOf="parent"
- app:layout_constraintBottom_toBottomOf="parent"
- app:layout_constraintStart_toStartOf="parent" />
-
- <TextView
- android:id="@+id/subreddit_name_text_view_exo_rpan_broadcast_playback_control_view"
- android:layout_width="0dp"
- android:layout_height="wrap_content"
- android:paddingBottom="4dp"
- android:paddingStart="16dp"
- android:paddingEnd="16dp"
- android:textColor="@color/colorAccent"
- app:layout_constraintBottom_toTopOf="@id/username_text_view_exo_rpan_broadcast_playback_control_view"
- app:layout_constraintTop_toTopOf="parent"
- app:layout_constraintStart_toEndOf="@id/barrier5" />
-
- <TextView
- android:id="@+id/username_text_view_exo_rpan_broadcast_playback_control_view"
- android:layout_width="0dp"
- android:layout_height="wrap_content"
- android:paddingStart="16dp"
- android:paddingEnd="16dp"
- android:textColor="#02BAEE"
- app:layout_constraintBottom_toBottomOf="parent"
- app:layout_constraintStart_toEndOf="@id/barrier5" />
-
- <androidx.constraintlayout.widget.Barrier
- android:id="@+id/barrier5"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- app:barrierDirection="end"
- app:constraint_referenced_ids="subreddit_icon_image_view_exo_rpan_broadcast_playback_control_view" />
-
- </androidx.constraintlayout.widget.ConstraintLayout>
-
- <TextView
- android:id="@+id/title_text_view_exo_rpan_broadcast_playback_control_view"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:padding="16dp"
- android:textColor="#FFFFFF"
- android:textSize="20sp"
- app:layout_constraintTop_toTopOf="parent"
- app:layout_constraintBottom_toTopOf="@id/control_linear_layout"
- app:layout_constraintVertical_bias="1" />
-
- <androidx.constraintlayout.widget.ConstraintLayout
- android:id="@+id/control_linear_layout"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:gravity="center"
- android:orientation="horizontal"
- android:paddingTop="4dp"
- app:layout_constraintBottom_toBottomOf="parent"
- app:layout_constraintEnd_toEndOf="parent"
- app:layout_constraintStart_toStartOf="parent"
- app:layout_constraintTop_toTopOf="parent">
-
- <ImageButton
- android:id="@+id/hd_exo_rpan_broadcast_playback_control_view"
- style="@style/ExoMediaButton"
- android:src="@drawable/ic_video_quality_24dp"
- android:visibility="gone"
- app:layout_constraintEnd_toStartOf="@+id/exo_rew"
- app:layout_constraintHorizontal_bias="0.5"
- app:layout_constraintHorizontal_chainStyle="spread_inside"
- app:layout_constraintStart_toStartOf="parent"
- tools:layout_editor_absoluteY="4dp" />
-
- <ImageButton
- android:id="@id/exo_rew"
- style="@style/ExoMediaButton.Rewind"
- app:layout_constraintEnd_toStartOf="@+id/exo_play"
- app:layout_constraintHorizontal_bias="0.5"
- app:layout_constraintStart_toEndOf="@+id/hd_exo_rpan_broadcast_playback_control_view"
- tools:layout_editor_absoluteY="4dp" />
-
- <ImageButton
- android:id="@id/exo_play"
- style="@style/ExoMediaButton.Play"
- app:layout_constraintEnd_toStartOf="@+id/exo_pause"
- app:layout_constraintHorizontal_bias="0.5"
- app:layout_constraintStart_toEndOf="@+id/exo_rew"
- tools:layout_editor_absoluteY="4dp" />
-
- <ImageButton
- android:id="@id/exo_pause"
- style="@style/ExoMediaButton.Pause"
- app:layout_constraintEnd_toStartOf="@+id/exo_ffwd"
- app:layout_constraintHorizontal_bias="0.5"
- app:layout_constraintStart_toEndOf="@+id/exo_play"
- tools:layout_editor_absoluteY="4dp" />
-
- <ImageButton
- android:id="@id/exo_ffwd"
- style="@style/ExoMediaButton.FastForward"
- app:layout_constraintEnd_toStartOf="@+id/mute_exo_rpan_broadcast_playback_control_view"
- app:layout_constraintHorizontal_bias="0.5"
- app:layout_constraintStart_toEndOf="@+id/exo_pause"
- tools:layout_editor_absoluteY="4dp" />
-
- <ImageButton
- android:id="@+id/mute_exo_rpan_broadcast_playback_control_view"
- style="@style/ExoMediaButton"
- android:visibility="gone"
- app:layout_constraintEnd_toEndOf="parent"
- app:layout_constraintHorizontal_bias="0.5"
- app:layout_constraintStart_toEndOf="@+id/exo_ffwd"
- tools:layout_editor_absoluteY="4dp" />
-
- </androidx.constraintlayout.widget.ConstraintLayout>
-
- <androidx.recyclerview.widget.RecyclerView
- android:id="@+id/recycler_view_exo_rpan_broadcast_playback_control_view"
- android:layout_width="match_parent"
- android:layout_height="0dp"
- android:paddingTop="16dp"
- android:paddingStart="16dp"
- android:paddingEnd="16dp"
- app:layout_constraintTop_toBottomOf="@id/control_linear_layout"
- app:layout_constraintBottom_toTopOf="@id/time_bar_linear_layout"
- app:layoutManager="ml.docilealligator.infinityforreddit.customviews.LinearLayoutManagerBugFixed" />
-
- <LinearLayout
- android:id="@+id/time_bar_linear_layout"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:layout_marginTop="4dp"
- android:padding="16dp"
- android:gravity="center_vertical"
- android:orientation="horizontal"
- app:layout_constraintBottom_toBottomOf="parent"
- app:layout_constraintStart_toStartOf="parent"
- app:layout_constraintEnd_toEndOf="parent">
-
- <TextView android:id="@id/exo_position"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:textSize="14sp"
- android:textStyle="bold"
- android:paddingStart="0dp"
- android:paddingEnd="4dp"
- android:includeFontPadding="false"
- android:textColor="#FFFFFF"
- android:fontFamily="?attr/font_family" />
-
- <com.google.android.exoplayer2.ui.DefaultTimeBar
- android:id="@id/exo_progress"
- android:layout_width="0dp"
- android:layout_weight="1"
- android:layout_height="26dp"
- app:bar_height="2dp"
- app:scrubber_color="@color/colorAccent"
- app:played_color="@color/colorAccent" />
-
- <TextView android:id="@id/exo_duration"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:textSize="14sp"
- android:textStyle="bold"
- android:paddingStart="4dp"
- android:paddingEnd="0dp"
- android:includeFontPadding="false"
- android:textColor="#FFFFFF"
- android:fontFamily="?attr/font_family" />
-
- </LinearLayout>
-
-</androidx.constraintlayout.widget.ConstraintLayout> \ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_view_rpan_broadcast.xml b/app/src/main/res/layout/fragment_view_rpan_broadcast.xml
deleted file mode 100644
index abab4f52..00000000
--- a/app/src/main/res/layout/fragment_view_rpan_broadcast.xml
+++ /dev/null
@@ -1,15 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
- xmlns:tools="http://schemas.android.com/tools"
- android:layout_width="match_parent"
- android:layout_height="match_parent"
- xmlns:app="http://schemas.android.com/apk/res-auto"
- tools:context=".fragments.ViewRPANBroadcastFragment">
-
- <com.google.android.exoplayer2.ui.PlayerView
- android:id="@+id/player_view_view_rpan_broadcast_fragment"
- android:layout_width="match_parent"
- android:layout_height="match_parent"
- app:controller_layout_id="@layout/exo_rpan_broadcast_playback_control_view" />
-
-</FrameLayout> \ No newline at end of file
diff --git a/app/src/main/res/layout/item_rpan_comment.xml b/app/src/main/res/layout/item_rpan_comment.xml
deleted file mode 100644
index 54ace9c5..00000000
--- a/app/src/main/res/layout/item_rpan_comment.xml
+++ /dev/null
@@ -1,38 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:layout_marginTop="8dp"
- android:layout_marginBottom="8dp">
-
- <ImageView
- android:id="@+id/icon_image_view_item_rpan_comment"
- android:layout_width="24dp"
- android:layout_height="24dp"
- android:layout_gravity="center_vertical" />
-
- <LinearLayout
- android:layout_width="0dp"
- android:layout_height="wrap_content"
- android:layout_weight="1"
- android:layout_gravity="center_vertical"
- android:layout_marginStart="16dp"
- android:layout_marginEnd="0dp"
- android:orientation="vertical">
-
- <TextView
- android:id="@+id/author_text_view_item_rpan_comment"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:textColor="#02BAEE" />
-
- <TextView
- android:id="@+id/content_text_view_item_rpan_comment"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:layout_marginTop="4dp"
- android:textColor="#FFFFFF" />
-
- </LinearLayout>
-
-</LinearLayout> \ No newline at end of file
diff --git a/app/src/main/res/menu/rpan_activity.xml b/app/src/main/res/menu/rpan_activity.xml
deleted file mode 100644
index bb165fd4..00000000
--- a/app/src/main/res/menu/rpan_activity.xml
+++ /dev/null
@@ -1,15 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<menu xmlns:android="http://schemas.android.com/apk/res/android"
- xmlns:app="http://schemas.android.com/apk/res-auto">
- <item
- android:id="@+id/action_share_rpan_link_rpan_activity"
- android:orderInCategory="1"
- android:title="@string/action_share_rpan_link"
- app:showAsAction="never" />
-
- <item
- android:id="@+id/action_share_post_link_rpan_activity"
- android:orderInCategory="1"
- android:title="@string/action_share_post_link"
- app:showAsAction="never" />
-</menu> \ No newline at end of file
diff --git a/app/src/main/res/values-cs/strings.xml b/app/src/main/res/values-cs/strings.xml
index 14519473..a5060585 100644
--- a/app/src/main/res/values-cs/strings.xml
+++ b/app/src/main/res/values-cs/strings.xml
@@ -1021,12 +1021,9 @@ Zpráva: %2$s"</string>
Stále chcete tuto možnost povolit?"</string>
<string name="reply">"Odpovědět"</string>
- <string name="rpan_activity_label">"RPAN"</string>
<string name="post_gallery_activity_label">"Příspěvek galerie"</string>
<string name="trending_activity_label">"Trendy"</string>
- <string name="action_share_rpan_link">"Sdílet RPAN odkaz"</string>
<string name="action_share_post_link">"Sdílet odkaz příspěvku"</string>
- <string name="rpan">"RPAN"</string>
<string name="trending">"Trendy"</string>
<string name="receive_post_reply_notifications">"Získávat oznámení o odpovědích na příspěvek"</string>
<string name="bottom_sheet_post_gallery">"Galerie"</string>
@@ -1056,9 +1053,6 @@ Pokud ano, přejmenujte je, než povolíte Material You."</string>
<string name="upload_image_success">"Obrázek úspěšně nahrán. Klikněte znovu na tlačítko obrázku pro zobrazení nahraných obrázků."</string>
<string name="get_image_bitmap_failed">"Nepodařilo se získat bitmapu obrázku"</string>
<string name="upload_image_failed">"Nepodařilo se nahrát obrázek"</string>
- <string name="load_rpan_broadcasts_failed">"Nepodařilo se načíst vysílání RPAN"</string>
- <string name="parse_rpan_broadcasts_failed">"Nepodařilo se parsovat vysílání RPAN"</string>
- <string name="parse_rpan_broadcast_failed">"Nepodařilo se parsovat vysílání RPAN"</string>
<string name="search_comments">"Hledat komentáře"</string>
<string name="please_wait_image_is_uploading">"Obrázek se stále nahrává. Čekejte prosím."</string>
<string name="error_fetch_trending_search">"Získávání trendů selhalo.
diff --git a/app/src/main/res/values-de/strings.xml b/app/src/main/res/values-de/strings.xml
index e099d98d..15ef5334 100644
--- a/app/src/main/res/values-de/strings.xml
+++ b/app/src/main/res/values-de/strings.xml
@@ -1104,12 +1104,9 @@ Nachricht: %2$s"</string>
Möchtest du trotzdem fortfahren?"</string>
<string name="reply">"Antworten"</string>
- <string name="rpan_activity_label">"RPAN"</string>
<string name="post_gallery_activity_label">"Galeriebeitrag"</string>
<string name="trending_activity_label">"Trending"</string>
- <string name="action_share_rpan_link">"Teile RPAN-Link"</string>
<string name="action_share_post_link">"Teile Beitragslink"</string>
- <string name="rpan">"RPAN"</string>
<string name="trending">"Trending"</string>
<string name="receive_post_reply_notifications">"Benachrichtigungen für Antworten auf Beiträge empfangen"</string>
<string name="bottom_sheet_post_gallery">"Galerie"</string>
@@ -1141,9 +1138,6 @@ Benenne diese Themen sonst neu."</string>
<string name="upload_image_success">"Bild erfolgreich hochgeladen. Klicken Sie nochmal auf Bilder um hochgeladene Bilder zu sehen."</string>
<string name="get_image_bitmap_failed">"Konnte das Bitmap des Bildes nicht herunterladen"</string>
<string name="upload_image_failed">"Das Bild konnte nicht hochgeladen werden"</string>
- <string name="load_rpan_broadcasts_failed">"RPAN Broadcasts konnten nicht geladen werden"</string>
- <string name="parse_rpan_broadcasts_failed">"RPAN Broadcasts konnten nicht gelesen werden"</string>
- <string name="parse_rpan_broadcast_failed">"RPAN Broadcast konnte nicht gelesen werden"</string>
<string name="search_comments">"Kommentare durchsuchen"</string>
<string name="please_wait_image_is_uploading">"Ein Bild wird noch hochgeladen. Bitte warten Sie."</string>
diff --git a/app/src/main/res/values-es/strings.xml b/app/src/main/res/values-es/strings.xml
index 2eb93d6b..ef5f352b 100644
--- a/app/src/main/res/values-es/strings.xml
+++ b/app/src/main/res/values-es/strings.xml
@@ -1074,12 +1074,9 @@ Mensaje: %2$s"</string>
¿Seguro que quieres activarlo?"</string>
<string name="reply">"Responder"</string>
- <string name="rpan_activity_label">"RPAN"</string>
<string name="post_gallery_activity_label">"Publicación de galería"</string>
<string name="trending_activity_label">"Tendencias"</string>
- <string name="action_share_rpan_link">"Compartir enlace de RPAN"</string>
<string name="action_share_post_link">"Compartir enlace de publicación"</string>
- <string name="rpan">"RPAN"</string>
<string name="trending">"Tendencias"</string>
<string name="receive_post_reply_notifications">"Recibir notificaciones de respuesta a publicaciones"</string>
<string name="bottom_sheet_post_gallery">"Galería"</string>
@@ -1109,9 +1106,6 @@ De lo contrario, cambia el nombre antes de habilitar Material You."</string>
<string name="upload_image_success">"Imagen subida correctamente. Haga clic en el botón de imagen nuevamente para ver las imágenes cargadas."</string>
<string name="get_image_bitmap_failed">"No es posible obtener el mapa de bits de la imagen"</string>
<string name="upload_image_failed">"No es posible subir la imagen"</string>
- <string name="load_rpan_broadcasts_failed">"No es posible cargar transmisiones RPAN"</string>
- <string name="parse_rpan_broadcasts_failed">"No es posible analizar las transmisiones RPAN"</string>
- <string name="parse_rpan_broadcast_failed">"No es posible analizar la transmisión RPAN"</string>
<string name="search_comments">"Buscar comentarios"</string>
<string name="please_wait_image_is_uploading">"Aún se está cargando una imagen. Espere por favor."</string>
<string name="error_fetch_trending_search">"Falló la obtención de las búsquedas de tendencias.
diff --git a/app/src/main/res/values-fr/strings.xml b/app/src/main/res/values-fr/strings.xml
index 75269275..da8f486c 100644
--- a/app/src/main/res/values-fr/strings.xml
+++ b/app/src/main/res/values-fr/strings.xml
@@ -1091,11 +1091,8 @@ Les onglets pourraient perdre tout leur contenu quand vous passez d'un onglet à
Vous voulez toujours l'activer ?"</string>
<string name="reply">"Répondre"</string>
- <string name="rpan_activity_label">"RPAN"</string>
<string name="trending_activity_label">"Tendance"</string>
- <string name="action_share_rpan_link">"Partager le lien RPAN"</string>
<string name="action_share_post_link">"Partager le lien du Post"</string>
- <string name="rpan">"RPAN"</string>
<string name="trending">"Tendance"</string>
<string name="receive_post_reply_notifications">"Recevoir des notifications de réponse de publication"</string>
<string name="bottom_sheet_post_gallery">"Gallerie"</string>
@@ -1124,9 +1121,6 @@ Sinon, renommez-les avant d'activer Material You."</string>
<string name="upload_image_success">"Image uploadée avec succès. Clique sur le bouton image de nouveau pour voir les images uploadées."</string>
<string name="get_image_bitmap_failed">"Impossible d'obtenir le bitmap de l'image"</string>
<string name="upload_image_failed">"Impossible d'uploader l'image"</string>
- <string name="load_rpan_broadcasts_failed">"Impossible de charger les diffusions RPAN"</string>
- <string name="parse_rpan_broadcasts_failed">"Impossible d'analyser les diffusions RPAN"</string>
- <string name="parse_rpan_broadcast_failed">"Impossible d'analyser la diffusion RPAN"</string>
<string name="search_comments">"Chercher des commentaires"</string>
<string name="please_wait_image_is_uploading">"Une image est toujours sn train d'être uploadée. Merci d'attendre"</string>
<string name="error_fetch_trending_search">"Échec de la récupération des recherches de tendance.
diff --git a/app/src/main/res/values-it/strings.xml b/app/src/main/res/values-it/strings.xml
index a144a2cd..98906969 100644
--- a/app/src/main/res/values-it/strings.xml
+++ b/app/src/main/res/values-it/strings.xml
@@ -1010,12 +1010,9 @@ La riproduzione automatica video è disabilitata"</string>
Vuoi comunque abilitare l'opzione?"</string>
<string name="reply">"Rispondi"</string>
- <string name="rpan_activity_label">"RPAN"</string>
<string name="post_gallery_activity_label">"Galleria post"</string>
<string name="trending_activity_label">"Popolari"</string>
- <string name="action_share_rpan_link">"Condividi link RPAN"</string>
<string name="action_share_post_link">"Condividi post link"</string>
- <string name="rpan">"RPAN"</string>
<string name="trending">"Popolari"</string>
<string name="receive_post_reply_notifications">"Ricevi notifiche per le risposte"</string>
<string name="bottom_sheet_post_gallery">"Galleria"</string>
@@ -1045,9 +1042,6 @@ Se hai dei temi con questi nomi devi cambiarli prima di attivare la Personalizza
<string name="upload_image_success">"Immagine caricata. Clicca sul pulsante delle immagini per vedere le altre immagini caricate"</string>
<string name="get_image_bitmap_failed">"Impossibile prendere il bitmap dell'immagine"</string>
<string name="upload_image_failed">"Impossibile caricare l'immagine"</string>
- <string name="load_rpan_broadcasts_failed">"Impossibile caricare RPAN"</string>
- <string name="parse_rpan_broadcasts_failed">"Impossibile analizzare i broadcast RPAN"</string>
- <string name="parse_rpan_broadcast_failed">"Impossibile analizzare il broadcast RPAN"</string>
<string name="search_comments">"Cerca tra i commenti"</string>
<string name="please_wait_image_is_uploading">"Attendere prego. Immagine in caricamento"</string>
<string name="error_fetch_trending_search">"Pagina non caricata. Tocca per riprovare"</string>
diff --git a/app/src/main/res/values-nl/strings.xml b/app/src/main/res/values-nl/strings.xml
index 0f2dada4..23fda94d 100644
--- a/app/src/main/res/values-nl/strings.xml
+++ b/app/src/main/res/values-nl/strings.xml
@@ -1009,12 +1009,9 @@ Bericht: %2$s"</string>
Wil je het nog steeds activeren?"</string>
<string name="reply">"Antwoord"</string>
- <string name="rpan_activity_label">"RPAN"</string>
<string name="post_gallery_activity_label">"Gallerijpost"</string>
<string name="trending_activity_label">"Trending"</string>
- <string name="action_share_rpan_link">"Deel RPAN Link"</string>
<string name="action_share_post_link">"Deel Post Link"</string>
- <string name="rpan">"RPAN"</string>
<string name="trending">"Trending"</string>
<string name="receive_post_reply_notifications">"Ontvang Post Reactie Notificaties"</string>
<string name="bottom_sheet_post_gallery">"Gallerij"</string>
@@ -1039,7 +1036,6 @@ Zo wel, hernoem ze voordat je Material You aanzet."</string>
<string name="uploading_image">"Uploaden"</string>
<string name="upload_image_success">"Afbeelding succesvol geüpload. Klik de afbeelding knop nogmaals om de geüploade afbeeldingen te zien."</string>
<string name="upload_image_failed">"Niet in staat de afbeelding te uploaden"</string>
- <string name="load_rpan_broadcasts_failed">"Kan RPAN uitzending Niet laden"</string>
<string name="search_comments">"Zoek reacties"</string>
<string name="please_wait_image_is_uploading">"Een afbeelding is nog aan het uploaden. Even geduld aub."</string>
<string name="no_trending_search">"Geen trending zoekopdrachten gevonden. Tik om het opnieuw te proberen."</string>
diff --git a/app/src/main/res/values-pt-rBR/strings.xml b/app/src/main/res/values-pt-rBR/strings.xml
index ac6a4d6a..d943c290 100644
--- a/app/src/main/res/values-pt-rBR/strings.xml
+++ b/app/src/main/res/values-pt-rBR/strings.xml
@@ -1019,12 +1019,9 @@ Mensagem: %2$s"</string>
Ainda deseja ativá-lo?"</string>
<string name="reply">"Responder"</string>
- <string name="rpan_activity_label">"RPAN"</string>
<string name="post_gallery_activity_label">"Postar Galeria"</string>
<string name="trending_activity_label">"Tendências"</string>
- <string name="action_share_rpan_link">"Compartilhar Link de RPAN"</string>
<string name="action_share_post_link">"Compartilhar Link do Post"</string>
- <string name="rpan">"RPAN"</string>
<string name="trending">"Em Alta"</string>
<string name="receive_post_reply_notifications">"Receber Notificações de Respostas às Postagens"</string>
<string name="bottom_sheet_post_gallery">"Galeria"</string>
@@ -1054,9 +1051,6 @@ Se você tiver, os renomeie antes de ativar o Material You."</string>
<string name="upload_image_success">"Imagem enviada com sucesso. Clique novamente no botão de imagem para ver as imagem enviadas."</string>
<string name="get_image_bitmap_failed">"Erro ao receber o bitmap da imagem"</string>
<string name="upload_image_failed">"Erro ao enviar a imagem"</string>
- <string name="load_rpan_broadcasts_failed">"Não foi possível carregar transmissões RPAN"</string>
- <string name="parse_rpan_broadcasts_failed">"Não foi possível analisar transmissões RPAN"</string>
- <string name="parse_rpan_broadcast_failed">"Não foi possível analisar transmissão RPAN"</string>
<string name="search_comments">"Procurar Comentários"</string>
<string name="please_wait_image_is_uploading">"Uma imagem ainda está sendo enviada. Por favor, aguarde."</string>
<string name="error_fetch_trending_search">"Busca de pesquisas em alta falhou.
diff --git a/app/src/main/res/values-pt/strings.xml b/app/src/main/res/values-pt/strings.xml
index 5c58d2df..2c28c963 100644
--- a/app/src/main/res/values-pt/strings.xml
+++ b/app/src/main/res/values-pt/strings.xml
@@ -1020,12 +1020,9 @@ Mensagem: %2$s"</string>
Ainda deseja ativar esta opção?"</string>
<string name="reply">"Responder"</string>
- <string name="rpan_activity_label">"RPAN"</string>
<string name="post_gallery_activity_label">"Publicação de Galeria"</string>
<string name="trending_activity_label">"Tendências"</string>
- <string name="action_share_rpan_link">"Partilhar Endereço RPAN"</string>
<string name="action_share_post_link">"Partilhar Endereço da Publicação"</string>
- <string name="rpan">"RPAN"</string>
<string name="trending">"Tendências"</string>
<string name="receive_post_reply_notifications">"Receber notificações de respostas de publicações"</string>
<string name="bottom_sheet_post_gallery">"Galeria"</string>
@@ -1055,9 +1052,6 @@ Caso contrário, altere o nome antes de ativar Material You"</string>
<string name="upload_image_success">"Imagem enviada com sucesso. Clicar no botão da imagem para ver as imagens enviadas."</string>
<string name="get_image_bitmap_failed">"Incapaz de obter o bitmap da imagem"</string>
<string name="upload_image_failed">"Incapaz de enviar a imagem"</string>
- <string name="load_rpan_broadcasts_failed">"Não é possível carregar as emissões RPAN"</string>
- <string name="parse_rpan_broadcasts_failed">"Não é possível analisar as emissões de RPAN"</string>
- <string name="parse_rpan_broadcast_failed">"Não é possível analisar a emissão de RPAN"</string>
<string name="search_comments">"Pesquisar Comentários"</string>
<string name="please_wait_image_is_uploading">"Uma imagem ainda a ser enviada. Por favor aguarde."</string>
<string name="error_fetch_trending_search">"A obtenção de tendências falharam.
diff --git a/app/src/main/res/values-ro/strings.xml b/app/src/main/res/values-ro/strings.xml
index 01f535d2..d63b473a 100644
--- a/app/src/main/res/values-ro/strings.xml
+++ b/app/src/main/res/values-ro/strings.xml
@@ -1063,12 +1063,9 @@ Mesaj: %2$s"</string>
Încă dorești să-l activezi?"</string>
<string name="reply">"Răspunde"</string>
- <string name="rpan_activity_label">"RPAN"</string>
<string name="post_gallery_activity_label">"Postare Galerie"</string>
<string name="trending_activity_label">"În Tendințe"</string>
- <string name="action_share_rpan_link">"Distribuie Link-ul RPAN"</string>
<string name="action_share_post_link">"Distribuie Link-ul Postării"</string>
- <string name="rpan">"RPAN"</string>
<string name="trending">"În Tendințe"</string>
<string name="receive_post_reply_notifications">"Primește notificări de răspuns la postări"</string>
<string name="bottom_sheet_post_gallery">"Galerie"</string>
@@ -1098,9 +1095,6 @@ Mesaj: %2$s"</string>
<string name="upload_image_success">"Imaginea a fost încărcată cu succes. Apasă din nou pe butonul de imagine pentru a vedea imaginile încărcate."</string>
<string name="get_image_bitmap_failed">"Nu s-a putut obține bitmap-ul imaginii"</string>
<string name="upload_image_failed">"Nu s-a putut încărca imaginea"</string>
- <string name="load_rpan_broadcasts_failed">"Nu s-a putut încărca emisiunile RPAN"</string>
- <string name="parse_rpan_broadcasts_failed">"Nu s-a putut afișa emisiunile RPAN"</string>
- <string name="parse_rpan_broadcast_failed">"Nu s-a putut afișa emisiunea RPAN"</string>
<string name="search_comments">"Caută Comentariile"</string>
<string name="please_wait_image_is_uploading">"O imagine este încă în curs de încărcare. Te rugăm să aștepți."</string>
<string name="error_fetch_trending_search">"Obținerea căutărilor în tendințe a eșuat.
diff --git a/app/src/main/res/values-ru/strings.xml b/app/src/main/res/values-ru/strings.xml
index 704c59ee..35a4b82d 100644
--- a/app/src/main/res/values-ru/strings.xml
+++ b/app/src/main/res/values-ru/strings.xml
@@ -1033,12 +1033,9 @@ https://play.google.com/store/apps/details?id=ml.docilealligator.infinityforredd
Всё ещё хотите включить его?"</string>
<string name="reply">"Ответ"</string>
- <string name="rpan_activity_label">"RPAN"</string>
<string name="post_gallery_activity_label">"Пост в галерее"</string>
<string name="trending_activity_label">"Популярное"</string>
- <string name="action_share_rpan_link">"Поделиться ссылкой RPAN"</string>
<string name="action_share_post_link">"Поделиться ссылкой на пост"</string>
- <string name="rpan">"RPAN"</string>
<string name="trending">"Популярное"</string>
<string name="receive_post_reply_notifications">"Получать уведомления об ответах на пост"</string>
<string name="bottom_sheet_post_gallery">"Галерея"</string>
@@ -1068,9 +1065,6 @@ https://play.google.com/store/apps/details?id=ml.docilealligator.infinityforredd
<string name="upload_image_success">"Изображение успешно загружено. Нажмите кнопку «Изображение» ещё раз, чтобы просмотреть загруженные изображения."</string>
<string name="get_image_bitmap_failed">"Невозможно получить растровое изображение"</string>
<string name="upload_image_failed">"Невозможно загрузить изображение"</string>
- <string name="load_rpan_broadcasts_failed">"Невозможно загрузить широковещательные сообщения RPAN"</string>
- <string name="parse_rpan_broadcasts_failed">"Невозможно разобрать широковещательные сообщения RPAN"</string>
- <string name="parse_rpan_broadcast_failed">"Невозможно разобрать широковещательную передачу RPAN"</string>
<string name="search_comments">"Поиск комментариев"</string>
<string name="please_wait_image_is_uploading">"Изображение загружается, подождите."</string>
<string name="error_fetch_trending_search">"Невозможно получить популярные поисковые запросы.
diff --git a/app/src/main/res/values-tr-rTR/strings.xml b/app/src/main/res/values-tr-rTR/strings.xml
index 19308eb3..3177d814 100644
--- a/app/src/main/res/values-tr-rTR/strings.xml
+++ b/app/src/main/res/values-tr-rTR/strings.xml
@@ -1063,12 +1063,9 @@ Yine de etkinleştirmek istiyor musunuz?"</string>
<string name="reply">"Yanıtla"</string>
<!-- What is RPAN? -->
- <string name="rpan_activity_label">"Canlı Yayın"</string>
<string name="post_gallery_activity_label">"Galeri Gönderisi"</string>
<string name="trending_activity_label">"Trendler"</string>
- <string name="action_share_rpan_link">"Canlı Yayın Bağlantısını Paylaş"</string>
<string name="action_share_post_link">"Gönderi Bağlantısını Paylaş"</string>
- <string name="rpan">"Canlı Yayın"</string>
<string name="trending">"Trendler"</string>
<string name="receive_post_reply_notifications">"Gönderi yanıtlanınca bildirimlerini al"</string>
<string name="bottom_sheet_post_gallery">"Galeri"</string>
@@ -1098,9 +1095,6 @@ Yoksa, Material You'u etkinleştirmeden önce bunları yeniden adlandırın."</s
<string name="upload_image_success">"Fotoğraf başarıyla yüklendi. Yüklenen fotoğrafları görmek için fotoğraf düğmesine tekrar tıklayın."</string>
<string name="get_image_bitmap_failed">"Fotoğrafın bitmap'i alınamıyor"</string>
<string name="upload_image_failed">"Fotoğraf yüklenemiyor"</string>
- <string name="load_rpan_broadcasts_failed">"Canlı Yayınlar yüklenemiyor"</string>
- <string name="parse_rpan_broadcasts_failed">"Canlı Yayınlar ayrıştırılamıyor"</string>
- <string name="parse_rpan_broadcast_failed">"Canlı Yayın ayrıştırılamıyor"</string>
<string name="search_comments">"Yorumları Ara"</string>
<string name="please_wait_image_is_uploading">"Hâlâ bir fotoğraf yükleniyor. Lütfen bekleyin."</string>
<string name="error_fetch_trending_search">"Trend aramalar getirilemedi.
diff --git a/app/src/main/res/values-uk/strings.xml b/app/src/main/res/values-uk/strings.xml
index 23cae648..fbb011e6 100644
--- a/app/src/main/res/values-uk/strings.xml
+++ b/app/src/main/res/values-uk/strings.xml
@@ -1013,12 +1013,9 @@ https://play.google.com/store/apps/details?id=ml.docilealligator.infinityforredd
Усе ще бажаєте ввімкнути це?"</string>
<string name="reply">"Відповісти"</string>
- <string name="rpan_activity_label">"RPAN"</string>
<string name="post_gallery_activity_label">"Допис галереї"</string>
<string name="trending_activity_label">"Тенденції"</string>
- <string name="action_share_rpan_link">"Поширити ланку RPAN"</string>
<string name="action_share_post_link">"Поширити ланку допису"</string>
- <string name="rpan">"RPAN"</string>
<string name="trending">"Тенденції"</string>
<string name="receive_post_reply_notifications">"Отримувати сповіщення про відповіді на дописи"</string>
<string name="bottom_sheet_post_gallery">"Галерея"</string>
@@ -1048,9 +1045,6 @@ https://play.google.com/store/apps/details?id=ml.docilealligator.infinityforredd
<string name="upload_image_success">"Зображення успішно відвантажене. Клацніть кнопку зображення ще раз, щоб переглянути відвантажені зображення."</string>
<string name="get_image_bitmap_failed">"Неможливо отримати bitmap зображення"</string>
<string name="upload_image_failed">"Неможливо відвантажити зображення"</string>
- <string name="load_rpan_broadcasts_failed">"Не вдалося завантажити трансляції RPAN"</string>
- <string name="parse_rpan_broadcasts_failed">"Не вдалося проаналізувати трансляції RPAN"</string>
- <string name="parse_rpan_broadcast_failed">"Не вдалося проаналізувати трансляцію RPAN"</string>
<string name="search_comments">"Пошук коментарів"</string>
<string name="please_wait_image_is_uploading">"Зображення все ще завантажується. Будь ласка, зачекайте."</string>
<string name="error_fetch_trending_search">"Не вдалося отримати тенденції пошуку.
diff --git a/app/src/main/res/values-vi/strings.xml b/app/src/main/res/values-vi/strings.xml
index 7ef0732c..89e00bab 100644
--- a/app/src/main/res/values-vi/strings.xml
+++ b/app/src/main/res/values-vi/strings.xml
@@ -1034,12 +1034,9 @@ Thông báo: %2$s"</string>
Bạn có vẫn muốn bật tuỳ chọn này không?"</string>
<string name="reply">"Trả lời"</string>
- <string name="rpan_activity_label">"RPAN"</string>
<string name="post_gallery_activity_label">"Bài đăng bộ sưu tập"</string>
<string name="trending_activity_label">"Trending"</string>
- <string name="action_share_rpan_link">"Chia sẻ đường link RPAN"</string>
<string name="action_share_post_link">"Chia sẻ đường link bài đăng"</string>
- <string name="rpan">"RPAN"</string>
<string name="trending">"Trending"</string>
<string name="receive_post_reply_notifications">"Nhận thông báo trả lời trong bài đăng"</string>
<string name="bottom_sheet_post_gallery">"Bộ sưu tập"</string>
@@ -1069,9 +1066,6 @@ Nếu không thì thay tên chúng trước khi Bật Material You."</string>
<string name="upload_image_success">"Tải hình ảnh thành công. Ấn vào nút hình ảnh lần nữa để thấy hình ảnh vửa tải lên."</string>
<string name="get_image_bitmap_failed">"Không thể lấy bitmap của hình ảnh"</string>
<string name="upload_image_failed">"Không thể tải hình ảnh lên"</string>
- <string name="load_rpan_broadcasts_failed">"Không thể tải broadcast RPAN"</string>
- <string name="parse_rpan_broadcasts_failed">"Không thể xử lý broadcast RPAN"</string>
- <string name="parse_rpan_broadcast_failed">"Không thể xử lý broadcast RPAN"</string>
<string name="search_comments">"Tìm kiếm bình luận"</string>
<string name="please_wait_image_is_uploading">"Hình ảnh vẫn đang tải. Vui lòng đợi."</string>
<string name="error_fetch_trending_search">"Lấy mục tìm kiếm thịnh hành thất bại.
diff --git a/app/src/main/res/values-zh-rCN/strings.xml b/app/src/main/res/values-zh-rCN/strings.xml
index d9e962bd..2d2bce43 100644
--- a/app/src/main/res/values-zh-rCN/strings.xml
+++ b/app/src/main/res/values-zh-rCN/strings.xml
@@ -1102,12 +1102,9 @@ https://play.google.com/store/apps/details?id=ml.docilealligator.infinityforredd
仍然要继续吗?"</string>
<string name="reply">"回复"</string>
- <string name="rpan_activity_label">"直播"</string>
<string name="post_gallery_activity_label">"相册帖"</string>
<string name="trending_activity_label">"热门"</string>
- <string name="action_share_rpan_link">"分享直播链接"</string>
<string name="action_share_post_link">"分享帖子链接"</string>
- <string name="rpan">"直播"</string>
<string name="trending">"热门"</string>
<string name="receive_post_reply_notifications">"接收帖子回复提醒"</string>
<string name="bottom_sheet_post_gallery">"相册"</string>
@@ -1137,9 +1134,6 @@ https://play.google.com/store/apps/details?id=ml.docilealligator.infinityforredd
<string name="upload_image_success">"上传图片成功。再次点击图片按钮查看已上传的图片。"</string>
<string name="get_image_bitmap_failed">"无法获取图片位图"</string>
<string name="upload_image_failed">"无法上传图片"</string>
- <string name="load_rpan_broadcasts_failed">"无法加载 RPAN 直播"</string>
- <string name="parse_rpan_broadcasts_failed">"无法解析 RPAN 直播"</string>
- <string name="parse_rpan_broadcast_failed">"无法解析 RPAN 直播"</string>
<string name="search_comments">"搜索评论"</string>
<string name="please_wait_image_is_uploading">"仍有图片正在上传,请稍候。"</string>
<string name="error_fetch_trending_search">"获取热搜失败。
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 51f70012..d4986fc8 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -39,7 +39,6 @@
<string name="post_filter_preference_activity_label">Post Filter</string>
<string name="search_users_result_activity_label">Users</string>
<string name="multireddit_selection_activity_label">Select a Multireddit</string>
- <string name="rpan_activity_label">RPAN</string>
<string name="post_gallery_activity_label">Gallery Post</string>
<string name="trending_activity_label">Trending</string>
<string name="wiki_activity_label">Wiki</string>
@@ -91,7 +90,6 @@
<string name="action_add_to_post_filter">Add to Post Filter</string>
<string name="action_delete_logs">Delete Logs</string>
<string name="action_create_github_issue">Create GitHub Issue</string>
- <string name="action_share_rpan_link">Share RPAN Link</string>
<string name="action_share_post_link">Share Post Link</string>
<string name="action_go_to_wiki">Go to Wiki</string>
<string name="action_playback_speed">Playback Speed</string>
@@ -139,7 +137,6 @@
<string name="history">History</string>
<string name="inbox">Inbox</string>
<string name="inbox_with_count">Inbox (%1$,d)</string>
- <string name="rpan">RPAN</string>
<string name="trending">Trending</string>
<string name="upvoted">Upvoted</string>
<string name="downvoted">Downvoted</string>
@@ -1211,10 +1208,6 @@
<string name="get_image_bitmap_failed">Unable to get the bitmap of the image</string>
<string name="upload_image_failed">Unable to upload the image</string>
- <string name="load_rpan_broadcasts_failed">Cannot load RPAN broadcasts</string>
- <string name="parse_rpan_broadcasts_failed">Cannot parse RPAN broadcasts</string>
- <string name="parse_rpan_broadcast_failed">Cannot parse RPAN broadcast</string>
-
<string name="search_comments">Search Comments</string>
<string name="please_wait_image_is_uploading">An image is still being uploaded. Please wait.</string>