diff --git a/app/src/main/java/com/github/libretube/adapters/ChannelAdapter.kt b/app/src/main/java/com/github/libretube/adapters/ChannelAdapter.kt index 4425f6d5f..69c6302a2 100644 --- a/app/src/main/java/com/github/libretube/adapters/ChannelAdapter.kt +++ b/app/src/main/java/com/github/libretube/adapters/ChannelAdapter.kt @@ -14,7 +14,6 @@ import com.github.libretube.fragments.PlayerFragment import com.github.libretube.obj.StreamItem import com.github.libretube.util.ConnectionHelper import com.github.libretube.util.formatShort -import com.squareup.picasso.Picasso class ChannelAdapter( private val videoFeed: MutableList, diff --git a/app/src/main/java/com/github/libretube/adapters/ChaptersAdapter.kt b/app/src/main/java/com/github/libretube/adapters/ChaptersAdapter.kt index 01f9466be..c595c08d0 100644 --- a/app/src/main/java/com/github/libretube/adapters/ChaptersAdapter.kt +++ b/app/src/main/java/com/github/libretube/adapters/ChaptersAdapter.kt @@ -7,7 +7,6 @@ import com.github.libretube.databinding.ChapterColumnBinding import com.github.libretube.obj.ChapterSegment import com.github.libretube.util.ConnectionHelper import com.google.android.exoplayer2.ExoPlayer -import com.squareup.picasso.Picasso class ChaptersAdapter( private val chapters: List, diff --git a/app/src/main/java/com/github/libretube/adapters/CommentsAdapter.kt b/app/src/main/java/com/github/libretube/adapters/CommentsAdapter.kt index c66b64095..e8f1a0e7b 100644 --- a/app/src/main/java/com/github/libretube/adapters/CommentsAdapter.kt +++ b/app/src/main/java/com/github/libretube/adapters/CommentsAdapter.kt @@ -17,7 +17,6 @@ import com.github.libretube.obj.CommentsPage import com.github.libretube.util.ConnectionHelper import com.github.libretube.util.RetrofitInstance import com.github.libretube.util.formatShort -import com.squareup.picasso.Picasso import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.launch diff --git a/app/src/main/java/com/github/libretube/adapters/PlaylistAdapter.kt b/app/src/main/java/com/github/libretube/adapters/PlaylistAdapter.kt index c69721723..bbd79bf76 100644 --- a/app/src/main/java/com/github/libretube/adapters/PlaylistAdapter.kt +++ b/app/src/main/java/com/github/libretube/adapters/PlaylistAdapter.kt @@ -19,7 +19,6 @@ import com.github.libretube.obj.StreamItem import com.github.libretube.preferences.PreferenceHelper import com.github.libretube.util.ConnectionHelper import com.github.libretube.util.RetrofitInstance -import com.squareup.picasso.Picasso import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.launch diff --git a/app/src/main/java/com/github/libretube/adapters/PlaylistsAdapter.kt b/app/src/main/java/com/github/libretube/adapters/PlaylistsAdapter.kt index e02fdba20..94a1f7ba6 100644 --- a/app/src/main/java/com/github/libretube/adapters/PlaylistsAdapter.kt +++ b/app/src/main/java/com/github/libretube/adapters/PlaylistsAdapter.kt @@ -15,7 +15,6 @@ import com.github.libretube.preferences.PreferenceHelper import com.github.libretube.util.ConnectionHelper import com.github.libretube.util.RetrofitInstance import com.google.android.material.dialog.MaterialAlertDialogBuilder -import com.squareup.picasso.Picasso import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.launch diff --git a/app/src/main/java/com/github/libretube/adapters/RepliesAdapter.kt b/app/src/main/java/com/github/libretube/adapters/RepliesAdapter.kt index 7227a4e25..db0136540 100644 --- a/app/src/main/java/com/github/libretube/adapters/RepliesAdapter.kt +++ b/app/src/main/java/com/github/libretube/adapters/RepliesAdapter.kt @@ -12,7 +12,6 @@ import com.github.libretube.databinding.RepliesRowBinding import com.github.libretube.obj.Comment import com.github.libretube.util.ConnectionHelper import com.github.libretube.util.formatShort -import com.squareup.picasso.Picasso class RepliesAdapter( private val replies: MutableList diff --git a/app/src/main/java/com/github/libretube/adapters/SearchAdapter.kt b/app/src/main/java/com/github/libretube/adapters/SearchAdapter.kt index 76d1afc3b..775cd0991 100644 --- a/app/src/main/java/com/github/libretube/adapters/SearchAdapter.kt +++ b/app/src/main/java/com/github/libretube/adapters/SearchAdapter.kt @@ -23,7 +23,6 @@ import com.github.libretube.preferences.PreferenceHelper import com.github.libretube.util.ConnectionHelper import com.github.libretube.util.RetrofitInstance import com.github.libretube.util.formatShort -import com.squareup.picasso.Picasso import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.launch diff --git a/app/src/main/java/com/github/libretube/adapters/SubscriptionAdapter.kt b/app/src/main/java/com/github/libretube/adapters/SubscriptionAdapter.kt index 791270913..62bd9a652 100644 --- a/app/src/main/java/com/github/libretube/adapters/SubscriptionAdapter.kt +++ b/app/src/main/java/com/github/libretube/adapters/SubscriptionAdapter.kt @@ -17,7 +17,6 @@ import com.github.libretube.fragments.PlayerFragment import com.github.libretube.obj.StreamItem import com.github.libretube.util.ConnectionHelper import com.github.libretube.util.formatShort -import com.squareup.picasso.Picasso class SubscriptionAdapter( private val videoFeed: List, diff --git a/app/src/main/java/com/github/libretube/adapters/SubscriptionChannelAdapter.kt b/app/src/main/java/com/github/libretube/adapters/SubscriptionChannelAdapter.kt index ced628c3f..a5dcb0871 100644 --- a/app/src/main/java/com/github/libretube/adapters/SubscriptionChannelAdapter.kt +++ b/app/src/main/java/com/github/libretube/adapters/SubscriptionChannelAdapter.kt @@ -14,7 +14,6 @@ import com.github.libretube.obj.Subscription import com.github.libretube.preferences.PreferenceHelper import com.github.libretube.util.ConnectionHelper import com.github.libretube.util.RetrofitInstance -import com.squareup.picasso.Picasso import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.launch diff --git a/app/src/main/java/com/github/libretube/adapters/TrendingAdapter.kt b/app/src/main/java/com/github/libretube/adapters/TrendingAdapter.kt index cdf9688e3..da3767ea5 100644 --- a/app/src/main/java/com/github/libretube/adapters/TrendingAdapter.kt +++ b/app/src/main/java/com/github/libretube/adapters/TrendingAdapter.kt @@ -17,7 +17,6 @@ import com.github.libretube.fragments.PlayerFragment import com.github.libretube.obj.StreamItem import com.github.libretube.util.ConnectionHelper import com.github.libretube.util.formatShort -import com.squareup.picasso.Picasso class TrendingAdapter( private val videoFeed: List, diff --git a/app/src/main/java/com/github/libretube/adapters/WatchHistoryAdapter.kt b/app/src/main/java/com/github/libretube/adapters/WatchHistoryAdapter.kt index 68ce33bee..eee3d3331 100644 --- a/app/src/main/java/com/github/libretube/adapters/WatchHistoryAdapter.kt +++ b/app/src/main/java/com/github/libretube/adapters/WatchHistoryAdapter.kt @@ -16,7 +16,6 @@ import com.github.libretube.dialogs.VideoOptionsDialog import com.github.libretube.fragments.PlayerFragment import com.github.libretube.obj.WatchHistoryItem import com.github.libretube.util.ConnectionHelper -import com.squareup.picasso.Picasso class WatchHistoryAdapter( private val watchHistory: MutableList, diff --git a/app/src/main/java/com/github/libretube/fragments/ChannelFragment.kt b/app/src/main/java/com/github/libretube/fragments/ChannelFragment.kt index e0340e879..9194596fe 100644 --- a/app/src/main/java/com/github/libretube/fragments/ChannelFragment.kt +++ b/app/src/main/java/com/github/libretube/fragments/ChannelFragment.kt @@ -17,7 +17,6 @@ import com.github.libretube.preferences.PreferenceHelper import com.github.libretube.util.ConnectionHelper import com.github.libretube.util.RetrofitInstance import com.github.libretube.util.formatShort -import com.squareup.picasso.Picasso import retrofit2.HttpException import java.io.IOException diff --git a/app/src/main/java/com/github/libretube/preferences/AboutFragment.kt b/app/src/main/java/com/github/libretube/preferences/AboutFragment.kt index e998267f3..a9d36db59 100644 --- a/app/src/main/java/com/github/libretube/preferences/AboutFragment.kt +++ b/app/src/main/java/com/github/libretube/preferences/AboutFragment.kt @@ -81,6 +81,13 @@ class AboutFragment : Fragment() { showSnackBar(text) true } + + binding.community.setOnClickListener { + val communityFragment = CommunityFragment() + parentFragmentManager.beginTransaction() + .replace(R.id.settings, communityFragment) + .commitNow() + } } private fun openLinkFromHref(link: String) { diff --git a/app/src/main/java/com/github/libretube/preferences/AdvancedSettings.kt b/app/src/main/java/com/github/libretube/preferences/AdvancedSettings.kt index c467d9c90..a18b63482 100644 --- a/app/src/main/java/com/github/libretube/preferences/AdvancedSettings.kt +++ b/app/src/main/java/com/github/libretube/preferences/AdvancedSettings.kt @@ -18,21 +18,6 @@ class AdvancedSettings : PreferenceFragmentCompat() { val settingsActivity = activity as SettingsActivity settingsActivity.changeTopBarText(getString(R.string.advanced)) - // clear search history - val clearHistory = findPreference("clear_history") - clearHistory?.setOnPreferenceClickListener { - PreferenceHelper.removePreference(requireContext(), "search_history") - true - } - - // clear watch history and positions - val clearWatchHistory = findPreference("clear_watch_history") - clearWatchHistory?.setOnPreferenceClickListener { - PreferenceHelper.removePreference(requireContext(), "watch_history") - PreferenceHelper.removePreference(requireContext(), "watch_positions") - true - } - val dataSaverMode = findPreference("data_saver_mode") dataSaverMode?.setOnPreferenceChangeListener { _, _ -> val restartDialog = RequireRestartDialog() diff --git a/app/src/main/java/com/github/libretube/preferences/HistorySettings.kt b/app/src/main/java/com/github/libretube/preferences/HistorySettings.kt new file mode 100644 index 000000000..26d7f4a5a --- /dev/null +++ b/app/src/main/java/com/github/libretube/preferences/HistorySettings.kt @@ -0,0 +1,38 @@ +package com.github.libretube.preferences + +import android.os.Bundle +import androidx.preference.Preference +import androidx.preference.PreferenceFragmentCompat +import com.github.libretube.R +import com.github.libretube.activities.SettingsActivity + +class HistorySettings : PreferenceFragmentCompat() { + + override fun onCreatePreferences(savedInstanceState: Bundle?, rootKey: String?) { + setPreferencesFromResource(R.xml.history_settings, rootKey) + + val settingsActivity = activity as SettingsActivity + settingsActivity.changeTopBarText(getString(R.string.history)) + + // clear search history + val clearHistory = findPreference("clear_history") + clearHistory?.setOnPreferenceClickListener { + PreferenceHelper.removePreference(requireContext(), "search_history") + true + } + + // clear watch history and positions + val clearWatchHistory = findPreference("clear_watch_history") + clearWatchHistory?.setOnPreferenceClickListener { + PreferenceHelper.removePreference(requireContext(), "watch_history") + true + } + + // clear watch positions + val clearWatchPositions = findPreference("clear_watch_positions") + clearWatchPositions?.setOnPreferenceClickListener { + PreferenceHelper.removePreference(requireContext(), "watch_positions") + true + } + } +} diff --git a/app/src/main/java/com/github/libretube/preferences/MainSettings.kt b/app/src/main/java/com/github/libretube/preferences/MainSettings.kt index f131e0ecd..74d084dad 100644 --- a/app/src/main/java/com/github/libretube/preferences/MainSettings.kt +++ b/app/src/main/java/com/github/libretube/preferences/MainSettings.kt @@ -64,6 +64,13 @@ class MainSettings : PreferenceFragmentCompat() { true } + val history = findPreference("history") + history?.setOnPreferenceClickListener { + val newFragment = HistorySettings() + navigateToSettingsFragment(newFragment) + true + } + val advanced = findPreference("advanced") advanced?.setOnPreferenceClickListener { val newFragment = AdvancedSettings() @@ -84,13 +91,6 @@ class MainSettings : PreferenceFragmentCompat() { navigateToSettingsFragment(newFragment) true } - - val community = findPreference("community") - community?.setOnPreferenceClickListener { - val newFragment = CommunityFragment() - navigateToSettingsFragment(newFragment) - true - } } private fun navigateToSettingsFragment(newFragment: Fragment) { diff --git a/app/src/main/java/com/github/libretube/util/ConnectionHelper.kt b/app/src/main/java/com/github/libretube/util/ConnectionHelper.kt index f79bda880..e248e3d92 100644 --- a/app/src/main/java/com/github/libretube/util/ConnectionHelper.kt +++ b/app/src/main/java/com/github/libretube/util/ConnectionHelper.kt @@ -1,7 +1,6 @@ package com.github.libretube.util import android.content.Context -import android.graphics.Color import android.net.ConnectivityManager import android.widget.ImageView import com.github.libretube.Globals diff --git a/app/src/main/res/layout/fragment_about.xml b/app/src/main/res/layout/fragment_about.xml index d09cf88f7..e8203e725 100644 --- a/app/src/main/res/layout/fragment_about.xml +++ b/app/src/main/res/layout/fragment_about.xml @@ -117,6 +117,24 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 1dc828dfe..e89d87c4c 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -145,7 +145,7 @@ Advanced Player Adjust the app to your liking. - Downloads, history + Downloads, reset Live This comment has no replies. Authors @@ -209,7 +209,7 @@ Restore Watch History Remember position - Remember the watch position and automatically seek to it. + Restore last watch position Authentication instance Use a different instance for authenticated calls. Choose an auth instance @@ -244,4 +244,9 @@ No external player found. Please make sure you have one installed. Data saver mode Don\'t load thumbnails and other images to save data. + Store the search queries locally + Keep track of watched videos locally + Watch and search history + Watch positions + Reset watch positions \ No newline at end of file diff --git a/app/src/main/res/xml/advanced_settings.xml b/app/src/main/res/xml/advanced_settings.xml index ba8d17a89..04ea4e3db 100644 --- a/app/src/main/res/xml/advanced_settings.xml +++ b/app/src/main/res/xml/advanced_settings.xml @@ -31,44 +31,7 @@ - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/xml/settings.xml b/app/src/main/res/xml/settings.xml index 9accbd36b..e3d3a7e0b 100644 --- a/app/src/main/res/xml/settings.xml +++ b/app/src/main/res/xml/settings.xml @@ -50,6 +50,12 @@ app:summary="@string/player_summary" app:title="@string/audio_video" /> + + - -