compose: details: Link privacy policy to data safety section header

Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
This commit is contained in:
Aayush Gupta
2025-05-21 17:22:34 +08:00
parent 70d68dc872
commit e3215a6721
3 changed files with 18 additions and 4 deletions

View File

@@ -10,6 +10,7 @@ import androidx.compose.ui.tooling.preview.PreviewParameterProvider
import com.aurora.gplayapi.data.models.App
import com.aurora.gplayapi.data.models.Artwork
import com.aurora.gplayapi.data.models.Rating
import com.aurora.gplayapi.data.models.Support
import com.aurora.gplayapi.data.models.details.TestingProgram
import com.aurora.store.BuildConfig
@@ -81,7 +82,8 @@ class AppPreviewProvider : PreviewParameterProvider<App> {
Manifest.permission.ACCESS_NETWORK_STATE,
Manifest.permission.READ_EXTERNAL_STORAGE,
Manifest.permission.WRITE_EXTERNAL_STORAGE
)
),
privacyPolicyUrl = "https://gitlab.com/AuroraOSS/AuroraStore/-/blob/master/POLICY.md",
)
)
}

View File

@@ -465,7 +465,12 @@ private fun ScreenContentAppMainPane(
onClick = if (app.permissions.isNotEmpty()) onNavigateToDetailsPermission else null
)
if (dataSafetyReport != null) AppDataSafety(report = dataSafetyReport)
if (dataSafetyReport != null) {
AppDataSafety(
report = dataSafetyReport,
privacyPolicyUrl = app.privacyPolicyUrl
)
}
AppPrivacy(
report = exodusReport,

View File

@@ -8,11 +8,13 @@ package com.aurora.store.compose.ui.details.components
import androidx.compose.foundation.layout.Arrangement
import androidx.compose.foundation.layout.Column
import androidx.compose.runtime.Composable
import androidx.compose.ui.platform.LocalContext
import androidx.compose.ui.res.dimensionResource
import androidx.compose.ui.res.stringResource
import androidx.compose.ui.text.AnnotatedString
import androidx.compose.ui.tooling.preview.Preview
import androidx.compose.ui.tooling.preview.PreviewParameter
import com.aurora.extensions.browse
import com.aurora.gplayapi.data.models.App
import com.aurora.gplayapi.data.models.datasafety.Entry
import com.aurora.gplayapi.data.models.datasafety.EntryType
@@ -26,12 +28,16 @@ import com.aurora.store.compose.composables.preview.AppPreviewProvider
* Composable to display app's data safety report, supposed to be used as a part
* of the Column with proper vertical arrangement spacing in the AppDetailsScreen.
* @param report App's data safety report
* @param privacyPolicyUrl App's privacy policy URL
*/
@Composable
fun AppDataSafety(report: Report) {
fun AppDataSafety(report: Report, privacyPolicyUrl: String) {
val context = LocalContext.current
HeaderComposable(
title = stringResource(R.string.details_data_safety_title),
subtitle = stringResource(R.string.details_data_safety_subtitle)
subtitle = stringResource(R.string.details_data_safety_subtitle),
onClick = { context.browse(privacyPolicyUrl) }
)
report.entries.groupBy { it.type }.forEach { (type, entries) ->
@@ -77,6 +83,7 @@ fun AppDataSafety(report: Report) {
private fun AppDataSafetyPreview(@PreviewParameter(AppPreviewProvider::class) app: App) {
Column(verticalArrangement = Arrangement.spacedBy(dimensionResource(R.dimen.margin_medium))) {
AppDataSafety(
privacyPolicyUrl = app.privacyPolicyUrl,
report = Report(
packageName = app.packageName,
entries = listOf(