Commit d9cf33d1 authored by Viktor De Pasquale's avatar Viktor De Pasquale Committed by John Wu

Fixed shortcuts

This has been broken due to recent transition to navigation components
parent ee3028e6
...@@ -10,6 +10,7 @@ import androidx.core.graphics.Insets ...@@ -10,6 +10,7 @@ import androidx.core.graphics.Insets
import androidx.core.view.forEach import androidx.core.view.forEach
import androidx.core.view.setPadding import androidx.core.view.setPadding
import androidx.core.view.updateLayoutParams import androidx.core.view.updateLayoutParams
import androidx.navigation.NavDirections
import com.google.android.material.card.MaterialCardView import com.google.android.material.card.MaterialCardView
import com.topjohnwu.magisk.MainDirections import com.topjohnwu.magisk.MainDirections
import com.topjohnwu.magisk.R import com.topjohnwu.magisk.R
...@@ -100,10 +101,14 @@ open class MainActivity : BaseUIActivity<MainViewModel, ActivityMainMd2Binding>( ...@@ -100,10 +101,14 @@ open class MainActivity : BaseUIActivity<MainViewModel, ActivityMainMd2Binding>(
binding.mainNavigation.viewTreeObserver.addOnGlobalLayoutListener(navObserver) binding.mainNavigation.viewTreeObserver.addOnGlobalLayoutListener(navObserver)
if (intent.getBooleanExtra(Const.Key.OPEN_SETTINGS, false)) { when {
HomeFragmentDirections.actionHomeFragmentToSettingsFragment().navigate() intent.hasExtra(Const.Key.OPEN_SECTION) ->
getScreen(intent.getStringExtra(Const.Key.OPEN_SECTION))?.navigate()
intent.getBooleanExtra(Const.Key.OPEN_SETTINGS, false) ->
HomeFragmentDirections.actionHomeFragmentToSettingsFragment().navigate()
} }
if (savedInstanceState != null) { if (savedInstanceState != null) {
if (!isRoot) { if (!isRoot) {
requestNavigationHidden() requestNavigationHidden()
...@@ -165,4 +170,14 @@ open class MainActivity : BaseUIActivity<MainViewModel, ActivityMainMd2Binding>( ...@@ -165,4 +170,14 @@ open class MainActivity : BaseUIActivity<MainViewModel, ActivityMainMd2Binding>(
binding.mainToolbar.invalidate() binding.mainToolbar.invalidate()
} }
private fun getScreen(name: String?): NavDirections? {
return when (name) {
"superuser" -> HomeFragmentDirections.actionSuperuserFragment()
"magiskhide" -> HomeFragmentDirections.actionHideFragment()
"modules" -> HomeFragmentDirections.actionModuleFragment()
null -> null
else -> TODO("Implement screen shortcut \"$name\"")
}
}
} }
...@@ -182,4 +182,14 @@ ...@@ -182,4 +182,14 @@
app:popUpTo="@id/installFragment" app:popUpTo="@id/installFragment"
app:popUpToInclusive="true" /> app:popUpToInclusive="true" />
<action
android:id="@+id/action_hideFragment"
app:destination="@id/hideFragment"
app:enterAnim="@anim/fragment_enter"
app:exitAnim="@anim/fragment_exit"
app:popEnterAnim="@anim/fragment_enter_pop"
app:popExitAnim="@anim/fragment_exit_pop"
app:popUpTo="@id/superuserFragment"
app:popUpToInclusive="false" />
</navigation> </navigation>
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment