mirror of
https://github.com/libre-tube/LibreTube.git
synced 2025-04-29 00:10:32 +05:30
fix warnings
This commit is contained in:
parent
19cef57b8c
commit
771dee9b2e
@ -3,17 +3,16 @@ import java.time.Instant
|
|||||||
plugins {
|
plugins {
|
||||||
id 'com.android.application'
|
id 'com.android.application'
|
||||||
id 'kotlin-android'
|
id 'kotlin-android'
|
||||||
id 'kotlin-android-extensions'
|
|
||||||
id 'kotlin-kapt'
|
id 'kotlin-kapt'
|
||||||
}
|
}
|
||||||
|
|
||||||
android {
|
android {
|
||||||
compileSdk 31
|
compileSdk 33
|
||||||
|
|
||||||
defaultConfig {
|
defaultConfig {
|
||||||
applicationId 'com.github.libretube'
|
applicationId 'com.github.libretube'
|
||||||
minSdk 21
|
minSdk 21
|
||||||
targetSdk 31
|
targetSdk 33
|
||||||
versionCode 17
|
versionCode 17
|
||||||
versionName '0.5.0'
|
versionName '0.5.0'
|
||||||
multiDexEnabled true
|
multiDexEnabled true
|
||||||
|
@ -123,6 +123,7 @@ class AboutActivity : BaseActivity() {
|
|||||||
it?.readText()
|
it?.readText()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Suppress("DEPRECATION")
|
||||||
val licenseHtml = if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
|
val licenseHtml = if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
|
||||||
Html.fromHtml(licenseString.toString(), 1)
|
Html.fromHtml(licenseString.toString(), 1)
|
||||||
} else {
|
} else {
|
||||||
|
@ -205,7 +205,7 @@ class MainActivity : BaseActivity() {
|
|||||||
/**
|
/**
|
||||||
* Remove the focus of the search view in the toolbar
|
* Remove the focus of the search view in the toolbar
|
||||||
*/
|
*/
|
||||||
fun removeSearchFocus() {
|
private fun removeSearchFocus() {
|
||||||
searchView.setQuery("", false)
|
searchView.setQuery("", false)
|
||||||
searchView.clearFocus()
|
searchView.clearFocus()
|
||||||
searchView.onActionViewCollapsed()
|
searchView.onActionViewCollapsed()
|
||||||
@ -250,13 +250,14 @@ class MainActivity : BaseActivity() {
|
|||||||
|
|
||||||
searchItem.setOnActionExpandListener(
|
searchItem.setOnActionExpandListener(
|
||||||
object : MenuItem.OnActionExpandListener {
|
object : MenuItem.OnActionExpandListener {
|
||||||
override fun onMenuItemActionExpand(p0: MenuItem?): Boolean {
|
override fun onMenuItemActionExpand(p0: MenuItem): Boolean {
|
||||||
return true
|
return true
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun onMenuItemActionCollapse(p0: MenuItem?): Boolean {
|
override fun onMenuItemActionCollapse(p0: MenuItem): Boolean {
|
||||||
val currentFragmentId = navController.currentDestination?.id
|
val currentFragmentId = navController.currentDestination?.id
|
||||||
if (currentFragmentId == R.id.searchFragment || currentFragmentId == R.id.searchResultFragment) {
|
if (currentFragmentId == R.id.searchFragment || currentFragmentId == R.id.searchResultFragment) {
|
||||||
|
@Suppress("DEPRECATION")
|
||||||
onBackPressed()
|
onBackPressed()
|
||||||
}
|
}
|
||||||
return true
|
return true
|
||||||
@ -443,6 +444,7 @@ class MainActivity : BaseActivity() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else if (navController.currentDestination?.id == startFragmentId) {
|
} else if (navController.currentDestination?.id == startFragmentId) {
|
||||||
|
@Suppress("DEPRECATION")
|
||||||
super.onBackPressed()
|
super.onBackPressed()
|
||||||
} else {
|
} else {
|
||||||
navController.popBackStack()
|
navController.popBackStack()
|
||||||
@ -494,7 +496,7 @@ class MainActivity : BaseActivity() {
|
|||||||
hide(WindowInsets.Type.statusBars() or WindowInsets.Type.navigationBars())
|
hide(WindowInsets.Type.statusBars() or WindowInsets.Type.navigationBars())
|
||||||
systemBarsBehavior = WindowInsetsController.BEHAVIOR_SHOW_TRANSIENT_BARS_BY_SWIPE
|
systemBarsBehavior = WindowInsetsController.BEHAVIOR_SHOW_TRANSIENT_BARS_BY_SWIPE
|
||||||
}
|
}
|
||||||
} else if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
|
} else {
|
||||||
@Suppress("DEPRECATION")
|
@Suppress("DEPRECATION")
|
||||||
window.decorView.systemUiVisibility = (
|
window.decorView.systemUiVisibility = (
|
||||||
View.SYSTEM_UI_FLAG_FULLSCREEN
|
View.SYSTEM_UI_FLAG_FULLSCREEN
|
||||||
@ -528,7 +530,7 @@ class MainActivity : BaseActivity() {
|
|||||||
show(WindowInsets.Type.statusBars() or WindowInsets.Type.navigationBars())
|
show(WindowInsets.Type.statusBars() or WindowInsets.Type.navigationBars())
|
||||||
systemBarsBehavior = WindowInsetsController.BEHAVIOR_DEFAULT
|
systemBarsBehavior = WindowInsetsController.BEHAVIOR_DEFAULT
|
||||||
}
|
}
|
||||||
} else if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
|
} else {
|
||||||
@Suppress("DEPRECATION")
|
@Suppress("DEPRECATION")
|
||||||
window.decorView.systemUiVisibility =
|
window.decorView.systemUiVisibility =
|
||||||
(View.SYSTEM_UI_FLAG_VISIBLE or View.SYSTEM_UI_FLAG_LAYOUT_STABLE)
|
(View.SYSTEM_UI_FLAG_VISIBLE or View.SYSTEM_UI_FLAG_LAYOUT_STABLE)
|
||||||
@ -554,7 +556,7 @@ class MainActivity : BaseActivity() {
|
|||||||
/**
|
/**
|
||||||
* show the status bar
|
* show the status bar
|
||||||
*/
|
*/
|
||||||
fun showSystemBars() {
|
private fun showSystemBars() {
|
||||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) {
|
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) {
|
||||||
window.insetsController?.show(WindowInsets.Type.statusBars())
|
window.insetsController?.show(WindowInsets.Type.statusBars())
|
||||||
} else {
|
} else {
|
||||||
|
@ -31,6 +31,7 @@ class SettingsActivity : BaseActivity() {
|
|||||||
override fun onBackPressed() {
|
override fun onBackPressed() {
|
||||||
when (supportFragmentManager.findFragmentById(R.id.settings)) {
|
when (supportFragmentManager.findFragmentById(R.id.settings)) {
|
||||||
is MainSettings -> {
|
is MainSettings -> {
|
||||||
|
@Suppress("DEPRECATION")
|
||||||
super.onBackPressed()
|
super.onBackPressed()
|
||||||
finishAndRemoveTask()
|
finishAndRemoveTask()
|
||||||
}
|
}
|
||||||
|
@ -10,9 +10,9 @@ import com.github.libretube.dialogs.VideoOptionsDialog
|
|||||||
import com.github.libretube.obj.StreamItem
|
import com.github.libretube.obj.StreamItem
|
||||||
import com.github.libretube.util.ImageHelper
|
import com.github.libretube.util.ImageHelper
|
||||||
import com.github.libretube.util.NavigationHelper
|
import com.github.libretube.util.NavigationHelper
|
||||||
import com.github.libretube.util.formatShort
|
import com.github.libretube.extensions.formatShort
|
||||||
import com.github.libretube.util.setWatchProgressLength
|
import com.github.libretube.extensions.setWatchProgressLength
|
||||||
import com.github.libretube.util.toID
|
import com.github.libretube.extensions.toID
|
||||||
|
|
||||||
class ChannelAdapter(
|
class ChannelAdapter(
|
||||||
private val videoFeed: MutableList<StreamItem>,
|
private val videoFeed: MutableList<StreamItem>,
|
||||||
|
@ -15,7 +15,7 @@ import com.github.libretube.obj.Comment
|
|||||||
import com.github.libretube.obj.CommentsPage
|
import com.github.libretube.obj.CommentsPage
|
||||||
import com.github.libretube.util.ImageHelper
|
import com.github.libretube.util.ImageHelper
|
||||||
import com.github.libretube.util.NavigationHelper
|
import com.github.libretube.util.NavigationHelper
|
||||||
import com.github.libretube.util.formatShort
|
import com.github.libretube.extensions.formatShort
|
||||||
import kotlinx.coroutines.CoroutineScope
|
import kotlinx.coroutines.CoroutineScope
|
||||||
import kotlinx.coroutines.Dispatchers
|
import kotlinx.coroutines.Dispatchers
|
||||||
import kotlinx.coroutines.launch
|
import kotlinx.coroutines.launch
|
||||||
|
@ -7,7 +7,7 @@ import com.github.libretube.databinding.LegacySubscriptionChannelBinding
|
|||||||
import com.github.libretube.obj.Subscription
|
import com.github.libretube.obj.Subscription
|
||||||
import com.github.libretube.util.ImageHelper
|
import com.github.libretube.util.ImageHelper
|
||||||
import com.github.libretube.util.NavigationHelper
|
import com.github.libretube.util.NavigationHelper
|
||||||
import com.github.libretube.util.toID
|
import com.github.libretube.extensions.toID
|
||||||
|
|
||||||
class LegacySubscriptionAdapter(
|
class LegacySubscriptionAdapter(
|
||||||
private val subscriptions: List<Subscription>
|
private val subscriptions: List<Subscription>
|
||||||
|
@ -17,8 +17,8 @@ import com.github.libretube.obj.StreamItem
|
|||||||
import com.github.libretube.preferences.PreferenceHelper
|
import com.github.libretube.preferences.PreferenceHelper
|
||||||
import com.github.libretube.util.ImageHelper
|
import com.github.libretube.util.ImageHelper
|
||||||
import com.github.libretube.util.NavigationHelper
|
import com.github.libretube.util.NavigationHelper
|
||||||
import com.github.libretube.util.setWatchProgressLength
|
import com.github.libretube.extensions.setWatchProgressLength
|
||||||
import com.github.libretube.util.toID
|
import com.github.libretube.extensions.toID
|
||||||
import kotlinx.coroutines.CoroutineScope
|
import kotlinx.coroutines.CoroutineScope
|
||||||
import kotlinx.coroutines.Dispatchers
|
import kotlinx.coroutines.Dispatchers
|
||||||
import kotlinx.coroutines.launch
|
import kotlinx.coroutines.launch
|
||||||
|
@ -8,7 +8,7 @@ import com.github.libretube.databinding.RepliesRowBinding
|
|||||||
import com.github.libretube.obj.Comment
|
import com.github.libretube.obj.Comment
|
||||||
import com.github.libretube.util.ImageHelper
|
import com.github.libretube.util.ImageHelper
|
||||||
import com.github.libretube.util.NavigationHelper
|
import com.github.libretube.util.NavigationHelper
|
||||||
import com.github.libretube.util.formatShort
|
import com.github.libretube.extensions.formatShort
|
||||||
|
|
||||||
class RepliesAdapter(
|
class RepliesAdapter(
|
||||||
private val replies: MutableList<Comment>
|
private val replies: MutableList<Comment>
|
||||||
|
@ -16,9 +16,9 @@ import com.github.libretube.extensions.setFormattedDuration
|
|||||||
import com.github.libretube.obj.SearchItem
|
import com.github.libretube.obj.SearchItem
|
||||||
import com.github.libretube.util.ImageHelper
|
import com.github.libretube.util.ImageHelper
|
||||||
import com.github.libretube.util.NavigationHelper
|
import com.github.libretube.util.NavigationHelper
|
||||||
import com.github.libretube.util.formatShort
|
import com.github.libretube.extensions.formatShort
|
||||||
import com.github.libretube.util.setWatchProgressLength
|
import com.github.libretube.extensions.setWatchProgressLength
|
||||||
import com.github.libretube.util.toID
|
import com.github.libretube.extensions.toID
|
||||||
import kotlinx.coroutines.CoroutineScope
|
import kotlinx.coroutines.CoroutineScope
|
||||||
import kotlinx.coroutines.Dispatchers
|
import kotlinx.coroutines.Dispatchers
|
||||||
import kotlinx.coroutines.launch
|
import kotlinx.coroutines.launch
|
||||||
|
@ -9,7 +9,7 @@ import com.github.libretube.databinding.ChannelSubscriptionRowBinding
|
|||||||
import com.github.libretube.obj.Subscription
|
import com.github.libretube.obj.Subscription
|
||||||
import com.github.libretube.util.ImageHelper
|
import com.github.libretube.util.ImageHelper
|
||||||
import com.github.libretube.util.NavigationHelper
|
import com.github.libretube.util.NavigationHelper
|
||||||
import com.github.libretube.util.toID
|
import com.github.libretube.extensions.toID
|
||||||
|
|
||||||
class SubscriptionChannelAdapter(private val subscriptions: MutableList<Subscription>) :
|
class SubscriptionChannelAdapter(private val subscriptions: MutableList<Subscription>) :
|
||||||
RecyclerView.Adapter<SubscriptionChannelViewHolder>() {
|
RecyclerView.Adapter<SubscriptionChannelViewHolder>() {
|
||||||
|
@ -11,9 +11,9 @@ import com.github.libretube.extensions.setFormattedDuration
|
|||||||
import com.github.libretube.obj.StreamItem
|
import com.github.libretube.obj.StreamItem
|
||||||
import com.github.libretube.util.ImageHelper
|
import com.github.libretube.util.ImageHelper
|
||||||
import com.github.libretube.util.NavigationHelper
|
import com.github.libretube.util.NavigationHelper
|
||||||
import com.github.libretube.util.formatShort
|
import com.github.libretube.extensions.formatShort
|
||||||
import com.github.libretube.util.setWatchProgressLength
|
import com.github.libretube.extensions.setWatchProgressLength
|
||||||
import com.github.libretube.util.toID
|
import com.github.libretube.extensions.toID
|
||||||
|
|
||||||
class TrendingAdapter(
|
class TrendingAdapter(
|
||||||
private val streamItems: List<StreamItem>,
|
private val streamItems: List<StreamItem>,
|
||||||
|
@ -11,7 +11,7 @@ import com.github.libretube.dialogs.VideoOptionsDialog
|
|||||||
import com.github.libretube.extensions.setFormattedDuration
|
import com.github.libretube.extensions.setFormattedDuration
|
||||||
import com.github.libretube.util.ImageHelper
|
import com.github.libretube.util.ImageHelper
|
||||||
import com.github.libretube.util.NavigationHelper
|
import com.github.libretube.util.NavigationHelper
|
||||||
import com.github.libretube.util.setWatchProgressLength
|
import com.github.libretube.extensions.setWatchProgressLength
|
||||||
|
|
||||||
class WatchHistoryAdapter(
|
class WatchHistoryAdapter(
|
||||||
private val watchHistory: MutableList<WatchHistoryItem>,
|
private val watchHistory: MutableList<WatchHistoryItem>,
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
package com.github.libretube.util
|
package com.github.libretube.api
|
||||||
|
|
||||||
import java.util.*
|
import java.util.*
|
||||||
import kotlin.reflect.KProperty
|
import kotlin.reflect.KProperty
|
||||||
|
@ -1,7 +1,5 @@
|
|||||||
package com.github.libretube.api
|
package com.github.libretube.api
|
||||||
|
|
||||||
import com.github.libretube.util.resettableLazy
|
|
||||||
import com.github.libretube.util.resettableManager
|
|
||||||
import retrofit2.Retrofit
|
import retrofit2.Retrofit
|
||||||
import retrofit2.converter.jackson.JacksonConverterFactory
|
import retrofit2.converter.jackson.JacksonConverterFactory
|
||||||
|
|
||||||
|
@ -6,7 +6,7 @@ import com.github.libretube.db.obj.WatchPosition
|
|||||||
import com.github.libretube.obj.Streams
|
import com.github.libretube.obj.Streams
|
||||||
import com.github.libretube.preferences.PreferenceHelper
|
import com.github.libretube.preferences.PreferenceHelper
|
||||||
import com.github.libretube.preferences.PreferenceKeys
|
import com.github.libretube.preferences.PreferenceKeys
|
||||||
import com.github.libretube.util.toID
|
import com.github.libretube.extensions.toID
|
||||||
|
|
||||||
object DatabaseHelper {
|
object DatabaseHelper {
|
||||||
fun addToWatchHistory(videoId: String, streams: Streams) {
|
fun addToWatchHistory(videoId: String, streams: Streams) {
|
||||||
|
@ -12,7 +12,7 @@ import com.github.libretube.extensions.TAG
|
|||||||
import com.github.libretube.obj.PlaylistId
|
import com.github.libretube.obj.PlaylistId
|
||||||
import com.github.libretube.preferences.PreferenceHelper
|
import com.github.libretube.preferences.PreferenceHelper
|
||||||
import com.github.libretube.util.BackgroundHelper
|
import com.github.libretube.util.BackgroundHelper
|
||||||
import com.github.libretube.util.toID
|
import com.github.libretube.extensions.toID
|
||||||
import com.google.android.material.dialog.MaterialAlertDialogBuilder
|
import com.google.android.material.dialog.MaterialAlertDialogBuilder
|
||||||
import kotlinx.coroutines.CoroutineScope
|
import kotlinx.coroutines.CoroutineScope
|
||||||
import kotlinx.coroutines.Dispatchers
|
import kotlinx.coroutines.Dispatchers
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
package com.github.libretube.util
|
package com.github.libretube.extensions
|
||||||
|
|
||||||
import java.math.BigDecimal
|
import java.math.BigDecimal
|
||||||
import java.math.RoundingMode
|
import java.math.RoundingMode
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
package com.github.libretube.util
|
package com.github.libretube.extensions
|
||||||
|
|
||||||
import android.app.Activity
|
import android.app.Activity
|
||||||
import android.content.Context
|
import android.content.Context
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
package com.github.libretube.util
|
package com.github.libretube.extensions
|
||||||
|
|
||||||
import android.view.View
|
import android.view.View
|
||||||
import android.view.ViewTreeObserver
|
import android.view.ViewTreeObserver
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
package com.github.libretube.util
|
package com.github.libretube.extensions
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* format a Piped route to an ID
|
* format a Piped route to an ID
|
||||||
|
@ -15,8 +15,8 @@ import com.github.libretube.databinding.FragmentChannelBinding
|
|||||||
import com.github.libretube.extensions.BaseFragment
|
import com.github.libretube.extensions.BaseFragment
|
||||||
import com.github.libretube.extensions.TAG
|
import com.github.libretube.extensions.TAG
|
||||||
import com.github.libretube.util.ImageHelper
|
import com.github.libretube.util.ImageHelper
|
||||||
import com.github.libretube.util.formatShort
|
import com.github.libretube.extensions.formatShort
|
||||||
import com.github.libretube.util.toID
|
import com.github.libretube.extensions.toID
|
||||||
import retrofit2.HttpException
|
import retrofit2.HttpException
|
||||||
import java.io.IOException
|
import java.io.IOException
|
||||||
|
|
||||||
|
@ -46,7 +46,7 @@ class HomeFragment : BaseFragment() {
|
|||||||
resources.getInteger(R.integer.grid_items).toString()
|
resources.getInteger(R.integer.grid_items).toString()
|
||||||
)
|
)
|
||||||
|
|
||||||
val regionPref = PreferenceHelper.getString(PreferenceKeys.REGION, "sys")!!
|
val regionPref = PreferenceHelper.getString(PreferenceKeys.REGION, "sys")
|
||||||
|
|
||||||
// get the system default country if auto region selected
|
// get the system default country if auto region selected
|
||||||
region = if (regionPref == "sys") {
|
region = if (regionPref == "sys") {
|
||||||
|
@ -72,9 +72,9 @@ import com.github.libretube.util.BackgroundHelper
|
|||||||
import com.github.libretube.util.ImageHelper
|
import com.github.libretube.util.ImageHelper
|
||||||
import com.github.libretube.util.NowPlayingNotification
|
import com.github.libretube.util.NowPlayingNotification
|
||||||
import com.github.libretube.util.PlayerHelper
|
import com.github.libretube.util.PlayerHelper
|
||||||
import com.github.libretube.util.formatShort
|
import com.github.libretube.extensions.formatShort
|
||||||
import com.github.libretube.util.hideKeyboard
|
import com.github.libretube.extensions.hideKeyboard
|
||||||
import com.github.libretube.util.toID
|
import com.github.libretube.extensions.toID
|
||||||
import com.github.libretube.views.PlayerOptionsBottomSheet
|
import com.github.libretube.views.PlayerOptionsBottomSheet
|
||||||
import com.google.android.exoplayer2.C
|
import com.google.android.exoplayer2.C
|
||||||
import com.google.android.exoplayer2.DefaultLoadControl
|
import com.google.android.exoplayer2.DefaultLoadControl
|
||||||
|
@ -16,7 +16,7 @@ import com.github.libretube.databinding.FragmentPlaylistBinding
|
|||||||
import com.github.libretube.dialogs.PlaylistOptionsDialog
|
import com.github.libretube.dialogs.PlaylistOptionsDialog
|
||||||
import com.github.libretube.extensions.BaseFragment
|
import com.github.libretube.extensions.BaseFragment
|
||||||
import com.github.libretube.extensions.TAG
|
import com.github.libretube.extensions.TAG
|
||||||
import com.github.libretube.util.toID
|
import com.github.libretube.extensions.toID
|
||||||
import retrofit2.HttpException
|
import retrofit2.HttpException
|
||||||
import java.io.IOException
|
import java.io.IOException
|
||||||
|
|
||||||
|
@ -20,11 +20,10 @@ import com.github.libretube.extensions.BaseFragment
|
|||||||
import com.github.libretube.extensions.TAG
|
import com.github.libretube.extensions.TAG
|
||||||
import com.github.libretube.extensions.await
|
import com.github.libretube.extensions.await
|
||||||
import com.github.libretube.models.SearchViewModel
|
import com.github.libretube.models.SearchViewModel
|
||||||
import kotlinx.android.synthetic.main.activity_main.toolbar
|
|
||||||
import retrofit2.HttpException
|
import retrofit2.HttpException
|
||||||
import java.io.IOException
|
import java.io.IOException
|
||||||
|
|
||||||
class SearchFragment() : BaseFragment() {
|
class SearchFragment : BaseFragment() {
|
||||||
private lateinit var binding: FragmentSearchBinding
|
private lateinit var binding: FragmentSearchBinding
|
||||||
private val viewModel: SearchViewModel by activityViewModels()
|
private val viewModel: SearchViewModel by activityViewModels()
|
||||||
|
|
||||||
@ -117,7 +116,7 @@ class SearchFragment() : BaseFragment() {
|
|||||||
if (findNavController().currentDestination?.id != R.id.searchResultFragment) {
|
if (findNavController().currentDestination?.id != R.id.searchResultFragment) {
|
||||||
// remove the search focus
|
// remove the search focus
|
||||||
(activity as MainActivity)
|
(activity as MainActivity)
|
||||||
.toolbar.menu
|
.binding.toolbar.menu
|
||||||
.findItem(R.id.action_search).collapseActionView()
|
.findItem(R.id.action_search).collapseActionView()
|
||||||
}
|
}
|
||||||
super.onStop()
|
super.onStop()
|
||||||
|
@ -17,10 +17,9 @@ import com.github.libretube.db.DatabaseHelper
|
|||||||
import com.github.libretube.db.obj.SearchHistoryItem
|
import com.github.libretube.db.obj.SearchHistoryItem
|
||||||
import com.github.libretube.extensions.BaseFragment
|
import com.github.libretube.extensions.BaseFragment
|
||||||
import com.github.libretube.extensions.TAG
|
import com.github.libretube.extensions.TAG
|
||||||
|
import com.github.libretube.extensions.hideKeyboard
|
||||||
import com.github.libretube.preferences.PreferenceHelper
|
import com.github.libretube.preferences.PreferenceHelper
|
||||||
import com.github.libretube.preferences.PreferenceKeys
|
import com.github.libretube.preferences.PreferenceKeys
|
||||||
import com.github.libretube.util.hideKeyboard
|
|
||||||
import kotlinx.android.synthetic.main.activity_main.toolbar
|
|
||||||
import retrofit2.HttpException
|
import retrofit2.HttpException
|
||||||
import java.io.IOException
|
import java.io.IOException
|
||||||
|
|
||||||
@ -149,7 +148,7 @@ class SearchResultFragment : BaseFragment() {
|
|||||||
if (findNavController().currentDestination?.id != R.id.searchFragment) {
|
if (findNavController().currentDestination?.id != R.id.searchFragment) {
|
||||||
// remove the search focus
|
// remove the search focus
|
||||||
(activity as MainActivity)
|
(activity as MainActivity)
|
||||||
.toolbar.menu
|
.binding.toolbar.menu
|
||||||
.findItem(R.id.action_search).collapseActionView()
|
.findItem(R.id.action_search).collapseActionView()
|
||||||
}
|
}
|
||||||
super.onStop()
|
super.onStop()
|
||||||
|
@ -9,7 +9,7 @@ import com.github.libretube.extensions.TAG
|
|||||||
import com.github.libretube.obj.StreamItem
|
import com.github.libretube.obj.StreamItem
|
||||||
import com.github.libretube.obj.Subscription
|
import com.github.libretube.obj.Subscription
|
||||||
import com.github.libretube.preferences.PreferenceHelper
|
import com.github.libretube.preferences.PreferenceHelper
|
||||||
import com.github.libretube.util.toID
|
import com.github.libretube.extensions.toID
|
||||||
import kotlinx.coroutines.CoroutineScope
|
import kotlinx.coroutines.CoroutineScope
|
||||||
import kotlinx.coroutines.Dispatchers
|
import kotlinx.coroutines.Dispatchers
|
||||||
import kotlinx.coroutines.launch
|
import kotlinx.coroutines.launch
|
||||||
|
@ -4,6 +4,7 @@ import android.net.Uri
|
|||||||
import android.os.Bundle
|
import android.os.Bundle
|
||||||
import androidx.activity.result.ActivityResultLauncher
|
import androidx.activity.result.ActivityResultLauncher
|
||||||
import androidx.activity.result.contract.ActivityResultContracts
|
import androidx.activity.result.contract.ActivityResultContracts
|
||||||
|
import androidx.activity.result.contract.ActivityResultContracts.CreateDocument
|
||||||
import androidx.preference.ListPreference
|
import androidx.preference.ListPreference
|
||||||
import androidx.preference.Preference
|
import androidx.preference.Preference
|
||||||
import com.github.libretube.R
|
import com.github.libretube.R
|
||||||
@ -29,7 +30,7 @@ class AdvancedSettings : MaterialPreferenceFragment() {
|
|||||||
BackupHelper(requireContext()).restoreSharedPreferences(uri)
|
BackupHelper(requireContext()).restoreSharedPreferences(uri)
|
||||||
}
|
}
|
||||||
createFile = registerForActivityResult(
|
createFile = registerForActivityResult(
|
||||||
ActivityResultContracts.CreateDocument()
|
CreateDocument("application/json")
|
||||||
) { uri: Uri? ->
|
) { uri: Uri? ->
|
||||||
BackupHelper(requireContext()).backupSharedPreferences(uri)
|
BackupHelper(requireContext()).backupSharedPreferences(uri)
|
||||||
}
|
}
|
||||||
|
@ -5,6 +5,7 @@ import android.os.Bundle
|
|||||||
import android.widget.Toast
|
import android.widget.Toast
|
||||||
import androidx.activity.result.ActivityResultLauncher
|
import androidx.activity.result.ActivityResultLauncher
|
||||||
import androidx.activity.result.contract.ActivityResultContracts
|
import androidx.activity.result.contract.ActivityResultContracts
|
||||||
|
import androidx.activity.result.contract.ActivityResultContracts.CreateDocument
|
||||||
import androidx.fragment.app.Fragment
|
import androidx.fragment.app.Fragment
|
||||||
import androidx.lifecycle.lifecycleScope
|
import androidx.lifecycle.lifecycleScope
|
||||||
import androidx.preference.ListPreference
|
import androidx.preference.ListPreference
|
||||||
@ -40,7 +41,7 @@ class InstanceSettings : MaterialPreferenceFragment() {
|
|||||||
ImportHelper(requireActivity()).importSubscriptions(uri)
|
ImportHelper(requireActivity()).importSubscriptions(uri)
|
||||||
}
|
}
|
||||||
createFile = registerForActivityResult(
|
createFile = registerForActivityResult(
|
||||||
ActivityResultContracts.CreateDocument()
|
CreateDocument("application/json")
|
||||||
) { uri: Uri? ->
|
) { uri: Uri? ->
|
||||||
ImportHelper(requireActivity()).exportSubscriptions(uri)
|
ImportHelper(requireActivity()).exportSubscriptions(uri)
|
||||||
}
|
}
|
||||||
|
@ -16,6 +16,7 @@ import com.github.libretube.Globals
|
|||||||
import com.github.libretube.PLAYER_NOTIFICATION_ID
|
import com.github.libretube.PLAYER_NOTIFICATION_ID
|
||||||
import com.github.libretube.R
|
import com.github.libretube.R
|
||||||
import com.github.libretube.api.RetrofitInstance
|
import com.github.libretube.api.RetrofitInstance
|
||||||
|
import com.github.libretube.extensions.toID
|
||||||
import com.github.libretube.obj.Segment
|
import com.github.libretube.obj.Segment
|
||||||
import com.github.libretube.obj.Segments
|
import com.github.libretube.obj.Segments
|
||||||
import com.github.libretube.obj.Streams
|
import com.github.libretube.obj.Streams
|
||||||
@ -24,7 +25,6 @@ import com.github.libretube.preferences.PreferenceKeys
|
|||||||
import com.github.libretube.util.AutoPlayHelper
|
import com.github.libretube.util.AutoPlayHelper
|
||||||
import com.github.libretube.util.NowPlayingNotification
|
import com.github.libretube.util.NowPlayingNotification
|
||||||
import com.github.libretube.util.PlayerHelper
|
import com.github.libretube.util.PlayerHelper
|
||||||
import com.github.libretube.util.toID
|
|
||||||
import com.google.android.exoplayer2.C
|
import com.google.android.exoplayer2.C
|
||||||
import com.google.android.exoplayer2.ExoPlayer
|
import com.google.android.exoplayer2.ExoPlayer
|
||||||
import com.google.android.exoplayer2.MediaItem
|
import com.google.android.exoplayer2.MediaItem
|
||||||
@ -130,8 +130,7 @@ class BackgroundMode : Service() {
|
|||||||
// play the audio in the background
|
// play the audio in the background
|
||||||
playAudio(videoId, position)
|
playAudio(videoId, position)
|
||||||
} catch (e: Exception) {
|
} catch (e: Exception) {
|
||||||
stopForeground(true)
|
onDestroy()
|
||||||
stopSelf()
|
|
||||||
}
|
}
|
||||||
return super.onStartCommand(intent, flags, startId)
|
return super.onStartCommand(intent, flags, startId)
|
||||||
}
|
}
|
||||||
@ -209,6 +208,8 @@ class BackgroundMode : Service() {
|
|||||||
Player.STATE_IDLE -> {
|
Player.STATE_IDLE -> {
|
||||||
onDestroy()
|
onDestroy()
|
||||||
}
|
}
|
||||||
|
Player.STATE_BUFFERING -> {}
|
||||||
|
Player.STATE_READY -> {}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
@ -309,7 +310,12 @@ class BackgroundMode : Service() {
|
|||||||
override fun onDestroy() {
|
override fun onDestroy() {
|
||||||
// called when the user pressed stop in the notification
|
// called when the user pressed stop in the notification
|
||||||
// stop the service from being in the foreground and remove the notification
|
// stop the service from being in the foreground and remove the notification
|
||||||
|
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
|
||||||
|
stopForeground(STOP_FOREGROUND_REMOVE)
|
||||||
|
} else {
|
||||||
|
@Suppress("DEPRECATION")
|
||||||
stopForeground(true)
|
stopForeground(true)
|
||||||
|
}
|
||||||
// destroy the service
|
// destroy the service
|
||||||
stopSelf()
|
stopSelf()
|
||||||
if (this::nowPlayingNotification.isInitialized) nowPlayingNotification.destroy()
|
if (this::nowPlayingNotification.isInitialized) nowPlayingNotification.destroy()
|
||||||
|
@ -2,6 +2,7 @@ package com.github.libretube.util
|
|||||||
|
|
||||||
import com.github.libretube.Globals
|
import com.github.libretube.Globals
|
||||||
import com.github.libretube.api.RetrofitInstance
|
import com.github.libretube.api.RetrofitInstance
|
||||||
|
import com.github.libretube.extensions.toID
|
||||||
import com.github.libretube.obj.StreamItem
|
import com.github.libretube.obj.StreamItem
|
||||||
import kotlinx.coroutines.Dispatchers
|
import kotlinx.coroutines.Dispatchers
|
||||||
import kotlinx.coroutines.withContext
|
import kotlinx.coroutines.withContext
|
||||||
|
@ -13,7 +13,7 @@ object LocaleHelper {
|
|||||||
val languageName = PreferenceHelper.getString(PreferenceKeys.LANGUAGE, "sys")
|
val languageName = PreferenceHelper.getString(PreferenceKeys.LANGUAGE, "sys")
|
||||||
if (languageName == "sys") {
|
if (languageName == "sys") {
|
||||||
updateLocaleConf(context, Locale.getDefault())
|
updateLocaleConf(context, Locale.getDefault())
|
||||||
} else if (languageName?.contains("-") == true) {
|
} else if (languageName.contains("-") == true) {
|
||||||
val languageParts = languageName.split("-")
|
val languageParts = languageName.split("-")
|
||||||
val locale = Locale(
|
val locale = Locale(
|
||||||
languageParts[0],
|
languageParts[0],
|
||||||
|
@ -7,6 +7,7 @@ import androidx.constraintlayout.motion.widget.MotionLayout
|
|||||||
import androidx.core.os.bundleOf
|
import androidx.core.os.bundleOf
|
||||||
import com.github.libretube.R
|
import com.github.libretube.R
|
||||||
import com.github.libretube.activities.MainActivity
|
import com.github.libretube.activities.MainActivity
|
||||||
|
import com.github.libretube.extensions.toID
|
||||||
import com.github.libretube.fragments.PlayerFragment
|
import com.github.libretube.fragments.PlayerFragment
|
||||||
|
|
||||||
object NavigationHelper {
|
object NavigationHelper {
|
||||||
|
@ -17,6 +17,7 @@ import com.github.libretube.R
|
|||||||
import com.github.libretube.activities.MainActivity
|
import com.github.libretube.activities.MainActivity
|
||||||
import com.github.libretube.api.RetrofitInstance
|
import com.github.libretube.api.RetrofitInstance
|
||||||
import com.github.libretube.api.SubscriptionHelper
|
import com.github.libretube.api.SubscriptionHelper
|
||||||
|
import com.github.libretube.extensions.toID
|
||||||
import com.github.libretube.preferences.PreferenceHelper
|
import com.github.libretube.preferences.PreferenceHelper
|
||||||
import com.github.libretube.preferences.PreferenceKeys
|
import com.github.libretube.preferences.PreferenceKeys
|
||||||
import kotlinx.coroutines.async
|
import kotlinx.coroutines.async
|
||||||
|
@ -26,6 +26,6 @@ class CustomSwipeToRefresh(context: Context?, attrs: AttributeSet?) :
|
|||||||
}
|
}
|
||||||
|
|
||||||
init {
|
init {
|
||||||
mTouchSlop = ViewConfiguration.get(context).scaledTouchSlop
|
mTouchSlop = ViewConfiguration.get(this.context).scaledTouchSlop
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,5 +1,6 @@
|
|||||||
package com.github.libretube.views
|
package com.github.libretube.views
|
||||||
|
|
||||||
|
import android.annotation.SuppressLint
|
||||||
import android.content.Context
|
import android.content.Context
|
||||||
import android.graphics.Rect
|
import android.graphics.Rect
|
||||||
import android.util.AttributeSet
|
import android.util.AttributeSet
|
||||||
@ -89,13 +90,14 @@ class SingleViewTouchableMotionLayout(context: Context, attributeSet: AttributeS
|
|||||||
private val gestureDetector = GestureDetector(
|
private val gestureDetector = GestureDetector(
|
||||||
context,
|
context,
|
||||||
object : GestureDetector.SimpleOnGestureListener() {
|
object : GestureDetector.SimpleOnGestureListener() {
|
||||||
override fun onSingleTapConfirmed(e: MotionEvent?): Boolean {
|
override fun onSingleTapConfirmed(e: MotionEvent): Boolean {
|
||||||
transitionToEnd()
|
transitionToEnd()
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@SuppressLint("ClickableViewAccessibility")
|
||||||
override fun onTouchEvent(event: MotionEvent): Boolean {
|
override fun onTouchEvent(event: MotionEvent): Boolean {
|
||||||
// gestureDetector.onTouchEvent(event)
|
// gestureDetector.onTouchEvent(event)
|
||||||
when (event.actionMasked) {
|
when (event.actionMasked) {
|
||||||
|
@ -2,5 +2,6 @@
|
|||||||
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
|
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
|
||||||
<background android:drawable="@color/ic_launcher_background" />
|
<background android:drawable="@color/ic_launcher_background" />
|
||||||
<foreground android:drawable="@mipmap/ic_launcher_foreground" />
|
<foreground android:drawable="@mipmap/ic_launcher_foreground" />
|
||||||
|
<!--suppress AndroidElementNotAllowed -->
|
||||||
<monochrome android:drawable="@drawable/ic_launcher_monochrome" />
|
<monochrome android:drawable="@drawable/ic_launcher_monochrome" />
|
||||||
</adaptive-icon>
|
</adaptive-icon>
|
@ -2,5 +2,6 @@
|
|||||||
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
|
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
|
||||||
<background android:drawable="@color/ic_launcher_background" />
|
<background android:drawable="@color/ic_launcher_background" />
|
||||||
<foreground android:drawable="@mipmap/ic_launcher_foreground" />
|
<foreground android:drawable="@mipmap/ic_launcher_foreground" />
|
||||||
|
<!--suppress AndroidElementNotAllowed -->
|
||||||
<monochrome android:drawable="@drawable/ic_launcher_monochrome" />
|
<monochrome android:drawable="@drawable/ic_launcher_monochrome" />
|
||||||
</adaptive-icon>
|
</adaptive-icon>
|
Loading…
x
Reference in New Issue
Block a user