appdetails: add back view on playstore action
This commit is contained in:
@@ -51,9 +51,11 @@ import androidx.compose.ui.tooling.preview.PreviewParameter
|
||||
import androidx.compose.ui.tooling.preview.PreviewScreenSizes
|
||||
import androidx.compose.ui.tooling.preview.PreviewWrapper
|
||||
import androidx.compose.ui.unit.dp
|
||||
import androidx.core.net.toUri
|
||||
import androidx.hilt.lifecycle.viewmodel.compose.hiltViewModel
|
||||
import androidx.lifecycle.compose.collectAsStateWithLifecycle
|
||||
import androidx.navigation3.runtime.NavKey
|
||||
import com.aurora.Constants
|
||||
import com.aurora.extensions.appInfo
|
||||
import com.aurora.extensions.requiresGMS
|
||||
import com.aurora.extensions.requiresObbDir
|
||||
@@ -316,6 +318,21 @@ private fun ScreenContentApp(
|
||||
MenuItem.ADD_TO_HOME -> {
|
||||
ShortcutManagerUtil.requestPinShortcut(context, app.packageName)
|
||||
}
|
||||
|
||||
MenuItem.PLAY_STORE -> {
|
||||
val uri = "${Constants.SHARE_URL}${app.packageName}".toUri()
|
||||
val intent = Intent(Intent.ACTION_VIEW).apply { data = uri }
|
||||
|
||||
if (intent.resolveActivity(context.packageManager) != null) {
|
||||
context.startActivity(
|
||||
intent.apply {
|
||||
setPackage(Constants.PACKAGE_NAME_PLAY_STORE)
|
||||
}
|
||||
)
|
||||
} else {
|
||||
context.startActivity(intent)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -17,14 +17,17 @@ import androidx.compose.runtime.mutableStateOf
|
||||
import androidx.compose.runtime.remember
|
||||
import androidx.compose.runtime.setValue
|
||||
import androidx.compose.ui.Modifier
|
||||
import androidx.compose.ui.platform.LocalContext
|
||||
import androidx.compose.ui.res.painterResource
|
||||
import androidx.compose.ui.res.stringResource
|
||||
import androidx.compose.ui.tooling.preview.Preview
|
||||
import androidx.compose.ui.tooling.preview.PreviewWrapper
|
||||
import com.aurora.Constants
|
||||
import com.aurora.store.R
|
||||
import com.aurora.store.compose.composable.TopAppBar
|
||||
import com.aurora.store.compose.preview.ThemePreviewProvider
|
||||
import com.aurora.store.data.model.AppState
|
||||
import com.aurora.store.util.PackageUtil
|
||||
|
||||
/**
|
||||
* Menu for the app details screen
|
||||
@@ -40,6 +43,7 @@ fun AppDetailsMenu(
|
||||
isExpanded: Boolean = false,
|
||||
onMenuItemClicked: (menuItem: MenuItem) -> Unit = {}
|
||||
) {
|
||||
val context = LocalContext.current
|
||||
var expanded by remember { mutableStateOf(isExpanded) }
|
||||
fun onClick(menuItem: MenuItem) {
|
||||
onMenuItemClicked(menuItem)
|
||||
@@ -87,6 +91,11 @@ fun AppDetailsMenu(
|
||||
onClick = { onClick(MenuItem.ADD_TO_HOME) },
|
||||
enabled = state is AppState.Installed || state is AppState.Updatable
|
||||
)
|
||||
DropdownMenuItem(
|
||||
text = { Text(text = stringResource(R.string.action_view_on_play)) },
|
||||
onClick = { onClick(MenuItem.PLAY_STORE) },
|
||||
enabled = PackageUtil.isInstalled(context, Constants.PACKAGE_NAME_PLAY_STORE)
|
||||
)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -13,5 +13,6 @@ enum class MenuItem {
|
||||
SHARE,
|
||||
MANUAL_DOWNLOAD,
|
||||
APP_INFO,
|
||||
ADD_TO_HOME
|
||||
ADD_TO_HOME,
|
||||
PLAY_STORE
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user