mirror of
https://github.com/libre-tube/LibreTube.git
synced 2025-04-29 08:20:32 +05:30
fix the navbar behavior
This commit is contained in:
parent
0b1f59b99b
commit
48b3a916b7
@ -7,8 +7,8 @@ import com.github.libretube.R
|
|||||||
import com.github.libretube.databinding.ActivityNointernetBinding
|
import com.github.libretube.databinding.ActivityNointernetBinding
|
||||||
import com.github.libretube.ui.base.BaseActivity
|
import com.github.libretube.ui.base.BaseActivity
|
||||||
import com.github.libretube.ui.fragments.DownloadsFragment
|
import com.github.libretube.ui.fragments.DownloadsFragment
|
||||||
|
import com.github.libretube.util.NavigationHelper
|
||||||
import com.github.libretube.util.NetworkHelper
|
import com.github.libretube.util.NetworkHelper
|
||||||
import com.github.libretube.util.ThemeHelper
|
|
||||||
import com.google.android.material.snackbar.Snackbar
|
import com.google.android.material.snackbar.Snackbar
|
||||||
|
|
||||||
class NoInternetActivity : BaseActivity() {
|
class NoInternetActivity : BaseActivity() {
|
||||||
@ -21,7 +21,7 @@ class NoInternetActivity : BaseActivity() {
|
|||||||
// retry button
|
// retry button
|
||||||
binding.retryButton.setOnClickListener {
|
binding.retryButton.setOnClickListener {
|
||||||
if (NetworkHelper.isNetworkAvailable(this)) {
|
if (NetworkHelper.isNetworkAvailable(this)) {
|
||||||
ThemeHelper.restartMainActivity(this)
|
NavigationHelper.restartMainActivity(this)
|
||||||
} else {
|
} else {
|
||||||
Snackbar.make(binding.root, R.string.turnInternetOn, Snackbar.LENGTH_LONG).show()
|
Snackbar.make(binding.root, R.string.turnInternetOn, Snackbar.LENGTH_LONG).show()
|
||||||
}
|
}
|
||||||
|
@ -9,7 +9,7 @@ import com.github.libretube.R
|
|||||||
import com.github.libretube.constants.IntentData
|
import com.github.libretube.constants.IntentData
|
||||||
import com.github.libretube.extensions.TAG
|
import com.github.libretube.extensions.TAG
|
||||||
import com.github.libretube.ui.base.BaseActivity
|
import com.github.libretube.ui.base.BaseActivity
|
||||||
import com.github.libretube.util.ThemeHelper
|
import com.github.libretube.util.NavigationHelper
|
||||||
|
|
||||||
class RouterActivity : BaseActivity() {
|
class RouterActivity : BaseActivity() {
|
||||||
override fun onCreate(savedInstanceState: Bundle?) {
|
override fun onCreate(savedInstanceState: Bundle?) {
|
||||||
@ -23,7 +23,7 @@ class RouterActivity : BaseActivity() {
|
|||||||
handleSendText(uri!!)
|
handleSendText(uri!!)
|
||||||
} else {
|
} else {
|
||||||
// start app as normal if URI not in host list
|
// start app as normal if URI not in host list
|
||||||
ThemeHelper.restartMainActivity(this)
|
NavigationHelper.restartMainActivity(this)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -4,7 +4,7 @@ import android.app.Dialog
|
|||||||
import android.os.Bundle
|
import android.os.Bundle
|
||||||
import androidx.fragment.app.DialogFragment
|
import androidx.fragment.app.DialogFragment
|
||||||
import com.github.libretube.R
|
import com.github.libretube.R
|
||||||
import com.github.libretube.util.ThemeHelper
|
import com.github.libretube.util.NavigationHelper
|
||||||
import com.google.android.material.dialog.MaterialAlertDialogBuilder
|
import com.google.android.material.dialog.MaterialAlertDialogBuilder
|
||||||
|
|
||||||
class RequireRestartDialog : DialogFragment() {
|
class RequireRestartDialog : DialogFragment() {
|
||||||
@ -15,7 +15,7 @@ class RequireRestartDialog : DialogFragment() {
|
|||||||
.setMessage(R.string.require_restart_message)
|
.setMessage(R.string.require_restart_message)
|
||||||
.setPositiveButton(R.string.okay) { _, _ ->
|
.setPositiveButton(R.string.okay) { _, _ ->
|
||||||
activity?.recreate()
|
activity?.recreate()
|
||||||
ThemeHelper.restartMainActivity(requireContext())
|
NavigationHelper.restartMainActivity(requireContext())
|
||||||
}
|
}
|
||||||
.setNegativeButton(R.string.cancel, null)
|
.setNegativeButton(R.string.cancel, null)
|
||||||
.show()
|
.show()
|
||||||
|
@ -90,6 +90,6 @@ object NavBarHelper {
|
|||||||
).icon = menuItem.icon
|
).icon = menuItem.icon
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return navBarItems[0].id
|
return navBarItems.filter { it.isEnabled }[0].id
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,6 +1,9 @@
|
|||||||
package com.github.libretube.util
|
package com.github.libretube.util
|
||||||
|
|
||||||
|
import android.app.NotificationManager
|
||||||
import android.content.Context
|
import android.content.Context
|
||||||
|
import android.content.Intent
|
||||||
|
import android.content.pm.PackageManager
|
||||||
import android.os.Bundle
|
import android.os.Bundle
|
||||||
import androidx.appcompat.app.AppCompatActivity
|
import androidx.appcompat.app.AppCompatActivity
|
||||||
import androidx.core.os.bundleOf
|
import androidx.core.os.bundleOf
|
||||||
@ -66,4 +69,21 @@ object NavigationHelper {
|
|||||||
activity.navController.navigate(R.id.playlistFragment, bundle)
|
activity.navController.navigate(R.id.playlistFragment, bundle)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Needed due to different MainActivity Aliases because of the app icons
|
||||||
|
*/
|
||||||
|
fun restartMainActivity(context: Context) {
|
||||||
|
// kill player notification
|
||||||
|
val nManager = context
|
||||||
|
.getSystemService(Context.NOTIFICATION_SERVICE) as NotificationManager
|
||||||
|
nManager.cancelAll()
|
||||||
|
// start a new Intent of the app
|
||||||
|
val pm: PackageManager = context.packageManager
|
||||||
|
val intent = pm.getLaunchIntentForPackage(context.packageName)
|
||||||
|
intent?.flags = Intent.FLAG_ACTIVITY_CLEAR_TASK
|
||||||
|
context.startActivity(intent)
|
||||||
|
// kill the old application
|
||||||
|
android.os.Process.killProcess(android.os.Process.myPid())
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,10 +1,8 @@
|
|||||||
package com.github.libretube.util
|
package com.github.libretube.util
|
||||||
|
|
||||||
import android.app.Activity
|
import android.app.Activity
|
||||||
import android.app.NotificationManager
|
|
||||||
import android.content.ComponentName
|
import android.content.ComponentName
|
||||||
import android.content.Context
|
import android.content.Context
|
||||||
import android.content.Intent
|
|
||||||
import android.content.pm.PackageManager
|
import android.content.pm.PackageManager
|
||||||
import android.text.Spanned
|
import android.text.Spanned
|
||||||
import android.util.TypedValue
|
import android.util.TypedValue
|
||||||
@ -128,23 +126,6 @@ object ThemeHelper {
|
|||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Needed due to different MainActivity Aliases because of the app icons
|
|
||||||
*/
|
|
||||||
fun restartMainActivity(context: Context) {
|
|
||||||
// kill player notification
|
|
||||||
val nManager = context
|
|
||||||
.getSystemService(Context.NOTIFICATION_SERVICE) as NotificationManager
|
|
||||||
nManager.cancelAll()
|
|
||||||
// start a new Intent of the app
|
|
||||||
val pm: PackageManager = context.packageManager
|
|
||||||
val intent = pm.getLaunchIntentForPackage(context.packageName)
|
|
||||||
intent?.flags = Intent.FLAG_ACTIVITY_CLEAR_TASK
|
|
||||||
context.startActivity(intent)
|
|
||||||
// kill the old application
|
|
||||||
android.os.Process.killProcess(android.os.Process.myPid())
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get a color by a resource code
|
* Get a color by a resource code
|
||||||
*/
|
*/
|
||||||
|
Loading…
x
Reference in New Issue
Block a user