|
@@ -2604,6 +2604,20 @@ export default {
|
2604
|
2604
|
// https://bugs.chromium.org/p/chromium/issues/detail?id=997689
|
2605
|
2605
|
const hasDefaultMicChanged = newDevices.audioinput === 'default';
|
2606
|
2606
|
|
|
2607
|
+ // This is the case when the local video is muted and a preferred device is connected.
|
|
2608
|
+ if (requestedInput.video && this.isLocalVideoMuted()) {
|
|
2609
|
+ // We want to avoid creating a new video track in order to prevent turning on the camera.
|
|
2610
|
+ requestedInput.video = false;
|
|
2611
|
+ APP.store.dispatch(updateSettings({ // Update the current selected camera for the device selection dialog.
|
|
2612
|
+ cameraDeviceId: newDevices.videoinput
|
|
2613
|
+ }));
|
|
2614
|
+ delete newDevices.videoinput;
|
|
2615
|
+
|
|
2616
|
+ // Removing the current video track in order to force the unmute to select the preferred device.
|
|
2617
|
+ this.useVideoStream(null);
|
|
2618
|
+
|
|
2619
|
+ }
|
|
2620
|
+
|
2607
|
2621
|
promises.push(
|
2608
|
2622
|
mediaDeviceHelper.createLocalTracksAfterDeviceListChanged(
|
2609
|
2623
|
createLocalTracksF,
|