Vary resume link text
Use 'Switch' if unholding that call would hold another
This commit is contained in:
parent
f63572f02b
commit
7cc00faeb3
3 changed files with 17 additions and 2 deletions
|
@ -616,6 +616,18 @@ export default class CallHandler {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @returns true if we are currently in anu call where we haven't put the remote party on hold
|
||||||
|
*/
|
||||||
|
hasAnyUnheldCall() {
|
||||||
|
for (const call of this.calls.values()) {
|
||||||
|
if (call.state === CallState.Ended) continue;
|
||||||
|
if (!call.isRemoteOnHold()) return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
private async startCallApp(roomId: string, type: string) {
|
private async startCallApp(roomId: string, type: string) {
|
||||||
dis.dispatch({
|
dis.dispatch({
|
||||||
action: 'appsDrawer',
|
action: 'appsDrawer',
|
||||||
|
|
|
@ -19,7 +19,7 @@ import React, { createRef, CSSProperties, ReactNode } from 'react';
|
||||||
import dis from '../../../dispatcher/dispatcher';
|
import dis from '../../../dispatcher/dispatcher';
|
||||||
import CallHandler from '../../../CallHandler';
|
import CallHandler from '../../../CallHandler';
|
||||||
import {MatrixClientPeg} from '../../../MatrixClientPeg';
|
import {MatrixClientPeg} from '../../../MatrixClientPeg';
|
||||||
import { _t } from '../../../languageHandler';
|
import { _t, _td } from '../../../languageHandler';
|
||||||
import VideoFeed, { VideoFeedType } from "./VideoFeed";
|
import VideoFeed, { VideoFeedType } from "./VideoFeed";
|
||||||
import RoomAvatar from "../avatars/RoomAvatar";
|
import RoomAvatar from "../avatars/RoomAvatar";
|
||||||
import { CallState, CallType, MatrixCall } from 'matrix-js-sdk/src/webrtc/call';
|
import { CallState, CallType, MatrixCall } from 'matrix-js-sdk/src/webrtc/call';
|
||||||
|
@ -423,7 +423,9 @@ export default class CallView extends React.Component<IProps, IState> {
|
||||||
const isOnHold = this.state.isLocalOnHold || this.state.isRemoteOnHold;
|
const isOnHold = this.state.isLocalOnHold || this.state.isRemoteOnHold;
|
||||||
let onHoldText = null;
|
let onHoldText = null;
|
||||||
if (this.state.isRemoteOnHold) {
|
if (this.state.isRemoteOnHold) {
|
||||||
onHoldText = _t("You held the call <a>Resume</a>", {}, {
|
const holdString = CallHandler.sharedInstance().hasAnyUnheldCall() ?
|
||||||
|
_td("You held the call <a>Switch</a>") : _td("You held the call <a>Resume</a>");
|
||||||
|
onHoldText = _t(holdString, {}, {
|
||||||
a: sub => <AccessibleButton kind="link" onClick={this.onCallResumeClick}>
|
a: sub => <AccessibleButton kind="link" onClick={this.onCallResumeClick}>
|
||||||
{sub}
|
{sub}
|
||||||
</AccessibleButton>,
|
</AccessibleButton>,
|
||||||
|
|
|
@ -851,6 +851,7 @@
|
||||||
"sends fireworks": "sends fireworks",
|
"sends fireworks": "sends fireworks",
|
||||||
"Sends the given message with snowfall": "Sends the given message with snowfall",
|
"Sends the given message with snowfall": "Sends the given message with snowfall",
|
||||||
"sends snowfall": "sends snowfall",
|
"sends snowfall": "sends snowfall",
|
||||||
|
"You held the call <a>Switch</a>": "You held the call <a>Switch</a>",
|
||||||
"You held the call <a>Resume</a>": "You held the call <a>Resume</a>",
|
"You held the call <a>Resume</a>": "You held the call <a>Resume</a>",
|
||||||
"%(peerName)s held the call": "%(peerName)s held the call",
|
"%(peerName)s held the call": "%(peerName)s held the call",
|
||||||
"Video Call": "Video Call",
|
"Video Call": "Video Call",
|
||||||
|
|
Loading…
Reference in a new issue