Skip to content

Commit e0483be

Browse files
committed
bugfix [#29]: launcher shortcuts
1 parent f7390b1 commit e0483be

9 files changed

Lines changed: 60 additions & 43 deletions

File tree

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,8 @@
11
package com.androidvip.sysctlgui.helpers
22

33
enum class Actions {
4-
KernelParamsListFragment,
5-
KernelParamBrowserFragment,
6-
SettingsFragment,
4+
BrowseParams,
75
ExportParams,
6+
OpenSettings,
87
EditParam
98
}

app/src/main/kotlin/com/androidvip/sysctlgui/ui/StartActivity.kt

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -91,17 +91,16 @@ class StartActivity : AppCompatActivity() {
9191
}
9292

9393
private fun navigate() {
94-
when (this.intent.action) {
95-
Actions.KernelParamBrowserFragment.name -> {
96-
// TODO
97-
}
98-
99-
Actions.KernelParamsListFragment.name -> {
100-
// TODO
101-
}
102-
103-
Actions.SettingsFragment.name -> {
104-
// TODO
94+
val shortcutNames = arrayOf(
95+
Actions.BrowseParams.name,
96+
Actions.ExportParams.name,
97+
Actions.OpenSettings.name
98+
)
99+
val nextIntent = when (intent.action) {
100+
in shortcutNames -> {
101+
Intent(this, MainActivity2::class.java).apply {
102+
putExtra(MainActivity2.EXTRA_DESTINATION, intent.action)
103+
}
105104
}
106105

107106
Actions.EditParam.name -> {
@@ -116,13 +115,14 @@ class StartActivity : AppCompatActivity() {
116115
RemovableParamAdapter.EXTRA_EDIT_SAVED_PARAM, false
117116
)
118117
)
119-
startActivity(this)
120118
}
121119
}
122120

123121
else -> {
124-
startActivity(Intent(this, MainActivity2::class.java))
122+
Intent(this, MainActivity2::class.java)
125123
}
126124
}
125+
126+
startActivity(nextIntent)
127127
}
128128
}

app/src/main/kotlin/com/androidvip/sysctlgui/ui/main/MainActivity2.kt

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ import androidx.navigation.ui.AppBarConfiguration
99
import androidx.navigation.ui.setupWithNavController
1010
import com.androidvip.sysctlgui.R
1111
import com.androidvip.sysctlgui.databinding.ActivityMain2Binding
12+
import com.androidvip.sysctlgui.helpers.Actions
1213

