Skip to content
Snippets Groups Projects
Unverified Commit ac2c787c authored by Mohamed Metwalli's avatar Mohamed Metwalli Committed by GitHub
Browse files

UI Changes for Exposure Windows - Text issues(EXPOSUREAPP-4037) (#2171)


* Remove unknown risk item from overview screen

* Use date instead of days

* Introduce a new string

Co-authored-by: default avatarRalf Gehrer <ralfgehrer@users.noreply.github.com>
parent 72edd645
No related branches found
No related tags found
No related merge requests found
...@@ -17,7 +17,6 @@ import de.rki.coronawarnapp.tracing.ui.details.items.risk.TracingFailedBox ...@@ -17,7 +17,6 @@ import de.rki.coronawarnapp.tracing.ui.details.items.risk.TracingFailedBox
import de.rki.coronawarnapp.tracing.ui.details.items.riskdetails.DetailsFailedCalculationBox import de.rki.coronawarnapp.tracing.ui.details.items.riskdetails.DetailsFailedCalculationBox
import de.rki.coronawarnapp.tracing.ui.details.items.riskdetails.DetailsIncreasedRiskBox import de.rki.coronawarnapp.tracing.ui.details.items.riskdetails.DetailsIncreasedRiskBox
import de.rki.coronawarnapp.tracing.ui.details.items.riskdetails.DetailsLowRiskBox import de.rki.coronawarnapp.tracing.ui.details.items.riskdetails.DetailsLowRiskBox
import org.joda.time.Duration
import org.joda.time.Instant import org.joda.time.Instant
object TracingData { object TracingData {
...@@ -95,10 +94,7 @@ object TracingData { ...@@ -95,10 +94,7 @@ object TracingData {
PeriodLoggedBox.Item(activeTracingDaysInRetentionPeriod = 5), PeriodLoggedBox.Item(activeTracingDaysInRetentionPeriod = 5),
DetailsIncreasedRiskBox.Item( DetailsIncreasedRiskBox.Item(
riskState = RiskState.INCREASED_RISK, riskState = RiskState.INCREASED_RISK,
lastEncounterDaysAgo = Duration( lastEncounteredAt = Instant.now()
Instant.EPOCH,
Instant.now()
).standardDays.toInt()
) )
) )
) )
......
...@@ -14,13 +14,11 @@ import de.rki.coronawarnapp.tracing.ui.details.items.periodlogged.PeriodLoggedBo ...@@ -14,13 +14,11 @@ import de.rki.coronawarnapp.tracing.ui.details.items.periodlogged.PeriodLoggedBo
import de.rki.coronawarnapp.tracing.ui.details.items.riskdetails.DetailsFailedCalculationBox import de.rki.coronawarnapp.tracing.ui.details.items.riskdetails.DetailsFailedCalculationBox
import de.rki.coronawarnapp.tracing.ui.details.items.riskdetails.DetailsIncreasedRiskBox import de.rki.coronawarnapp.tracing.ui.details.items.riskdetails.DetailsIncreasedRiskBox
import de.rki.coronawarnapp.tracing.ui.details.items.riskdetails.DetailsLowRiskBox import de.rki.coronawarnapp.tracing.ui.details.items.riskdetails.DetailsLowRiskBox
import de.rki.coronawarnapp.util.TimeStamper
import kotlinx.coroutines.flow.Flow import kotlinx.coroutines.flow.Flow
import kotlinx.coroutines.flow.combine import kotlinx.coroutines.flow.combine
import kotlinx.coroutines.flow.onCompletion import kotlinx.coroutines.flow.onCompletion
import kotlinx.coroutines.flow.onEach import kotlinx.coroutines.flow.onEach
import kotlinx.coroutines.flow.onStart import kotlinx.coroutines.flow.onStart
import org.joda.time.Duration
import org.joda.time.Instant import org.joda.time.Instant
import timber.log.Timber import timber.log.Timber
import javax.inject.Inject import javax.inject.Inject
...@@ -29,8 +27,7 @@ import javax.inject.Inject ...@@ -29,8 +27,7 @@ import javax.inject.Inject
class TracingDetailsItemProvider @Inject constructor( class TracingDetailsItemProvider @Inject constructor(
tracingStatus: GeneralTracingStatus, tracingStatus: GeneralTracingStatus,
tracingRepository: TracingRepository, tracingRepository: TracingRepository,
riskLevelStorage: RiskLevelStorage, riskLevelStorage: RiskLevelStorage
private val timeStamper: TimeStamper
) { ) {
val state: Flow<List<DetailsItem>> = combine( val state: Flow<List<DetailsItem>> = combine(
...@@ -69,10 +66,7 @@ class TracingDetailsItemProvider @Inject constructor( ...@@ -69,10 +66,7 @@ class TracingDetailsItemProvider @Inject constructor(
) )
RiskState.INCREASED_RISK -> DetailsIncreasedRiskBox.Item( RiskState.INCREASED_RISK -> DetailsIncreasedRiskBox.Item(
riskState = latestCalc.riskState, riskState = latestCalc.riskState,
lastEncounterDaysAgo = Duration( lastEncounteredAt = latestCalc.lastRiskEncounterAt ?: Instant.EPOCH
latestCalc.lastRiskEncounterAt ?: Instant.EPOCH,
timeStamper.nowUTC
).standardDays.toInt()
) )
RiskState.CALCULATION_FAILED -> DetailsFailedCalculationBox.Item RiskState.CALCULATION_FAILED -> DetailsFailedCalculationBox.Item
}.also { add(it) } }.also { add(it) }
......
...@@ -8,6 +8,8 @@ import de.rki.coronawarnapp.databinding.TracingDetailsItemRiskdetailsIncreasedVi ...@@ -8,6 +8,8 @@ import de.rki.coronawarnapp.databinding.TracingDetailsItemRiskdetailsIncreasedVi
import de.rki.coronawarnapp.risk.RiskState import de.rki.coronawarnapp.risk.RiskState
import de.rki.coronawarnapp.tracing.ui.details.TracingDetailsAdapter import de.rki.coronawarnapp.tracing.ui.details.TracingDetailsAdapter
import de.rki.coronawarnapp.tracing.ui.details.items.riskdetails.DetailsIncreasedRiskBox.Item import de.rki.coronawarnapp.tracing.ui.details.items.riskdetails.DetailsIncreasedRiskBox.Item
import de.rki.coronawarnapp.util.TimeAndDateExtensions.toLocalDate
import org.joda.time.Instant
class DetailsIncreasedRiskBox( class DetailsIncreasedRiskBox(
parent: ViewGroup, parent: ViewGroup,
...@@ -34,13 +36,12 @@ class DetailsIncreasedRiskBox( ...@@ -34,13 +36,12 @@ class DetailsIncreasedRiskBox(
data class Item( data class Item(
val riskState: RiskState, val riskState: RiskState,
val lastEncounterDaysAgo: Int val lastEncounteredAt: Instant
) : RiskDetailsStateItem { ) : RiskDetailsStateItem {
fun getRiskDetailsRiskLevelBody(c: Context): String = c.resources.getQuantityString( fun getRiskDetailsRiskLevelBody(context: Context): String {
R.plurals.risk_details_information_body_increased_risk, val date = lastEncounteredAt.toLocalDate().toString("dd.MM.yyyy")
lastEncounterDaysAgo, return context.resources.getString(R.string.risk_details_information_body_increased_risk_date, date)
lastEncounterDaysAgo }
)
} }
} }
...@@ -129,17 +129,6 @@ ...@@ -129,17 +129,6 @@
app:layout_constraintTop_toBottomOf="@+id/main_overview_risk_increased_risk" app:layout_constraintTop_toBottomOf="@+id/main_overview_risk_increased_risk"
app:subtitle="@{@string/main_overview_subtitle_low_risk}" /> app:subtitle="@{@string/main_overview_subtitle_low_risk}" />
<include
android:id="@+id/main_overview_risk_unknown_risk"
layout="@layout/include_main_overview_row"
android:layout_width="0dp"
android:layout_height="wrap_content"
app:icon="@{@drawable/ic_main_overview_circle}"
app:iconTint="@{@color/colorSemanticNeutralRisk}"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/main_overview_risk_low_risk"
app:subtitle="@{@string/main_overview_subtitle_unknown_risk}" />
</androidx.constraintlayout.widget.ConstraintLayout> </androidx.constraintlayout.widget.ConstraintLayout>
<include <include
......
...@@ -50,7 +50,7 @@ ...@@ -50,7 +50,7 @@
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/risk_details_information_subtitle" app:layout_constraintTop_toBottomOf="@+id/risk_details_information_subtitle"
tools:text="@plurals/risk_details_information_body_increased_risk" /> tools:text="@string/risk_details_information_body_increased_risk_date" />
<TextView <TextView
android:id="@+id/risk_details_information_body_notice" android:id="@+id/risk_details_information_body_notice"
......
...@@ -329,6 +329,8 @@ ...@@ -329,6 +329,8 @@
<string name="risk_details_information_body_low_risk">"Sie haben ein niedriges Infektionsrisiko, da keine Begegnung mit nachweislich Corona-positiv getesteten Personen aufgezeichnet wurde oder sich Ihre Begegnung auf kurze Zeit und einen größeren Abstand beschränkt hat."</string> <string name="risk_details_information_body_low_risk">"Sie haben ein niedriges Infektionsrisiko, da keine Begegnung mit nachweislich Corona-positiv getesteten Personen aufgezeichnet wurde oder sich Ihre Begegnung auf kurze Zeit und einen größeren Abstand beschränkt hat."</string>
<!-- YTXT: risk details - low risk explanation text with encounter with low risk --> <!-- YTXT: risk details - low risk explanation text with encounter with low risk -->
<string name="risk_details_information_body_low_risk_with_encounter">"Das Infektionsrisiko wird anhand der Daten der Risiko-Ermittlung unter Berücksichtigung des Abstands und der Dauer von Begegnungen mit nachweislich Corona-positiv getesteten Personen sowie deren vermutlicher Infektiosität lokal auf Ihrem Smartphone berechnet. Ihr Infektionsrisiko ist für niemanden einsehbar und wird nicht weitergegeben."</string> <string name="risk_details_information_body_low_risk_with_encounter">"Das Infektionsrisiko wird anhand der Daten der Risiko-Ermittlung unter Berücksichtigung des Abstands und der Dauer von Begegnungen mit nachweislich Corona-positiv getesteten Personen sowie deren vermutlicher Infektiosität lokal auf Ihrem Smartphone berechnet. Ihr Infektionsrisiko ist für niemanden einsehbar und wird nicht weitergegeben."</string>
<!-- YTXT: risk details - increased risk explanation text with variable date since last contact -->
<string name="risk_details_information_body_increased_risk_date">"Sie haben ein erhöhtes Infektionsrisiko, da Sie zuletzt am %1$s mindestens einer nachweislich Corona-positiv getesteten Person über einen längeren Zeitraum und mit einem geringen Abstand begegnet sind."</string>
<!-- YTXT: risk details - increased risk explanation text with variable for day(s) since last contact --> <!-- YTXT: risk details - increased risk explanation text with variable for day(s) since last contact -->
<plurals name="risk_details_information_body_increased_risk"> <plurals name="risk_details_information_body_increased_risk">
<item quantity="one">"Sie haben ein erhöhtes Infektionsrisiko, da Sie zuletzt vor %1$s Tag mindestens einer nachweislich Corona-positiv getesteten Person über einen längeren Zeitraum und mit einem geringen Abstand begegnet sind."</item> <item quantity="one">"Sie haben ein erhöhtes Infektionsrisiko, da Sie zuletzt vor %1$s Tag mindestens einer nachweislich Corona-positiv getesteten Person über einen längeren Zeitraum und mit einem geringen Abstand begegnet sind."</item>
......
...@@ -333,6 +333,8 @@ ...@@ -333,6 +333,8 @@
<string name="risk_details_information_body_low_risk">"You have a low risk of infection because no exposure to people later diagnosed with COVID-19 was logged, or because your encounters were only for a short time and at a greater distance."</string> <string name="risk_details_information_body_low_risk">"You have a low risk of infection because no exposure to people later diagnosed with COVID-19 was logged, or because your encounters were only for a short time and at a greater distance."</string>
<!-- YTXT: risk details - low risk explanation text with encounter with low risk --> <!-- YTXT: risk details - low risk explanation text with encounter with low risk -->
<string name="risk_details_information_body_low_risk_with_encounter">"The risk of infection is calculated locally on your smartphone, using exposure logging data. The calculation also takes into account distance and duration of any exposure to persons diagnosed with coronavirus, as well as their potential infectiousness. Your risk of infection cannot be seen by or passed on to anyone else."</string> <string name="risk_details_information_body_low_risk_with_encounter">"The risk of infection is calculated locally on your smartphone, using exposure logging data. The calculation also takes into account distance and duration of any exposure to persons diagnosed with coronavirus, as well as their potential infectiousness. Your risk of infection cannot be seen by or passed on to anyone else."</string>
<!-- YTXT: risk details - increased risk explanation text with variable date since last contact -->
<string name="risk_details_information_body_increased_risk_date">"You have an increased risk of infection because you were last exposed on %1$s over a longer period of time and at close proximity to at least one person diagnosed with coronavirus."</string>
<!-- YTXT: risk details - increased risk explanation text with variable for day(s) since last contact --> <!-- YTXT: risk details - increased risk explanation text with variable for day(s) since last contact -->
<plurals name="risk_details_information_body_increased_risk"> <plurals name="risk_details_information_body_increased_risk">
<item quantity="one">"You have an increased risk of infection because you were last exposed %1$s days ago over a longer period of time and at close proximity to at least one person diagnosed with coronavirus."</item> <item quantity="one">"You have an increased risk of infection because you were last exposed %1$s days ago over a longer period of time and at close proximity to at least one person diagnosed with coronavirus."</item>
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment