bigbluebutton-Github/bigbluebutton-html5/imports/ui/components/actions-bar/screenshare/container.jsx

43 lines
1.2 KiB
React
Raw Normal View History

import React from 'react';
import { withTracker } from 'meteor/react-meteor-data';
import ScreenshareButton from './component';
2022-02-07 21:22:52 +08:00
import { isScreenSharingEnabled } from '/imports/ui/services/features';
import {
isScreenBroadcasting,
dataSavingSetting,
useIsSharing,
useSharingContentType,
} from '/imports/ui/components/screenshare/service';
2021-08-09 22:24:02 +08:00
const ScreenshareButtonContainer = (props) => <ScreenshareButton {...props} />;
/*
* All props, including the ones that are inherited from actions-bar
* isScreenBroadcasting,
* amIPresenter,
* screenSharingCheck,
* isMeteorConnected,
* screenshareDataSavingSetting,
*/
const ScreenshareButtonContainerTracker = withTracker(({ isSharing, sharingContentType }) => ({
isScreenBroadcasting: isScreenBroadcasting(isSharing, sharingContentType),
screenshareDataSavingSetting: dataSavingSetting(),
2022-02-07 21:22:52 +08:00
enabled: isScreenSharingEnabled(),
}))(ScreenshareButtonContainer);
// TODO: Remove this
// Temporary component until we remove all trackers
export default (props) => {
const isSharing = useIsSharing();
const sharingContentType = useSharingContentType();
return (
<ScreenshareButtonContainerTracker
{...{
...props,
isSharing,
sharingContentType,
}}
/>
);
};