mirror of
https://github.com/vector-im/element-call.git
synced 2026-04-28 09:44:37 +00:00
Make mediaDevices less confusing
This commit is contained in:
@@ -101,6 +101,7 @@ interface CreateInCallViewArgs {
|
||||
function createInCallView(args: CreateInCallViewArgs = {}): RenderResult & {
|
||||
rtcSession: MockRTCSession;
|
||||
} {
|
||||
const mediaDevices = args.mediaDevices ?? mockMediaDevices({});
|
||||
const muteState = mockMuteStates();
|
||||
const livekitRoom = mockLivekitRoom(
|
||||
{
|
||||
@@ -113,7 +114,11 @@ function createInCallView(args: CreateInCallViewArgs = {}): RenderResult & {
|
||||
const { vm, rtcSession } = getBasicCallViewModelEnvironment(
|
||||
[local, alice],
|
||||
undefined,
|
||||
{ mediaDeviceOverride: args.mediaDevices },
|
||||
mediaDevices,
|
||||
{
|
||||
toggleScreensharing: () => {},
|
||||
...args.callViewModelOptions,
|
||||
},
|
||||
);
|
||||
|
||||
rtcSession.joined = true;
|
||||
@@ -121,7 +126,7 @@ function createInCallView(args: CreateInCallViewArgs = {}): RenderResult & {
|
||||
const client = room.client;
|
||||
const renderResult = render(
|
||||
<BrowserRouter>
|
||||
<MediaDevicesContext value={args.mediaDevices ?? mockMediaDevices({})}>
|
||||
<MediaDevicesContext value={mediaDevices}>
|
||||
<ReactionsSenderProvider
|
||||
vm={vm}
|
||||
rtcSession={rtcSession.asMockedSession()}
|
||||
|
||||
@@ -172,7 +172,6 @@ export interface CallViewModelOptions {
|
||||
windowSize$?: Behavior<{ width: number; height: number }>;
|
||||
/** The version & compatibility mode of MatrixRTC that we should use. */
|
||||
matrixRTCMode$?: Behavior<MatrixRTCMode>;
|
||||
mediaDeviceOverride?: MediaDevices;
|
||||
}
|
||||
|
||||
// Do not play any sounds if the participant count has exceeded this
|
||||
|
||||
@@ -34,6 +34,7 @@ import {
|
||||
MockRTCSession,
|
||||
testScope,
|
||||
} from "./test";
|
||||
import { type MediaDevices } from "../state/MediaDevices";
|
||||
import { aliceRtcMember, localRtcMember } from "./test-fixtures";
|
||||
import { type RaisedHandInfo, type ReactionInfo } from "../reactions";
|
||||
import { constant } from "../state/Behavior";
|
||||
@@ -131,6 +132,7 @@ export function getBasicRTCSession(
|
||||
export function getBasicCallViewModelEnvironment(
|
||||
members: RoomMember[],
|
||||
initialRtcMemberships: CallMembership[] = [localRtcMember, aliceRtcMember],
|
||||
mediaDevicesOverride?: MediaDevices,
|
||||
callViewModelOptions: Partial<CallViewModelOptions> = {},
|
||||
): {
|
||||
vm: CallViewModel;
|
||||
@@ -146,13 +148,11 @@ export function getBasicCallViewModelEnvironment(
|
||||
const handRaisedSubject$ = new BehaviorSubject({});
|
||||
const reactionsSubject$ = new BehaviorSubject({});
|
||||
|
||||
// const remoteParticipants$ = of([aliceParticipant]);
|
||||
|
||||
const vm = createCallViewModel$(
|
||||
testScope(),
|
||||
rtcSession.asMockedSession(),
|
||||
matrixRoom,
|
||||
callViewModelOptions.mediaDeviceOverride ?? mockMediaDevices({}),
|
||||
mediaDevicesOverride ?? mockMediaDevices({}),
|
||||
mockMuteStates(),
|
||||
{
|
||||
encryptionSystem: { kind: E2eeType.PER_PARTICIPANT },
|
||||
|
||||
Reference in New Issue
Block a user