Best Value: explain price age per surface instead of one blanket warning
- Station detail now separates the station's own report age from the selected fuel's update time, so a recent station-wide report no longer reads as an old price. - Warning copy names the fuel and says which side is weak: the station's price is not individually dated, or the baseline's is. The misleading "unverified or older than 7 days" line is gone. - Wording stays "Closest" throughout; new copy uses Unleaded / Premium / Diesel rather than the internal grade codes. - Localisation: new and updated keys for the added copy.
This commit is contained in:
@@ -79,6 +79,7 @@ struct SettingsView: View {
|
||||
/// Return key, so the keyboard's Done button clears this to dismiss AND
|
||||
/// commit the typed value. Both Fuel Savings controls are sliders now, so
|
||||
/// nothing sets it — it stays for any numeric field this screen takes again.
|
||||
@State private var settingsUnitChangeNotice: String?
|
||||
@FocusState private var focusedSavingsField: SavingsField?
|
||||
|
||||
private enum SavingsField: Hashable {
|
||||
@@ -148,6 +149,11 @@ struct SettingsView: View {
|
||||
step: FuelSavingsCalculator.fillAmountSliderStep(for: fuelSavingsSettings.preferredAmount.unit))
|
||||
.accessibilityLabel("Typical fill-up")
|
||||
.accessibilityValue(fillUpText)
|
||||
if let settingsUnitChangeNotice {
|
||||
Text(settingsUnitChangeNotice)
|
||||
.font(.caption2)
|
||||
.foregroundStyle(.orange)
|
||||
}
|
||||
if !fuelSavingsSettings.isConfigured && fuelSavingsSettings.enabled {
|
||||
Text("Set a realistic UK MPG and fill-up amount before Best Value appears in sorting.")
|
||||
.font(.caption)
|
||||
@@ -709,10 +715,10 @@ struct SettingsView: View {
|
||||
Binding(
|
||||
get: { fuelSavingsSettings.preferredAmount.unit },
|
||||
set: { newUnit in
|
||||
fuelSavingsSettings.preferredAmount.unit = newUnit
|
||||
if !fuelSavingsSettings.preferredAmount.isValid {
|
||||
fuelSavingsSettings.preferredAmount.value = newUnit == .pounds ? 40 : 30
|
||||
}
|
||||
guard newUnit != fuelSavingsSettings.preferredAmount.unit else { return }
|
||||
fuelSavingsSettings.preferredAmount = FuelSavingsCalculator.newComparisonAmount(
|
||||
afterSwitching: fuelSavingsSettings.preferredAmount, to: newUnit)
|
||||
settingsUnitChangeNotice = "New comparison basis — adjust the \(newUnit.displayName) amount to your intended fill-up."
|
||||
persistFuelSavingsSettings()
|
||||
}
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user