mirror of
https://github.com/vector-im/element-call.git
synced 2026-04-25 09:35:33 +00:00
fix activeRoom not beeing early enough
This commit is contained in:
@@ -154,6 +154,8 @@ export const useLoadGroupCall = (
|
|||||||
client.on(
|
client.on(
|
||||||
RoomEvent.MyMembership,
|
RoomEvent.MyMembership,
|
||||||
async (room, membership, prevMembership) => {
|
async (room, membership, prevMembership) => {
|
||||||
|
if (roomId !== room.roomId) return;
|
||||||
|
activeRoom.current = room;
|
||||||
if (membership === KnownMembership.Invite) {
|
if (membership === KnownMembership.Invite) {
|
||||||
await client.joinRoom(room.roomId, { viaServers });
|
await client.joinRoom(room.roomId, { viaServers });
|
||||||
joinedRoom = room;
|
joinedRoom = room;
|
||||||
@@ -179,6 +181,7 @@ export const useLoadGroupCall = (
|
|||||||
const alias = roomIdOrAlias;
|
const alias = roomIdOrAlias;
|
||||||
// The call uses a room alias
|
// The call uses a room alias
|
||||||
room = await getRoomByAlias(alias);
|
room = await getRoomByAlias(alias);
|
||||||
|
activeRoom.current = room;
|
||||||
} else {
|
} else {
|
||||||
// The call uses a room_id
|
// The call uses a room_id
|
||||||
const roomId = roomIdOrAlias;
|
const roomId = roomIdOrAlias;
|
||||||
@@ -187,6 +190,7 @@ export const useLoadGroupCall = (
|
|||||||
// - in widget mode
|
// - in widget mode
|
||||||
// - in SPA mode if the user already joined the room
|
// - in SPA mode if the user already joined the room
|
||||||
room = client.getRoom(roomId);
|
room = client.getRoom(roomId);
|
||||||
|
activeRoom.current = room ?? undefined;
|
||||||
if (room?.getMyMembership() === KnownMembership.Join) {
|
if (room?.getMyMembership() === KnownMembership.Join) {
|
||||||
// room already joined so we are done here already.
|
// room already joined so we are done here already.
|
||||||
return room!;
|
return room!;
|
||||||
@@ -203,6 +207,7 @@ export const useLoadGroupCall = (
|
|||||||
roomId,
|
roomId,
|
||||||
viaServers,
|
viaServers,
|
||||||
)) as unknown as RoomSummary;
|
)) as unknown as RoomSummary;
|
||||||
|
|
||||||
if (room?.getMyMembership() === KnownMembership.Ban) {
|
if (room?.getMyMembership() === KnownMembership.Ban) {
|
||||||
throw BannedError();
|
throw BannedError();
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
Reference in New Issue
Block a user