compose: details: Link privacy policy to data safety section header
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
This commit is contained in:
@@ -10,6 +10,7 @@ import androidx.compose.ui.tooling.preview.PreviewParameterProvider
|
|||||||
import com.aurora.gplayapi.data.models.App
|
import com.aurora.gplayapi.data.models.App
|
||||||
import com.aurora.gplayapi.data.models.Artwork
|
import com.aurora.gplayapi.data.models.Artwork
|
||||||
import com.aurora.gplayapi.data.models.Rating
|
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.gplayapi.data.models.details.TestingProgram
|
||||||
import com.aurora.store.BuildConfig
|
import com.aurora.store.BuildConfig
|
||||||
|
|
||||||
@@ -81,7 +82,8 @@ class AppPreviewProvider : PreviewParameterProvider<App> {
|
|||||||
Manifest.permission.ACCESS_NETWORK_STATE,
|
Manifest.permission.ACCESS_NETWORK_STATE,
|
||||||
Manifest.permission.READ_EXTERNAL_STORAGE,
|
Manifest.permission.READ_EXTERNAL_STORAGE,
|
||||||
Manifest.permission.WRITE_EXTERNAL_STORAGE
|
Manifest.permission.WRITE_EXTERNAL_STORAGE
|
||||||
)
|
),
|
||||||
|
privacyPolicyUrl = "https://gitlab.com/AuroraOSS/AuroraStore/-/blob/master/POLICY.md",
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -465,7 +465,12 @@ private fun ScreenContentAppMainPane(
|
|||||||
onClick = if (app.permissions.isNotEmpty()) onNavigateToDetailsPermission else null
|
onClick = if (app.permissions.isNotEmpty()) onNavigateToDetailsPermission else null
|
||||||
)
|
)
|
||||||
|
|
||||||
if (dataSafetyReport != null) AppDataSafety(report = dataSafetyReport)
|
if (dataSafetyReport != null) {
|
||||||
|
AppDataSafety(
|
||||||
|
report = dataSafetyReport,
|
||||||
|
privacyPolicyUrl = app.privacyPolicyUrl
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
AppPrivacy(
|
AppPrivacy(
|
||||||
report = exodusReport,
|
report = exodusReport,
|
||||||
|
|||||||
@@ -8,11 +8,13 @@ package com.aurora.store.compose.ui.details.components
|
|||||||
import androidx.compose.foundation.layout.Arrangement
|
import androidx.compose.foundation.layout.Arrangement
|
||||||
import androidx.compose.foundation.layout.Column
|
import androidx.compose.foundation.layout.Column
|
||||||
import androidx.compose.runtime.Composable
|
import androidx.compose.runtime.Composable
|
||||||
|
import androidx.compose.ui.platform.LocalContext
|
||||||
import androidx.compose.ui.res.dimensionResource
|
import androidx.compose.ui.res.dimensionResource
|
||||||
import androidx.compose.ui.res.stringResource
|
import androidx.compose.ui.res.stringResource
|
||||||
import androidx.compose.ui.text.AnnotatedString
|
import androidx.compose.ui.text.AnnotatedString
|
||||||
import androidx.compose.ui.tooling.preview.Preview
|
import androidx.compose.ui.tooling.preview.Preview
|
||||||
import androidx.compose.ui.tooling.preview.PreviewParameter
|
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.App
|
||||||
import com.aurora.gplayapi.data.models.datasafety.Entry
|
import com.aurora.gplayapi.data.models.datasafety.Entry
|
||||||
import com.aurora.gplayapi.data.models.datasafety.EntryType
|
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
|
* 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.
|
* of the Column with proper vertical arrangement spacing in the AppDetailsScreen.
|
||||||
* @param report App's data safety report
|
* @param report App's data safety report
|
||||||
|
* @param privacyPolicyUrl App's privacy policy URL
|
||||||
*/
|
*/
|
||||||
@Composable
|
@Composable
|
||||||
fun AppDataSafety(report: Report) {
|
fun AppDataSafety(report: Report, privacyPolicyUrl: String) {
|
||||||
|
val context = LocalContext.current
|
||||||
|
|
||||||
HeaderComposable(
|
HeaderComposable(
|
||||||
title = stringResource(R.string.details_data_safety_title),
|
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) ->
|
report.entries.groupBy { it.type }.forEach { (type, entries) ->
|
||||||
@@ -77,6 +83,7 @@ fun AppDataSafety(report: Report) {
|
|||||||
private fun AppDataSafetyPreview(@PreviewParameter(AppPreviewProvider::class) app: App) {
|
private fun AppDataSafetyPreview(@PreviewParameter(AppPreviewProvider::class) app: App) {
|
||||||
Column(verticalArrangement = Arrangement.spacedBy(dimensionResource(R.dimen.margin_medium))) {
|
Column(verticalArrangement = Arrangement.spacedBy(dimensionResource(R.dimen.margin_medium))) {
|
||||||
AppDataSafety(
|
AppDataSafety(
|
||||||
|
privacyPolicyUrl = app.privacyPolicyUrl,
|
||||||
report = Report(
|
report = Report(
|
||||||
packageName = app.packageName,
|
packageName = app.packageName,
|
||||||
entries = listOf(
|
entries = listOf(
|
||||||
|
|||||||
Reference in New Issue
Block a user