Daniel Newton

use non legacy API for .getUserMedia() so video works on iOS

@@ -106,14 +106,17 @@ class MobileScannerWebPlugin { @@ -106,14 +106,17 @@ class MobileScannerWebPlugin {
106 Map? capabilities = 106 Map? capabilities =
107 html.window.navigator.mediaDevices?.getSupportedConstraints(); 107 html.window.navigator.mediaDevices?.getSupportedConstraints();
108 if (capabilities != null && capabilities['facingMode']) { 108 if (capabilities != null && capabilities['facingMode']) {
109 - var constraints = VideoOptions( 109 + var constraints = {
  110 + 'video': VideoOptions(
110 facingMode: 111 facingMode:
111 - (cameraFacing == CameraFacing.front ? 'user' : 'environment')); 112 + (cameraFacing == CameraFacing.front ? 'user' : 'environment'))
  113 + };
112 114
113 _localStream = 115 _localStream =
114 - await html.window.navigator.getUserMedia(video: constraints); 116 + await html.window.navigator.mediaDevices?.getUserMedia(constraints);
115 } else { 117 } else {
116 - _localStream = await html.window.navigator.getUserMedia(video: true); 118 + _localStream = await html.window.navigator.mediaDevices
  119 + ?.getUserMedia({'video': true});
117 } 120 }
118 121
119 video.srcObject = _localStream; 122 video.srcObject = _localStream;