浏览代码

fix: disable audio/video settings popup on mobile browsers

Mobile devices do not support capture from multiple cameras/mics at a time.
j8
Jaya Allamsetty 4 年前
父节点
当前提交
0e1ecd3256

+ 5
- 2
react/features/toolbox/components/web/AudioSettingsButton.js 查看文件

@@ -2,6 +2,7 @@
2 2
 
3 3
 import React, { Component } from 'react';
4 4
 
5
+import { isMobileBrowser } from '../../../base/environment/utils';
5 6
 import { IconArrowDown } from '../../../base/icons';
6 7
 import JitsiMeetJS from '../../../base/lib-jitsi-meet/_';
7 8
 import { connect } from '../../../base/redux';
@@ -31,6 +32,7 @@ type Props = {
31 32
 
32 33
     /**
33 34
      * Flag controlling the visibility of the button.
35
+     * AudioSettings popup is disabled on mobile browsers.
34 36
      */
35 37
     visible: boolean,
36 38
 };
@@ -130,7 +132,7 @@ class AudioSettingsButton extends Component<Props, State> {
130 132
                     <AudioMuteButton />
131 133
                 </ToolboxButtonWithIcon>
132 134
             </AudioSettingsPopup>
133
-        ) : null;
135
+        ) : <AudioMuteButton />;
134 136
     }
135 137
 }
136 138
 
@@ -143,7 +145,8 @@ class AudioSettingsButton extends Component<Props, State> {
143 145
 function mapStateToProps(state) {
144 146
     return {
145 147
         isDisabled: isAudioSettingsButtonDisabled(state),
146
-        permissionPromptVisibility: getMediaPermissionPromptVisibility(state)
148
+        permissionPromptVisibility: getMediaPermissionPromptVisibility(state),
149
+        visible: !isMobileBrowser()
147 150
     };
148 151
 }
149 152
 

+ 7
- 2
react/features/toolbox/components/web/VideoSettingsButton.js 查看文件

@@ -2,6 +2,7 @@
2 2
 
3 3
 import React, { Component } from 'react';
4 4
 
5
+import { isMobileBrowser } from '../../../base/environment/utils';
5 6
 import { IconArrowDown } from '../../../base/icons';
6 7
 import JitsiMeetJS from '../../../base/lib-jitsi-meet/_';
7 8
 import { connect } from '../../../base/redux';
@@ -37,6 +38,9 @@ type Props = {
37 38
 
38 39
     /**
39 40
      * Flag controlling the visibility of the button.
41
+     * VideoSettings popup is currently disabled on mobile browsers
42
+     * as mobile devices do not support capture of more than one
43
+     * camera at a time.
40 44
      */
41 45
     visible: boolean,
42 46
 };
@@ -144,7 +148,7 @@ class VideoSettingsButton extends Component<Props, State> {
144 148
                     <VideoMuteButton />
145 149
                 </ToolboxButtonWithIcon>
146 150
             </VideoSettingsPopup>
147
-        ) : null;
151
+        ) : <VideoMuteButton />;
148 152
     }
149 153
 }
150 154
 
@@ -158,7 +162,8 @@ function mapStateToProps(state) {
158 162
     return {
159 163
         hasVideoTrack: Boolean(getLocalJitsiVideoTrack(state)),
160 164
         isDisabled: isVideoSettingsButtonDisabled(state),
161
-        permissionPromptVisibility: getMediaPermissionPromptVisibility(state)
165
+        permissionPromptVisibility: getMediaPermissionPromptVisibility(state),
166
+        visible: !isMobileBrowser()
162 167
     };
163 168
 }
164 169
 

正在加载...
取消
保存