Merge branch 'develop' into travis/update-qr-code

This commit is contained in:
Travis Ralston 2020-01-29 15:11:42 +00:00
commit 1abfb8f06a
3 changed files with 15 additions and 6 deletions

View file

@ -32,6 +32,13 @@ export default class ViewSourceEvent extends React.PureComponent {
}; };
} }
componentDidMount() {
const {mxEvent} = this.props;
if (mxEvent.isBeingDecrypted()) {
mxEvent.once("Event.decrypted", () => this.forceUpdate());
}
}
onToggle = (ev) => { onToggle = (ev) => {
ev.preventDefault(); ev.preventDefault();
const { expanded } = this.state; const { expanded } = this.state;

View file

@ -218,8 +218,10 @@ export default class VerificationPanel extends React.PureComponent {
_onRequestChange = async () => { _onRequestChange = async () => {
const {request} = this.props; const {request} = this.props;
if (!this._hasVerifier && !!request.verifier) { const hadVerifier = this._hasVerifier;
request.verifier.on('show_sas', this._onVerifierShowSas); this._hasVerifier = !!request.verifier;
if (!hadVerifier && this._hasVerifier) {
request.verifier.once('show_sas', this._onVerifierShowSas);
try { try {
// on the requester side, this is also awaited in _startSAS, // on the requester side, this is also awaited in _startSAS,
// but that's ok as verify should return the same promise. // but that's ok as verify should return the same promise.
@ -227,10 +229,7 @@ export default class VerificationPanel extends React.PureComponent {
} catch (err) { } catch (err) {
console.error("error verify", err); console.error("error verify", err);
} }
} else if (this._hasVerifier && !request.verifier) {
request.verifier.removeListener('show_sas', this._onVerifierShowSas);
} }
this._hasVerifier = !!request.verifier;
}; };
componentDidMount() { componentDidMount() {

View file

@ -56,7 +56,10 @@ export default class VerificationRequestToast extends React.PureComponent {
_checkRequestIsPending = () => { _checkRequestIsPending = () => {
const {request} = this.props; const {request} = this.props;
if (request.ready || request.started || request.done || request.cancelled || request.observeOnly) { const isPendingInRoomRequest = request.channel.roomId &&
!(request.ready || request.started || request.done || request.cancelled || request.observeOnly);
const isPendingDeviceRequest = request.channel.deviceId && request.started;
if (!isPendingInRoomRequest && !isPendingDeviceRequest) {
ToastStore.sharedInstance().dismissToast(this.props.toastKey); ToastStore.sharedInstance().dismissToast(this.props.toastKey);
} }
}; };