dont set localTransport while still fetching oldest member transport

This commit is contained in:
Timo K
2026-01-14 17:35:35 +01:00
parent 27e351270c
commit b49411abfa
3 changed files with 22 additions and 15 deletions

View File

@@ -435,18 +435,18 @@ export const InCallView: FC<InCallViewProps> = ({
[vm],
);
useEffect(() => {
widget?.api.transport
.send(
gridMode === "grid"
? ElementWidgetActions.TileLayout
: ElementWidgetActions.SpotlightLayout,
{},
)
.catch((e) => {
logger.error("Failed to send layout change to widget API", e);
});
}, [gridMode]);
// useEffect(() => {
// widget?.api.transport
// .send(
// gridMode === "grid"
// ? ElementWidgetActions.TileLayout
// : ElementWidgetActions.SpotlightLayout,
// {},
// )
// .catch((e) => {
// logger.error("Failed to send layout change to widget API", e);
// });
// }, [gridMode]);
useEffect(() => {
if (widget) {

View File

@@ -126,7 +126,9 @@ export const createLocalTransport$ = ({
* The transport over which we should be actively publishing our media.
* undefined when not joined.
*/
const oldestMemberTransport$ = scope.behavior(
const oldestMemberTransport$ = scope.behavior<
LocalTransportWithSFUConfig | null | "fetching"
>(
combineLatest([memberships$]).pipe(
map(([memberships]) => {
const oldestMember = memberships.value[0];
@@ -154,7 +156,7 @@ export const createLocalTransport$ = ({
return from(computeLocalTransportWithSFUConfig());
}),
),
null,
"fetching",
);
/**
@@ -202,7 +204,11 @@ export const createLocalTransport$ = ({
]).pipe(
map(([useOldestMember, oldestMemberTransport, preferredTransport]) =>
useOldestMember
? (oldestMemberTransport ?? preferredTransport)
? oldestMemberTransport === null
? preferredTransport
: oldestMemberTransport === "fetching"
? null
: oldestMemberTransport
: preferredTransport,
),
distinctUntilChanged((t1, t2) =>

View File

@@ -110,6 +110,7 @@ export const widget = ((): WidgetHelpers | null => {
EventType.RoomRedaction,
ElementCallReactionEventType,
EventType.RTCDecline,
EventType.RTCMembership, // Send/Read the membership sticky events
];
const sendState = [