Moved isConversationTooBigToRing to the SmartCallManager
This commit is contained in:
parent
1e282ee5d0
commit
cdb779508b
3 changed files with 32 additions and 21 deletions
|
@ -116,6 +116,7 @@ const createProps = (storyProps: Partial<PropsType> = {}): PropsType => ({
|
|||
),
|
||||
toggleSettings: action('toggle-settings'),
|
||||
toggleSpeakerView: action('toggle-speaker-view'),
|
||||
isConversationTooBigToRing: false,
|
||||
});
|
||||
|
||||
export default {
|
||||
|
|
|
@ -41,7 +41,6 @@ import type {
|
|||
} from '../state/ducks/calling';
|
||||
import type { LocalizerType, ThemeType } from '../types/Util';
|
||||
import { missingCaseError } from '../util/missingCaseError';
|
||||
import { isConversationTooBigToRing } from '../conversations/isConversationTooBigToRing';
|
||||
|
||||
const GROUP_CALL_RING_DURATION = 60 * 1000;
|
||||
|
||||
|
@ -100,6 +99,7 @@ export type PropsType = {
|
|||
toggleScreenRecordingPermissionsDialog: () => unknown;
|
||||
toggleSettings: () => void;
|
||||
toggleSpeakerView: () => void;
|
||||
isConversationTooBigToRing: boolean;
|
||||
};
|
||||
|
||||
type ActiveCallManagerPropsType = PropsType & {
|
||||
|
@ -455,10 +455,13 @@ export function CallManager(props: PropsType): JSX.Element | null {
|
|||
function getShouldRing({
|
||||
activeCall,
|
||||
incomingCall,
|
||||
}: Readonly<Pick<PropsType, 'activeCall' | 'incomingCall'>>): boolean {
|
||||
isConversationTooBigToRing,
|
||||
}: Readonly<
|
||||
Pick<PropsType, 'activeCall' | 'incomingCall' | 'isConversationTooBigToRing'>
|
||||
>): boolean {
|
||||
if (incomingCall) {
|
||||
// don't ring a large group
|
||||
if (isConversationTooBigToRing(incomingCall.conversation)) {
|
||||
if (isConversationTooBigToRing) {
|
||||
return false;
|
||||
}
|
||||
|
||||
|
|
|
@ -318,24 +318,31 @@ const mapStateToIncomingCallProp = (state: StateType) => {
|
|||
}
|
||||
};
|
||||
|
||||
const mapStateToProps = (state: StateType) => ({
|
||||
activeCall: mapStateToActiveCallProp(state),
|
||||
bounceAppIconStart,
|
||||
bounceAppIconStop,
|
||||
availableCameras: state.calling.availableCameras,
|
||||
getGroupCallVideoFrameSource,
|
||||
getPreferredBadge: getPreferredBadgeSelector(state),
|
||||
i18n: getIntl(state),
|
||||
isGroupCallOutboundRingEnabled: isGroupCallOutboundRingEnabled(),
|
||||
incomingCall: mapStateToIncomingCallProp(state),
|
||||
me: getMe(state),
|
||||
notifyForCall,
|
||||
playRingtone,
|
||||
stopRingtone,
|
||||
renderDeviceSelection,
|
||||
renderSafetyNumberViewer,
|
||||
theme: getTheme(state),
|
||||
});
|
||||
const mapStateToProps = (state: StateType) => {
|
||||
const incomingCall = mapStateToIncomingCallProp(state);
|
||||
|
||||
return {
|
||||
activeCall: mapStateToActiveCallProp(state),
|
||||
bounceAppIconStart,
|
||||
bounceAppIconStop,
|
||||
availableCameras: state.calling.availableCameras,
|
||||
getGroupCallVideoFrameSource,
|
||||
getPreferredBadge: getPreferredBadgeSelector(state),
|
||||
i18n: getIntl(state),
|
||||
isGroupCallOutboundRingEnabled: isGroupCallOutboundRingEnabled(),
|
||||
incomingCall,
|
||||
me: getMe(state),
|
||||
notifyForCall,
|
||||
playRingtone,
|
||||
stopRingtone,
|
||||
renderDeviceSelection,
|
||||
renderSafetyNumberViewer,
|
||||
theme: getTheme(state),
|
||||
isConversationTooBigToRing: incomingCall
|
||||
? isConversationTooBigToRing(incomingCall.conversation)
|
||||
: false,
|
||||
};
|
||||
};
|
||||
|
||||
const smart = connect(mapStateToProps, mapDispatchToProps);
|
||||
|
||||
|
|
Loading…
Reference in a new issue