android: self destruct passcode (#2414)

* android: self destruct passcode

* icon at the end of text instead of start

* removed todo and moved to suspend function

* properly restart chat after database deletion

* changes

* android: disable self-destruct on LA mode change to "system", create new profile with past timestamp
This commit is contained in:
Stanislav Dmitrenko
2023-05-10 15:05:50 +03:00
committed by GitHub
parent ad7e4488ef
commit a12f140333
16 changed files with 367 additions and 83 deletions

View File

@@ -120,8 +120,8 @@ struct SimplexLockView: View {
case laUnavailableTurningOffAlert
case laPasscodeSetAlert
case laPasscodeChangedAlert
case laSeldDestructPasscodeSetAlert
case laSeldDestructPasscodeChangedAlert
case laSelfDestructPasscodeSetAlert
case laSelfDestructPasscodeChangedAlert
case laPasscodeNotChangedAlert
var id: Self { self }
@@ -238,8 +238,8 @@ struct SimplexLockView: View {
case .laUnavailableTurningOffAlert: return laUnavailableTurningOffAlert()
case .laPasscodeSetAlert: return passcodeAlert("Passcode set!")
case .laPasscodeChangedAlert: return passcodeAlert("Passcode changed!")
case .laSeldDestructPasscodeSetAlert: return selfDestructPasscodeAlert("Self-destruct passcode enabled!")
case .laSeldDestructPasscodeChangedAlert: return selfDestructPasscodeAlert("Self-destruct passcode changed!")
case .laSelfDestructPasscodeSetAlert: return selfDestructPasscodeAlert("Self-destruct passcode enabled!")
case .laSelfDestructPasscodeChangedAlert: return selfDestructPasscodeAlert("Self-destruct passcode changed!")
case .laPasscodeNotChangedAlert: return mkAlert(title: "Passcode not changed!")
}
}
@@ -272,13 +272,13 @@ struct SimplexLockView: View {
case .enableSelfDestruct:
SetAppPasscodeView(passcodeKeychain: kcSelfDestructPassword, title: "Set passcode", reason: NSLocalizedString("Enable self-destruct passcode", comment: "set passcode view")) {
updateSelfDestruct()
showLAAlert(.laSeldDestructPasscodeSetAlert)
showLAAlert(.laSelfDestructPasscodeSetAlert)
} cancel: {
revertSelfDestruct()
}
case .changeSelfDestructPasscode:
SetAppPasscodeView(passcodeKeychain: kcSelfDestructPassword, reason: NSLocalizedString("Change self-destruct passcode", comment: "set passcode view")) {
showLAAlert(.laSeldDestructPasscodeChangedAlert)
showLAAlert(.laSelfDestructPasscodeChangedAlert)
} cancel: {
showLAAlert(.laPasscodeNotChangedAlert)
}
@@ -296,17 +296,17 @@ struct SimplexLockView: View {
private func selfDestructInfoView() -> some View {
VStack(alignment: .leading) {
Text("Self-desctruct")
Text("Self-destruct")
.font(.largeTitle)
.bold()
.padding(.vertical)
ScrollView {
VStack(alignment: .leading) {
Group {
Text("If you enter your self-desctruct passcode while opening the app:")
Text("If you enter your self-destruct passcode while opening the app:")
VStack(spacing: 8) {
textListItem("1.", "All app data is deleted.")
textListItem("2.", "App passcode is replaced with self-desctruct passcode.")
textListItem("2.", "App passcode is replaced with self-destruct passcode.")
textListItem("3.", "An empty chat profile with the provided name is created, and the app opens as usual.")
}
}