mirror of
https://github.com/element-hq/element-web
synced 2024-11-28 20:38:55 +03:00
Remove Element-specifc screen-sharing code out of the js-sdk
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
This commit is contained in:
parent
4777da4da7
commit
7ae9f3d1ae
2 changed files with 29 additions and 1 deletions
15
src/@types/global.d.ts
vendored
15
src/@types/global.d.ts
vendored
|
@ -49,6 +49,7 @@ import PerformanceMonitor from "../performance";
|
||||||
import UIStore from "../stores/UIStore";
|
import UIStore from "../stores/UIStore";
|
||||||
import { SetupEncryptionStore } from "../stores/SetupEncryptionStore";
|
import { SetupEncryptionStore } from "../stores/SetupEncryptionStore";
|
||||||
import { RoomScrollStateStore } from "../stores/RoomScrollStateStore";
|
import { RoomScrollStateStore } from "../stores/RoomScrollStateStore";
|
||||||
|
import { DesktopCapturerSource } from "matrix-js-sdk/src/webrtc/call";
|
||||||
|
|
||||||
/* eslint-disable @typescript-eslint/naming-convention */
|
/* eslint-disable @typescript-eslint/naming-convention */
|
||||||
|
|
||||||
|
@ -93,6 +94,20 @@ declare global {
|
||||||
mxSetupEncryptionStore?: SetupEncryptionStore;
|
mxSetupEncryptionStore?: SetupEncryptionStore;
|
||||||
mxRoomScrollStateStore?: RoomScrollStateStore;
|
mxRoomScrollStateStore?: RoomScrollStateStore;
|
||||||
mxOnRecaptchaLoaded?: () => void;
|
mxOnRecaptchaLoaded?: () => void;
|
||||||
|
electron?: Electron;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface GetSourcesOptions {
|
||||||
|
types: Array<string>;
|
||||||
|
thumbnailSize?: {
|
||||||
|
height: number;
|
||||||
|
width: number;
|
||||||
|
};
|
||||||
|
fetchWindowIcons?: boolean;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface Electron {
|
||||||
|
getDesktopCapturerSources(options: GetSourcesOptions): Promise<Array<DesktopCapturerSource>>;
|
||||||
}
|
}
|
||||||
|
|
||||||
interface Document {
|
interface Document {
|
||||||
|
|
|
@ -20,10 +20,23 @@ import BaseDialog from "..//dialogs/BaseDialog";
|
||||||
import DialogButtons from "./DialogButtons";
|
import DialogButtons from "./DialogButtons";
|
||||||
import classNames from 'classnames';
|
import classNames from 'classnames';
|
||||||
import AccessibleButton from './AccessibleButton';
|
import AccessibleButton from './AccessibleButton';
|
||||||
import { getDesktopCapturerSources } from "matrix-js-sdk/src/webrtc/call";
|
|
||||||
import { replaceableComponent } from "../../../utils/replaceableComponent";
|
import { replaceableComponent } from "../../../utils/replaceableComponent";
|
||||||
import TabbedView, { Tab, TabLocation } from '../../structures/TabbedView';
|
import TabbedView, { Tab, TabLocation } from '../../structures/TabbedView';
|
||||||
|
|
||||||
|
export function getDesktopCapturerSources(): Promise<Array<DesktopCapturerSource>> {
|
||||||
|
const options: GetSourcesOptions = {
|
||||||
|
thumbnailSize: {
|
||||||
|
height: 176,
|
||||||
|
width: 312,
|
||||||
|
},
|
||||||
|
types: [
|
||||||
|
"screen",
|
||||||
|
"window",
|
||||||
|
],
|
||||||
|
};
|
||||||
|
return window.electron.getDesktopCapturerSources(options);
|
||||||
|
}
|
||||||
|
|
||||||
export enum Tabs {
|
export enum Tabs {
|
||||||
Screens = "screen",
|
Screens = "screen",
|
||||||
Windows = "window",
|
Windows = "window",
|
||||||
|
|
Loading…
Reference in a new issue