+
{_t(
+ "Your new account (%(newAccountId)s) is registered, but you're already " +
+ "logged into a different account (%(loggedInUserId)s).", {
+ newAccountId: this.state.registeredUsername,
+ loggedInUserId: this.state.differentLoggedInUserId,
+ },
+ )}
+
+ {_t("Continue with previous account")}
+
+
;
+ } else if (this.state.formVals.password) {
// We're the client that started the registration
- regDoneText = _t(
+ regDoneText =
diff --git a/src/i18n/strings/en_EN.json b/src/i18n/strings/en_EN.json
index 69af5c9d75..606aaa951c 100644
--- a/src/i18n/strings/en_EN.json
+++ b/src/i18n/strings/en_EN.json
@@ -1254,8 +1254,8 @@
"Unknown devices": "Unknown devices",
"Upload files (%(current)s of %(total)s)": "Upload files (%(current)s of %(total)s)",
"Upload files": "Upload files",
- "Upload": "Upload",
"Upload all": "Upload all",
+ "Upload": "Upload",
"This file is
too large to upload. The file size limit is %(limit)s but this file is %(sizeOfThisFile)s.": "This file is
too large to upload. The file size limit is %(limit)s but this file is %(sizeOfThisFile)s.",
"These files are
too large to upload. The file size limit is %(limit)s.": "These files are
too large to upload. The file size limit is %(limit)s.",
"Some files are
too large to be uploaded. The file size limit is %(limit)s.": "Some files are
too large to be uploaded. The file size limit is %(limit)s.",
@@ -1456,8 +1456,6 @@
"Review terms and conditions": "Review terms and conditions",
"Old cryptography data detected": "Old cryptography data detected",
"Data from an older version of Riot has been detected. This will have caused end-to-end cryptography to malfunction in the older version. End-to-end encrypted messages exchanged recently whilst using the older version may not be decryptable in this version. This may also cause messages exchanged with this version to fail. If you experience problems, log out and back in again. To retain message history, export and re-import your keys.": "Data from an older version of Riot has been detected. This will have caused end-to-end cryptography to malfunction in the older version. End-to-end encrypted messages exchanged recently whilst using the older version may not be decryptable in this version. This may also cause messages exchanged with this version to fail. If you experience problems, log out and back in again. To retain message history, export and re-import your keys.",
- "You are logged in to another account": "You are logged in to another account",
- "Thank you for verifying your email! The account you're logged into here (%(sessionUserId)s) appears to be different from the account you've verified an email for (%(verifiedUserId)s). If you would like to log in to %(verifiedUserId2)s, please log out first.": "Thank you for verifying your email! The account you're logged into here (%(sessionUserId)s) appears to be different from the account you've verified an email for (%(verifiedUserId)s). If you would like to log in to %(verifiedUserId2)s, please log out first.",
"Logout": "Logout",
"Your Communities": "Your Communities",
"Did you know: you can use communities to filter your Riot.im experience!": "Did you know: you can use communities to filter your Riot.im experience!",
@@ -1564,6 +1562,9 @@
"Registration has been disabled on this homeserver.": "Registration has been disabled on this homeserver.",
"Unable to query for supported registration methods.": "Unable to query for supported registration methods.",
"This server does not support authentication with a phone number.": "This server does not support authentication with a phone number.",
+ "Your new account (%(newAccountId)s) is registered, but you're already logged into a different account (%(loggedInUserId)s).": "Your new account (%(newAccountId)s) is registered, but you're already logged into a different account (%(loggedInUserId)s).",
+ "Continue with previous account": "Continue with previous account",
+ "Sign out of previous account": "Sign out of previous account",
"
Log in to your new account.": "
Log in to your new account.",
"You can now close this window or
log in to your new account.": "You can now close this window or
log in to your new account.",
"Registration Successful": "Registration Successful",
From e69e9dd70532104c3220101e6cfe6cf39d7a4b87 Mon Sep 17 00:00:00 2001
From: Jeff Huang
Date: Wed, 19 Jun 2019 02:29:24 +0000
Subject: [PATCH 080/188] Translated using Weblate (Chinese (Traditional))
Currently translated at 100.0% (1660 of 1660 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 | 12 +++++++++++-
1 file changed, 11 insertions(+), 1 deletion(-)
diff --git a/src/i18n/strings/zh_Hant.json b/src/i18n/strings/zh_Hant.json
index 26b1109abd..b4b1cd1f05 100644
--- a/src/i18n/strings/zh_Hant.json
+++ b/src/i18n/strings/zh_Hant.json
@@ -1997,5 +1997,15 @@
"Log in to your new account.": "登入到您的新帳號。",
"You can now close this window or log in to your new account.": "您現在可以關閉此視窗或登入到您的新帳號了。",
"Registration Successful": "註冊成功",
- "Upload all": "上傳全部"
+ "Upload all": "上傳全部",
+ "No integrations server configured": "沒有設定好的整合伺服器",
+ "This Riot instance does not have an integrations server configured.": "這個 Riot 站台沒有設定整合伺服器。",
+ "Connecting to integrations server...": "正在連線到整合伺服器……",
+ "Cannot connect to integrations server": "無法連線到整合伺服器",
+ "The integrations server is offline or it cannot reach your homeserver.": "整合伺服器已離線或無法連線到您的家伺服器。",
+ "Unnamed microphone": "未命名的麥克風",
+ "Unnamed audio output": "未命名的音訊輸出",
+ "Unnamed camera": "未命名的攝影機",
+ "Failed to connect to integrations server": "連線到整合伺服器失敗",
+ "No integrations server is configured to manage stickers with": "未設定整合伺服器來管理貼圖"
}
From 6970552a873e425a56f136c121d19ccec3e1c65b Mon Sep 17 00:00:00 2001
From: Szimszon
Date: Tue, 18 Jun 2019 18:33:29 +0000
Subject: [PATCH 081/188] Translated using Weblate (Hungarian)
Currently translated at 100.0% (1660 of 1660 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 | 13 ++++++++++++-
1 file changed, 12 insertions(+), 1 deletion(-)
diff --git a/src/i18n/strings/hu.json b/src/i18n/strings/hu.json
index 3c9e35e75e..edae9eb6be 100644
--- a/src/i18n/strings/hu.json
+++ b/src/i18n/strings/hu.json
@@ -2001,5 +2001,16 @@
"You can log in, but some features will be unavailable until the identity server is back online. If you keep seeing this warning, check your configuration or contact a server admin.": "Beléphetsz, de néhány funkció nem lesz elérhető amíg az azonosítási szerver újra elérhető lesz. Ha ezt a figyelmeztetést folyamatosan látod, ellenőrizd a beállításokat vagy vedd fel a kapcsolatot a szerver adminisztrátorával.",
"Log in to your new account.": "Belépés az új fiókodba.",
"You can now close this window or log in to your new account.": "Ezt az ablakot bezárhatod vagy beléphetsz az új fiókodba.",
- "Registration Successful": "Regisztráció sikeres"
+ "Registration Successful": "Regisztráció sikeres",
+ "No integrations server configured": "Integrációs szerver nincs beállítva",
+ "This Riot instance does not have an integrations server configured.": "Ennek a Riot kliensnek nincs beállítva integrációs szerver.",
+ "Connecting to integrations server...": "Integrációs szerverhez csatlakozás...",
+ "Cannot connect to integrations server": "Az integrációs szerverhez nem lehet kapcsolódni",
+ "The integrations server is offline or it cannot reach your homeserver.": "Az integrációs szerver nem működik vagy nem tudja elérni a matrix szerveredet.",
+ "Unnamed microphone": "Név nélküli mikrofon",
+ "Unnamed audio output": "Név nélküli hang kimenet",
+ "Unnamed camera": "Név nélküli kamera",
+ "Failed to connect to integrations server": "Az integrációs szerverhez nem sikerült csatlakozni",
+ "No integrations server is configured to manage stickers with": "Nincs integrációs szerver konfigurálva amivel a matricákat lehetne kezelni",
+ "Upload all": "Mindet feltölt"
}
From 4ec7a8ddffe0dc417bf6616a243bc2ea5d2a8ba1 Mon Sep 17 00:00:00 2001
From: "J. Ryan Stinnett"
Date: Wed, 19 Jun 2019 11:26:11 +0100
Subject: [PATCH 082/188] Fix casing of TooltipButton
My brain can't deal with two different ways to write "Tooltip", so this
converges the naming to match the rest of the code base. Separate commits will
fix up the file names for case-insensitive file systems.
---
res/css/_components.scss | 2 +-
res/css/views/elements/_ToolTipButton.scss | 9 +++++----
src/components/structures/GroupView.js | 5 +++--
src/components/views/elements/ToolTipButton.js | 9 +++++----
src/components/views/rooms/EventTile.js | 5 +++--
5 files changed, 17 insertions(+), 13 deletions(-)
diff --git a/res/css/_components.scss b/res/css/_components.scss
index 843f314bd1..582dc59517 100644
--- a/res/css/_components.scss
+++ b/res/css/_components.scss
@@ -99,8 +99,8 @@
@import "./views/elements/_SyntaxHighlight.scss";
@import "./views/elements/_TextWithTooltip.scss";
@import "./views/elements/_ToggleSwitch.scss";
-@import "./views/elements/_ToolTipButton.scss";
@import "./views/elements/_Tooltip.scss";
+@import "./views/elements/_TooltipButton.scss";
@import "./views/elements/_Validation.scss";
@import "./views/globals/_MatrixToolbar.scss";
@import "./views/groups/_GroupPublicityToggle.scss";
diff --git a/res/css/views/elements/_ToolTipButton.scss b/res/css/views/elements/_ToolTipButton.scss
index c496e67515..6ea36c800e 100644
--- a/res/css/views/elements/_ToolTipButton.scss
+++ b/res/css/views/elements/_ToolTipButton.scss
@@ -1,5 +1,6 @@
/*
Copyright 2017 New Vector Ltd.
+Copyright 2019 The Matrix.org Foundation C.I.C.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
@@ -14,7 +15,7 @@ See the License for the specific language governing permissions and
limitations under the License.
*/
-.mx_ToolTipButton {
+.mx_TooltipButton {
display: inline-block;
width: 11px;
height: 11px;
@@ -33,17 +34,17 @@ limitations under the License.
cursor: pointer;
}
-.mx_ToolTipButton:hover {
+.mx_TooltipButton:hover {
opacity: 1.0;
}
-.mx_ToolTipButton_container {
+.mx_TooltipButton_container {
position: relative;
top: -18px;
left: 4px;
}
-.mx_ToolTipButton_helpText {
+.mx_TooltipButton_helpText {
width: 400px;
text-align: start;
line-height: 17px !important;
diff --git a/src/components/structures/GroupView.js b/src/components/structures/GroupView.js
index cdfbe26fea..7bf5400942 100644
--- a/src/components/structures/GroupView.js
+++ b/src/components/structures/GroupView.js
@@ -1,6 +1,7 @@
/*
Copyright 2017 Vector Creations Ltd.
Copyright 2017, 2018 New Vector Ltd.
+Copyright 2019 The Matrix.org Foundation C.I.C.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
@@ -861,9 +862,9 @@ export default React.createClass({
const AccessibleButton = sdk.getComponent('elements.AccessibleButton');
const TintableSvg = sdk.getComponent('elements.TintableSvg');
const Spinner = sdk.getComponent('elements.Spinner');
- const ToolTipButton = sdk.getComponent('elements.ToolTipButton');
+ const TooltipButton = sdk.getComponent('elements.TooltipButton');
- const roomsHelpNode = this.state.editing ? : ;
return (
-
+
?
{ tip }
diff --git a/src/components/views/rooms/EventTile.js b/src/components/views/rooms/EventTile.js
index 9837b4a029..7d11ddac61 100644
--- a/src/components/views/rooms/EventTile.js
+++ b/src/components/views/rooms/EventTile.js
@@ -1,6 +1,7 @@
/*
Copyright 2015, 2016 OpenMarket Ltd
Copyright 2017 New Vector Ltd
+Copyright 2019 The Matrix.org Foundation C.I.C.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
@@ -670,13 +671,13 @@ module.exports = withMatrixClient(React.createClass({
{'requestLink': (sub) =>
{ sub }},
);
- const ToolTipButton = sdk.getComponent('elements.ToolTipButton');
+ const TooltipButton = sdk.getComponent('elements.TooltipButton');
const keyRequestInfo = isEncryptionFailure ?
{ keyRequestInfoContent }
-
+
: null;
let reactionsRow;
From ab4c5f0152a27d029e88aa52204dd57059dbdaab Mon Sep 17 00:00:00 2001
From: "J. Ryan Stinnett"
Date: Wed, 19 Jun 2019 11:30:37 +0100
Subject: [PATCH 083/188] TooltipButton rename step 1 of 2
---
.../elements/{_ToolTipButton.scss => _TooltipButton.scss.tmp} | 0
.../views/elements/{ToolTipButton.js => TooltipButton.js.tmp} | 0
2 files changed, 0 insertions(+), 0 deletions(-)
rename res/css/views/elements/{_ToolTipButton.scss => _TooltipButton.scss.tmp} (100%)
rename src/components/views/elements/{ToolTipButton.js => TooltipButton.js.tmp} (100%)
diff --git a/res/css/views/elements/_ToolTipButton.scss b/res/css/views/elements/_TooltipButton.scss.tmp
similarity index 100%
rename from res/css/views/elements/_ToolTipButton.scss
rename to res/css/views/elements/_TooltipButton.scss.tmp
diff --git a/src/components/views/elements/ToolTipButton.js b/src/components/views/elements/TooltipButton.js.tmp
similarity index 100%
rename from src/components/views/elements/ToolTipButton.js
rename to src/components/views/elements/TooltipButton.js.tmp
From bb4b5d779805d1cedd3af9ed071ef5dc96c6fe0e Mon Sep 17 00:00:00 2001
From: "J. Ryan Stinnett"
Date: Wed, 19 Jun 2019 11:32:03 +0100
Subject: [PATCH 084/188] TooltipButton rename step 2 of 2
---
.../elements/{_TooltipButton.scss.tmp => _TooltipButton.scss} | 0
.../views/elements/{TooltipButton.js.tmp => TooltipButton.js} | 0
2 files changed, 0 insertions(+), 0 deletions(-)
rename res/css/views/elements/{_TooltipButton.scss.tmp => _TooltipButton.scss} (100%)
rename src/components/views/elements/{TooltipButton.js.tmp => TooltipButton.js} (100%)
diff --git a/res/css/views/elements/_TooltipButton.scss.tmp b/res/css/views/elements/_TooltipButton.scss
similarity index 100%
rename from res/css/views/elements/_TooltipButton.scss.tmp
rename to res/css/views/elements/_TooltipButton.scss
diff --git a/src/components/views/elements/TooltipButton.js.tmp b/src/components/views/elements/TooltipButton.js
similarity index 100%
rename from src/components/views/elements/TooltipButton.js.tmp
rename to src/components/views/elements/TooltipButton.js
From c57d93702a1f55328a2cc0ff17753d15dbfb4270 Mon Sep 17 00:00:00 2001
From: David Baker
Date: Wed, 19 Jun 2019 11:46:24 +0100
Subject: [PATCH 085/188] De-duplicate notif badge code
We had two different places we were deciding whether to show a badge.
Let's just have one.
---
src/RoomNotifs.js | 12 ++++++------
src/components/views/rooms/RoomTile.js | 12 ++----------
2 files changed, 8 insertions(+), 16 deletions(-)
diff --git a/src/RoomNotifs.js b/src/RoomNotifs.js
index 39384b5bea..5690817da5 100644
--- a/src/RoomNotifs.js
+++ b/src/RoomNotifs.js
@@ -26,12 +26,12 @@ export const MUTE = 'mute';
export const BADGE_STATES = [ALL_MESSAGES, ALL_MESSAGES_LOUD];
export const MENTION_BADGE_STATES = [...BADGE_STATES, MENTIONS_ONLY];
-function _shouldShowNotifBadge(roomNotifState) {
+export function shouldShowNotifBadge(roomNotifState) {
const showBadgeInStates = [ALL_MESSAGES, ALL_MESSAGES_LOUD];
return showBadgeInStates.indexOf(roomNotifState) > -1;
}
-function _shouldShowMentionBadge(roomNotifState) {
+export function shouldShowMentionBadge(roomNotifState) {
return roomNotifState !== MUTE;
}
@@ -41,8 +41,8 @@ export function aggregateNotificationCount(rooms) {
const highlight = room.getUnreadNotificationCount('highlight') > 0;
const notificationCount = room.getUnreadNotificationCount();
- const notifBadges = notificationCount > 0 && _shouldShowNotifBadge(roomNotifState);
- const mentionBadges = highlight && _shouldShowMentionBadge(roomNotifState);
+ const notifBadges = notificationCount > 0 && shouldShowNotifBadge(roomNotifState);
+ const mentionBadges = highlight && shouldShowMentionBadge(roomNotifState);
const badges = notifBadges || mentionBadges;
if (badges) {
@@ -60,8 +60,8 @@ export function getRoomHasBadge(room) {
const highlight = room.getUnreadNotificationCount('highlight') > 0;
const notificationCount = room.getUnreadNotificationCount();
- const notifBadges = notificationCount > 0 && _shouldShowNotifBadge(roomNotifState);
- const mentionBadges = highlight && _shouldShowMentionBadge(roomNotifState);
+ const notifBadges = notificationCount > 0 && shouldShowNotifBadge(roomNotifState);
+ const mentionBadges = highlight && shouldShowMentionBadge(roomNotifState);
return notifBadges || mentionBadges;
}
diff --git a/src/components/views/rooms/RoomTile.js b/src/components/views/rooms/RoomTile.js
index e1b9567ebd..c4bd2adf2c 100644
--- a/src/components/views/rooms/RoomTile.js
+++ b/src/components/views/rooms/RoomTile.js
@@ -67,14 +67,6 @@ module.exports = React.createClass({
});
},
- _shouldShowNotifBadge: function() {
- return RoomNotifs.BADGE_STATES.includes(this.state.notifState);
- },
-
- _shouldShowMentionBadge: function() {
- return RoomNotifs.MENTION_BADGE_STATES.includes(this.state.notifState);
- },
-
_isDirectMessageRoom: function(roomId) {
const dmRooms = DMRoomMap.shared().getUserIdForRoomId(roomId);
return Boolean(dmRooms);
@@ -301,8 +293,8 @@ module.exports = React.createClass({
const notificationCount = this.props.notificationCount;
// var highlightCount = this.props.room.getUnreadNotificationCount("highlight");
- const notifBadges = notificationCount > 0 && this._shouldShowNotifBadge();
- const mentionBadges = this.props.highlight && this._shouldShowMentionBadge();
+ const notifBadges = notificationCount > 0 && RoomNotifs.shouldShowNotifBadge(this.state.notifState);
+ const mentionBadges = this.props.highlight && RoomNotifs.shouldShowMentionBadge(this.state.notifState);
const badges = notifBadges || mentionBadges;
let subtext = null;
From 0e6f401b62bee23bd2a60fcae014717a7b4aac08 Mon Sep 17 00:00:00 2001
From: David Baker
Date: Wed, 19 Jun 2019 11:48:47 +0100
Subject: [PATCH 086/188] copyright
---
src/RoomNotifs.js | 1 +
src/components/views/rooms/RoomTile.js | 1 +
2 files changed, 2 insertions(+)
diff --git a/src/RoomNotifs.js b/src/RoomNotifs.js
index 5690817da5..5d3444b0f6 100644
--- a/src/RoomNotifs.js
+++ b/src/RoomNotifs.js
@@ -1,5 +1,6 @@
/*
Copyright 2016 OpenMarket Ltd
+Copyright 2019 The Matrix.org Foundation C.I.C.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
diff --git a/src/components/views/rooms/RoomTile.js b/src/components/views/rooms/RoomTile.js
index c4bd2adf2c..be73985d16 100644
--- a/src/components/views/rooms/RoomTile.js
+++ b/src/components/views/rooms/RoomTile.js
@@ -2,6 +2,7 @@
Copyright 2015, 2016 OpenMarket Ltd
Copyright 2017 New Vector Ltd
Copyright 2018 Michael Telatynski <7t3chguy@gmail.com>
+Copyright 2019 The Matrix.org Foundation C.I.C.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
From edd43a270664f548873b179c2fb211adba531392 Mon Sep 17 00:00:00 2001
From: David Baker
Date: Wed, 19 Jun 2019 12:06:32 +0100
Subject: [PATCH 087/188] Fix favicon/title badge count
This was using a separate function (in MatrixChat) that didn't
take into account whether we were supposed to be hiding the badge
for rooms so would include notifs that were hidden everywhere else.
Also make it a function & put it in RoomNotifs with all its friends.
Fixes https://github.com/vector-im/riot-web/issues/3060
---
src/RoomNotifs.js | 21 +++++++++++++++++++++
src/components/structures/MatrixChat.js | 15 ++-------------
2 files changed, 23 insertions(+), 13 deletions(-)
diff --git a/src/RoomNotifs.js b/src/RoomNotifs.js
index 39384b5bea..887a1e4699 100644
--- a/src/RoomNotifs.js
+++ b/src/RoomNotifs.js
@@ -35,6 +35,27 @@ function _shouldShowMentionBadge(roomNotifState) {
return roomNotifState !== MUTE;
}
+export function countRoomsWithNotif(rooms) {
+ return rooms.reduce((result, room, index) => {
+ const roomNotifState = getRoomNotifsState(room.roomId);
+ const highlight = room.getUnreadNotificationCount('highlight') > 0;
+ const notificationCount = room.getUnreadNotificationCount();
+
+ const notifBadges = notificationCount > 0 && _shouldShowNotifBadge(roomNotifState);
+ const mentionBadges = highlight && _shouldShowMentionBadge(roomNotifState);
+ const isInvite = room.hasMembershipState(MatrixClientPeg.get().credentials.userId, 'invite');
+ const badges = notifBadges || mentionBadges || isInvite;
+
+ if (badges) {
+ result.count++;
+ if (highlight) {
+ result.highlight = true;
+ }
+ }
+ return result;
+ }, {count: 0, highlight: false});
+}
+
export function aggregateNotificationCount(rooms) {
return rooms.reduce((result, room, index) => {
const roomNotifState = getRoomNotifsState(room.roomId);
diff --git a/src/components/structures/MatrixChat.js b/src/components/structures/MatrixChat.js
index d0f5a7e005..4dc5057eaf 100644
--- a/src/components/structures/MatrixChat.js
+++ b/src/components/structures/MatrixChat.js
@@ -54,6 +54,7 @@ import ResizeNotifier from "../../utils/ResizeNotifier";
import { ValidatedServerConfig } from "../../utils/AutoDiscoveryUtils";
import AutoDiscoveryUtils from "../../utils/AutoDiscoveryUtils";
import DMRoomMap from '../../utils/DMRoomMap';
+import { countRoomsWithNotif } from '../../RoomNotifs';
// Disable warnings for now: we use deprecated bluebird functions
// and need to migrate, but they spam the console with warnings.
@@ -1749,19 +1750,7 @@ export default React.createClass({
},
updateStatusIndicator: function(state, prevState) {
- let notifCount = 0;
-
- const rooms = MatrixClientPeg.get().getRooms();
- for (let i = 0; i < rooms.length; ++i) {
- if (rooms[i].hasMembershipState(MatrixClientPeg.get().credentials.userId, 'invite')) {
- notifCount++;
- } else if (rooms[i].getUnreadNotificationCount()) {
- // if we were summing unread notifs:
- // notifCount += rooms[i].getUnreadNotificationCount();
- // instead, we just count the number of rooms with notifs.
- notifCount++;
- }
- }
+ let notifCount = countRoomsWithNotif(MatrixClientPeg.get().getRooms()).count;
if (PlatformPeg.get()) {
PlatformPeg.get().setErrorStatus(state === 'ERROR');
From 23b29ce3f5bf1860f425ebd0a52a8629537b407a Mon Sep 17 00:00:00 2001
From: David Baker
Date: Wed, 19 Jun 2019 12:12:19 +0100
Subject: [PATCH 088/188] Use the variables we just defined above
---
src/RoomNotifs.js | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/src/RoomNotifs.js b/src/RoomNotifs.js
index 5d3444b0f6..f62eeeec41 100644
--- a/src/RoomNotifs.js
+++ b/src/RoomNotifs.js
@@ -28,12 +28,11 @@ export const BADGE_STATES = [ALL_MESSAGES, ALL_MESSAGES_LOUD];
export const MENTION_BADGE_STATES = [...BADGE_STATES, MENTIONS_ONLY];
export function shouldShowNotifBadge(roomNotifState) {
- const showBadgeInStates = [ALL_MESSAGES, ALL_MESSAGES_LOUD];
- return showBadgeInStates.indexOf(roomNotifState) > -1;
+ return BADGE_STATES.includes(roomNotifState);
}
export function shouldShowMentionBadge(roomNotifState) {
- return roomNotifState !== MUTE;
+ return MENTION_BADGE_STATES.includes(roomNotifState);
}
export function aggregateNotificationCount(rooms) {
From 6eddce8c32538ad1074fc9295f78c36995ef6264 Mon Sep 17 00:00:00 2001
From: David Baker
Date: Wed, 19 Jun 2019 12:13:17 +0100
Subject: [PATCH 089/188] lint
---
src/components/structures/MatrixChat.js | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/components/structures/MatrixChat.js b/src/components/structures/MatrixChat.js
index 4dc5057eaf..d942bb142e 100644
--- a/src/components/structures/MatrixChat.js
+++ b/src/components/structures/MatrixChat.js
@@ -1750,7 +1750,7 @@ export default React.createClass({
},
updateStatusIndicator: function(state, prevState) {
- let notifCount = countRoomsWithNotif(MatrixClientPeg.get().getRooms()).count;
+ const notifCount = countRoomsWithNotif(MatrixClientPeg.get().getRooms()).count;
if (PlatformPeg.get()) {
PlatformPeg.get().setErrorStatus(state === 'ERROR');
From 399f59130e7c864781f4f046ae4c34da662549ca Mon Sep 17 00:00:00 2001
From: Besnik Bleta
Date: Wed, 19 Jun 2019 09:01:35 +0000
Subject: [PATCH 090/188] Translated using Weblate (Albanian)
Currently translated at 99.6% (1655 of 1661 strings)
Translation: Riot Web/matrix-react-sdk
Translate-URL: https://translate.riot.im/projects/riot-web/matrix-react-sdk/sq/
---
src/i18n/strings/sq.json | 16 +++++++++++++++-
1 file changed, 15 insertions(+), 1 deletion(-)
diff --git a/src/i18n/strings/sq.json b/src/i18n/strings/sq.json
index a6f03bb6e0..3d94d3a670 100644
--- a/src/i18n/strings/sq.json
+++ b/src/i18n/strings/sq.json
@@ -1960,5 +1960,19 @@
"You can log in, but some features will be unavailable until the identity server is back online. If you keep seeing this warning, check your configuration or contact a server admin.": "Mund të bëni hyrjen, por disa veçori do të jenë të papërdorshme, derisa shërbyesi i identiteteve të jetë sërish në linjë. Nëse vazhdoni ta shihni këtë sinjalizim, kontrolloni formësimin tuaj ose lidhuni me një përgjegjës të shërbyesit.",
"Log in to your new account.": "Bëni hyrjen te llogaria juaj e re.",
"You can now close this window or log in to your new account.": "Tani mund ta mbyllni këtë dritare ose të bëni hyrjen në llogarinë tuaj të re.",
- "Registration Successful": "Regjistrim i Suksesshëm"
+ "Registration Successful": "Regjistrim i Suksesshëm",
+ "No integrations server configured": "S’ka të formësuar shërbyes integrimesh",
+ "This Riot instance does not have an integrations server configured.": "Kjo instancë Riot-i s’ka të formësuar ndonjë shërbyes integrimesh.",
+ "Connecting to integrations server...": "Po lidhet te një shërbyes integrimesh…",
+ "Cannot connect to integrations server": "S’lidhet dot me shërbyes integrimesh",
+ "The integrations server is offline or it cannot reach your homeserver.": "Shërbyesi i integrimeve s’është në linjë ose s’kap dot shërbyesin tuaj Home.",
+ "Unnamed microphone": "Mikrofon i paemërtuar",
+ "Unnamed audio output": "Dalje audio e paemërtuar",
+ "Unnamed camera": "Kamerë e paemërtuar",
+ "Failed to connect to integrations server": "S’u arrit të lidhej me shërbyes integrimesh",
+ "No integrations server is configured to manage stickers with": "S’ka shërbyes integrimesh të formësuar për administrim ngjitësish",
+ "Upload all": "Ngarkoji krejt",
+ "Your new account (%(newAccountId)s) is registered, but you're already logged into a different account (%(loggedInUserId)s).": "Llogaria juaj e re (%(newAccountId)s) është e regjistruar, por jeni i futur në një tjetër llogari (%(loggedInUserId)s).",
+ "Continue with previous account": "Vazhdoni me llogarinë e mëparshme",
+ "Sign out of previous account": "Dilni nga llogaria e mëparshme"
}
From a10675a4008120e8dfcb940e119fffe844c39325 Mon Sep 17 00:00:00 2001
From: Tuomas Hietala
Date: Wed, 19 Jun 2019 12:23:43 +0000
Subject: [PATCH 091/188] Translated using Weblate (Finnish)
Currently translated at 97.5% (1620 of 1661 strings)
Translation: Riot Web/matrix-react-sdk
Translate-URL: https://translate.riot.im/projects/riot-web/matrix-react-sdk/fi/
---
src/i18n/strings/fi.json | 11 +++++++----
1 file changed, 7 insertions(+), 4 deletions(-)
diff --git a/src/i18n/strings/fi.json b/src/i18n/strings/fi.json
index fbcc3d2430..c07e6f0d86 100644
--- a/src/i18n/strings/fi.json
+++ b/src/i18n/strings/fi.json
@@ -816,9 +816,9 @@
"Unignored user": "Sallitut käyttäjät",
"%(userId)s from %(fromPowerLevel)s to %(toPowerLevel)s": "%(userId)s tasolta %(fromPowerLevel)s tasolle %(toPowerLevel)s",
"%(senderName)s changed the power level of %(powerLevelDiffText)s.": "%(senderName)s muutti %(powerLevelDiffText)s:n oikeustasoa.",
- "%(widgetName)s widget modified by %(senderName)s": "%(widgetName)s pienoisohjelmaa muokannut %(senderName)s",
- "%(widgetName)s widget added by %(senderName)s": "%(widgetName)s pienoisohjelman lisännyt %(senderName)s",
- "%(widgetName)s widget removed by %(senderName)s": "%(widgetName)s pienoisohjelman poistanut %(senderName)s",
+ "%(widgetName)s widget modified by %(senderName)s": "%(senderName)s muutti pienoisohjelmaa %(widgetName)s",
+ "%(widgetName)s widget added by %(senderName)s": "%(senderName)s lisäsi pienoisohjelman %(widgetName)s",
+ "%(widgetName)s widget removed by %(senderName)s": "%(senderName)s poisti pienoisohjelman %(widgetName)s",
"Send": "Lähetä",
"Delete %(count)s devices|other": "Poista %(count)s laitetta",
"Delete %(count)s devices|one": "Poista laite",
@@ -1864,5 +1864,8 @@
"Create your Matrix account on ": "Luo Matrix-tili palvelimelle ",
"Add room": "Lisää huone",
"Your profile": "Oma profiilisi",
- "Your Matrix account on ": "Matrix-tilisi palvelimella "
+ "Your Matrix account on ": "Matrix-tilisi palvelimella ",
+ "Cannot reach homeserver": "Kotipalvelinta ei voida tavoittaa",
+ "Your Riot is misconfigured": "Riotin asetukset ovat pielessä",
+ "Cannot reach identity server": "Identiteettipalvelinta ei voida tavoittaa"
}
From 057f2da32764b0f718ab4d82c07fd329ddaeb66b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?K=C3=A9vin=20C?=
Date: Wed, 19 Jun 2019 10:47:22 +0000
Subject: [PATCH 092/188] Translated using Weblate (French)
Currently translated at 100.0% (1661 of 1661 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 | 16 +++++++++++++++-
1 file changed, 15 insertions(+), 1 deletion(-)
diff --git a/src/i18n/strings/fr.json b/src/i18n/strings/fr.json
index cbd43fafc0..709610cf96 100644
--- a/src/i18n/strings/fr.json
+++ b/src/i18n/strings/fr.json
@@ -2002,5 +2002,19 @@
"You can log in, but some features will be unavailable until the identity server is back online. If you keep seeing this warning, check your configuration or contact a server admin.": "Vous pouvez vous connecter, mais certaines fonctionnalités ne seront pas disponibles jusqu’au retour du serveur d’identité. Si vous continuez à voir cet avertissement, vérifiez votre configuration ou contactez un administrateur du serveur.",
"Log in to your new account.": "Connectez-vous à votre nouveau compte.",
"You can now close this window or log in to your new account.": "Vous pouvez à présent fermer cette fenêtre ou vous connecter à votre nouveau compte.",
- "Registration Successful": "Inscription réussie"
+ "Registration Successful": "Inscription réussie",
+ "No integrations server configured": "Aucun serveur d’intégrations configuré",
+ "This Riot instance does not have an integrations server configured.": "Cette instance de Riot n’a aucun serveur d’intégrations configuré.",
+ "Connecting to integrations server...": "Connexion au serveur d’intégrations…",
+ "Cannot connect to integrations server": "Impossible de se connecter au serveur d’intégrations",
+ "The integrations server is offline or it cannot reach your homeserver.": "Le serveur d’intégrations est hors ligne ou il ne peut pas joindre votre serveur d’accueil.",
+ "Unnamed microphone": "Microphone sans nom",
+ "Unnamed audio output": "Sortie audio sans nom",
+ "Unnamed camera": "Caméra sans nom",
+ "Failed to connect to integrations server": "Échec de la connexion au serveur d’intégrations",
+ "No integrations server is configured to manage stickers with": "Aucun serveur d’intégrations n’est configuré pour gérer les stickers",
+ "Upload all": "Tout envoyer",
+ "Your new account (%(newAccountId)s) is registered, but you're already logged into a different account (%(loggedInUserId)s).": "Votre nouveau compte (%(newAccountId)s) est créé, mais vous êtes déjà connecté avec un autre compte (%(loggedInUserId)s).",
+ "Continue with previous account": "Continuer avec le compte précédent",
+ "Sign out of previous account": "Se déconnecter du compte précédent"
}
From 2247c5953d441b773115239a7f62ad7a25cfbe01 Mon Sep 17 00:00:00 2001
From: David Baker
Date: Wed, 19 Jun 2019 13:33:06 +0100
Subject: [PATCH 093/188] Fix conflicting PRs
---
src/RoomNotifs.js | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/RoomNotifs.js b/src/RoomNotifs.js
index a21ec30d93..2d5e4b3136 100644
--- a/src/RoomNotifs.js
+++ b/src/RoomNotifs.js
@@ -41,8 +41,8 @@ export function countRoomsWithNotif(rooms) {
const highlight = room.getUnreadNotificationCount('highlight') > 0;
const notificationCount = room.getUnreadNotificationCount();
- const notifBadges = notificationCount > 0 && _shouldShowNotifBadge(roomNotifState);
- const mentionBadges = highlight && _shouldShowMentionBadge(roomNotifState);
+ const notifBadges = notificationCount > 0 && shouldShowNotifBadge(roomNotifState);
+ const mentionBadges = highlight && shouldShowMentionBadge(roomNotifState);
const isInvite = room.hasMembershipState(MatrixClientPeg.get().credentials.userId, 'invite');
const badges = notifBadges || mentionBadges || isInvite;
From 5c5c4cfbc1bb9aaa61db2263073fcc48e9bfb1af Mon Sep 17 00:00:00 2001
From: Tuomas Hietala
Date: Wed, 19 Jun 2019 12:30:22 +0000
Subject: [PATCH 094/188] Translated using Weblate (Finnish)
Currently translated at 97.7% (1622 of 1661 strings)
Translation: Riot Web/matrix-react-sdk
Translate-URL: https://translate.riot.im/projects/riot-web/matrix-react-sdk/fi/
---
src/i18n/strings/fi.json | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/src/i18n/strings/fi.json b/src/i18n/strings/fi.json
index c07e6f0d86..5de77cb728 100644
--- a/src/i18n/strings/fi.json
+++ b/src/i18n/strings/fi.json
@@ -1867,5 +1867,7 @@
"Your Matrix account on ": "Matrix-tilisi palvelimella ",
"Cannot reach homeserver": "Kotipalvelinta ei voida tavoittaa",
"Your Riot is misconfigured": "Riotin asetukset ovat pielessä",
- "Cannot reach identity server": "Identiteettipalvelinta ei voida tavoittaa"
+ "Cannot reach identity server": "Identiteettipalvelinta ei voida tavoittaa",
+ "Ensure you have a stable internet connection, or get in touch with the server admin": "Varmista, että internet-yhteytesi on vakaa, tai ota yhteyttä palvelimen ylläpitäjään",
+ "Ask your Riot admin to check your config for incorrect or duplicate entries.": "Pyydä Riot-ylläpitäjääsi tarkistamaan, onko asetuksissasivirheellisiä tai toistettuja merkintöjä."
}
From dc9282c539e796eceed1908c1c90242a7260a80d Mon Sep 17 00:00:00 2001
From: "J. Ryan Stinnett"
Date: Wed, 19 Jun 2019 13:57:37 +0100
Subject: [PATCH 095/188] Remove unused ContextualMenu features
---
res/css/structures/_ContextualMenu.scss | 6 -----
src/components/structures/ContextualMenu.js | 27 +--------------------
2 files changed, 1 insertion(+), 32 deletions(-)
diff --git a/res/css/structures/_ContextualMenu.scss b/res/css/structures/_ContextualMenu.scss
index b6644c1752..e818bb092e 100644
--- a/res/css/structures/_ContextualMenu.scss
+++ b/res/css/structures/_ContextualMenu.scss
@@ -163,12 +163,6 @@ limitations under the License.
bottom: 1px;
}
-.mx_ContextualMenu_field {
- padding: 3px 6px 3px 6px;
- cursor: pointer;
- white-space: nowrap;
-}
-
.mx_ContextualMenu_spinner {
display: block;
margin: 0 auto;
diff --git a/src/components/structures/ContextualMenu.js b/src/components/structures/ContextualMenu.js
index edd6f79270..3ce52247d9 100644
--- a/src/components/structures/ContextualMenu.js
+++ b/src/components/structures/ContextualMenu.js
@@ -1,6 +1,7 @@
/*
Copyright 2015, 2016 OpenMarket Ltd
Copyright 2018 New Vector Ltd
+Copyright 2019 The Matrix.org Foundation C.I.C.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
@@ -15,7 +16,6 @@ See the License for the specific language governing permissions and
limitations under the License.
*/
-
import React from 'react';
import ReactDOM from 'react-dom';
import PropTypes from 'prop-types';
@@ -48,7 +48,6 @@ export default class ContextualMenu extends React.Component {
menuWidth: PropTypes.number,
menuHeight: PropTypes.number,
chevronOffset: PropTypes.number,
- menuColour: PropTypes.string,
chevronFace: PropTypes.string, // top, bottom, left, right or none
// Function to be called on menu close
onFinished: PropTypes.func,
@@ -157,25 +156,6 @@ export default class ContextualMenu extends React.Component {
chevronOffset.top = Math.max(props.chevronOffset, props.chevronOffset + target - adjusted);
}
- // To override the default chevron colour, if it's been set
- let chevronCSS = "";
- if (props.menuColour) {
- chevronCSS = `
- .mx_ContextualMenu_chevron_left:after {
- border-right-color: ${props.menuColour};
- }
- .mx_ContextualMenu_chevron_right:after {
- border-left-color: ${props.menuColour};
- }
- .mx_ContextualMenu_chevron_top:after {
- border-left-color: ${props.menuColour};
- }
- .mx_ContextualMenu_chevron_bottom:after {
- border-left-color: ${props.menuColour};
- }
- `;
- }
-
const chevron = hasChevron ?
:
undefined;
@@ -202,10 +182,6 @@ export default class ContextualMenu extends React.Component {
menuStyle.height = props.menuHeight;
}
- if (props.menuColour) {
- menuStyle["backgroundColor"] = props.menuColour;
- }
-
if (!isNaN(Number(props.menuPaddingTop))) {
menuStyle["paddingTop"] = props.menuPaddingTop;
}
@@ -236,7 +212,6 @@ export default class ContextualMenu extends React.Component {
{ props.hasBackground && }
-
;
}
}
From 21344609a42e4c1a5400b402a6aa5563b01b5871 Mon Sep 17 00:00:00 2001
From: RiotRobot