Fix wrongly showing unpin in pinned messages tile with no perms (#7197)
This commit is contained in:
parent
ea97c416f5
commit
508d4d70b6
1 changed files with 16 additions and 14 deletions
|
@ -122,9 +122,7 @@ const PinnedMessagesCard = ({ room, onClose }: IProps) => {
|
||||||
if (!pinnedEvents) {
|
if (!pinnedEvents) {
|
||||||
content = <Spinner />;
|
content = <Spinner />;
|
||||||
} else if (pinnedEvents.length > 0) {
|
} else if (pinnedEvents.length > 0) {
|
||||||
let onUnpinClicked;
|
const onUnpinClicked = async (event: MatrixEvent) => {
|
||||||
if (canUnpin) {
|
|
||||||
onUnpinClicked = async (event: MatrixEvent) => {
|
|
||||||
const pinnedEvents = room.currentState.getStateEvents(EventType.RoomPinnedEvents, "");
|
const pinnedEvents = room.currentState.getStateEvents(EventType.RoomPinnedEvents, "");
|
||||||
if (pinnedEvents?.getContent()?.pinned) {
|
if (pinnedEvents?.getContent()?.pinned) {
|
||||||
const pinned = pinnedEvents.getContent().pinned;
|
const pinned = pinnedEvents.getContent().pinned;
|
||||||
|
@ -135,11 +133,15 @@ const PinnedMessagesCard = ({ room, onClose }: IProps) => {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
}
|
|
||||||
|
|
||||||
// show them in reverse, with latest pinned at the top
|
// show them in reverse, with latest pinned at the top
|
||||||
content = pinnedEvents.filter(Boolean).reverse().map(ev => (
|
content = pinnedEvents.filter(Boolean).reverse().map(ev => (
|
||||||
<PinnedEventTile key={ev.getId()} room={room} event={ev} onUnpinClicked={() => onUnpinClicked(ev)} />
|
<PinnedEventTile
|
||||||
|
key={ev.getId()}
|
||||||
|
room={room}
|
||||||
|
event={ev}
|
||||||
|
onUnpinClicked={canUnpin ? () => onUnpinClicked(ev) : undefined}
|
||||||
|
/>
|
||||||
));
|
));
|
||||||
} else {
|
} else {
|
||||||
content = <div className="mx_PinnedMessagesCard_empty">
|
content = <div className="mx_PinnedMessagesCard_empty">
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue