isReadOnly property

bool get isReadOnly

True when the composer must be read-only: an announcement channel the user doesn't own, OR the user has been moderation-muted in this room (an admin/owner silenced them). selfMuted is distinct from muted (the user's own notification preference).

Implementation

bool get isReadOnly =>
    (type == RoomType.announcement && userRole != RoomRole.owner) ||
    selfMuted;