{_t(
- "Secret Storage will be set up using your existing key backup details." +
+ "Secret Storage will be set up using your existing key backup details. " +
"Your secret storage passphrase and recovery key will be the same as " +
" they were for your key backup",
)}
@@ -527,6 +552,8 @@ export default class CreateSecretStorageDialog extends React.PureComponent {
_titleForPhase(phase) {
switch (phase) {
+ case PHASE_RESTORE_KEY_BACKUP:
+ return _t('Restore Your Key Backup');
case PHASE_MIGRATE:
return _t('Migrate from Key Backup');
case PHASE_PASSPHRASE:
@@ -569,6 +596,9 @@ export default class CreateSecretStorageDialog extends React.PureComponent {
case PHASE_LOADING:
content = this._renderBusyPhase();
break;
+ case PHASE_RESTORE_KEY_BACKUP:
+ content = this._renderPhaseRestoreKeyBackup();
+ break;
case PHASE_MIGRATE:
content = this._renderPhaseMigrate();
break;
diff --git a/src/i18n/strings/en_EN.json b/src/i18n/strings/en_EN.json
index b34b737891..3624a7c743 100644
--- a/src/i18n/strings/en_EN.json
+++ b/src/i18n/strings/en_EN.json
@@ -1933,7 +1933,8 @@
"The export file will be protected with a passphrase. You should enter the passphrase here, to decrypt the file.": "The export file will be protected with a passphrase. You should enter the passphrase here, to decrypt the file.",
"File to import": "File to import",
"Import": "Import",
- "Secret Storage will be set up using your existing key backup details.Your secret storage passphrase and recovery key will be the same as they were for your key backup": "Secret Storage will be set up using your existing key backup details.Your secret storage passphrase and recovery key will be the same as they were for your key backup",
+ "Key Backup is enabled on your account but has not been set up from this sign-in. To set up secret storage, restore your key backup.": "Key Backup is enabled on your account but has not been set up from this sign-in. To set up secret storage, restore your key backup.",
+ "Secret Storage will be set up using your existing key backup details. Your secret storage passphrase and recovery key will be the same as they were for your key backup": "Secret Storage will be set up using your existing key backup details. Your secret storage passphrase and recovery key will be the same as they were for your key backup",
"Great! This passphrase looks strong enough.": "Great! This passphrase looks strong enough.",
"
Warning: You should only set up secret storage from a trusted computer.": "
Warning: You should only set up secret storage from a trusted computer.",
"We'll use secret storage to optionally store an encrypted copy of your cross-signing identity for verifying other devices and message keys on our server. Protect your access to encrypted messages with a passphrase to keep it secure.": "We'll use secret storage to optionally store an encrypted copy of your cross-signing identity for verifying other devices and message keys on our server. Protect your access to encrypted messages with a passphrase to keep it secure.",
@@ -1960,6 +1961,7 @@
"Your access to encrypted messages is now protected.": "Your access to encrypted messages is now protected.",
"Without setting up secret storage, you won't be able to restore your access to encrypted messages or your cross-signing identity for verifying other devices if you log out or use another device.": "Without setting up secret storage, you won't be able to restore your access to encrypted messages or your cross-signing identity for verifying other devices if you log out or use another device.",
"Set up secret storage": "Set up secret storage",
+ "Restore Your Key Backup": "Restore Your Key Backup",
"Migrate from Key Backup": "Migrate from Key Backup",
"Secure your encrypted messages with a passphrase": "Secure your encrypted messages with a passphrase",
"Confirm your passphrase": "Confirm your passphrase",
From 8a2efd77ed925d10846d86922854624915b8414c Mon Sep 17 00:00:00 2001
From: Osoitz
Date: Thu, 9 Jan 2020 20:18:03 +0000
Subject: [PATCH 48/93] Translated using Weblate (Basque)
Currently translated at 100.0% (1998 of 1998 strings)
Translation: Riot Web/matrix-react-sdk
Translate-URL: https://translate.riot.im/projects/riot-web/matrix-react-sdk/eu/
---
src/i18n/strings/eu.json | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/src/i18n/strings/eu.json b/src/i18n/strings/eu.json
index e0e667ecce..ac30ab6534 100644
--- a/src/i18n/strings/eu.json
+++ b/src/i18n/strings/eu.json
@@ -2032,5 +2032,6 @@
"Recent Conversations": "Azken elkarrizketak",
"Direct Messages": "Mezu zuzenak",
"If you can't find someone, ask them for their username, or share your username (%(userId)s) or profile link.": "Ez baduzu baten bat aurkitzen, eska egiezu bere erabiltzaile-izena, edo eman egiezu zurea (%(userId)s) edo profilera esteka.",
- "Go": "Joan"
+ "Go": "Joan",
+ "Suggestions": "Proposamenak"
}
From 5b1246324efb25a22f23f094b6d149b13a31b842 Mon Sep 17 00:00:00 2001
From: catborise
Date: Thu, 9 Jan 2020 19:58:09 +0000
Subject: [PATCH 49/93] Translated using Weblate (Turkish)
Currently translated at 58.2% (1162 of 1998 strings)
Translation: Riot Web/matrix-react-sdk
Translate-URL: https://translate.riot.im/projects/riot-web/matrix-react-sdk/tr/
---
src/i18n/strings/tr.json | 51 +++++++++++++++++++++++++++++++++++++++-
1 file changed, 50 insertions(+), 1 deletion(-)
diff --git a/src/i18n/strings/tr.json b/src/i18n/strings/tr.json
index 495b882104..8e9c2c35bf 100644
--- a/src/i18n/strings/tr.json
+++ b/src/i18n/strings/tr.json
@@ -1125,5 +1125,54 @@
"Upgrade the room": "Odayı güncelle",
"Enable room encryption": "Oda şifrelemeyi aç",
"Modify widgets": "Görsel bileşenleri düzenle",
- "Banned by %(displayName)s": "%(displayName)s tarafından yasaklandı"
+ "Banned by %(displayName)s": "%(displayName)s tarafından yasaklandı",
+ "Default role": "Varsayılan rol",
+ "Send messages": "Mesajları gönder",
+ "Invite users": "Kullanıcıları davet et",
+ "Change settings": "Ayarları değiştir",
+ "Kick users": "Kullanıcıları at",
+ "Ban users": "Kullanıcıları yasakla",
+ "Remove messages": "Mesajları sil",
+ "Notify everyone": "Herkesi bilgilendir",
+ "Muted Users": "Sessizdeki Kullanıcılar",
+ "Roles & Permissions": "Roller & İzinler",
+ "Enable encryption?": "Şifrelemeyi aç?",
+ "Members only (since they were invited)": "Sadece üyeler (davet edildiklerinden beri)",
+ "Members only (since they joined)": "Sadece üyeler (katıldıklarından beri)",
+ "Encryption": "Şifreleme",
+ "Once enabled, encryption cannot be disabled.": "Açıldıktan donra şifreleme kapatılamaz.",
+ "Encrypted": "Şifrelenmiş",
+ "Unable to share email address": "E-posta adresi paylaşılamıyor",
+ "Your email address hasn't been verified yet": "E-posta adresiniz henüz doğrulanmadı",
+ "Verify the link in your inbox": "Gelen kutunuzdaki linki doğrulayın",
+ "Share": "Paylaş",
+ "Unable to share phone number": "Telefon numarası paylaşılamıyor",
+ "Unable to verify phone number.": "Telefon numarası doğrulanamıyor.",
+ "Please enter verification code sent via text.": "Lütfen mesajla gönderilen doğrulama kodunu girin.",
+ "Verification code": "Doğrulama kodu",
+ "Remove %(email)s?": "%(email)s sil?",
+ "Email Address": "E-posta Adresi",
+ "Remove %(phone)s?": "%(phone)s sil?",
+ "Phone Number": "Telefon Numarası",
+ "Cannot add any more widgets": "Daha fazla görsel bileşen eklenemiyor",
+ "The maximum permitted number of widgets have already been added to this room.": "İzin verilen maksimum sayıda görsel bileşen bu odaya zaten eklenmiş.",
+ "Add a widget": "Bir görsel bileşen ekle",
+ "Some devices for this user are not trusted": "Bu kullanıcının bazı cihazları güvenilir değil",
+ "All devices for this user are trusted": "Bu kullanıcının tüm cihazları güvenilir",
+ "Some devices in this encrypted room are not trusted": "Bu şifrelenmiş odada bazı cihazlar şifrelenmemiş",
+ "All devices in this encrypted room are trusted": "Bu şifrelenmiş odadaki tüm cihazlar güvenilir",
+ "Edit message": "Mesajı düzenle",
+ "%(senderName)s sent an image": "%(senderName)s bir resim gönderdi",
+ "%(senderName)s sent a video": "%(senderName)s bir video gönderdi",
+ "%(senderName)s uploaded a file": "%(senderName)s bir dosya yükledi",
+ "Key request sent.": "Anahtar isteği gönderildi.",
+ "This message cannot be decrypted": "Bu mesajın şifresi çözülemedi",
+ "Unencrypted": "Şifrelenmemiş",
+ "Close preview": "Önizlemeyi kapat",
+ "Disinvite this user?": "Bu kullanıcı davetini geri çek?",
+ "Kick this user?": "Bu kullanıcıyı kov?",
+ "Unban this user?": "Bu kullanıcının yasağını kaldır?",
+ "Ban this user?": "Bu kullanıcıyı yasakla?",
+ "Remove %(count)s messages|other": "%(count)s mesajı sil",
+ "Remove %(count)s messages|one": "1 mesajı sil"
}
From 6cf5b3f1a23774e4946875efeb8d7e62265e7cfb Mon Sep 17 00:00:00 2001
From: Aaron Raimist
Date: Thu, 9 Jan 2020 21:56:17 -0600
Subject: [PATCH 50/93] =?UTF-8?q?Emoji=20verification:=20Change=20name=20o?=
=?UTF-8?q?f=20=F0=9F=94=92=20to=20lock?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Signed-off-by: Aaron Raimist
---
src/components/views/verification/VerificationShowSas.js | 2 +-
src/i18n/strings/en_EN.json | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/components/views/verification/VerificationShowSas.js b/src/components/views/verification/VerificationShowSas.js
index e7846a0199..ca2eab3e17 100644
--- a/src/components/views/verification/VerificationShowSas.js
+++ b/src/components/views/verification/VerificationShowSas.js
@@ -140,7 +140,7 @@ _td("Book");
_td("Pencil");
_td("Paperclip");
_td("Scissors");
-_td("Padlock");
+_td("Lock");
_td("Key");
_td("Hammer");
_td("Telephone");
diff --git a/src/i18n/strings/en_EN.json b/src/i18n/strings/en_EN.json
index 4311733b51..cce86878c2 100644
--- a/src/i18n/strings/en_EN.json
+++ b/src/i18n/strings/en_EN.json
@@ -480,7 +480,7 @@
"Pencil": "Pencil",
"Paperclip": "Paperclip",
"Scissors": "Scissors",
- "Padlock": "Padlock",
+ "Lock": "Lock",
"Key": "Key",
"Hammer": "Hammer",
"Telephone": "Telephone",
From 63942d5200d5cf2103a9ae3114d581bfd607dc47 Mon Sep 17 00:00:00 2001
From: David Baker
Date: Fri, 10 Jan 2020 11:12:52 +0000
Subject: [PATCH 51/93] Fix listener leak on RoomView
It looks like this was causing entire detached DOM trees to leak
in memory by react's internal fibers holding onto them from the
component.
---
src/components/structures/RoomView.js | 1 +
1 file changed, 1 insertion(+)
diff --git a/src/components/structures/RoomView.js b/src/components/structures/RoomView.js
index c552e2f8f5..a717f485f0 100644
--- a/src/components/structures/RoomView.js
+++ b/src/components/structures/RoomView.js
@@ -485,6 +485,7 @@ module.exports = createReactClass({
MatrixClientPeg.get().removeListener("Room.timeline", this.onRoomTimeline);
MatrixClientPeg.get().removeListener("Room.name", this.onRoomName);
MatrixClientPeg.get().removeListener("Room.accountData", this.onRoomAccountData);
+ MatrixClientPeg.get().removeListener("RoomState.events", this.onRoomStateEvents);
MatrixClientPeg.get().removeListener("Room.myMembership", this.onMyMembership);
MatrixClientPeg.get().removeListener("RoomState.members", this.onRoomStateMember);
MatrixClientPeg.get().removeListener("accountData", this.onAccountData);
From 8f292eb6a45b12019f253cf8f2c0e57dce33c1ea Mon Sep 17 00:00:00 2001
From: Jeff Huang
Date: Fri, 10 Jan 2020 03:05:44 +0000
Subject: [PATCH 52/93] Translated using Weblate (Chinese (Traditional))
Currently translated at 100.0% (2000 of 2000 strings)
Translation: Riot Web/matrix-react-sdk
Translate-URL: https://translate.riot.im/projects/riot-web/matrix-react-sdk/zh_Hant/
---
src/i18n/strings/zh_Hant.json | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/src/i18n/strings/zh_Hant.json b/src/i18n/strings/zh_Hant.json
index d58f37b37a..9401bb4a65 100644
--- a/src/i18n/strings/zh_Hant.json
+++ b/src/i18n/strings/zh_Hant.json
@@ -2034,5 +2034,7 @@
"Connected via %(protocolName)s": "透過 %(protocolName)s 連線",
"Bridge Info": "橋接資訊",
"Below is a list of bridges connected to this room.": "以下是連線到此聊天室的橋接列表。",
- "Suggestions": "建議"
+ "Suggestions": "建議",
+ "Failed to find the following users": "找不到以下使用者",
+ "The following users might not exist or are invalid, and cannot be invited: %(csvNames)s": "以下使用者可能不存在或無效,且無法被邀請:%(csvNames)s"
}
From a02ecca775201995b7ee90a4f2e76a0a6fe38725 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?K=C3=A9vin=20C?=
Date: Fri, 10 Jan 2020 06:44:11 +0000
Subject: [PATCH 53/93] Translated using Weblate (French)
Currently translated at 100.0% (2000 of 2000 strings)
Translation: Riot Web/matrix-react-sdk
Translate-URL: https://translate.riot.im/projects/riot-web/matrix-react-sdk/fr/
---
src/i18n/strings/fr.json | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/src/i18n/strings/fr.json b/src/i18n/strings/fr.json
index 7261f62f3a..d526c53430 100644
--- a/src/i18n/strings/fr.json
+++ b/src/i18n/strings/fr.json
@@ -2034,5 +2034,7 @@
"Connected via %(protocolName)s": "Connecté via %(protocolName)s",
"Bridge Info": "Informations de la passerelle",
"Below is a list of bridges connected to this room.": "Vous trouverez ci-dessous la liste des passerelles connectées à ce salon.",
- "Suggestions": "Suggestions"
+ "Suggestions": "Suggestions",
+ "Failed to find the following users": "Impossible de trouver les utilisateurs suivants",
+ "The following users might not exist or are invalid, and cannot be invited: %(csvNames)s": "Les utilisateurs suivant n’existent peut-être pas ou ne sont pas valides, et ne peuvent pas être invités : %(csvNames)s"
}
From abf4a88c662f73dab291f2d3db5294b93ebd4e2d Mon Sep 17 00:00:00 2001
From: Szimszon
Date: Fri, 10 Jan 2020 08:43:51 +0000
Subject: [PATCH 54/93] Translated using Weblate (Hungarian)
Currently translated at 100.0% (2000 of 2000 strings)
Translation: Riot Web/matrix-react-sdk
Translate-URL: https://translate.riot.im/projects/riot-web/matrix-react-sdk/hu/
---
src/i18n/strings/hu.json | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/src/i18n/strings/hu.json b/src/i18n/strings/hu.json
index 10da7537a9..68af34ae2d 100644
--- a/src/i18n/strings/hu.json
+++ b/src/i18n/strings/hu.json
@@ -2035,5 +2035,7 @@
"Connected via %(protocolName)s": "Ezzel a protokollal csatlakozva: %(protocolName)s",
"Bridge Info": "Híd információ",
"Below is a list of bridges connected to this room.": "Alább látható a lista a szobához kapcsolódó hidakról.",
- "Suggestions": "Javaslatok"
+ "Suggestions": "Javaslatok",
+ "Failed to find the following users": "Az alábbi felhasználók nem találhatók",
+ "The following users might not exist or are invalid, and cannot be invited: %(csvNames)s": "Az alábbi felhasználók nem léteznek vagy hibásan vannak megadva és nem lehet őket meghívni: %(csvNames)s"
}
From 7f116c1bede5d943adebb13b000f001cacd26ab7 Mon Sep 17 00:00:00 2001
From: MamasLT
Date: Thu, 9 Jan 2020 22:03:28 +0000
Subject: [PATCH 55/93] Translated using Weblate (Lithuanian)
Currently translated at 47.2% (944 of 2000 strings)
Translation: Riot Web/matrix-react-sdk
Translate-URL: https://translate.riot.im/projects/riot-web/matrix-react-sdk/lt/
---
src/i18n/strings/lt.json | 50 ++++++++++++++++++++++++++++++++++------
1 file changed, 43 insertions(+), 7 deletions(-)
diff --git a/src/i18n/strings/lt.json b/src/i18n/strings/lt.json
index e8e62922af..71b46d67f3 100644
--- a/src/i18n/strings/lt.json
+++ b/src/i18n/strings/lt.json
@@ -59,7 +59,7 @@
"You have successfully set a password!": "Jūs sėkmingai įrašėte slaptažodį!",
"Favourite": "Svarbūs",
"All Rooms": "Visi pokalbių kambariai",
- "Explore Room State": "Peržiūrėti pokalbių kambario būseną",
+ "Explore Room State": "Peržiūrėti kambario būseną",
"Source URL": "Šaltinio URL adresas",
"Messages sent by bot": "Roboto siunčiamos žinutės",
"Cancel": "Atšaukti",
@@ -303,7 +303,7 @@
"Failed to mute user": "Nepavyko nutildyti naudotoją",
"Are you sure?": "Ar tikrai?",
"Devices": "Įrenginiai",
- "Ignore": "Nepaisyti",
+ "Ignore": "Ignoruoti",
"Invite": "Pakviesti",
"User Options": "Naudotojo parametrai",
"Admin Tools": "Administratoriaus įrankiai",
@@ -332,7 +332,7 @@
"Settings": "Nustatymai",
"Community Invites": "Bendruomenės pakvietimai",
"People": "Žmonės",
- "%(roomName)s does not exist.": "%(roomName)s nėra.",
+ "%(roomName)s does not exist.": "%(roomName)s neegzistuoja.",
"%(roomName)s is not accessible at this time.": "%(roomName)s šiuo metu nėra pasiekiamas.",
"Muted Users": "Nutildyti naudotojai",
"Click here to fix": "Spustelėkite čia, norėdami pataisyti",
@@ -568,7 +568,7 @@
"Confirm password": "Pakartokite slaptažodį",
"Demote yourself?": "Pažeminti save?",
"Demote": "Pažeminti",
- "Share Link to User": "Bendrinti nuorodą su naudotoju",
+ "Share Link to User": "Dalintis nuoroda į naudotoją",
"Direct chats": "Tiesioginiai pokalbiai",
"The conversation continues here.": "Pokalbis tęsiasi čia.",
"Jump to message": "Pereiti prie žinutės",
@@ -644,7 +644,7 @@
"Enable widget screenshots on supported widgets": "Palaikomuose valdikliuose įjungti valdiklių ekrano kopijas",
"Export E2E room keys": "Eksportuoti E2E kambario raktus",
"Last seen": "Paskutinį kartą matytas",
- "Unignore": "Nustoti nepaisyti",
+ "Unignore": "Nebeignoruoti",
"and %(count)s others...|other": "ir %(count)s kitų...",
"and %(count)s others...|one": "ir dar vienas...",
"Mention": "Paminėti",
@@ -807,7 +807,7 @@
"Whether or not you're logged in (we don't record your username)": "Nepriklausomai nuo to ar jūs prisijungę (mes neįrašome jūsų vartotojo vardo)",
"Chat with Riot Bot": "Kalbėtis su Riot botu",
"Sign In": "Prisijungti",
- "Explore rooms": "Peržiūrėti kambarius",
+ "Explore rooms": "Žvalgyti kambarius",
"Your Riot is misconfigured": "Jūsų Riot yra neteisingai sukonfigūruotas",
"Sign in to your Matrix account on %(serverName)s": "Prisijunkite prie savo paskyros %(serverName)s serveryje",
"Sign in to your Matrix account on ": "Prisijunkite prie savo paskyros serveryje",
@@ -926,5 +926,41 @@
"Group & filter rooms by custom tags (refresh to apply changes)": "Grupuoti ir filtruoti kambarius pagal pasirinktines žymas (atnaujinkite, kad pritaikytumėte pakeitimus)",
"Render simple counters in room header": "Užkrauti paprastus skaitiklius kambario antraštėje",
"Multiple integration managers": "Daugialypiai integracijų valdikliai",
- "%(name)s (%(userId)s)": "%(name)s (%(userId)s)"
+ "%(name)s (%(userId)s)": "%(name)s (%(userId)s)",
+ "Show info about bridges in room settings": "Rodyti informaciją apie tiltus kambario nustatymuose",
+ "General": "Bendrieji",
+ "Remove recent messages by %(user)s": "Pašalinti paskutines %(user)s žinutes",
+ "Jump to read receipt": "Nušokti iki perskaitytų žinučių",
+ "Remove recent messages": "Pašalinti paskutines žinutes",
+ "You can still join it because this is a public room.": "Jūs vis tiek galite prie jo prisijungti, nes tai yra viešas kambarys.",
+ "Do you want to chat with %(user)s?": "Ar jūs norite kalbėtis su %(user)s?",
+ " wants to chat": " nori kalbėtis",
+ "Start chatting": "Pradėti kalbėtis",
+ "Do you want to join %(roomName)s?": "Ar jūs norite prisijungti prie %(roomName)s?",
+ " invited you": " jus pakvietė",
+ "You're previewing %(roomName)s. Want to join it?": "Jūs peržiūrite %(roomName)s. Norite prie jo prisijungti?",
+ "%(roomName)s can't be previewed. Do you want to join it?": "%(roomName)s negali būti peržiūrėtas. Ar jūs norite prie jo prisijungti?",
+ "This room doesn't exist. Are you sure you're at the right place?": "Šis kambarys neegzistuoja. Ar jūs tikras, kad esate tinkamoje vietoje?",
+ "Create a public room": "Sukurti viešą kambarį",
+ "Make this room public": "Padaryti šį kambarį viešu",
+ "Room Settings - %(roomName)s": "Kambario nustatymai - %(roomName)s",
+ "Upgrade public room": "Atnaujinti viešą kambarį",
+ "Upload files (%(current)s of %(total)s)": "Įkelti failus (%(current)s iš %(total)s)",
+ "Upload files": "Įkelti failus",
+ "Upload all": "Įkelti visus",
+ "This file is too large to upload. The file size limit is %(limit)s but this file is %(sizeOfThisFile)s.": "Šis failas yra per didelis įkėlimui. Failų dydžio limitas yra %(limit)s, bet šis failas užima %(sizeOfThisFile)s.",
+ "These files are too large to upload. The file size limit is %(limit)s.": "Šie failai yra per dideli įkėlimui. Failų dydžio limitas yra %(limit)s.",
+ "Some files are too large to be uploaded. The file size limit is %(limit)s.": "Kai kurie failai yra per dideli įkėlimui. Failų dydžio limitas yra %(limit)s.",
+ "Upload %(count)s other files|other": "Įkelti %(count)s kitus failus",
+ "Upload %(count)s other files|one": "Įkelti %(count)s kitą failą",
+ "Cancel All": "Atšaukti visus",
+ "Upload Error": "Įkėlimo klaida",
+ "Explore": "Žvalgyti",
+ "Filter": "Filtruoti",
+ "Filter rooms…": "Filtruoti kambarius…",
+ "This room is not public. You will not be able to rejoin without an invite.": "Šis kambarys nėra viešas. Jūs negalėsite prie jo vėl prisijungti be pakvietimo.",
+ "Are you sure you want to leave the room '%(roomName)s'?": "Ar tikrai norite palikti kambarį %(roomName)s?",
+ "%(creator)s created and configured the room.": "%(creator)s sukūrė ir sukonfigūravo kambarį.",
+ "Riot failed to get the public room list.": "Riot nepavyko gauti viešų kambarių sąrašą.",
+ "General failure": "Bendras triktis"
}
From cb250c9b1024f12e260b1156f2e14efa584b5efc Mon Sep 17 00:00:00 2001
From: Zoe
Date: Fri, 10 Jan 2020 13:09:16 +0000
Subject: [PATCH 56/93] Use existing available props data to determine whether
a room is encrypted, thereby allowing a state update to properly rerender the
tile
---
src/components/views/rooms/RoomTile.js | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/components/views/rooms/RoomTile.js b/src/components/views/rooms/RoomTile.js
index b9e1abd23d..ce0375e088 100644
--- a/src/components/views/rooms/RoomTile.js
+++ b/src/components/views/rooms/RoomTile.js
@@ -303,7 +303,7 @@ module.exports = createReactClass({
'mx_RoomTile_noBadges': !badges,
'mx_RoomTile_transparent': this.props.transparent,
'mx_RoomTile_hasSubtext': subtext && !this.props.collapsed,
- 'mx_RoomTile_isEncrypted': MatrixClientPeg.get().isRoomEncrypted(this.props.room.roomId),
+ 'mx_RoomTile_isEncrypted': Boolean(this.props.room.currentState.getStateEvents("m.room.encryption", "")),
});
const avatarClasses = classNames({
From 5551b207c1b50abb52a31692d726c456a429a9e3 Mon Sep 17 00:00:00 2001
From: Zoe
Date: Fri, 10 Jan 2020 16:33:08 +0000
Subject: [PATCH 57/93] Actually, this task was about join rules, not
encryption ones. Oops.
---
res/css/views/rooms/_RoomTile.scss | 4 ++--
src/components/views/rooms/RoomTile.js | 17 +++++++++++++++--
2 files changed, 17 insertions(+), 4 deletions(-)
diff --git a/res/css/views/rooms/_RoomTile.scss b/res/css/views/rooms/_RoomTile.scss
index 5c37492383..cb1137bb2f 100644
--- a/res/css/views/rooms/_RoomTile.scss
+++ b/res/css/views/rooms/_RoomTile.scss
@@ -201,12 +201,12 @@ limitations under the License.
flex: 1;
}
-.mx_RoomTile.mx_RoomTile.mx_RoomTile_isEncrypted .mx_RoomTile_name {
+.mx_RoomTile.mx_RoomTile.mx_RoomTile_isPrivate .mx_RoomTile_name {
// Scoot the padding in a bit from 6px to make it look better
padding-left: 3px;
}
-.mx_RoomTile.mx_RoomTile_isEncrypted .mx_RoomTile_E2EIcon {
+.mx_RoomTile.mx_RoomTile_isPrivate .mx_RoomTile_PrivateIcon {
width: 12px;
height: 12px;
position: relative;
diff --git a/src/components/views/rooms/RoomTile.js b/src/components/views/rooms/RoomTile.js
index ce0375e088..35b5d2fea5 100644
--- a/src/components/views/rooms/RoomTile.js
+++ b/src/components/views/rooms/RoomTile.js
@@ -56,7 +56,10 @@ module.exports = createReactClass({
},
getInitialState: function() {
+ const { event: { content: { join_rule } } } = this.props.room.currentState.getStateEvents("m.room.join_rules", "");
+
return ({
+ join_rule,
hover: false,
badgeHover: false,
contextMenuPosition: null, // DOM bounding box, null if non-shown
@@ -104,6 +107,14 @@ module.exports = createReactClass({
});
},
+ onJoinRule: function(ev) {
+ const { event: { type, room_id } } = ev;
+ if (type !== "m.room.join_rules") return;
+ if (room_id !== this.props.room.roomId) return;
+ const { event: { content: { join_rule } } } = ev;
+ this.setState({ join_rule });
+ },
+
onAccountData: function(accountDataEvent) {
if (accountDataEvent.getType() === 'm.push_rules') {
this.setState({
@@ -143,6 +154,7 @@ module.exports = createReactClass({
const cli = MatrixClientPeg.get();
cli.on("accountData", this.onAccountData);
cli.on("Room.name", this.onRoomName);
+ cli.on("RoomState.events", this.onJoinRule);
ActiveRoomObserver.addListener(this.props.room.roomId, this._onActiveRoomChange);
this.dispatcherRef = dis.register(this.onAction);
@@ -159,6 +171,7 @@ module.exports = createReactClass({
if (cli) {
MatrixClientPeg.get().removeListener("accountData", this.onAccountData);
MatrixClientPeg.get().removeListener("Room.name", this.onRoomName);
+ cli.removeListener("RoomState.events", this.onJoinRule);
}
ActiveRoomObserver.removeListener(this.props.room.roomId, this._onActiveRoomChange);
dis.unregister(this.dispatcherRef);
@@ -303,7 +316,7 @@ module.exports = createReactClass({
'mx_RoomTile_noBadges': !badges,
'mx_RoomTile_transparent': this.props.transparent,
'mx_RoomTile_hasSubtext': subtext && !this.props.collapsed,
- 'mx_RoomTile_isEncrypted': Boolean(this.props.room.currentState.getStateEvents("m.room.encryption", "")),
+ 'mx_RoomTile_isPrivate': this.state.join_rule == "invite",
});
const avatarClasses = classNames({
@@ -429,7 +442,7 @@ module.exports = createReactClass({
{ dmIndicator }