11package com.github.kr328.clash
22
33import android.app.Application
4- import android.content.ComponentName
54import android.content.Context
65import android.content.Intent
7- import android.content.pm.PackageManager
86import androidx.core.content.pm.ShortcutInfoCompat
97import androidx.core.content.pm.ShortcutManagerCompat
108import androidx.core.graphics.drawable.IconCompat
119import com.github.kr328.clash.common.Global
1210import com.github.kr328.clash.common.compat.currentProcessName
1311import com.github.kr328.clash.common.constants.Intents
1412import com.github.kr328.clash.common.log.Log
13+ import com.github.kr328.clash.design.store.UiStore
1514import com.github.kr328.clash.remote.Remote
1615import com.github.kr328.clash.service.util.sendServiceRecreated
1716import com.github.kr328.clash.util.clashDir
@@ -22,6 +21,8 @@ import com.github.kr328.clash.design.R as DesignR
2221
2322@Suppress(" unused" )
2423class MainApplication : Application () {
24+ private val uiStore by lazy(LazyThreadSafetyMode .NONE ) { UiStore (this ) }
25+
2526 override fun attachBaseContext (base : Context ? ) {
2627 super .attachBaseContext(base)
2728
@@ -45,12 +46,8 @@ class MainApplication : Application() {
4546 }
4647
4748 private fun setupShortcuts () {
48- val aliasState = packageManager.getComponentEnabledSetting(
49- ComponentName (this , mainActivityAlias)
50- )
51- if (aliasState != PackageManager .COMPONENT_ENABLED_STATE_ENABLED &&
52- aliasState != PackageManager .COMPONENT_ENABLED_STATE_DEFAULT
53- ) {
49+ if (uiStore.hideAppIcon) {
50+ // Prevent launcher activity not found.
5451 ShortcutManagerCompat .removeAllDynamicShortcuts(this )
5552 return
5653 }
0 commit comments