diff --git a/src/components/views/dialogs/DeviceVerifyDialog.js b/src/components/views/dialogs/DeviceVerifyDialog.js
index 4d0abdc848..d78ef3ca83 100644
--- a/src/components/views/dialogs/DeviceVerifyDialog.js
+++ b/src/components/views/dialogs/DeviceVerifyDialog.js
@@ -233,6 +233,7 @@ export default class DeviceVerifyDialog extends React.Component {
sas={this._showSasEvent.sas}
onCancel={this._onCancelClick}
onDone={this._onSasMatchesClick}
+ isSelf={MatrixClientPeg.get().getUserId() === this.props.userId}
/>;
}
diff --git a/src/components/views/dialogs/IncomingSasDialog.js b/src/components/views/dialogs/IncomingSasDialog.js
index 3bf7b83291..c612043919 100644
--- a/src/components/views/dialogs/IncomingSasDialog.js
+++ b/src/components/views/dialogs/IncomingSasDialog.js
@@ -121,6 +121,8 @@ export default class IncomingSasDialog extends React.Component {
const Spinner = sdk.getComponent("views.elements.Spinner");
const BaseAvatar = sdk.getComponent("avatars.BaseAvatar");
+ const isSelf = this.props.verifier.userId == MatrixClientPeg.get().getUserId();
+
let profile;
if (this.state.opponentProfile) {
profile =
@@ -148,20 +150,36 @@ export default class IncomingSasDialog extends React.Component {
profile =
;
}
+ const userDetailText = [
+
{_t(
+ "Verify this user to mark them as trusted. " +
+ "Trusting users gives you extra peace of mind when using " +
+ "end-to-end encrypted messages.",
+ )}
,
+
{_t(
+ // NB. Below wording adjusted to singular 'session' until we have
+ // cross-signing
+ "Verifying this user will mark their session as trusted, and " +
+ "also mark your session as trusted to them.",
+ )}
,
+ ];
+
+ const selfDetailText = [
+
{_t(
+ "Verify this device to mark it as trusted. " +
+ "Trusting this device gives you and other users extra peace of mind when using " +
+ "end-to-end encrypted messages.",
+ )}
,
+
{_t(
+ "Verifying this device will mark it as trusted, and users who have verified with " +
+ "you will trust this device.",
+ )}
,
+ ];
+
return (
{profile}
-
{_t(
- "Verify this user to mark them as trusted. " +
- "Trusting users gives you extra peace of mind when using " +
- "end-to-end encrypted messages.",
- )}
-
{_t(
- // NB. Below wording adjusted to singular 'session' until we have
- // cross-signing
- "Verifying this user will mark their session as trusted, and " +
- "also mark your session as trusted to them.",
- )}
+ {isSelf ? selfDetailText : userDetailText}
;
}
diff --git a/src/components/views/verification/VerificationShowSas.js b/src/components/views/verification/VerificationShowSas.js
index 38bc1bb40a..4d3c962385 100644
--- a/src/components/views/verification/VerificationShowSas.js
+++ b/src/components/views/verification/VerificationShowSas.js
@@ -32,6 +32,7 @@ export default class VerificationShowSas extends React.Component {
onDone: PropTypes.func.isRequired,
onCancel: PropTypes.func.isRequired,
sas: PropTypes.object.isRequired,
+ isSelf: PropTypes.bool,
};
constructor(props) {
@@ -66,9 +67,13 @@ export default class VerificationShowSas extends React.Component {
{emojiBlocks.slice(4)}
;
- sasCaption = _t(
- "Verify this user by confirming the following emoji appear on their screen.",
- );
+ sasCaption = this.props.isSelf ?
+ _t(
+ "Confirm the emoji below are displayed on both devices, in the same order:",
+ ):
+ _t(
+ "Verify this user by confirming the following emoji appear on their screen.",
+ );
} else if (this.props.sas.decimal) {
const numberBlocks = this.props.sas.decimal.map((num, i) =>
{num}
@@ -76,9 +81,13 @@ export default class VerificationShowSas extends React.Component {
sasDisplay =
{numberBlocks}
;
- sasCaption = _t(
- "Verify this user by confirming the following number appears on their screen.",
- );
+ sasCaption = this.props.isSelf ?
+ _t(
+ "Verify this device by confirming the following number appears on its screen.",
+ ):
+ _t(
+ "Verify this user by confirming the following number appears on their screen.",
+ );
} else {
return
{_t("Unable to find a supported verification method.")}
@@ -108,7 +117,9 @@ export default class VerificationShowSas extends React.Component {
return
{sasCaption}
{sasDisplay}
-
{_t("To be secure, do this in person or use a trusted way to communicate.")}
+
{this.props.isSelf ?
+ "":
+ _t("To be secure, do this in person or use a trusted way to communicate.")}
{confirm}
;
}
diff --git a/src/i18n/strings/en_EN.json b/src/i18n/strings/en_EN.json
index 6e58a76283..8901f85cb9 100644
--- a/src/i18n/strings/en_EN.json
+++ b/src/i18n/strings/en_EN.json
@@ -444,7 +444,9 @@
"You've successfully verified this user.": "You've successfully verified this user.",
"Secure messages with this user are end-to-end encrypted and not able to be read by third parties.": "Secure messages with this user are end-to-end encrypted and not able to be read by third parties.",
"Got It": "Got It",
+ "Confirm the emoji below are displayed on both devices, in the same order:": "Confirm the emoji below are displayed on both devices, in the same order:",
"Verify this user by confirming the following emoji appear on their screen.": "Verify this user by confirming the following emoji appear on their screen.",
+ "Verify this device by confirming the following number appears on its screen.": "Verify this device by confirming the following number appears on its screen.",
"Verify this user by confirming the following number appears on their screen.": "Verify this user by confirming the following number appears on their screen.",
"Unable to find a supported verification method.": "Unable to find a supported verification method.",
"Cancel": "Cancel",
@@ -1493,6 +1495,8 @@
"An error has occurred.": "An error has occurred.",
"Verify this user to mark them as trusted. Trusting users gives you extra peace of mind when using end-to-end encrypted messages.": "Verify this user to mark them as trusted. Trusting users gives you extra peace of mind when using end-to-end encrypted messages.",
"Verifying this user will mark their session as trusted, and also mark your session as trusted to them.": "Verifying this user will mark their session as trusted, and also mark your session as trusted to them.",
+ "Verify this device to mark it as trusted. Trusting this device gives you and other users extra peace of mind when using end-to-end encrypted messages.": "Verify this device to mark it as trusted. Trusting this device gives you and other users extra peace of mind when using end-to-end encrypted messages.",
+ "Verifying this device will mark it as trusted, and users who have verified with you will trust this device.": "Verifying this device will mark it as trusted, and users who have verified with you will trust this device.",
"Waiting for partner to confirm...": "Waiting for partner to confirm...",
"Incoming Verification Request": "Incoming Verification Request",
"Integrations are disabled": "Integrations are disabled",