Indicate background recording needs more time

This commit is contained in:
relikd
2020-09-12 11:32:06 +02:00
parent b88874b38b
commit 33b9cab8a8
2 changed files with 14 additions and 5 deletions

View File

@@ -33,11 +33,13 @@ extension FilterOptions {
} }
extension Recording { extension Recording {
static let minTimeLongTerm: Timestamp = .hours(1)
var fallbackTitle: String { get { var fallbackTitle: String { get {
isLongTerm ? "Background Recording" : "Unnamed Recording #\(id)" isLongTerm ? "Background Recording" : "Unnamed Recording #\(id)"
} } } }
var duration: Timestamp { get { (stop ?? .now()) - start } } var duration: Timestamp { get { (stop ?? .now()) - start } }
var isLongTerm: Bool { duration > Timestamp.hours(1) } var isLongTerm: Bool { duration > Recording.minTimeLongTerm }
var isShared: Bool { uploadkey?.count ?? 0 > 0} var isShared: Bool { uploadkey?.count ?? 0 > 0}
} }

View File

@@ -87,14 +87,21 @@ struct TimeFormat {
/// Duration string with format `mm:ss` or `mm:ss.SSS` /// Duration string with format `mm:ss` or `mm:ss.SSS`
static func from(_ duration: TimeInterval, millis: Bool = false, hours: Bool = false) -> String { static func from(_ duration: TimeInterval, millis: Bool = false, hours: Bool = false) -> String {
let t = Int(duration) var t = Int(duration)
let min = t / 60 var min = t / 60
let sec = t % 60 var sec = t % 60
if millis { if millis {
let mil = Int(duration * 1000) % 1000 let mil = Int(duration * 1000) % 1000
return String(format: "%02d:%02d.%03d", min, sec, mil) return String(format: "%02d:%02d.%03d", min, sec, mil)
} else if hours { } else if hours {
return String(format: "%02d:%02d:%02d", min / 60, min % 60, sec) if t < Recording.minTimeLongTerm {
t = Int(Recording.minTimeLongTerm) - t
min = t / 60
sec = t % 60
return String(format: "-%02d:%02d:%02d", min / 60, min % 60, sec)
} else {
return String(format: "%02d:%02d:%02d", min / 60, min % 60, sec)
}
} }
return String(format: "%02d:%02d", min, sec) return String(format: "%02d:%02d", min, sec)
} }