status-desktop/ui/imports/shared/popups/BlockContactConfirmationDia...

75 lines
2.4 KiB
QML
Raw Normal View History

import QtQuick 2.15
import QtQuick.Controls 2.15
import QtQuick.Layouts 1.15
import QtQml.Models 2.15
import StatusQ.Core 0.1
import StatusQ.Core.Theme 0.1
import StatusQ.Controls 0.1
import utils 1.0
CommonContactDialog {
id: root
2020-10-02 13:02:56 +00:00
readonly property bool removeIDVerification: ctrlRemoveIDVerification.checked
readonly property bool removeContact: ctrlRemoveContact.checked
2022-02-09 09:43:23 +00:00
title: qsTr("Block user")
2022-02-09 09:43:23 +00:00
readonly property var d: QtObject {
id: d
readonly property bool isTrusted: contactDetails.outgoingVerificationStatus === Constants.verificationStatus.trusted ||
contactDetails.incomingVerificationStatus === Constants.verificationStatus.trusted
}
StatusBaseText {
Layout.fillWidth: true
wrapMode: Text.WordWrap
lineHeight: 22
lineHeightMode: Text.FixedHeight
text: qsTr("You will not see %1s messages but %1 can still see your messages in mutual group chats and communities. %1 will be unable to message you.").arg(mainDisplayName)
}
StatusWarningBox {
Layout.fillWidth: true
Layout.topMargin: Style.current.padding
icon: "warning"
iconColor: Theme.palette.dangerColor1
bgColor: Theme.palette.dangerColor1
borderColor: Theme.palette.dangerColor2
textColor: Theme.palette.directColor1
textSize: Theme.secondaryTextFontSize
text: qsTr("Blocking a user purges the database of all messages that youve previously received from %1 in all contexts. This can take a moment.").arg(mainDisplayName)
}
StatusCheckBox {
Layout.topMargin: Style.current.halfPadding
id: ctrlRemoveContact
visible: contactDetails.isContact
checked: visible
enabled: false
text: qsTr("Remove contact")
}
StatusCheckBox {
id: ctrlRemoveIDVerification
visible: (contactDetails.isContact && d.isTrusted) || contactDetails.trustStatus === Constants.trustStatus.trusted
checked: visible
enabled: false
text: qsTr("Remove ID verification")
}
rightButtons: ObjectModel {
StatusFlatButton {
text: qsTr("Cancel")
onClicked: root.close()
}
StatusButton {
type: StatusBaseButton.Type.Danger
text: qsTr("Block")
onClicked: root.accepted()
}
}
}