appdetails: add back view on playstore action

This commit is contained in:
Rahul Patel
2026-05-06 14:08:36 +05:30
parent fba6c4a8df
commit ec3427c785
4 changed files with 29 additions and 1 deletions

View File

@@ -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)
}
}
}
}
}

View File

@@ -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)
)
}
}
}

View File

@@ -13,5 +13,6 @@ enum class MenuItem {
SHARE,
MANUAL_DOWNLOAD,
APP_INFO,
ADD_TO_HOME
ADD_TO_HOME,
PLAY_STORE
}