cancel VRD at the Modal level, so clicking in the bg cancels it
							parent
							
								
									7673818400
								
							
						
					
					
						commit
						6df8157a40
					
				| 
						 | 
					@ -66,6 +66,10 @@ export default class NewSessionReviewDialog extends React.PureComponent {
 | 
				
			||||||
        Modal.createTrackedDialog('New Session Verification', 'Starting dialog', VerificationRequestDialog, {
 | 
					        Modal.createTrackedDialog('New Session Verification', 'Starting dialog', VerificationRequestDialog, {
 | 
				
			||||||
            verificationRequestPromise: requestPromise,
 | 
					            verificationRequestPromise: requestPromise,
 | 
				
			||||||
            member: cli.getUser(userId),
 | 
					            member: cli.getUser(userId),
 | 
				
			||||||
 | 
					            onFinished: async () => {
 | 
				
			||||||
 | 
					                const request = await requestPromise;
 | 
				
			||||||
 | 
					                request.cancel();
 | 
				
			||||||
 | 
					            },
 | 
				
			||||||
        });
 | 
					        });
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -25,11 +25,11 @@ export default class VerificationRequestDialog extends React.Component {
 | 
				
			||||||
        verificationRequest: PropTypes.object,
 | 
					        verificationRequest: PropTypes.object,
 | 
				
			||||||
        verificationRequestPromise: PropTypes.object,
 | 
					        verificationRequestPromise: PropTypes.object,
 | 
				
			||||||
        onFinished: PropTypes.func.isRequired,
 | 
					        onFinished: PropTypes.func.isRequired,
 | 
				
			||||||
 | 
					        member: PropTypes.string,
 | 
				
			||||||
    };
 | 
					    };
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    constructor(...args) {
 | 
					    constructor(...args) {
 | 
				
			||||||
        super(...args);
 | 
					        super(...args);
 | 
				
			||||||
        this.onFinished = this.onFinished.bind(this);
 | 
					 | 
				
			||||||
        this.state = {};
 | 
					        this.state = {};
 | 
				
			||||||
        if (this.props.verificationRequest) {
 | 
					        if (this.props.verificationRequest) {
 | 
				
			||||||
            this.state.verificationRequest = this.props.verificationRequest;
 | 
					            this.state.verificationRequest = this.props.verificationRequest;
 | 
				
			||||||
| 
						 | 
					@ -50,7 +50,7 @@ export default class VerificationRequestDialog extends React.Component {
 | 
				
			||||||
        const title = request && request.isSelfVerification ?
 | 
					        const title = request && request.isSelfVerification ?
 | 
				
			||||||
            _t("Verify other session") : _t("Verification Request");
 | 
					            _t("Verify other session") : _t("Verification Request");
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        return <BaseDialog className="mx_InfoDialog" onFinished={this.onFinished}
 | 
					        return <BaseDialog className="mx_InfoDialog" onFinished={this.props.onFinished}
 | 
				
			||||||
                contentId="mx_Dialog_content"
 | 
					                contentId="mx_Dialog_content"
 | 
				
			||||||
                title={title}
 | 
					                title={title}
 | 
				
			||||||
                hasCancel={true}
 | 
					                hasCancel={true}
 | 
				
			||||||
| 
						 | 
					@ -64,13 +64,4 @@ export default class VerificationRequestDialog extends React.Component {
 | 
				
			||||||
            />
 | 
					            />
 | 
				
			||||||
        </BaseDialog>;
 | 
					        </BaseDialog>;
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					 | 
				
			||||||
    async onFinished() {
 | 
					 | 
				
			||||||
        this.props.onFinished();
 | 
					 | 
				
			||||||
        let request = this.props.verificationRequest;
 | 
					 | 
				
			||||||
        if (!request && this.props.verificationRequestPromise) {
 | 
					 | 
				
			||||||
            request = await this.props.verificationRequestPromise;
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
        request.cancel();
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue