Compare commits

..

3 Commits

Author SHA1 Message Date
Christoph Hagen
9beb2e423e Improve key screen layout 2022-05-02 23:25:11 +02:00
Christoph Hagen
efc68ad803 Allow compensation of DST 2022-05-02 23:25:11 +02:00
Christoph Hagen
9444917186 Add banner resources
Update screenshot
2022-05-02 23:25:11 +02:00
4 changed files with 21 additions and 18 deletions

Binary file not shown.

View File

@ -29,10 +29,10 @@ struct HistoryListItem: View {
return startText return startText
} }
let diff = Int(rCounter) - Int(sentCounter) let diff = Int(rCounter) - Int(sentCounter)
guard diff != 1 else { guard diff != 1 && diff != 0 else {
return startText return startText
} }
return startText + "\(rCounter)" return startText + " (\(diff))"
} }
var timeOffsetText: String { var timeOffsetText: String {

View File

@ -9,20 +9,21 @@ struct KeyView: View {
var isCompensatingDaylightTime: Bool var isCompensatingDaylightTime: Bool
var body: some View { var body: some View {
GeometryReader { geo in ScrollView {
VStack(alignment: .leading, spacing: 16) { VStack(alignment: .leading, spacing: 8) {
ForEach(KeyManagement.KeyType.allCases) { keyType in ForEach(KeyManagement.KeyType.allCases) { keyType in
SingleKeyView( SingleKeyView(
keyManager: $keyManager, keyManager: $keyManager,
type: keyType) type: keyType)
} }
Toggle(isOn: $isCompensatingDaylightTime) { Toggle(isOn: $isCompensatingDaylightTime) {
Text("Compensate daylight savings time") Text("Compensate daylight savings time")
} }
Text("If the remote has daylight savings time wrongly set, then the time validation will fail. Use this option to send messages with adjusted timestamps. Warning: Incorrect use of this option will allow replay attacks.") Text("If the remote has daylight savings time wrongly set, then the time validation will fail. Use this option to send messages with adjusted timestamps. Warning: Incorrect use of this option will allow replay attacks.")
.font(.caption) .font(.caption)
}.padding() .foregroundColor(.secondary)
} }.padding()
}
} }
} }

View File

@ -45,13 +45,15 @@ struct SingleKeyView: View {
keyManager.generate(type) keyManager.generate(type)
needRefresh.toggle() needRefresh.toggle()
} }
.padding() .padding([.horizontal, .bottom])
.padding(.top, 4)
Button(type.usesHashing ? "Copy hash" : "Copy") { Button(type.usesHashing ? "Copy hash" : "Copy") {
UIPasteboard.general.string = copyText UIPasteboard.general.string = copyText
} }
.disabled(!hasKey) .disabled(!hasKey)
.padding() .padding([.horizontal, .bottom])
.padding(.top, 4)
Spacer() Spacer()
} }
} }