2020-07-28 19:18:34 +00:00
|
|
|
package code.name.monkey.retromusic.extensions
|
|
|
|
|
|
|
|
import androidx.annotation.IdRes
|
|
|
|
import androidx.appcompat.app.AppCompatActivity
|
|
|
|
import androidx.fragment.app.Fragment
|
|
|
|
import androidx.navigation.NavController
|
2020-08-11 18:29:44 +00:00
|
|
|
import androidx.navigation.findNavController
|
2020-07-28 19:18:34 +00:00
|
|
|
import androidx.navigation.fragment.NavHostFragment
|
|
|
|
import androidx.navigation.fragment.findNavController
|
|
|
|
|
|
|
|
fun Fragment.navigate(@IdRes id: Int) = findNavController().navigate(id)
|
|
|
|
|
2020-08-11 18:29:44 +00:00
|
|
|
fun Fragment.findNavController(@IdRes id: Int): NavController {
|
2020-07-28 19:18:34 +00:00
|
|
|
val fragment = childFragmentManager.findFragmentById(id) as NavHostFragment
|
|
|
|
return fragment.navController
|
|
|
|
}
|
|
|
|
|
2020-08-11 18:29:44 +00:00
|
|
|
fun Fragment.findActivityNavController(@IdRes id: Int): NavController {
|
|
|
|
return requireActivity().findNavController(id)
|
|
|
|
}
|
|
|
|
|
|
|
|
fun AppCompatActivity.findNavController(@IdRes id: Int): NavController {
|
2020-07-28 19:18:34 +00:00
|
|
|
val fragment = supportFragmentManager.findFragmentById(id) as NavHostFragment
|
|
|
|
return fragment.navController
|
|
|
|
}
|