2021-03-05 00:35:15 +01:00
|
|
|
// SPDX-FileCopyrightText: 2021 Nheko Contributors
|
2021-03-07 05:57:56 +01:00
|
|
|
//
|
2021-03-05 00:35:15 +01:00
|
|
|
// SPDX-License-Identifier: GPL-3.0-or-later
|
|
|
|
|
2021-02-14 01:28:28 +01:00
|
|
|
import QtQuick 2.12
|
2021-01-12 15:03:39 +01:00
|
|
|
import QtQuick.Controls 2.1
|
2019-11-30 01:43:39 +01:00
|
|
|
import im.nheko 1.0
|
2019-09-19 23:02:56 +02:00
|
|
|
|
2021-03-04 22:59:10 +01:00
|
|
|
Image {
|
|
|
|
id: stateImg
|
2020-10-08 21:11:21 +02:00
|
|
|
|
|
|
|
property bool encrypted: false
|
2021-05-07 12:19:46 +02:00
|
|
|
property int trust: Crypto.Unverified
|
2020-10-08 21:11:21 +02:00
|
|
|
|
2021-03-04 22:59:10 +01:00
|
|
|
width: 16
|
|
|
|
height: 16
|
|
|
|
source: {
|
2021-05-07 12:19:46 +02:00
|
|
|
if (encrypted) {
|
|
|
|
switch (trust) {
|
|
|
|
case Crypto.Verified:
|
|
|
|
return "image://colorimage/:/icons/icons/ui/lock.png?green";
|
|
|
|
case Crypto.TOFU:
|
|
|
|
return "image://colorimage/:/icons/icons/ui/lock.png?" + colors.buttonText;
|
|
|
|
default:
|
|
|
|
return "image://colorimage/:/icons/icons/ui/lock.png?#dd3d3d";
|
|
|
|
}
|
|
|
|
} else {
|
2020-10-08 21:11:21 +02:00
|
|
|
return "image://colorimage/:/icons/icons/ui/unlock.png?#dd3d3d";
|
2021-05-07 12:19:46 +02:00
|
|
|
}
|
2020-10-08 21:11:21 +02:00
|
|
|
}
|
2021-03-04 22:59:10 +01:00
|
|
|
ToolTip.visible: ma.hovered
|
2021-05-07 12:19:46 +02:00
|
|
|
ToolTip.text: {
|
|
|
|
if (!encrypted)
|
|
|
|
return qsTr("This message is not encrypted!");
|
|
|
|
|
|
|
|
switch (trust) {
|
|
|
|
case Crypto.Verified:
|
|
|
|
return qsTr("Encrypted by a verified device");
|
|
|
|
case Crypto.TOFU:
|
|
|
|
return qsTr("Encrypted by an unverified device, but you have trusted that user so far.");
|
|
|
|
default:
|
|
|
|
return qsTr("Encrypted by an unverified device");
|
|
|
|
}
|
|
|
|
}
|
2019-09-19 23:02:56 +02:00
|
|
|
|
2021-02-14 01:28:28 +01:00
|
|
|
HoverHandler {
|
2020-10-08 21:11:21 +02:00
|
|
|
id: ma
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|