diff --git a/app/src/main/java/app/fedilab/fedilabtube/AccountActivity.java b/app/src/main/java/app/fedilab/fedilabtube/AccountActivity.java index 7fcca2a..7982871 100644 --- a/app/src/main/java/app/fedilab/fedilabtube/AccountActivity.java +++ b/app/src/main/java/app/fedilab/fedilabtube/AccountActivity.java @@ -14,6 +14,8 @@ package app.fedilab.fedilabtube; * You should have received a copy of the GNU General Public License along with TubeLab; if not, * see . */ +import static app.fedilab.fedilabtube.MainActivity.badgeCount; + import android.content.Intent; import android.content.SharedPreferences; import android.database.sqlite.SQLiteDatabase; @@ -54,13 +56,12 @@ import app.fedilab.fedilabtube.helper.SwitchAccountHelper; import app.fedilab.fedilabtube.sqlite.AccountDAO; import app.fedilab.fedilabtube.sqlite.Sqlite; -import static app.fedilab.fedilabtube.MainActivity.badgeCount; - public class AccountActivity extends AppCompatActivity { private ActivityAccountBinding binding; + @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); @@ -259,6 +260,11 @@ public class AccountActivity extends AppCompatActivity { super.onDestroy(); } + @Override + public void onBackPressed() { + super.onBackPressed(); + overridePendingTransition(R.anim.slide_out_up, R.anim.slide_in_up_down); + } /** * Pager adapter for three tabs (notifications, muted, blocked) @@ -292,11 +298,5 @@ public class AccountActivity extends AppCompatActivity { } } - @Override - public void onBackPressed() { - super.onBackPressed(); - overridePendingTransition(R.anim.slide_out_up, R.anim.slide_in_up_down); - } - } \ No newline at end of file diff --git a/app/src/main/java/app/fedilab/fedilabtube/AllPlaylistsActivity.java b/app/src/main/java/app/fedilab/fedilabtube/AllPlaylistsActivity.java index adaec45..26a36c7 100644 --- a/app/src/main/java/app/fedilab/fedilabtube/AllPlaylistsActivity.java +++ b/app/src/main/java/app/fedilab/fedilabtube/AllPlaylistsActivity.java @@ -14,6 +14,9 @@ package app.fedilab.fedilabtube; * You should have received a copy of the GNU General Public License along with TubeLab; if not, * see . */ +import static app.fedilab.fedilabtube.PeertubeUploadActivity.MY_PERMISSIONS_REQUEST_READ_EXTERNAL_STORAGE; +import static app.fedilab.fedilabtube.helper.Helper.peertubeInformation; + import android.Manifest; import android.app.Activity; import android.content.Context; @@ -67,9 +70,6 @@ import app.fedilab.fedilabtube.viewmodel.ChannelsVM; import app.fedilab.fedilabtube.viewmodel.PlaylistsVM; import es.dmoral.toasty.Toasty; -import static app.fedilab.fedilabtube.PeertubeUploadActivity.MY_PERMISSIONS_REQUEST_READ_EXTERNAL_STORAGE; -import static app.fedilab.fedilabtube.helper.Helper.peertubeInformation; - public class AllPlaylistsActivity extends AppCompatActivity implements PlaylistAdapter.AllPlaylistRemoved { diff --git a/app/src/main/java/app/fedilab/fedilabtube/BaseFedilabTube.java b/app/src/main/java/app/fedilab/fedilabtube/BaseFedilabTube.java index 9e9dd70..f0b7663 100644 --- a/app/src/main/java/app/fedilab/fedilabtube/BaseFedilabTube.java +++ b/app/src/main/java/app/fedilab/fedilabtube/BaseFedilabTube.java @@ -22,8 +22,6 @@ import android.os.Build; import androidx.multidex.MultiDex; import androidx.multidex.MultiDexApplication; -import androidx.work.Configuration; -import androidx.work.WorkManager; import net.gotev.uploadservice.UploadServiceConfig; import net.gotev.uploadservice.observer.request.GlobalRequestObserver; diff --git a/app/src/main/java/app/fedilab/fedilabtube/InstancePickerActivity.java b/app/src/main/java/app/fedilab/fedilabtube/InstancePickerActivity.java index 0d0190f..7de07e1 100644 --- a/app/src/main/java/app/fedilab/fedilabtube/InstancePickerActivity.java +++ b/app/src/main/java/app/fedilab/fedilabtube/InstancePickerActivity.java @@ -15,6 +15,8 @@ package app.fedilab.fedilabtube; * see . */ +import static app.fedilab.fedilabtube.helper.Helper.peertubeInformation; + import android.os.Bundle; import android.text.SpannableStringBuilder; import android.text.Spanned; @@ -48,8 +50,6 @@ import app.fedilab.fedilabtube.helper.RoundedBackgroundSpan; import app.fedilab.fedilabtube.viewmodel.InstancesVM; import es.dmoral.toasty.Toasty; -import static app.fedilab.fedilabtube.helper.Helper.peertubeInformation; - public class InstancePickerActivity extends AppCompatActivity { diff --git a/app/src/main/java/app/fedilab/fedilabtube/LoginActivity.java b/app/src/main/java/app/fedilab/fedilabtube/LoginActivity.java index effc83a..266af76 100644 --- a/app/src/main/java/app/fedilab/fedilabtube/LoginActivity.java +++ b/app/src/main/java/app/fedilab/fedilabtube/LoginActivity.java @@ -14,6 +14,8 @@ package app.fedilab.fedilabtube; * You should have received a copy of the GNU General Public License along with TubeLab; if not, * see . */ +import static app.fedilab.fedilabtube.client.RetrofitPeertubeAPI.updateCredential; + import android.annotation.SuppressLint; import android.content.Intent; import android.content.SharedPreferences; @@ -22,7 +24,6 @@ import android.text.SpannableString; import android.text.Spanned; import android.text.style.ForegroundColorSpan; import android.text.style.UnderlineSpan; -import android.util.Log; import android.util.Patterns; import android.view.MenuItem; import android.view.View; @@ -54,8 +55,6 @@ import app.fedilab.fedilabtube.helper.HelperAcadInstance; import app.fedilab.fedilabtube.helper.HelperInstance; import es.dmoral.toasty.Toasty; -import static app.fedilab.fedilabtube.client.RetrofitPeertubeAPI.updateCredential; - public class LoginActivity extends AppCompatActivity { @@ -132,11 +131,8 @@ public class LoginActivity extends AppCompatActivity { for (AcadInstances ac : acadInstances) { academiesKey[i] = ac.getName(); academiesValue[i] = ac.getUrl(); - Log.v(Helper.TAG, "url 1: " + ac.getUrl()); - Log.v(Helper.TAG, "url 2: " + acad); if (ac.getUrl().compareTo(acad) == 0) { position = i; - Log.v(Helper.TAG, "ok: " + position); } i++; } @@ -147,17 +143,10 @@ public class LoginActivity extends AppCompatActivity { @Override public void onItemSelected(AdapterView parent, View view, int position, long id) { acadInstance = academiesValue[position]; - if (acadInstances.get(position).isOpenId()) { - binding.loginUidContainer.setVisibility(View.GONE); - binding.loginPasswdContainer.setVisibility(View.GONE); - binding.loginInstanceContainer.setVisibility(View.GONE); - binding.createAnAccountPeertube.setVisibility(View.GONE); - } else { - binding.loginUidContainer.setVisibility(View.VISIBLE); - binding.loginPasswdContainer.setVisibility(View.VISIBLE); - binding.loginInstanceContainer.setVisibility(View.GONE); - binding.createAnAccountPeertube.setVisibility(View.VISIBLE); - } + binding.loginUidContainer.setVisibility(View.GONE); + binding.loginPasswdContainer.setVisibility(View.GONE); + binding.loginInstanceContainer.setVisibility(View.GONE); + binding.createAnAccountPeertube.setVisibility(View.GONE); } @Override @@ -213,7 +202,7 @@ public class LoginActivity extends AppCompatActivity { editor.apply(); Intent intent = new Intent(LoginActivity.this, WebviewConnectActivity.class); Bundle b = new Bundle(); - b.putString("url", "https://" + acadInstance + "/plugins/auth-openid-connect/0.0.1/auth/openid-connect"); + b.putString("url", "https://" + acadInstance + "/plugins/auth-openid-connect/0.0.7/auth/openid-connect"); intent.putExtras(b); intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); startActivity(intent); diff --git a/app/src/main/java/app/fedilab/fedilabtube/MainActivity.java b/app/src/main/java/app/fedilab/fedilabtube/MainActivity.java index 72dcf95..bbf1837 100644 --- a/app/src/main/java/app/fedilab/fedilabtube/MainActivity.java +++ b/app/src/main/java/app/fedilab/fedilabtube/MainActivity.java @@ -14,6 +14,10 @@ package app.fedilab.fedilabtube; * You should have received a copy of the GNU General Public License along with TubeLab; if not, * see . */ +import static app.fedilab.fedilabtube.MainActivity.TypeOfConnection.NORMAL; +import static app.fedilab.fedilabtube.MainActivity.TypeOfConnection.SURFING; +import static app.fedilab.fedilabtube.helper.Helper.peertubeInformation; + import android.annotation.SuppressLint; import android.app.Activity; import android.content.Context; @@ -82,10 +86,6 @@ import app.fedilab.fedilabtube.sqlite.StoredInstanceDAO; import app.fedilab.fedilabtube.viewmodel.TimelineVM; import es.dmoral.toasty.Toasty; -import static app.fedilab.fedilabtube.MainActivity.TypeOfConnection.NORMAL; -import static app.fedilab.fedilabtube.MainActivity.TypeOfConnection.SURFING; -import static app.fedilab.fedilabtube.helper.Helper.peertubeInformation; - public class MainActivity extends BaseMainActivity { @@ -95,12 +95,10 @@ public class MainActivity extends BaseMainActivity { public static UserMe userMe; public static InstanceData.InstanceConfig instanceConfig; public static TypeOfConnection typeOfConnection; - - + public static int badgeCount; private DisplayVideosFragment recentFragment, locaFragment, trendingFragment, subscriptionFragment, mostLikedFragment; private DisplayOverviewFragment overviewFragment; private ActivityMainBinding binding; - public static int badgeCount; private final BottomNavigationView.OnNavigationItemSelectedListener mOnNavigationItemSelectedListener = item -> { int itemId = item.getItemId(); @@ -215,7 +213,6 @@ public class MainActivity extends BaseMainActivity { } - @Override public void onDestroy() { super.onDestroy(); @@ -223,7 +220,6 @@ public class MainActivity extends BaseMainActivity { } - @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); diff --git a/app/src/main/java/app/fedilab/fedilabtube/ManageInstancesActivity.java b/app/src/main/java/app/fedilab/fedilabtube/ManageInstancesActivity.java index c5963b4..2b0b5df 100644 --- a/app/src/main/java/app/fedilab/fedilabtube/ManageInstancesActivity.java +++ b/app/src/main/java/app/fedilab/fedilabtube/ManageInstancesActivity.java @@ -14,6 +14,9 @@ package app.fedilab.fedilabtube; * You should have received a copy of the GNU General Public License along with TubeLab; if not, * see . */ +import static app.fedilab.fedilabtube.MainActivity.PICK_INSTANCE_SURF; +import static app.fedilab.fedilabtube.MainActivity.showRadioButtonDialogFullInstances; + import android.annotation.SuppressLint; import android.app.Activity; import android.content.Intent; @@ -39,9 +42,6 @@ import app.fedilab.fedilabtube.sqlite.Sqlite; import app.fedilab.fedilabtube.sqlite.StoredInstanceDAO; import app.fedilab.fedilabtube.viewmodel.InfoInstanceVM; -import static app.fedilab.fedilabtube.MainActivity.PICK_INSTANCE_SURF; -import static app.fedilab.fedilabtube.MainActivity.showRadioButtonDialogFullInstances; - public class ManageInstancesActivity extends AppCompatActivity implements AboutInstanceAdapter.AllInstancesRemoved { diff --git a/app/src/main/java/app/fedilab/fedilabtube/MastodonWebviewConnectActivity.java b/app/src/main/java/app/fedilab/fedilabtube/MastodonWebviewConnectActivity.java index 0811d95..88cabfd 100644 --- a/app/src/main/java/app/fedilab/fedilabtube/MastodonWebviewConnectActivity.java +++ b/app/src/main/java/app/fedilab/fedilabtube/MastodonWebviewConnectActivity.java @@ -35,10 +35,10 @@ import android.widget.Toast; import androidx.appcompat.app.AlertDialog; import androidx.appcompat.app.AppCompatActivity; -import app.fedilab.fedilabtube.client.mastodon.RetrofitMastodonAPI; import app.fedilab.fedilabtube.client.entities.Error; import app.fedilab.fedilabtube.client.entities.OauthParams; import app.fedilab.fedilabtube.client.entities.Token; +import app.fedilab.fedilabtube.client.mastodon.RetrofitMastodonAPI; import app.fedilab.fedilabtube.helper.Helper; import es.dmoral.toasty.Toasty; diff --git a/app/src/main/java/app/fedilab/fedilabtube/MyAccountActivity.java b/app/src/main/java/app/fedilab/fedilabtube/MyAccountActivity.java index e554a8d..c507885 100644 --- a/app/src/main/java/app/fedilab/fedilabtube/MyAccountActivity.java +++ b/app/src/main/java/app/fedilab/fedilabtube/MyAccountActivity.java @@ -14,6 +14,9 @@ package app.fedilab.fedilabtube; * You should have received a copy of the GNU General Public License along with TubeLab; if not, * see . */ +import static app.fedilab.fedilabtube.PeertubeUploadActivity.MY_PERMISSIONS_REQUEST_READ_EXTERNAL_STORAGE; +import static app.fedilab.fedilabtube.worker.WorkHelper.NOTIFICATION_WORKER; + import android.Manifest; import android.app.Activity; import android.content.Context; @@ -55,9 +58,6 @@ import app.fedilab.fedilabtube.helper.Helper; import app.fedilab.fedilabtube.worker.WorkHelper; import es.dmoral.toasty.Toasty; -import static app.fedilab.fedilabtube.PeertubeUploadActivity.MY_PERMISSIONS_REQUEST_READ_EXTERNAL_STORAGE; -import static app.fedilab.fedilabtube.worker.WorkHelper.NOTIFICATION_WORKER; - public class MyAccountActivity extends AppCompatActivity { private static final int PICK_IMAGE = 466; diff --git a/app/src/main/java/app/fedilab/fedilabtube/PeertubeActivity.java b/app/src/main/java/app/fedilab/fedilabtube/PeertubeActivity.java index ff375be..bb22ba4 100644 --- a/app/src/main/java/app/fedilab/fedilabtube/PeertubeActivity.java +++ b/app/src/main/java/app/fedilab/fedilabtube/PeertubeActivity.java @@ -14,6 +14,18 @@ package app.fedilab.fedilabtube; * You should have received a copy of the GNU General Public License along with TubeLab; if not, * see . */ +import static com.google.android.exoplayer2.Player.MEDIA_ITEM_TRANSITION_REASON_AUTO; +import static app.fedilab.fedilabtube.client.RetrofitPeertubeAPI.ActionType.ADD_COMMENT; +import static app.fedilab.fedilabtube.client.RetrofitPeertubeAPI.ActionType.RATEVIDEO; +import static app.fedilab.fedilabtube.client.RetrofitPeertubeAPI.ActionType.REPLY; +import static app.fedilab.fedilabtube.client.RetrofitPeertubeAPI.ActionType.REPORT_ACCOUNT; +import static app.fedilab.fedilabtube.client.RetrofitPeertubeAPI.ActionType.REPORT_VIDEO; +import static app.fedilab.fedilabtube.helper.Helper.canMakeAction; +import static app.fedilab.fedilabtube.helper.Helper.getAttColor; +import static app.fedilab.fedilabtube.helper.Helper.isLoggedIn; +import static app.fedilab.fedilabtube.helper.Helper.loadGiF; +import static app.fedilab.fedilabtube.helper.Helper.peertubeInformation; + import android.Manifest; import android.annotation.SuppressLint; import android.app.Activity; @@ -158,23 +170,13 @@ import app.fedilab.fedilabtube.webview.MastalabWebChromeClient; import app.fedilab.fedilabtube.webview.MastalabWebViewClient; import es.dmoral.toasty.Toasty; -import static app.fedilab.fedilabtube.client.RetrofitPeertubeAPI.ActionType.ADD_COMMENT; -import static app.fedilab.fedilabtube.client.RetrofitPeertubeAPI.ActionType.RATEVIDEO; -import static app.fedilab.fedilabtube.client.RetrofitPeertubeAPI.ActionType.REPLY; -import static app.fedilab.fedilabtube.client.RetrofitPeertubeAPI.ActionType.REPORT_ACCOUNT; -import static app.fedilab.fedilabtube.client.RetrofitPeertubeAPI.ActionType.REPORT_VIDEO; -import static app.fedilab.fedilabtube.helper.Helper.canMakeAction; -import static app.fedilab.fedilabtube.helper.Helper.getAttColor; -import static app.fedilab.fedilabtube.helper.Helper.isLoggedIn; -import static app.fedilab.fedilabtube.helper.Helper.loadGiF; -import static app.fedilab.fedilabtube.helper.Helper.peertubeInformation; -import static com.google.android.exoplayer2.Player.MEDIA_ITEM_TRANSITION_REASON_AUTO; - public class PeertubeActivity extends BasePeertubeActivity implements CommentListAdapter.AllCommentRemoved, Player.EventListener, VideoListener, TorrentListener, MenuAdapter.ItemClicked, MenuItemAdapter.ItemAction { public static String video_id; public static List playedVideos = new ArrayList<>(); + Uri captionURI; + String captionLang; private String peertubeInstance, videoUuid; private ImageView fullScreenIcon; private boolean fullScreenMode; @@ -203,10 +205,7 @@ public class PeertubeActivity extends BasePeertubeActivity implements CommentLis private String currentCaption; private boolean isRemote; private boolean willPlayFromIntent; - private app.fedilab.fedilabtube.client.mastodon.Status status; - Uri captionURI; - String captionLang; public static void hideKeyboard(Activity activity) { if (activity != null && activity.getWindow() != null) { @@ -495,7 +494,6 @@ public class PeertubeActivity extends BasePeertubeActivity implements CommentLis }); - } private void manageVIewVideos(APIResponse apiResponse) { diff --git a/app/src/main/java/app/fedilab/fedilabtube/PeertubeEditUploadActivity.java b/app/src/main/java/app/fedilab/fedilabtube/PeertubeEditUploadActivity.java index ac230eb..5cf52bf 100644 --- a/app/src/main/java/app/fedilab/fedilabtube/PeertubeEditUploadActivity.java +++ b/app/src/main/java/app/fedilab/fedilabtube/PeertubeEditUploadActivity.java @@ -14,6 +14,10 @@ package app.fedilab.fedilabtube; * You should have received a copy of the GNU General Public License along with TubeLab; if not, * see . */ +import static app.fedilab.fedilabtube.client.RetrofitPeertubeAPI.ActionType.PEERTUBEDELETEVIDEO; +import static app.fedilab.fedilabtube.client.RetrofitPeertubeAPI.DataType.MY_CHANNELS; +import static app.fedilab.fedilabtube.helper.Helper.peertubeInformation; + import android.Manifest; import android.app.Activity; import android.content.Intent; @@ -61,10 +65,6 @@ import app.fedilab.fedilabtube.viewmodel.PostActionsVM; import app.fedilab.fedilabtube.viewmodel.TimelineVM; import es.dmoral.toasty.Toasty; -import static app.fedilab.fedilabtube.client.RetrofitPeertubeAPI.ActionType.PEERTUBEDELETEVIDEO; -import static app.fedilab.fedilabtube.client.RetrofitPeertubeAPI.DataType.MY_CHANNELS; -import static app.fedilab.fedilabtube.helper.Helper.peertubeInformation; - public class PeertubeEditUploadActivity extends AppCompatActivity { diff --git a/app/src/main/java/app/fedilab/fedilabtube/PeertubeRegisterActivity.java b/app/src/main/java/app/fedilab/fedilabtube/PeertubeRegisterActivity.java index f2bb0d0..f8422c7 100644 --- a/app/src/main/java/app/fedilab/fedilabtube/PeertubeRegisterActivity.java +++ b/app/src/main/java/app/fedilab/fedilabtube/PeertubeRegisterActivity.java @@ -14,6 +14,8 @@ package app.fedilab.fedilabtube; * You should have received a copy of the GNU General Public License along with TubeLab; if not, * see . */ +import static app.fedilab.fedilabtube.MainActivity.PICK_INSTANCE; + import android.annotation.SuppressLint; import android.app.Activity; import android.content.Intent; @@ -42,8 +44,6 @@ import app.fedilab.fedilabtube.helper.HelperAcadInstance; import app.fedilab.fedilabtube.helper.HelperInstance; import es.dmoral.toasty.Toasty; -import static app.fedilab.fedilabtube.MainActivity.PICK_INSTANCE; - public class PeertubeRegisterActivity extends AppCompatActivity { diff --git a/app/src/main/java/app/fedilab/fedilabtube/PeertubeUploadActivity.java b/app/src/main/java/app/fedilab/fedilabtube/PeertubeUploadActivity.java index 41c84ec..0b95b12 100644 --- a/app/src/main/java/app/fedilab/fedilabtube/PeertubeUploadActivity.java +++ b/app/src/main/java/app/fedilab/fedilabtube/PeertubeUploadActivity.java @@ -14,6 +14,10 @@ package app.fedilab.fedilabtube; * You should have received a copy of the GNU General Public License along with TubeLab; if not, * see . */ +import static app.fedilab.fedilabtube.MainActivity.userMe; +import static app.fedilab.fedilabtube.client.RetrofitPeertubeAPI.DataType.MY_CHANNELS; +import static app.fedilab.fedilabtube.helper.Helper.peertubeInformation; + import android.Manifest; import android.app.Activity; import android.app.PendingIntent; @@ -62,10 +66,6 @@ import app.fedilab.fedilabtube.helper.HelperInstance; import app.fedilab.fedilabtube.viewmodel.ChannelsVM; import es.dmoral.toasty.Toasty; -import static app.fedilab.fedilabtube.MainActivity.userMe; -import static app.fedilab.fedilabtube.client.RetrofitPeertubeAPI.DataType.MY_CHANNELS; -import static app.fedilab.fedilabtube.helper.Helper.peertubeInformation; - public class PeertubeUploadActivity extends AppCompatActivity { diff --git a/app/src/main/java/app/fedilab/fedilabtube/SepiaSearchActivity.java b/app/src/main/java/app/fedilab/fedilabtube/SepiaSearchActivity.java index b69e922..3fc4c67 100644 --- a/app/src/main/java/app/fedilab/fedilabtube/SepiaSearchActivity.java +++ b/app/src/main/java/app/fedilab/fedilabtube/SepiaSearchActivity.java @@ -14,6 +14,9 @@ package app.fedilab.fedilabtube; * You should have received a copy of the GNU General Public License along with TubeLab; if not, * see . */ +import static app.fedilab.fedilabtube.PeertubeActivity.hideKeyboard; +import static app.fedilab.fedilabtube.helper.Helper.peertubeInformation; + import android.content.Context; import android.content.SharedPreferences; import android.os.Bundle; @@ -42,9 +45,6 @@ import app.fedilab.fedilabtube.databinding.ActivitySepiaSearchBinding; import app.fedilab.fedilabtube.fragment.DisplaySepiaSearchFragment; import app.fedilab.fedilabtube.helper.Helper; -import static app.fedilab.fedilabtube.PeertubeActivity.hideKeyboard; -import static app.fedilab.fedilabtube.helper.Helper.peertubeInformation; - public class SepiaSearchActivity extends AppCompatActivity { diff --git a/app/src/main/java/app/fedilab/fedilabtube/ShowAccountActivity.java b/app/src/main/java/app/fedilab/fedilabtube/ShowAccountActivity.java index 259d2d2..3dd0ce0 100644 --- a/app/src/main/java/app/fedilab/fedilabtube/ShowAccountActivity.java +++ b/app/src/main/java/app/fedilab/fedilabtube/ShowAccountActivity.java @@ -14,6 +14,10 @@ package app.fedilab.fedilabtube; * You should have received a copy of the GNU General Public License along with TubeLab; if not, * see . */ +import static androidx.core.text.HtmlCompat.FROM_HTML_MODE_LEGACY; +import static app.fedilab.fedilabtube.client.RetrofitPeertubeAPI.ActionType.MUTE; +import static app.fedilab.fedilabtube.client.RetrofitPeertubeAPI.ActionType.REPORT_ACCOUNT; + import android.content.Intent; import android.os.Build; import android.os.Bundle; @@ -54,10 +58,6 @@ import app.fedilab.fedilabtube.viewmodel.PostActionsVM; import app.fedilab.fedilabtube.viewmodel.TimelineVM; import es.dmoral.toasty.Toasty; -import static androidx.core.text.HtmlCompat.FROM_HTML_MODE_LEGACY; -import static app.fedilab.fedilabtube.client.RetrofitPeertubeAPI.ActionType.MUTE; -import static app.fedilab.fedilabtube.client.RetrofitPeertubeAPI.ActionType.REPORT_ACCOUNT; - public class ShowAccountActivity extends AppCompatActivity { diff --git a/app/src/main/java/app/fedilab/fedilabtube/ShowChannelActivity.java b/app/src/main/java/app/fedilab/fedilabtube/ShowChannelActivity.java index 0c1aebe..3ed4b5c 100644 --- a/app/src/main/java/app/fedilab/fedilabtube/ShowChannelActivity.java +++ b/app/src/main/java/app/fedilab/fedilabtube/ShowChannelActivity.java @@ -14,6 +14,15 @@ package app.fedilab.fedilabtube; * You should have received a copy of the GNU General Public License along with TubeLab; if not, * see . */ +import static androidx.core.text.HtmlCompat.FROM_HTML_MODE_LEGACY; +import static app.fedilab.fedilabtube.MainActivity.TypeOfConnection.SURFING; +import static app.fedilab.fedilabtube.client.RetrofitPeertubeAPI.ActionType.FOLLOW; +import static app.fedilab.fedilabtube.client.RetrofitPeertubeAPI.ActionType.MUTE; +import static app.fedilab.fedilabtube.client.RetrofitPeertubeAPI.ActionType.REPORT_ACCOUNT; +import static app.fedilab.fedilabtube.client.RetrofitPeertubeAPI.ActionType.UNFOLLOW; +import static app.fedilab.fedilabtube.client.RetrofitPeertubeAPI.DataType.CHANNEL; +import static app.fedilab.fedilabtube.helper.Helper.isLoggedIn; + import android.content.Intent; import android.content.SharedPreferences; import android.content.res.ColorStateList; @@ -69,15 +78,6 @@ import app.fedilab.fedilabtube.viewmodel.RelationshipVM; import app.fedilab.fedilabtube.viewmodel.TimelineVM; import es.dmoral.toasty.Toasty; -import static androidx.core.text.HtmlCompat.FROM_HTML_MODE_LEGACY; -import static app.fedilab.fedilabtube.MainActivity.TypeOfConnection.SURFING; -import static app.fedilab.fedilabtube.client.RetrofitPeertubeAPI.ActionType.FOLLOW; -import static app.fedilab.fedilabtube.client.RetrofitPeertubeAPI.ActionType.MUTE; -import static app.fedilab.fedilabtube.client.RetrofitPeertubeAPI.ActionType.REPORT_ACCOUNT; -import static app.fedilab.fedilabtube.client.RetrofitPeertubeAPI.ActionType.UNFOLLOW; -import static app.fedilab.fedilabtube.client.RetrofitPeertubeAPI.DataType.CHANNEL; -import static app.fedilab.fedilabtube.helper.Helper.isLoggedIn; - public class ShowChannelActivity extends AppCompatActivity { diff --git a/app/src/main/java/app/fedilab/fedilabtube/VideosTimelineActivity.java b/app/src/main/java/app/fedilab/fedilabtube/VideosTimelineActivity.java index 3aff82b..1a07792 100644 --- a/app/src/main/java/app/fedilab/fedilabtube/VideosTimelineActivity.java +++ b/app/src/main/java/app/fedilab/fedilabtube/VideosTimelineActivity.java @@ -14,6 +14,8 @@ package app.fedilab.fedilabtube; * You should have received a copy of the GNU General Public License along with TubeLab; if not, * see . */ +import static app.fedilab.fedilabtube.viewmodel.TimelineVM.TimelineType.HISTORY; + import android.app.AlertDialog; import android.os.Bundle; import android.view.Menu; @@ -38,8 +40,6 @@ import app.fedilab.fedilabtube.fragment.DisplayVideosFragment; import app.fedilab.fedilabtube.helper.Helper; import app.fedilab.fedilabtube.viewmodel.TimelineVM; -import static app.fedilab.fedilabtube.viewmodel.TimelineVM.TimelineType.HISTORY; - public class VideosTimelineActivity extends AppCompatActivity { diff --git a/app/src/main/java/app/fedilab/fedilabtube/WebviewConnectActivity.java b/app/src/main/java/app/fedilab/fedilabtube/WebviewConnectActivity.java index 1878487..ebced17 100644 --- a/app/src/main/java/app/fedilab/fedilabtube/WebviewConnectActivity.java +++ b/app/src/main/java/app/fedilab/fedilabtube/WebviewConnectActivity.java @@ -14,6 +14,8 @@ package app.fedilab.fedilabtube; * You should have received a copy of the GNU General Public License along with TubeLab; if not, * see . */ +import static app.fedilab.fedilabtube.client.RetrofitPeertubeAPI.updateCredential; + import android.annotation.SuppressLint; import android.content.Context; import android.content.SharedPreferences; @@ -23,6 +25,7 @@ import android.view.MenuItem; import android.webkit.CookieManager; import android.webkit.CookieSyncManager; import android.webkit.WebChromeClient; +import android.webkit.WebSettings; import android.webkit.WebView; import android.webkit.WebViewClient; import android.widget.ProgressBar; @@ -40,13 +43,11 @@ import app.fedilab.fedilabtube.client.entities.Token; import app.fedilab.fedilabtube.helper.Helper; import app.fedilab.fedilabtube.webview.CustomWebview; -import static app.fedilab.fedilabtube.client.RetrofitPeertubeAPI.updateCredential; - public class WebviewConnectActivity extends AppCompatActivity { - private CustomWebview webView; + private WebView webView; private AlertDialog alert; private String clientId, clientSecret; private String url; @@ -72,7 +73,7 @@ public class WebviewConnectActivity extends AppCompatActivity { public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); SharedPreferences sharedpreferences = getSharedPreferences(Helper.APP_PREFS, Context.MODE_PRIVATE); - + WebView.setWebContentsDebuggingEnabled(true); setContentView(R.layout.activity_webview_connect); Bundle b = getIntent().getExtras(); if (b != null) { @@ -87,11 +88,19 @@ public class WebviewConnectActivity extends AppCompatActivity { webView = findViewById(R.id.webviewConnect); clearCookies(WebviewConnectActivity.this); webView.getSettings().setJavaScriptEnabled(true); - if (Build.VERSION.SDK_INT >= 21) { - CookieManager.getInstance().setAcceptThirdPartyCookies(webView, true); - } else { - CookieManager.getInstance().setAcceptCookie(true); - } + CookieManager.getInstance().setAcceptThirdPartyCookies(webView, true); + webView.getSettings().setUseWideViewPort(true); + webView.getSettings().setLoadWithOverviewMode(true); + webView.getSettings().setSupportZoom(true); + webView.getSettings().setDisplayZoomControls(false); + webView.getSettings().setBuiltInZoomControls(true); + webView.getSettings().setAllowContentAccess(true); + webView.getSettings().setLoadsImagesAutomatically(true); + webView.getSettings().setSupportMultipleWindows(false); + webView.getSettings().setAppCacheEnabled(true); + webView.getSettings().setDatabaseEnabled(true); + webView.getSettings().setCacheMode(WebSettings.LOAD_DEFAULT); + webView.getSettings().setMediaPlaybackRequiresUserGesture(true); if (getSupportActionBar() != null) getSupportActionBar().setDisplayHomeAsUpEnabled(true); setTitle(R.string.login); @@ -112,7 +121,6 @@ public class WebviewConnectActivity extends AppCompatActivity { webView.setWebViewClient(new WebViewClient() { - @Override public void onPageFinished(WebView view, String url) { Matcher matcher = Helper.redirectPattern.matcher(url); diff --git a/app/src/main/java/app/fedilab/fedilabtube/client/RetrofitPeertubeAPI.java b/app/src/main/java/app/fedilab/fedilabtube/client/RetrofitPeertubeAPI.java index 5c805a4..a5cd5a1 100644 --- a/app/src/main/java/app/fedilab/fedilabtube/client/RetrofitPeertubeAPI.java +++ b/app/src/main/java/app/fedilab/fedilabtube/client/RetrofitPeertubeAPI.java @@ -97,6 +97,10 @@ import retrofit2.converter.gson.GsonConverterFactory; @SuppressWarnings({"unused", "RedundantSuppression", "ConstantConditions"}) public class RetrofitPeertubeAPI { + final OkHttpClient okHttpClient = new OkHttpClient.Builder() + .readTimeout(60, TimeUnit.SECONDS) + .connectTimeout(60, TimeUnit.SECONDS) + .build(); private final String finalUrl; private final Context _context; private final String instance; @@ -106,12 +110,6 @@ public class RetrofitPeertubeAPI { private Set selection; - final OkHttpClient okHttpClient = new OkHttpClient.Builder() - .readTimeout(60, TimeUnit.SECONDS) - .connectTimeout(60, TimeUnit.SECONDS) - .build(); - - public RetrofitPeertubeAPI(Context context) { _context = context; instance = HelperInstance.getLiveInstance(context); diff --git a/app/src/main/java/app/fedilab/fedilabtube/client/entities/AcadInstances.java b/app/src/main/java/app/fedilab/fedilabtube/client/entities/AcadInstances.java index 83b217a..65e04bd 100644 --- a/app/src/main/java/app/fedilab/fedilabtube/client/entities/AcadInstances.java +++ b/app/src/main/java/app/fedilab/fedilabtube/client/entities/AcadInstances.java @@ -15,7 +15,6 @@ package app.fedilab.fedilabtube.client.entities; * see . */ import java.util.ArrayList; -import java.util.HashMap; import java.util.Iterator; import java.util.LinkedHashMap; import java.util.List; diff --git a/app/src/main/java/app/fedilab/fedilabtube/client/mastodon/MastodonAccount.java b/app/src/main/java/app/fedilab/fedilabtube/client/mastodon/MastodonAccount.java index 97bb4c4..7115443 100644 --- a/app/src/main/java/app/fedilab/fedilabtube/client/mastodon/MastodonAccount.java +++ b/app/src/main/java/app/fedilab/fedilabtube/client/mastodon/MastodonAccount.java @@ -29,6 +29,18 @@ import app.fedilab.fedilabtube.client.entities.Avatar; public class MastodonAccount { + public static AccountData.Account convertToPeertubeAccount(MastodonAccount.Account initialAccount) { + AccountData.Account account = new AccountData.Account(); + Avatar avatar = new Avatar(); + avatar.setPath(initialAccount.getAvatar()); + account.setAvatar(avatar); + account.setDescription(initialAccount.getDescription()); + account.setDisplayName(initialAccount.getDisplayName()); + account.setUsername(initialAccount.getUsername()); + account.setHost(initialAccount.getHost()); + return account; + } + public static class Account implements Parcelable { public static final Creator CREATOR = new Creator() { @Override @@ -240,16 +252,4 @@ public class MastodonAccount { dest.writeString(this.url); } } - - public static AccountData.Account convertToPeertubeAccount(MastodonAccount.Account initialAccount) { - AccountData.Account account = new AccountData.Account(); - Avatar avatar = new Avatar(); - avatar.setPath(initialAccount.getAvatar()); - account.setAvatar(avatar); - account.setDescription(initialAccount.getDescription()); - account.setDisplayName(initialAccount.getDisplayName()); - account.setUsername(initialAccount.getUsername()); - account.setHost(initialAccount.getHost()); - return account; - } } diff --git a/app/src/main/java/app/fedilab/fedilabtube/client/mastodon/RetrofitMastodonAPI.java b/app/src/main/java/app/fedilab/fedilabtube/client/mastodon/RetrofitMastodonAPI.java index 302084f..f3662dd 100644 --- a/app/src/main/java/app/fedilab/fedilabtube/client/mastodon/RetrofitMastodonAPI.java +++ b/app/src/main/java/app/fedilab/fedilabtube/client/mastodon/RetrofitMastodonAPI.java @@ -45,17 +45,33 @@ import retrofit2.converter.gson.GsonConverterFactory; public class RetrofitMastodonAPI { + final OkHttpClient okHttpClient = new OkHttpClient.Builder() + .readTimeout(60, TimeUnit.SECONDS) + .connectTimeout(60, TimeUnit.SECONDS) + .build(); private final String finalUrl; private final String finalUrl2; private final Context _context; private String instance; private String token; + public RetrofitMastodonAPI(Context context) { + _context = context; + SharedPreferences sharedpreferences = _context.getSharedPreferences(Helper.APP_PREFS, Context.MODE_PRIVATE); + this.instance = sharedpreferences.getString(Helper.PREF_REMOTE_INSTANCE, null); + this.token = sharedpreferences.getString(Helper.PREF_KEY_OAUTH_TOKEN, null); + finalUrl = "https://" + this.instance + "/api/v1/"; + finalUrl2 = "https://" + this.instance + "/api/v2/"; + } - final OkHttpClient okHttpClient = new OkHttpClient.Builder() - .readTimeout(60, TimeUnit.SECONDS) - .connectTimeout(60, TimeUnit.SECONDS) - .build(); + + public RetrofitMastodonAPI(Context context, String instance, String token) { + _context = context; + this.instance = instance; + this.token = token; + finalUrl = "https://" + instance + "/api/v1/"; + finalUrl2 = "https://" + this.instance + "/api/v2/"; + } public Status search(String url) throws Error { MastodonService mastodonService2 = init2(); @@ -81,24 +97,6 @@ public class RetrofitMastodonAPI { return null; } - - public RetrofitMastodonAPI(Context context) { - _context = context; - SharedPreferences sharedpreferences = _context.getSharedPreferences(Helper.APP_PREFS, Context.MODE_PRIVATE); - this.instance = sharedpreferences.getString(Helper.PREF_REMOTE_INSTANCE, null); - this.token = sharedpreferences.getString(Helper.PREF_KEY_OAUTH_TOKEN, null); - finalUrl = "https://" + this.instance + "/api/v1/"; - finalUrl2 = "https://" + this.instance + "/api/v2/"; - } - - public RetrofitMastodonAPI(Context context, String instance, String token) { - _context = context; - this.instance = instance; - this.token = token; - finalUrl = "https://" + instance + "/api/v1/"; - finalUrl2 = "https://" + this.instance + "/api/v2/"; - } - public void updateCredential(Activity activity, String client_id, String client_secret, String refresh_token, String software) { new Thread(() -> { MastodonAccount.Account account; @@ -340,6 +338,13 @@ public class RetrofitMastodonAPI { return null; } + private String getToken() { + if (token != null) { + return "Bearer " + token; + } else { + return null; + } + } public enum actionType { BOOST, @@ -349,12 +354,4 @@ public class RetrofitMastodonAPI { BOOKMARK, UNBOOKMARK } - - private String getToken() { - if (token != null) { - return "Bearer " + token; - } else { - return null; - } - } } diff --git a/app/src/main/java/app/fedilab/fedilabtube/drawer/AboutInstanceAdapter.java b/app/src/main/java/app/fedilab/fedilabtube/drawer/AboutInstanceAdapter.java index b06fadd..2fdc47e 100644 --- a/app/src/main/java/app/fedilab/fedilabtube/drawer/AboutInstanceAdapter.java +++ b/app/src/main/java/app/fedilab/fedilabtube/drawer/AboutInstanceAdapter.java @@ -15,6 +15,8 @@ package app.fedilab.fedilabtube.drawer; * see . */ +import static androidx.core.text.HtmlCompat.FROM_HTML_MODE_LEGACY; + import android.annotation.SuppressLint; import android.app.Activity; import android.app.AlertDialog; @@ -45,8 +47,6 @@ import app.fedilab.fedilabtube.helper.Helper; import app.fedilab.fedilabtube.sqlite.Sqlite; import app.fedilab.fedilabtube.sqlite.StoredInstanceDAO; -import static androidx.core.text.HtmlCompat.FROM_HTML_MODE_LEGACY; - public class AboutInstanceAdapter extends RecyclerView.Adapter { diff --git a/app/src/main/java/app/fedilab/fedilabtube/drawer/CommentListAdapter.java b/app/src/main/java/app/fedilab/fedilabtube/drawer/CommentListAdapter.java index a5ed4fa..b8a8af1 100644 --- a/app/src/main/java/app/fedilab/fedilabtube/drawer/CommentListAdapter.java +++ b/app/src/main/java/app/fedilab/fedilabtube/drawer/CommentListAdapter.java @@ -14,6 +14,9 @@ package app.fedilab.fedilabtube.drawer; * You should have received a copy of the GNU General Public License along with TubeLab; if not, * see . */ +import static app.fedilab.fedilabtube.client.RetrofitPeertubeAPI.ActionType.MUTE; +import static app.fedilab.fedilabtube.client.RetrofitPeertubeAPI.ActionType.REPLY; + import android.annotation.SuppressLint; import android.app.Activity; import android.app.AlertDialog; @@ -64,9 +67,6 @@ import app.fedilab.fedilabtube.helper.Helper; import app.fedilab.fedilabtube.viewmodel.PostActionsVM; import es.dmoral.toasty.Toasty; -import static app.fedilab.fedilabtube.client.RetrofitPeertubeAPI.ActionType.MUTE; -import static app.fedilab.fedilabtube.client.RetrofitPeertubeAPI.ActionType.REPLY; - public class CommentListAdapter extends RecyclerView.Adapter { diff --git a/app/src/main/java/app/fedilab/fedilabtube/drawer/InstanceAdapter.java b/app/src/main/java/app/fedilab/fedilabtube/drawer/InstanceAdapter.java index ef82099..58d34a2 100644 --- a/app/src/main/java/app/fedilab/fedilabtube/drawer/InstanceAdapter.java +++ b/app/src/main/java/app/fedilab/fedilabtube/drawer/InstanceAdapter.java @@ -15,6 +15,10 @@ package app.fedilab.fedilabtube.drawer; * see . */ +import static android.app.Activity.RESULT_OK; +import static androidx.core.text.HtmlCompat.FROM_HTML_MODE_LEGACY; +import static app.fedilab.fedilabtube.helper.Helper.peertubeInformation; + import android.app.Activity; import android.content.Context; import android.content.Intent; @@ -41,10 +45,6 @@ import app.fedilab.fedilabtube.client.data.InstanceData.Instance; import app.fedilab.fedilabtube.databinding.DrawerInstanceBinding; import app.fedilab.fedilabtube.helper.RoundedBackgroundSpan; -import static android.app.Activity.RESULT_OK; -import static androidx.core.text.HtmlCompat.FROM_HTML_MODE_LEGACY; -import static app.fedilab.fedilabtube.helper.Helper.peertubeInformation; - public class InstanceAdapter extends RecyclerView.Adapter { diff --git a/app/src/main/java/app/fedilab/fedilabtube/drawer/PeertubeAdapter.java b/app/src/main/java/app/fedilab/fedilabtube/drawer/PeertubeAdapter.java index c064da0..1fe53c9 100644 --- a/app/src/main/java/app/fedilab/fedilabtube/drawer/PeertubeAdapter.java +++ b/app/src/main/java/app/fedilab/fedilabtube/drawer/PeertubeAdapter.java @@ -14,6 +14,11 @@ package app.fedilab.fedilabtube.drawer; * You should have received a copy of the GNU General Public License along with TubeLab; if not, * see . */ +import static app.fedilab.fedilabtube.client.RetrofitPeertubeAPI.ActionType.FOLLOW; +import static app.fedilab.fedilabtube.client.RetrofitPeertubeAPI.ActionType.UNFOLLOW; +import static app.fedilab.fedilabtube.viewmodel.TimelineVM.TimelineType.MY_VIDEOS; +import static app.fedilab.fedilabtube.viewmodel.TimelineVM.TimelineType.SEPIA_SEARCH; + import android.annotation.SuppressLint; import android.app.Activity; import android.content.Context; @@ -70,11 +75,6 @@ import app.fedilab.fedilabtube.viewmodel.TimelineVM; import es.dmoral.toasty.Toasty; import jp.wasabeef.glide.transformations.BlurTransformation; -import static app.fedilab.fedilabtube.client.RetrofitPeertubeAPI.ActionType.FOLLOW; -import static app.fedilab.fedilabtube.client.RetrofitPeertubeAPI.ActionType.UNFOLLOW; -import static app.fedilab.fedilabtube.viewmodel.TimelineVM.TimelineType.MY_VIDEOS; -import static app.fedilab.fedilabtube.viewmodel.TimelineVM.TimelineType.SEPIA_SEARCH; - public class PeertubeAdapter extends RecyclerView.Adapter { diff --git a/app/src/main/java/app/fedilab/fedilabtube/drawer/PeertubeNotificationsListAdapter.java b/app/src/main/java/app/fedilab/fedilabtube/drawer/PeertubeNotificationsListAdapter.java index b6dee41..75d706d 100644 --- a/app/src/main/java/app/fedilab/fedilabtube/drawer/PeertubeNotificationsListAdapter.java +++ b/app/src/main/java/app/fedilab/fedilabtube/drawer/PeertubeNotificationsListAdapter.java @@ -14,6 +14,8 @@ package app.fedilab.fedilabtube.drawer; * You should have received a copy of the GNU General Public License along with TubeLab; if not, * see . */ +import static app.fedilab.fedilabtube.MainActivity.badgeCount; + import android.content.Context; import android.content.Intent; import android.os.Build; @@ -45,8 +47,6 @@ import app.fedilab.fedilabtube.fragment.DisplayNotificationsFragment; import app.fedilab.fedilabtube.helper.Helper; import app.fedilab.fedilabtube.helper.HelperInstance; -import static app.fedilab.fedilabtube.MainActivity.badgeCount; - public class PeertubeNotificationsListAdapter extends RecyclerView.Adapter { diff --git a/app/src/main/java/app/fedilab/fedilabtube/drawer/PlaylistAdapter.java b/app/src/main/java/app/fedilab/fedilabtube/drawer/PlaylistAdapter.java index 5d2cc0b..347689b 100644 --- a/app/src/main/java/app/fedilab/fedilabtube/drawer/PlaylistAdapter.java +++ b/app/src/main/java/app/fedilab/fedilabtube/drawer/PlaylistAdapter.java @@ -14,6 +14,8 @@ package app.fedilab.fedilabtube.drawer; * You should have received a copy of the GNU General Public License along with TubeLab; if not, * see . */ +import static app.fedilab.fedilabtube.viewmodel.PlaylistsVM.action.GET_LIST_VIDEOS; + import android.Manifest; import android.annotation.SuppressLint; import android.app.Activity; @@ -72,8 +74,6 @@ import app.fedilab.fedilabtube.sqlite.Sqlite; import app.fedilab.fedilabtube.viewmodel.PlaylistsVM; import es.dmoral.toasty.Toasty; -import static app.fedilab.fedilabtube.viewmodel.PlaylistsVM.action.GET_LIST_VIDEOS; - public class PlaylistAdapter extends RecyclerView.Adapter { diff --git a/app/src/main/java/app/fedilab/fedilabtube/fragment/DisplayChannelsFragment.java b/app/src/main/java/app/fedilab/fedilabtube/fragment/DisplayChannelsFragment.java index e77559a..00d3630 100644 --- a/app/src/main/java/app/fedilab/fedilabtube/fragment/DisplayChannelsFragment.java +++ b/app/src/main/java/app/fedilab/fedilabtube/fragment/DisplayChannelsFragment.java @@ -14,6 +14,8 @@ package app.fedilab.fedilabtube.fragment; * You should have received a copy of the GNU General Public License along with TubeLab; if not, * see . */ +import static app.fedilab.fedilabtube.PeertubeUploadActivity.MY_PERMISSIONS_REQUEST_READ_EXTERNAL_STORAGE; + import android.Manifest; import android.app.Activity; import android.content.Context; @@ -63,8 +65,6 @@ import app.fedilab.fedilabtube.viewmodel.ChannelsVM; import app.fedilab.fedilabtube.viewmodel.SearchVM; import es.dmoral.toasty.Toasty; -import static app.fedilab.fedilabtube.PeertubeUploadActivity.MY_PERMISSIONS_REQUEST_READ_EXTERNAL_STORAGE; - public class DisplayChannelsFragment extends Fragment implements ChannelListAdapter.AllChannelRemoved, ChannelListAdapter.EditAlertDialog { diff --git a/app/src/main/java/app/fedilab/fedilabtube/fragment/DisplayOverviewFragment.java b/app/src/main/java/app/fedilab/fedilabtube/fragment/DisplayOverviewFragment.java index 71fe80c..fa59bb9 100644 --- a/app/src/main/java/app/fedilab/fedilabtube/fragment/DisplayOverviewFragment.java +++ b/app/src/main/java/app/fedilab/fedilabtube/fragment/DisplayOverviewFragment.java @@ -14,6 +14,10 @@ package app.fedilab.fedilabtube.fragment; * You should have received a copy of the GNU General Public License along with TubeLab; if not, * see . */ +import static app.fedilab.fedilabtube.client.data.VideoData.Video.titleType.CATEGORY; +import static app.fedilab.fedilabtube.client.data.VideoData.Video.titleType.CHANNEL; +import static app.fedilab.fedilabtube.client.data.VideoData.Video.titleType.TAG; + import android.content.Context; import android.graphics.Rect; import android.os.Bundle; @@ -52,10 +56,6 @@ import app.fedilab.fedilabtube.viewmodel.RelationshipVM; import app.fedilab.fedilabtube.viewmodel.TimelineVM; import es.dmoral.toasty.Toasty; -import static app.fedilab.fedilabtube.client.data.VideoData.Video.titleType.CATEGORY; -import static app.fedilab.fedilabtube.client.data.VideoData.Video.titleType.CHANNEL; -import static app.fedilab.fedilabtube.client.data.VideoData.Video.titleType.TAG; - public class DisplayOverviewFragment extends Fragment implements PeertubeAdapter.RelationShipListener, PeertubeAdapter.PlaylistListener { diff --git a/app/src/main/java/app/fedilab/fedilabtube/fragment/DisplayPlaylistsFragment.java b/app/src/main/java/app/fedilab/fedilabtube/fragment/DisplayPlaylistsFragment.java index 4e4eedd..d8a4035 100644 --- a/app/src/main/java/app/fedilab/fedilabtube/fragment/DisplayPlaylistsFragment.java +++ b/app/src/main/java/app/fedilab/fedilabtube/fragment/DisplayPlaylistsFragment.java @@ -14,6 +14,9 @@ package app.fedilab.fedilabtube.fragment; * You should have received a copy of the GNU General Public License along with TubeLab; if not, * see . */ +import static app.fedilab.fedilabtube.client.RetrofitPeertubeAPI.DataType.MY_CHANNELS; +import static app.fedilab.fedilabtube.helper.Helper.peertubeInformation; + import android.app.Activity; import android.content.Context; import android.content.Intent; @@ -64,9 +67,6 @@ import app.fedilab.fedilabtube.viewmodel.ChannelsVM; import app.fedilab.fedilabtube.viewmodel.PlaylistsVM; import es.dmoral.toasty.Toasty; -import static app.fedilab.fedilabtube.client.RetrofitPeertubeAPI.DataType.MY_CHANNELS; -import static app.fedilab.fedilabtube.helper.Helper.peertubeInformation; - public class DisplayPlaylistsFragment extends Fragment { diff --git a/app/src/main/java/app/fedilab/fedilabtube/fragment/DisplaySepiaSearchFragment.java b/app/src/main/java/app/fedilab/fedilabtube/fragment/DisplaySepiaSearchFragment.java index 2145156..552d2bc 100644 --- a/app/src/main/java/app/fedilab/fedilabtube/fragment/DisplaySepiaSearchFragment.java +++ b/app/src/main/java/app/fedilab/fedilabtube/fragment/DisplaySepiaSearchFragment.java @@ -14,6 +14,8 @@ package app.fedilab.fedilabtube.fragment; * You should have received a copy of the GNU General Public License along with TubeLab; if not, * see . */ +import static app.fedilab.fedilabtube.viewmodel.TimelineVM.TimelineType.SEPIA_SEARCH; + import android.content.Context; import android.content.SharedPreferences; import android.graphics.Rect; @@ -49,8 +51,6 @@ import app.fedilab.fedilabtube.helper.Helper; import app.fedilab.fedilabtube.viewmodel.SepiaSearchVM; import es.dmoral.toasty.Toasty; -import static app.fedilab.fedilabtube.viewmodel.TimelineVM.TimelineType.SEPIA_SEARCH; - public class DisplaySepiaSearchFragment extends Fragment implements AccountsHorizontalListAdapter.EventListener { diff --git a/app/src/main/java/app/fedilab/fedilabtube/fragment/DisplayVideosFragment.java b/app/src/main/java/app/fedilab/fedilabtube/fragment/DisplayVideosFragment.java index 9c6047f..f3a37e3 100644 --- a/app/src/main/java/app/fedilab/fedilabtube/fragment/DisplayVideosFragment.java +++ b/app/src/main/java/app/fedilab/fedilabtube/fragment/DisplayVideosFragment.java @@ -14,6 +14,8 @@ package app.fedilab.fedilabtube.fragment; * You should have received a copy of the GNU General Public License along with TubeLab; if not, * see . */ +import static app.fedilab.fedilabtube.viewmodel.TimelineVM.TimelineType.VIDEOS_IN_LOCAL_PLAYLIST; + import android.content.Context; import android.content.SharedPreferences; import android.graphics.Rect; @@ -62,8 +64,6 @@ import app.fedilab.fedilabtube.viewmodel.SearchVM; import app.fedilab.fedilabtube.viewmodel.TimelineVM; import es.dmoral.toasty.Toasty; -import static app.fedilab.fedilabtube.viewmodel.TimelineVM.TimelineType.VIDEOS_IN_LOCAL_PLAYLIST; - public class DisplayVideosFragment extends Fragment implements AccountsHorizontalListAdapter.EventListener, PeertubeAdapter.RelationShipListener, PeertubeAdapter.PlaylistListener { diff --git a/app/src/main/java/app/fedilab/fedilabtube/fragment/SettingsFragment.java b/app/src/main/java/app/fedilab/fedilabtube/fragment/SettingsFragment.java index 5f4bd17..d4b4bde 100644 --- a/app/src/main/java/app/fedilab/fedilabtube/fragment/SettingsFragment.java +++ b/app/src/main/java/app/fedilab/fedilabtube/fragment/SettingsFragment.java @@ -1,5 +1,7 @@ package app.fedilab.fedilabtube.fragment; +import static app.fedilab.fedilabtube.MainActivity.userMe; + import android.content.Context; import android.content.Intent; import android.content.SharedPreferences; @@ -45,8 +47,6 @@ import app.fedilab.fedilabtube.helper.HelperInstance; import app.fedilab.fedilabtube.helper.ThemeHelper; import es.dmoral.toasty.Toasty; -import static app.fedilab.fedilabtube.MainActivity.userMe; - /* Copyright 2020 Thomas Schneider * * This file is a part of TubeLab diff --git a/app/src/main/java/app/fedilab/fedilabtube/helper/Helper.java b/app/src/main/java/app/fedilab/fedilabtube/helper/Helper.java index 5f0846d..7f8737a 100644 --- a/app/src/main/java/app/fedilab/fedilabtube/helper/Helper.java +++ b/app/src/main/java/app/fedilab/fedilabtube/helper/Helper.java @@ -14,6 +14,9 @@ package app.fedilab.fedilabtube.helper; * You should have received a copy of the GNU General Public License along with TubeLab; if not, * see . */ +import static android.content.Context.DOWNLOAD_SERVICE; +import static android.content.Context.MODE_PRIVATE; + import android.annotation.SuppressLint; import android.app.Activity; import android.app.DownloadManager; @@ -76,9 +79,6 @@ import app.fedilab.fedilabtube.webview.ProxyHelper; import es.dmoral.toasty.Toasty; import jp.wasabeef.glide.transformations.BlurTransformation; -import static android.content.Context.DOWNLOAD_SERVICE; -import static android.content.Context.MODE_PRIVATE; - public class Helper { public static final int RELOAD_MYVIDEOS = 10; diff --git a/app/src/main/java/app/fedilab/fedilabtube/helper/HelperAcadInstance.java b/app/src/main/java/app/fedilab/fedilabtube/helper/HelperAcadInstance.java index b188636..23a4e23 100644 --- a/app/src/main/java/app/fedilab/fedilabtube/helper/HelperAcadInstance.java +++ b/app/src/main/java/app/fedilab/fedilabtube/helper/HelperAcadInstance.java @@ -14,7 +14,7 @@ package app.fedilab.fedilabtube.helper; * You should have received a copy of the GNU General Public License along with TubeLab; if not, * see . */ -import java.util.Collections; +import java.util.HashMap; import java.util.LinkedHashMap; @@ -29,8 +29,7 @@ public class HelperAcadInstance { public static String HISTORY = "HISTORIQUE"; public static String SUBSCRIPTIONS = "ABONNEMENTS"; public static String MYVIDEOS = "VIDEOS"; - - + public static String openIdURL = "https://auth.apps.education.fr/auth/realms/apps/protocol/openid-connect/auth?"; //List of available emails public static String[] valideEmails = { @@ -73,7 +72,7 @@ public class HelperAcadInstance { public static LinkedHashMap instances_themes; - + public static HashMap instance_client_id; static { instances_themes = new LinkedHashMap<>(); instances_themes.put("Institutionnel Éducatif", "tube-institutionnel.apps.education.fr"); @@ -87,5 +86,19 @@ public class HelperAcadInstance { instances_themes.put("Cycle-2 Éducatif", "tube-cycle-2.apps.education.fr"); instances_themes.put("Cycle-3 Éducatif", "tube-cycle-3.apps.education.fr"); } + static { + instance_client_id = new HashMap<>(); + instance_client_id.put("tube-institutionnel.apps.education.fr", "tube-institutionnel"); + instance_client_id.put("tube-maternelle.apps.education.fr", "tube-maternelle"); + instance_client_id.put("tube-arts-lettres-sciences-humaines.apps.education.fr", "tube-arts-lettres-sciences-humaines"); + instance_client_id.put("tube-sciences-technologies.apps.education.fr", "tube-sciences-technologies"); + instance_client_id.put("tube-education-physique-et-sportive.apps.education.fr", "tube-education-physique-et-sportive"); + instance_client_id.put("tube-enseignement-professionnel.apps.education.fr", "tube-enseignement-professionnel"); + instance_client_id.put("tube-langues-vivantes.apps.education.fr", "tube-langues-vivantes"); + instance_client_id.put("tube-action-educative.apps.education.fr", "tube-action-educative"); + instance_client_id.put("tube-cycle-2.apps.education.fr", "tube-cycle-2"); + instance_client_id.put("tube-cycle-3.apps.education.fr", "tube-cycle-3"); + } + } diff --git a/app/src/main/java/app/fedilab/fedilabtube/helper/NotificationHelper.java b/app/src/main/java/app/fedilab/fedilabtube/helper/NotificationHelper.java index 2b0d2e0..ed75dc1 100644 --- a/app/src/main/java/app/fedilab/fedilabtube/helper/NotificationHelper.java +++ b/app/src/main/java/app/fedilab/fedilabtube/helper/NotificationHelper.java @@ -15,6 +15,8 @@ package app.fedilab.fedilabtube.helper; * You should have received a copy of the GNU General Public License along with TubeLab; if not, * see . */ +import static app.fedilab.fedilabtube.worker.NotificationsWorker.FETCH_NOTIFICATION_CHANNEL_ID; + import android.app.Notification; import android.app.NotificationChannel; import android.app.NotificationManager; @@ -31,8 +33,6 @@ import androidx.core.app.NotificationManagerCompat; import app.fedilab.fedilabtube.R; import app.fedilab.fedilabtube.client.data.AccountData; -import static app.fedilab.fedilabtube.worker.NotificationsWorker.FETCH_NOTIFICATION_CHANNEL_ID; - public class NotificationHelper { diff --git a/app/src/main/java/app/fedilab/fedilabtube/helper/SwitchAccountHelper.java b/app/src/main/java/app/fedilab/fedilabtube/helper/SwitchAccountHelper.java index 91caf5a..688e06a 100644 --- a/app/src/main/java/app/fedilab/fedilabtube/helper/SwitchAccountHelper.java +++ b/app/src/main/java/app/fedilab/fedilabtube/helper/SwitchAccountHelper.java @@ -14,6 +14,8 @@ package app.fedilab.fedilabtube.helper; * You should have received a copy of the GNU General Public License along with TubeLab; if not, * see . */ +import static android.content.Context.MODE_PRIVATE; + import android.app.Activity; import android.content.Intent; import android.content.SharedPreferences; @@ -31,8 +33,6 @@ import app.fedilab.fedilabtube.drawer.OwnAccountsAdapter; import app.fedilab.fedilabtube.sqlite.AccountDAO; import app.fedilab.fedilabtube.sqlite.Sqlite; -import static android.content.Context.MODE_PRIVATE; - public class SwitchAccountHelper { diff --git a/app/src/main/java/app/fedilab/fedilabtube/helper/ThemeHelper.java b/app/src/main/java/app/fedilab/fedilabtube/helper/ThemeHelper.java index 6368407..4cef6a5 100644 --- a/app/src/main/java/app/fedilab/fedilabtube/helper/ThemeHelper.java +++ b/app/src/main/java/app/fedilab/fedilabtube/helper/ThemeHelper.java @@ -14,13 +14,13 @@ package app.fedilab.fedilabtube.helper; * You should have received a copy of the GNU General Public License along with TubeLab; if not, * see . */ +import static app.fedilab.fedilabtube.helper.Helper.DARK_MODE; +import static app.fedilab.fedilabtube.helper.Helper.LIGHT_MODE; + import android.os.Build; import androidx.appcompat.app.AppCompatDelegate; -import static app.fedilab.fedilabtube.helper.Helper.DARK_MODE; -import static app.fedilab.fedilabtube.helper.Helper.LIGHT_MODE; - public class ThemeHelper { public static void switchTo(int themePref) { diff --git a/app/src/main/java/app/fedilab/fedilabtube/services/RetrieveInfoService.java b/app/src/main/java/app/fedilab/fedilabtube/services/RetrieveInfoService.java index 8b037a0..801ed42 100644 --- a/app/src/main/java/app/fedilab/fedilabtube/services/RetrieveInfoService.java +++ b/app/src/main/java/app/fedilab/fedilabtube/services/RetrieveInfoService.java @@ -14,6 +14,8 @@ package app.fedilab.fedilabtube.services; * You should have received a copy of the GNU General Public License along with TubeLab; if not, * see . */ +import static app.fedilab.fedilabtube.helper.Helper.peertubeInformation; + import android.app.Notification; import android.app.NotificationChannel; import android.app.NotificationManager; @@ -36,8 +38,6 @@ import app.fedilab.fedilabtube.client.entities.PeertubeInformation; import app.fedilab.fedilabtube.helper.EmojiHelper; import app.fedilab.fedilabtube.helper.NetworkStateReceiver; -import static app.fedilab.fedilabtube.helper.Helper.peertubeInformation; - public class RetrieveInfoService extends Service implements NetworkStateReceiver.NetworkStateReceiverListener { diff --git a/app/src/main/java/app/fedilab/fedilabtube/sqlite/MastodonAccountDAO.java b/app/src/main/java/app/fedilab/fedilabtube/sqlite/MastodonAccountDAO.java index c6bdfd0..7d5433f 100644 --- a/app/src/main/java/app/fedilab/fedilabtube/sqlite/MastodonAccountDAO.java +++ b/app/src/main/java/app/fedilab/fedilabtube/sqlite/MastodonAccountDAO.java @@ -22,8 +22,8 @@ import android.database.sqlite.SQLiteDatabase; import java.util.Date; -import app.fedilab.fedilabtube.client.mastodon.MastodonAccount.Account; import app.fedilab.fedilabtube.client.entities.Token; +import app.fedilab.fedilabtube.client.mastodon.MastodonAccount.Account; import app.fedilab.fedilabtube.helper.Helper; import app.fedilab.fedilabtube.helper.HelperInstance; @@ -200,8 +200,6 @@ public class MastodonAccountDAO { } - - /** * Test if the current user is already stored in data base * @@ -218,5 +216,4 @@ public class MastodonAccountDAO { } - } diff --git a/app/src/main/java/app/fedilab/fedilabtube/viewmodel/ChannelsVM.java b/app/src/main/java/app/fedilab/fedilabtube/viewmodel/ChannelsVM.java index fa1c63a..1558cdc 100644 --- a/app/src/main/java/app/fedilab/fedilabtube/viewmodel/ChannelsVM.java +++ b/app/src/main/java/app/fedilab/fedilabtube/viewmodel/ChannelsVM.java @@ -14,6 +14,8 @@ package app.fedilab.fedilabtube.viewmodel; * You should have received a copy of the GNU General Public License along with TubeLab; if not, * see . */ +import static android.content.Context.MODE_PRIVATE; + import android.app.Application; import android.content.Context; import android.content.SharedPreferences; @@ -26,7 +28,6 @@ import androidx.lifecycle.AndroidViewModel; import androidx.lifecycle.LiveData; import androidx.lifecycle.MutableLiveData; -import app.fedilab.fedilabtube.AccountActivity; import app.fedilab.fedilabtube.client.APIResponse; import app.fedilab.fedilabtube.client.RetrofitPeertubeAPI; import app.fedilab.fedilabtube.client.data.AccountData; @@ -34,8 +35,6 @@ import app.fedilab.fedilabtube.helper.Helper; import app.fedilab.fedilabtube.sqlite.AccountDAO; import app.fedilab.fedilabtube.sqlite.Sqlite; -import static android.content.Context.MODE_PRIVATE; - public class ChannelsVM extends AndroidViewModel { private MutableLiveData apiResponseMutableLiveData; diff --git a/app/src/main/java/app/fedilab/fedilabtube/viewmodel/PlaylistsVM.java b/app/src/main/java/app/fedilab/fedilabtube/viewmodel/PlaylistsVM.java index b152b66..3b60376 100644 --- a/app/src/main/java/app/fedilab/fedilabtube/viewmodel/PlaylistsVM.java +++ b/app/src/main/java/app/fedilab/fedilabtube/viewmodel/PlaylistsVM.java @@ -16,7 +16,6 @@ package app.fedilab.fedilabtube.viewmodel; import android.app.Application; import android.content.Context; -import android.content.SharedPreferences; import android.database.sqlite.SQLiteDatabase; import android.os.Handler; import android.os.Looper; diff --git a/app/src/main/java/app/fedilab/fedilabtube/viewmodel/TimelineVM.java b/app/src/main/java/app/fedilab/fedilabtube/viewmodel/TimelineVM.java index dda0a3a..e36c2a2 100644 --- a/app/src/main/java/app/fedilab/fedilabtube/viewmodel/TimelineVM.java +++ b/app/src/main/java/app/fedilab/fedilabtube/viewmodel/TimelineVM.java @@ -14,6 +14,8 @@ package app.fedilab.fedilabtube.viewmodel; * You should have received a copy of the GNU General Public License along with TubeLab; if not, * see . */ +import static app.fedilab.fedilabtube.viewmodel.PlaylistsVM.action.GET_LIST_VIDEOS; + import android.app.Application; import android.content.Context; import android.database.sqlite.SQLiteDatabase; @@ -38,8 +40,6 @@ import app.fedilab.fedilabtube.helper.HelperInstance; import app.fedilab.fedilabtube.sqlite.ManagePlaylistsDAO; import app.fedilab.fedilabtube.sqlite.Sqlite; -import static app.fedilab.fedilabtube.viewmodel.PlaylistsVM.action.GET_LIST_VIDEOS; - public class TimelineVM extends AndroidViewModel { private MutableLiveData apiResponseMutableLiveData; @@ -125,10 +125,7 @@ public class TimelineVM extends AndroidViewModel { private void getSingle(String instance, String videoId, boolean myVideo) { Context _mContext = getApplication().getApplicationContext(); - boolean canUseToken = false; - if (instance == null || instance.compareTo(HelperInstance.getLiveInstance(_mContext)) == 0) { - canUseToken = true; - } + boolean canUseToken = instance == null || instance.compareTo(HelperInstance.getLiveInstance(_mContext)) == 0; boolean finalCanUseToken = canUseToken; new Thread(() -> { try { diff --git a/app/src/main/java/app/fedilab/fedilabtube/worker/NotificationsWorker.java b/app/src/main/java/app/fedilab/fedilabtube/worker/NotificationsWorker.java index 7fa75da..8b221cc 100644 --- a/app/src/main/java/app/fedilab/fedilabtube/worker/NotificationsWorker.java +++ b/app/src/main/java/app/fedilab/fedilabtube/worker/NotificationsWorker.java @@ -14,6 +14,8 @@ package app.fedilab.fedilabtube.worker; * You should have received a copy of the GNU General Public License along with TubeLab; if not, * see . */ +import static android.content.Context.NOTIFICATION_SERVICE; + import android.app.NotificationChannel; import android.app.NotificationManager; import android.app.PendingIntent; @@ -57,8 +59,6 @@ import app.fedilab.fedilabtube.helper.NotificationHelper; import app.fedilab.fedilabtube.sqlite.AccountDAO; import app.fedilab.fedilabtube.sqlite.Sqlite; -import static android.content.Context.NOTIFICATION_SERVICE; - public class NotificationsWorker extends Worker { public static String FETCH_NOTIFICATION_CHANNEL_ID = "fetch_notification_peertube"; diff --git a/app/src/main/res/layout/activity_webview_connect.xml b/app/src/main/res/layout/activity_webview_connect.xml index cb702fc..fb0d401 100644 --- a/app/src/main/res/layout/activity_webview_connect.xml +++ b/app/src/main/res/layout/activity_webview_connect.xml @@ -30,7 +30,7 @@ android:layout_height="10dp" android:padding="2dp" /> -