From bcca5e11f258bd9e441fd3a7cadb598c527548eb Mon Sep 17 00:00:00 2001 From: Krille Fear Date: Fri, 7 Jan 2022 17:12:20 +0000 Subject: [PATCH] feat: Let sendDefaultMessage return false on encryption failure --- lib/src/room.dart | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/lib/src/room.dart b/lib/src/room.dart index 94fdf54b..2ddba1fd 100644 --- a/lib/src/room.dart +++ b/lib/src/room.dart @@ -1300,12 +1300,6 @@ class Room { room: this); setState(user); await client.database?.transaction(() async { - final content = { - 'sender': mxID, - 'type': EventTypes.RoomMember, - 'content': resp, - 'state_key': mxID, - }; final fakeEventId = String.fromCharCodes( await sha256( Uint8List.fromList( @@ -1407,7 +1401,9 @@ class Room { bool get canBan => _hasPermissionFor('ban'); /// The default level required to send message events. Can be overridden by the events key. - bool get canSendDefaultMessages => _hasPermissionFor('events_default'); + bool get canSendDefaultMessages => + _hasPermissionFor('events_default') && + (!encrypted || client.encryptionEnabled); /// The level required to invite a user. bool get canInvite => _hasPermissionFor('invite');