|
|
@@ -9,9 +9,11 @@ import { Dialog, hideDialog } from '../../base/dialog';
|
|
9
|
9
|
import { translate } from '../../base/i18n';
|
|
10
|
10
|
import { Icon, IconCloseSmall, IconPlusCircle, IconShareDesktop } from '../../base/icons';
|
|
11
|
11
|
import { createLocalTrack } from '../../base/lib-jitsi-meet/functions';
|
|
|
12
|
+import { VIDEO_TYPE } from '../../base/media';
|
|
12
|
13
|
import { connect } from '../../base/redux';
|
|
13
|
14
|
import { getLocalVideoTrack } from '../../base/tracks';
|
|
14
|
15
|
import { toggleBackgroundEffect } from '../actions';
|
|
|
16
|
+import { VIRTUAL_BACKGROUND_TYPE } from '../constants';
|
|
15
|
17
|
import { resizeImage, toDataURL } from '../functions';
|
|
16
|
18
|
import logger from '../logger';
|
|
17
|
19
|
|
|
|
@@ -89,7 +91,7 @@ function VirtualBackground({ _jitsiTrack, _selectedThumbnail, _virtualSource, di
|
|
89
|
91
|
const localImages = jitsiLocalStorage.getItem('virtualBackgrounds');
|
|
90
|
92
|
const [ storedImages, setStoredImages ] = useState((localImages && JSON.parse(localImages)) || []);
|
|
91
|
93
|
const [ loading, isloading ] = useState(false);
|
|
92
|
|
- const [ activeDesktopVideo ] = useState(_virtualSource?.videoType === 'desktop' ? _virtualSource : null);
|
|
|
94
|
+ const [ activeDesktopVideo ] = useState(_virtualSource?.videoType === VIDEO_TYPE.DESKTOP ? _virtualSource : null);
|
|
93
|
95
|
|
|
94
|
96
|
const deleteStoredImage = image => {
|
|
95
|
97
|
setStoredImages(storedImages.filter(item => item !== image));
|
|
|
@@ -112,7 +114,7 @@ function VirtualBackground({ _jitsiTrack, _selectedThumbnail, _virtualSource, di
|
|
112
|
114
|
|
|
113
|
115
|
const enableBlur = async (blurValue, selection) => {
|
|
114
|
116
|
setOptions({
|
|
115
|
|
- backgroundType: 'blur',
|
|
|
117
|
+ backgroundType: VIRTUAL_BACKGROUND_TYPE.BLUR,
|
|
116
|
118
|
enabled: true,
|
|
117
|
119
|
blurValue,
|
|
118
|
120
|
selectedThumbnail: selection
|
|
|
@@ -129,8 +131,11 @@ function VirtualBackground({ _jitsiTrack, _selectedThumbnail, _virtualSource, di
|
|
129
|
131
|
const shareDesktop = async selection => {
|
|
130
|
132
|
const url = await createLocalTrack('desktop', '');
|
|
131
|
133
|
|
|
|
134
|
+ if (!url) {
|
|
|
135
|
+ throw new Error('Could not create desktop local track!');
|
|
|
136
|
+ }
|
|
132
|
137
|
setOptions({
|
|
133
|
|
- backgroundType: 'desktop-share',
|
|
|
138
|
+ backgroundType: VIRTUAL_BACKGROUND_TYPE.DESKTOP_SHARE,
|
|
134
|
139
|
enabled: true,
|
|
135
|
140
|
selectedThumbnail: selection,
|
|
136
|
141
|
url
|
|
|
@@ -139,7 +144,7 @@ function VirtualBackground({ _jitsiTrack, _selectedThumbnail, _virtualSource, di
|
|
139
|
144
|
|
|
140
|
145
|
const setUploadedImageBackground = async image => {
|
|
141
|
146
|
setOptions({
|
|
142
|
|
- backgroundType: 'image',
|
|
|
147
|
+ backgroundType: VIRTUAL_BACKGROUND_TYPE.IMAGE,
|
|
143
|
148
|
enabled: true,
|
|
144
|
149
|
url: image.src,
|
|
145
|
150
|
selectedThumbnail: image.id
|
|
|
@@ -150,7 +155,7 @@ function VirtualBackground({ _jitsiTrack, _selectedThumbnail, _virtualSource, di
|
|
150
|
155
|
const url = await toDataURL(image.src);
|
|
151
|
156
|
|
|
152
|
157
|
setOptions({
|
|
153
|
|
- backgroundType: 'image',
|
|
|
158
|
+ backgroundType: VIRTUAL_BACKGROUND_TYPE.IMAGE,
|
|
154
|
159
|
enabled: true,
|
|
155
|
160
|
url,
|
|
156
|
161
|
selectedThumbnail: image.id
|
|
|
@@ -173,7 +178,7 @@ function VirtualBackground({ _jitsiTrack, _selectedThumbnail, _virtualSource, di
|
|
173
|
178
|
}
|
|
174
|
179
|
]);
|
|
175
|
180
|
setOptions({
|
|
176
|
|
- backgroundType: 'image',
|
|
|
181
|
+ backgroundType: VIRTUAL_BACKGROUND_TYPE.IMAGE,
|
|
177
|
182
|
enabled: true,
|
|
178
|
183
|
url,
|
|
179
|
184
|
selectedThumbnail: uuId
|