diff --git a/src/app/components/invite-user-prompt/InviteUserPrompt.tsx b/src/app/components/invite-user-prompt/InviteUserPrompt.tsx
index 3a6d69bdd..7153a7205 100644
--- a/src/app/components/invite-user-prompt/InviteUserPrompt.tsx
+++ b/src/app/components/invite-user-prompt/InviteUserPrompt.tsx
@@ -68,11 +68,16 @@ export function InviteUserPrompt({ room, requestClose }: InviteUserProps) {
const mx = useMatrixClient();
const alive = useAlive();
const [linkCopied, setLinkCopied] = useState(false);
+ const [showQr, setShowQr] = useState(false);
- const handleCopyLink = () => {
+ const inviteUrl = (() => {
const roomIdOrAlias = getCanonicalAliasOrRoomId(mx, room.roomId);
const viaServers = isRoomAlias(roomIdOrAlias) ? undefined : getViaServers(room);
- copyToClipboard(getMatrixToRoom(roomIdOrAlias, viaServers));
+ return getMatrixToRoom(roomIdOrAlias, viaServers);
+ })();
+
+ const handleCopyLink = () => {
+ copyToClipboard(inviteUrl);
setLinkCopied(true);
setTimeout(() => setLinkCopied(false), 2000);
};
@@ -202,11 +207,47 @@ export function InviteUserPrompt({ room, requestClose }: InviteUserProps) {
>
{linkCopied ? 'Copied!' : 'Copy Link'}
+ setShowQr((v) => !v)}
+ >
+
+
+ {showQr && (
+
+
+
+ {inviteUrl}
+
+
+ )}