Remove ifdefs for E2EE

This commit is contained in:
Tobias Fella
2023-08-07 22:38:25 +02:00
committed by Carl Schwan
parent 3ab04583ae
commit 67453d9fb8
11 changed files with 2 additions and 30 deletions

View File

@@ -581,11 +581,6 @@ bool Controller::hasWindowSystem() const
#endif #endif
} }
bool Controller::encryptionSupported() const
{
return Quotient::encryptionSupported();
}
void Controller::forceRefreshTextDocument(QQuickTextDocument *textDocument, QQuickItem *item) void Controller::forceRefreshTextDocument(QQuickTextDocument *textDocument, QQuickItem *item)
{ {
// HACK: Workaround bug QTBUG 93281 // HACK: Workaround bug QTBUG 93281

View File

@@ -87,11 +87,6 @@ class Controller : public QObject
*/ */
Q_PROPERTY(bool isOnline READ isOnline NOTIFY isOnlineChanged) Q_PROPERTY(bool isOnline READ isOnline NOTIFY isOnlineChanged)
/**
* @brief Whether the ecryption support has been enabled.
*/
Q_PROPERTY(bool encryptionSupported READ encryptionSupported CONSTANT)
/** /**
* @brief The current minor version number of libQuotient being used. * @brief The current minor version number of libQuotient being used.
* *
@@ -194,8 +189,6 @@ public:
bool isOnline() const; bool isOnline() const;
bool encryptionSupported() const;
/** /**
* @brief Sets the QNetworkProxy for the application. * @brief Sets the QNetworkProxy for the application.
* *

View File

@@ -272,11 +272,9 @@ int main(int argc, char *argv[])
qRegisterMetaType<User *>("User*"); qRegisterMetaType<User *>("User*");
qRegisterMetaType<GetRoomEventsJob *>("GetRoomEventsJob*"); qRegisterMetaType<GetRoomEventsJob *>("GetRoomEventsJob*");
qRegisterMetaType<QMimeType>("QMimeType"); qRegisterMetaType<QMimeType>("QMimeType");
#ifdef Quotient_E2EE_ENABLED
qRegisterMetaType<KeyVerificationSession *>("KeyVerificationSession*"); qRegisterMetaType<KeyVerificationSession *>("KeyVerificationSession*");
qmlRegisterUncreatableType<KeyVerificationSession>("org.kde.neochat", 1, 0, "KeyVerificationSession", {}); qmlRegisterUncreatableType<KeyVerificationSession>("org.kde.neochat", 1, 0, "KeyVerificationSession", {});
qRegisterMetaType<QVector<EmojiEntry>>("QVector<EmojiEntry>"); qRegisterMetaType<QVector<EmojiEntry>>("QVector<EmojiEntry>");
#endif
qmlRegisterSingletonType("org.kde.neochat", 1, 0, "About", [](QQmlEngine *engine, QJSEngine *) -> QJSValue { qmlRegisterSingletonType("org.kde.neochat", 1, 0, "About", [](QQmlEngine *engine, QJSEngine *) -> QJSValue {
return engine->toScriptValue(KAboutData::applicationData()); return engine->toScriptValue(KAboutData::applicationData());
}); });

View File

@@ -865,13 +865,11 @@ QVariant MessageEventModel::data(const QModelIndex &idx, int role) const
} }
if (role == VerifiedRole) { if (role == VerifiedRole) {
#ifdef Quotient_E2EE_ENABLED
if (evt.originalEvent()) { if (evt.originalEvent()) {
auto encrypted = dynamic_cast<const EncryptedEvent *>(evt.originalEvent()); auto encrypted = dynamic_cast<const EncryptedEvent *>(evt.originalEvent());
Q_ASSERT(encrypted); Q_ASSERT(encrypted);
return m_currentRoom->connection()->isVerifiedSession(encrypted->sessionId().toLatin1()); return m_currentRoom->connection()->isVerifiedSession(encrypted->sessionId().toLatin1());
} }
#endif
return false; return false;
} }

View File

@@ -1812,10 +1812,7 @@ void NeoChatRoom::editLastMessage()
bool NeoChatRoom::canEncryptRoom() const bool NeoChatRoom::canEncryptRoom() const
{ {
#ifdef Quotient_E2EE_ENABLED
return !usesEncryption() && canSendState("m.room.encryption"); return !usesEncryption() && canSendState("m.room.encryption");
#endif
return false;
} }
PollHandler *NeoChatRoom::poll(const QString &eventId) PollHandler *NeoChatRoom::poll(const QString &eventId)

View File

@@ -186,9 +186,6 @@ class NeoChatRoom : public Quotient::Room
/** /**
* @brief Whether the local user can encrypt the room. * @brief Whether the local user can encrypt the room.
* *
* Requires libQuotient 0.7 compiled with the Quotient_E2EE_ENABLED parameter to
* be able to return true.
*
* A local user can encrypt a room if they have permission to send the m.room.encryption * A local user can encrypt a room if they have permission to send the m.room.encryption
* state event. * state event.
* *

View File

@@ -122,10 +122,8 @@ void NotificationsManager::processNotificationJob(QPointer<Quotient::Connection>
} }
if (notification["event"]["type"] == "m.room.encrypted") { if (notification["event"]["type"] == "m.room.encrypted") {
#ifdef Quotient_E2EE_ENABLED
auto decrypted = connection->decryptNotification(notification); auto decrypted = connection->decryptNotification(notification);
body = decrypted["content"].toObject()["body"].toString(); body = decrypted["content"].toObject()["body"].toString();
#endif
if (body.isEmpty()) { if (body.isEmpty()) {
body = i18n("Encrypted Message"); body = i18n("Encrypted Message");
} }

View File

@@ -162,10 +162,9 @@ QQC2.Control {
leftPadding: LayoutMirroring.enabled ? actionsRow.width : Kirigami.Units.largeSpacing leftPadding: LayoutMirroring.enabled ? actionsRow.width : Kirigami.Units.largeSpacing
rightPadding: LayoutMirroring.enabled ? Kirigami.Units.largeSpacing : actionsRow.width + x * 2 + Kirigami.Units.largeSpacing * 2 rightPadding: LayoutMirroring.enabled ? Kirigami.Units.largeSpacing : actionsRow.width + x * 2 + Kirigami.Units.largeSpacing * 2
placeholderText: readOnly ? i18n("This room is encrypted. Build libQuotient with encryption enabled to send encrypted messages.") : root.currentRoom.usesEncryption ? i18n("Send an encrypted message…") : root.currentRoom.chatBoxAttachmentPath.length > 0 ? i18n("Set an attachment caption...") : i18n("Send a message…") placeholderText: root.currentRoom.usesEncryption ? i18n("Send an encrypted message…") : root.currentRoom.chatBoxAttachmentPath.length > 0 ? i18n("Set an attachment caption...") : i18n("Send a message…")
verticalAlignment: TextEdit.AlignVCenter verticalAlignment: TextEdit.AlignVCenter
wrapMode: Text.Wrap wrapMode: Text.Wrap
readOnly: (root.currentRoom.usesEncryption && !Controller.encryptionSupported)
Accessible.description: placeholderText Accessible.description: placeholderText

View File

@@ -27,7 +27,6 @@ Kirigami.ScrollablePage {
title: i18nc("@option:check", "Encryption") title: i18nc("@option:check", "Encryption")
} }
MobileForm.FormCard { MobileForm.FormCard {
visible: Controller.encryptionSupported
Layout.fillWidth: true Layout.fillWidth: true
contentItem: ColumnLayout { contentItem: ColumnLayout {
spacing: 0 spacing: 0

View File

@@ -100,7 +100,7 @@ MobileForm.AbstractFormDelegate {
} }
QQC2.ToolButton { QQC2.ToolButton {
display: QQC2.AbstractButton.IconOnly display: QQC2.AbstractButton.IconOnly
visible: Controller.encryptionSupported && deviceDelegate.showVerifyButton visible: deviceDelegate.showVerifyButton
action: Kirigami.Action { action: Kirigami.Action {
id: verifyDeviceAction id: verifyDeviceAction
text: i18n("Verify device") text: i18n("Verify device")

View File

@@ -287,8 +287,6 @@ Kirigami.ApplicationWindow {
Connections { Connections {
target: Controller.activeConnection target: Controller.activeConnection
//TODO Remove this when the E2EE flag in libQuotient goes away
ignoreUnknownSignals: true
function onDirectChatAvailable(directChat) { function onDirectChatAvailable(directChat) {
RoomManager.enterRoom(Controller.activeConnection.room(directChat.id)); RoomManager.enterRoom(Controller.activeConnection.room(directChat.id));
} }