Skip to content
This repository has been archived by the owner on Sep 11, 2024. It is now read-only.

Remove display of key backup signatures from backup settings #11333

Merged
merged 3 commits into from
Jul 27, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 0 additions & 17 deletions res/css/views/settings/_SecureBackupPanel.pcss
Original file line number Diff line number Diff line change
Expand Up @@ -15,23 +15,6 @@ See the License for the specific language governing permissions and
limitations under the License.
*/

.mx_SecureBackupPanel_sigValid,
.mx_SecureBackupPanel_sigInvalid,
.mx_SecureBackupPanel_deviceVerified,
.mx_SecureBackupPanel_deviceNotVerified {
font-weight: bold;
}

.mx_SecureBackupPanel_sigValid,
.mx_SecureBackupPanel_deviceVerified {
color: $e2e-verified-color;
}

.mx_SecureBackupPanel_sigInvalid,
.mx_SecureBackupPanel_deviceNotVerified {
color: $e2e-warning-color;
}

.mx_SecureBackupPanel_deviceName {
font-style: italic;
}
Expand Down
100 changes: 0 additions & 100 deletions src/components/views/settings/SecureBackupPanel.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -295,105 +295,6 @@ export default class SecureBackupPanel extends React.PureComponent<{}, IState> {
);
}

let backupSigStatuses: React.ReactNode | undefined = backupSigStatus?.sigs?.map((sig, i) => {
const deviceName = sig.device ? sig.device.getDisplayName() || sig.device.deviceId : null;
const validity = (sub: string): JSX.Element => (
<span className={sig.valid ? "mx_SecureBackupPanel_sigValid" : "mx_SecureBackupPanel_sigInvalid"}>
{sub}
</span>
);
const verify = (sub: string): JSX.Element => (
<span
className={
sig.device && sig.deviceTrust?.isVerified()
? "mx_SecureBackupPanel_deviceVerified"
: "mx_SecureBackupPanel_deviceNotVerified"
}
>
{sub}
</span>
);
const device = (sub: string): JSX.Element => (
<span className="mx_SecureBackupPanel_deviceName">{deviceName}</span>
);
const fromThisDevice =
sig.device && sig.device.getFingerprint() === MatrixClientPeg.safeGet().getDeviceEd25519Key();
const fromThisUser =
sig.crossSigningId && sig.deviceId === MatrixClientPeg.safeGet().getCrossSigningId();
let sigStatus;
if (sig.valid && fromThisUser) {
sigStatus = _t(
"Backup has a <validity>valid</validity> signature from this user",
{},
{ validity },
);
} else if (!sig.valid && fromThisUser) {
sigStatus = _t(
"Backup has a <validity>invalid</validity> signature from this user",
{},
{ validity },
);
} else if (sig.crossSigningId) {
sigStatus = _t(
"Backup has a signature from <verify>unknown</verify> user with ID %(deviceId)s",
{ deviceId: sig.deviceId },
{ verify },
);
} else if (!sig.device) {
sigStatus = _t(
"Backup has a signature from <verify>unknown</verify> session with ID %(deviceId)s",
{ deviceId: sig.deviceId },
{ verify },
);
} else if (sig.valid && fromThisDevice) {
sigStatus = _t(
"Backup has a <validity>valid</validity> signature from this session",
{},
{ validity },
);
} else if (!sig.valid && fromThisDevice) {
// it can happen...
sigStatus = _t(
"Backup has an <validity>invalid</validity> signature from this session",
{},
{ validity },
);
} else if (sig.valid && sig.deviceTrust?.isVerified()) {
sigStatus = _t(
"Backup has a <validity>valid</validity> signature from " +
"<verify>verified</verify> session <device></device>",
{},
{ validity, verify, device },
);
} else if (sig.valid && !sig.deviceTrust?.isVerified()) {
sigStatus = _t(
"Backup has a <validity>valid</validity> signature from " +
"<verify>unverified</verify> session <device></device>",
{},
{ validity, verify, device },
);
} else if (!sig.valid && sig.deviceTrust?.isVerified()) {
sigStatus = _t(
"Backup has an <validity>invalid</validity> signature from " +
"<verify>verified</verify> session <device></device>",
{},
{ validity, verify, device },
);
} else if (!sig.valid && !sig.deviceTrust?.isVerified()) {
sigStatus = _t(
"Backup has an <validity>invalid</validity> signature from " +
"<verify>unverified</verify> session <device></device>",
{},
{ validity, verify, device },
);
}

return <div key={i}>{sigStatus}</div>;
});
if (!backupSigStatus?.sigs?.length) {
backupSigStatuses = _t("Backup is not signed by any of your sessions");
}

let trustedLocally: string | undefined;
if (backupSigStatus?.trusted_locally) {
trustedLocally = _t("This backup is trusted because it has been restored on this session");
Expand All @@ -415,7 +316,6 @@ export default class SecureBackupPanel extends React.PureComponent<{}, IState> {
extraDetails = (
<>
{uploadStatus}
<div>{backupSigStatuses}</div>
<div>{trustedLocally}</div>
</>
);
Expand Down
11 changes: 0 additions & 11 deletions src/i18n/strings/en_EN.json
Original file line number Diff line number Diff line change
Expand Up @@ -1472,17 +1472,6 @@
"Connect this session to Key Backup": "Connect this session to Key Backup",
"Backing up %(sessionsRemaining)s keys…": "Backing up %(sessionsRemaining)s keys…",
"All keys backed up": "All keys backed up",
"Backup has a <validity>valid</validity> signature from this user": "Backup has a <validity>valid</validity> signature from this user",
"Backup has a <validity>invalid</validity> signature from this user": "Backup has a <validity>invalid</validity> signature from this user",
"Backup has a signature from <verify>unknown</verify> user with ID %(deviceId)s": "Backup has a signature from <verify>unknown</verify> user with ID %(deviceId)s",
"Backup has a signature from <verify>unknown</verify> session with ID %(deviceId)s": "Backup has a signature from <verify>unknown</verify> session with ID %(deviceId)s",
"Backup has a <validity>valid</validity> signature from this session": "Backup has a <validity>valid</validity> signature from this session",
"Backup has an <validity>invalid</validity> signature from this session": "Backup has an <validity>invalid</validity> signature from this session",
"Backup has a <validity>valid</validity> signature from <verify>verified</verify> session <device></device>": "Backup has a <validity>valid</validity> signature from <verify>verified</verify> session <device></device>",
"Backup has a <validity>valid</validity> signature from <verify>unverified</verify> session <device></device>": "Backup has a <validity>valid</validity> signature from <verify>unverified</verify> session <device></device>",
"Backup has an <validity>invalid</validity> signature from <verify>verified</verify> session <device></device>": "Backup has an <validity>invalid</validity> signature from <verify>verified</verify> session <device></device>",
"Backup has an <validity>invalid</validity> signature from <verify>unverified</verify> session <device></device>": "Backup has an <validity>invalid</validity> signature from <verify>unverified</verify> session <device></device>",
"Backup is not signed by any of your sessions": "Backup is not signed by any of your sessions",
"This backup is trusted because it has been restored on this session": "This backup is trusted because it has been restored on this session",
"Backup version:": "Backup version:",
"Algorithm:": "Algorithm:",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -93,9 +93,6 @@ exports[`<SecureBackupPanel /> suggests connecting session to key backup when ba
</tr>
</table>

<div>
Backup is not signed by any of your sessions
</div>
<div />
</details>
<div
Expand Down
Loading