1314
class MainActivity2 : AppCompatActivity() {
1415
private lateinit var binding: ActivityMain2Binding
@@ -22,6 +23,7 @@ class MainActivity2 : AppCompatActivity() {
2223
setSupportActionBar(binding.toolbar)
2324

2425
setUpNavigation()
26+
navigateFromIntent()
2527
}
2628

2729
override fun onOptionsItemSelected(item: MenuItem): Boolean {
@@ -50,6 +52,22 @@ class MainActivity2 : AppCompatActivity() {
5052
navView.setupWithNavController(navController)
5153
}
5254

55+
private fun navigateFromIntent() {
56+
val fragmentName = intent.getStringExtra(EXTRA_DESTINATION) ?: return
57+
when (fragmentName) {
58+
Actions.BrowseParams.name -> R.id.navigationBrowse
59+
Actions.ExportParams.name -> R.id.navigationExport
60+
Actions.OpenSettings.name -> R.id.navigationSettings
61+
else -> null
62+
}?.let { id ->
63+
navHost.navController.navigate(id)
64+
}
65+
}
66+
5367
private val navHost: NavHostFragment
5468
get() = supportFragmentManager.findFragmentById(R.id.navHostFragment) as NavHostFragment
69+
70+
companion object {
71+
internal const val EXTRA_DESTINATION = "destination"
72+
}
5573
}

app/src/main/kotlin/com/androidvip/sysctlgui/ui/params/list/KernelParamListFragment.kt

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,6 @@ import com.androidvip.sysctlgui.databinding.FragmentKernelParamListBinding
1313
import com.androidvip.sysctlgui.domain.models.ViewState
1414
import com.androidvip.sysctlgui.getColorRoles
1515
import com.androidvip.sysctlgui.ui.base.BaseSearchFragment
16-
import com.androidvip.sysctlgui.ui.base.BaseViewBindingFragment
1716
import com.androidvip.sysctlgui.ui.params.OnParamItemClickedListener
1817
import com.androidvip.sysctlgui.ui.params.edit.EditKernelParamActivity
1918
import com.androidvip.sysctlgui.ui.params.user.RemovableParamAdapter

app/src/main/res/drawable/ic_edit_outline_dark.xml

Lines changed: 0 additions & 9 deletions
This file was deleted.
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
<vector xmlns:android="http://schemas.android.com/apk/res/android"
2+
android:width="24dp"
3+
android:height="24dp"
4+
android:viewportWidth="24"
5+
android:viewportHeight="24">
6+
<path
7+
android:fillColor="@color/gray_900"
8+
android:pathData="M14 2H6C4.89 2 4 2.9 4 4V20C4 21.11 4.89 22 6 22H18C19.11 22 20 21.11 20 20V8L14 2M18 20H6V4H13V9H18V20M15 11.93V19H7.93L10.05 16.88L7.22 14.05L10.05 11.22L12.88 14.05L15 11.93Z" />
9+
</vector>

app/src/main/res/drawable/ic_folder_outline_dark.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,6 @@
44
android:viewportWidth="24"
55
android:viewportHeight="24">
66
<path
7-
android:fillColor="#232F34"
7+
android:fillColor="@color/gray_900"
88
android:pathData="M9.17,6l2,2H20v10H4V6h5.17M10,4H4c-1.1,0 -1.99,0.9 -1.99,2L2,18c0,1.1 0.9,2 2,2h16c1.1,0 2,-0.9 2,-2V8c0,-1.1 -0.9,-2 -2,-2h-8l-2,-2z"/>
99
</vector>

app/src/main/res/drawable/ic_settings_outline_dark.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,6 @@
44
android:viewportWidth="24"
55
android:viewportHeight="24">
66
<path
7-
android:fillColor="#232F34"
7+
android:fillColor="@color/gray_900"
88
android:pathData="M19.43,12.98c0.04,-0.32 0.07,-0.64 0.07,-0.98 0,-0.34 -0.03,-0.66 -0.07,-0.98l2.11,-1.65c0.19,-0.15 0.24,-0.42 0.12,-0.64l-2,-3.46c-0.09,-0.16 -0.26,-0.25 -0.44,-0.25 -0.06,0 -0.12,0.01 -0.17,0.03l-2.49,1c-0.52,-0.4 -1.08,-0.73 -1.69,-0.98l-0.38,-2.65C14.46,2.18 14.25,2 14,2h-4c-0.25,0 -0.46,0.18 -0.49,0.42l-0.38,2.65c-0.61,0.25 -1.17,0.59 -1.69,0.98l-2.49,-1c-0.06,-0.02 -0.12,-0.03 -0.18,-0.03 -0.17,0 -0.34,0.09 -0.43,0.25l-2,3.46c-0.13,0.22 -0.07,0.49 0.12,0.64l2.11,1.65c-0.04,0.32 -0.07,0.65 -0.07,0.98 0,0.33 0.03,0.66 0.07,0.98l-2.11,1.65c-0.19,0.15 -0.24,0.42 -0.12,0.64l2,3.46c0.09,0.16 0.26,0.25 0.44,0.25 0.06,0 0.12,-0.01 0.17,-0.03l2.49,-1c0.52,0.4 1.08,0.73 1.69,0.98l0.38,2.65c0.03,0.24 0.24,0.42 0.49,0.42h4c0.25,0 0.46,-0.18 0.49,-0.42l0.38,-2.65c0.61,-0.25 1.17,-0.59 1.69,-0.98l2.49,1c0.06,0.02 0.12,0.03 0.18,0.03 0.17,0 0.34,-0.09 0.43,-0.25l2,-3.46c0.12,-0.22 0.07,-0.49 -0.12,-0.64l-2.11,-1.65zM17.45,11.27c0.04,0.31 0.05,0.52 0.05,0.73 0,0.21 -0.02,0.43 -0.05,0.73l-0.14,1.13 0.89,0.7 1.08,0.84 -0.7,1.21 -1.27,-0.51 -1.04,-0.42 -0.9,0.68c-0.43,0.32 -0.84,0.56 -1.25,0.73l-1.06,0.43 -0.16,1.13 -0.2,1.35h-1.4l-0.19,-1.35 -0.16,-1.13 -1.06,-0.43c-0.43,-0.18 -0.83,-0.41 -1.23,-0.71l-0.91,-0.7 -1.06,0.43 -1.27,0.51 -0.7,-1.21 1.08,-0.84 0.89,-0.7 -0.14,-1.13c-0.03,-0.31 -0.05,-0.54 -0.05,-0.74s0.02,-0.43 0.05,-0.73l0.14,-1.13 -0.89,-0.7 -1.08,-0.84 0.7,-1.21 1.27,0.51 1.04,0.42 0.9,-0.68c0.43,-0.32 0.84,-0.56 1.25,-0.73l1.06,-0.43 0.16,-1.13 0.2,-1.35h1.39l0.19,1.35 0.16,1.13 1.06,0.43c0.43,0.18 0.83,0.41 1.23,0.71l0.91,0.7 1.06,-0.43 1.27,-0.51 0.7,1.21 -1.07,0.85 -0.89,0.7 0.14,1.13zM12,8c-2.21,0 -4,1.79 -4,4s1.79,4 4,4 4,-1.79 4,-4 -1.79,-4 -4,-4zM12,14c-1.1,0 -2,-0.9 -2,-2s0.9,-2 2,-2 2,0.9 2,2 -0.9,2 -2,2z"/>
99
</vector>

app/src/main/res/xml/shortcuts.xml

Lines changed: 16 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,30 +1,31 @@
11
<shortcuts xmlns:tools="http://schemas.android.com/tools"
22
xmlns:android="http://schemas.android.com/apk/res/android">
3+
34
<shortcut
4-
android:shortcutId="KernelParamsList"
5+
android:shortcutId="KernelParamBrowser"
56
android:enabled="true"
6-
android:icon="@drawable/ic_edit_outline_dark"
7-
android:shortcutShortLabel="@string/show_variables"
8-
android:shortcutLongLabel="@string/show_variables_sum"
7+
android:icon="@drawable/ic_folder_outline_dark"
8+
android:shortcutShortLabel="@string/browse_variables"
9+
android:shortcutLongLabel="@string/browse_variables_sum"
910
tools:targetApi="n_mr1">
1011
<intent
11-
android:action="KernelParamsListFragment"
12+
android:action="BrowseParams"
1213
android:targetPackage="com.androidvip.sysctlgui"
13-
android:targetClass="com.androidvip.sysctlgui.ui.SplashActivity" />
14+
android:targetClass="com.androidvip.sysctlgui.ui.StartActivity" />
1415
<categories android:name="android.shortcut.conversation" />
1516
</shortcut>
1617

1718
<shortcut
18-
android:shortcutId="KernelParamBrowser"
19+
android:shortcutId="ExportOptions"
1920
android:enabled="true"
20-
android:icon="@drawable/ic_folder_outline_dark"
21-
android:shortcutShortLabel="@string/browse_variables"
22-
android:shortcutLongLabel="@string/browse_variables_sum"
21+
android:icon="@drawable/ic_export_outline_dark"
22+
android:shortcutShortLabel="@string/export_options"
23+
android:shortcutLongLabel="@string/export_options_sum"
2324
tools:targetApi="n_mr1">
2425
<intent
25-
android:action="KernelParamBrowserFragment"
26+
android:action="ExportParams"
2627
android:targetPackage="com.androidvip.sysctlgui"
27-
android:targetClass="com.androidvip.sysctlgui.ui.SplashActivity" />
28+
android:targetClass="com.androidvip.sysctlgui.ui.StartActivity" />
2829
<categories android:name="android.shortcut.conversation" />
2930
</shortcut>
3031

@@ -36,9 +37,9 @@
3637
android:shortcutLongLabel="@string/settings"
3738
tools:targetApi="n_mr1">
3839
<intent
39-
android:action="SettingsFragment"
40+
android:action="OpenSettings"
4041
android:targetPackage="com.androidvip.sysctlgui"
41-
android:targetClass="com.androidvip.sysctlgui.ui.SplashActivity" />
42+
android:targetClass="com.androidvip.sysctlgui.ui.StartActivity" />
4243
<categories android:name="android.shortcut.conversation" />
4344
</shortcut>
44-
</shortcuts>
45+
</shortcuts>

0 commit comments

Comments
 (0)