Ver código fonte

Fix indefinite override not drawn in Live Activity chart

When override duration is 0 (indefinite), end date equaled start date,
giving the RuleMark zero width and preventing it from rendering. Treat
duration == 0 as indefinite and extend the bar to now + 2 hours,
matching the chart's x-axis domain.

Fixes #1191
Magnus Reintz 3 dias atrás
pai
commit
a956be22eb
1 arquivos alterados com 3 adições e 1 exclusões
  1. 3 1
      LiveActivity/Views/LiveActivityChartView.swift

+ 3 - 1
LiveActivity/Views/LiveActivityChartView.swift

@@ -113,7 +113,9 @@ struct LiveActivityChartView: View {
         let duration = context.state.detailedViewState.overrideDuration
         let duration = context.state.detailedViewState.overrideDuration
         let durationAsTimeInterval = TimeInterval((duration as NSDecimalNumber).doubleValue * 60) // return seconds
         let durationAsTimeInterval = TimeInterval((duration as NSDecimalNumber).doubleValue * 60) // return seconds
 
 
-        let end: Date = start.addingTimeInterval(durationAsTimeInterval)
+        let end: Date = duration == 0
+            ? Date(timeIntervalSinceNow: 7200)
+            : start.addingTimeInterval(durationAsTimeInterval)
         let target = context.state.detailedViewState.overrideTarget
         let target = context.state.detailedViewState.overrideTarget
 
 
         return RuleMark(
         return RuleMark(