diff --git a/lib/src/room.dart b/lib/src/room.dart index edbf1729..6f4da2b6 100644 --- a/lib/src/room.dart +++ b/lib/src/room.dart @@ -1559,7 +1559,8 @@ class Room { } bool _hasPermissionFor(String action) { - final pl = getState(EventTypes.RoomPowerLevels)?.content[action]; + final pl = + getState(EventTypes.RoomPowerLevels)?.content.tryGet(action); if (pl == null) { return true; } @@ -1589,8 +1590,10 @@ class Room { bool get canChangePowerLevel => canSendEvent(EventTypes.RoomPowerLevels); bool canSendEvent(String eventType) { - final pl = - getState(EventTypes.RoomPowerLevels)?.content['events']?[eventType]; + final pl = getState(EventTypes.RoomPowerLevels) + ?.content + .tryGetMap('events') + ?.tryGet(eventType); if (pl == null) { return eventType == EventTypes.Message ? canSendDefaultMessages