Merge pull request #4180 from matrix-org/bwindels/toastwithoutxsign

Use crypto.verification.request even when xsign is disabled
pull/21833/head
Bruno Windels 2020-03-06 16:47:17 +00:00 committed by GitHub
commit 4fd1d8a5e7
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 20 additions and 17 deletions

View File

@ -1495,26 +1495,29 @@ export default createReactClass({
} }
}); });
if (SettingsStore.isFeatureEnabled("feature_cross_signing")) { cli.on("crypto.verification.request", request => {
cli.on("crypto.verification.request", request => { const isFlagOn = SettingsStore.isFeatureEnabled("feature_cross_signing");
if (request.pending) {
ToastStore.sharedInstance().addOrReplaceToast({ if (!isFlagOn && !request.channel.deviceId) {
key: 'verifreq_' + request.channel.transactionId, request.cancel({code: "m.invalid_message", reason: "This client has cross-signing disabled"});
title: _t("Verification Request"), return;
icon: "verification", }
props: {request},
component: sdk.getComponent("toasts.VerificationRequestToast"), if (request.verifier) {
});
}
});
} else {
cli.on("crypto.verification.start", (verifier) => {
const IncomingSasDialog = sdk.getComponent("views.dialogs.IncomingSasDialog"); const IncomingSasDialog = sdk.getComponent("views.dialogs.IncomingSasDialog");
Modal.createTrackedDialog('Incoming Verification', '', IncomingSasDialog, { Modal.createTrackedDialog('Incoming Verification', '', IncomingSasDialog, {
verifier, verifier: request.verifier,
}, null, /* priority = */ false, /* static = */ true); }, null, /* priority = */ false, /* static = */ true);
}); } else if (request.pending) {
} ToastStore.sharedInstance().addOrReplaceToast({
key: 'verifreq_' + request.channel.transactionId,
title: _t("Verification Request"),
icon: "verification",
props: {request},
component: sdk.getComponent("toasts.VerificationRequestToast"),
});
}
});
// Fire the tinter right on startup to ensure the default theme is applied // Fire the tinter right on startup to ensure the default theme is applied
// A later sync can/will correct the tint to be the right value for the user // A later sync can/will correct the tint to be the right value for the user
const colorScheme = SettingsStore.getValue("roomColor"); const colorScheme = SettingsStore.getValue("roomColor");