Improve key screen layout

This commit is contained in:
Christoph Hagen 2022-05-02 23:24:48 +02:00
parent efc68ad803
commit 9beb2e423e
3 changed files with 21 additions and 18 deletions

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()
} }
} }