Merge pull request #1765 from famedly/krille/can-change-own-powerlevel

fix: canChangePowerLevel should return true for own user
This commit is contained in:
td 2024-04-17 16:35:50 +05:30 committed by GitHub
commit efa2d6f566
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 7 additions and 3 deletions

View File

@ -169,10 +169,14 @@ class User extends Event {
room.canKick &&
powerLevel < room.ownPowerLevel;
@Deprecated('Use [canChangeUserPowerLevel] instead.')
bool get canChangePowerLevel => canChangeUserPowerLevel;
/// Whether the client is allowed to change the power level of this user.
/// Please be aware that you can only set the power level to at least your own!
bool get canChangePowerLevel =>
room.canChangePowerLevel && powerLevel < room.ownPowerLevel;
bool get canChangeUserPowerLevel =>
room.canChangePowerLevel &&
(powerLevel < room.ownPowerLevel || id == room.client.userID);
@override
bool operator ==(Object other) => (other is User &&

View File

@ -140,7 +140,7 @@ void main() {
expect(user1.canKick, false);
});
test('canChangePowerLevel', () async {
expect(user1.canChangePowerLevel, false);
expect(user1.canChangeUserPowerLevel, false);
});
test('mention', () async {
expect(user1.mention, '@[Alice M]');