diff --git a/res/home/css/welcome.css b/res/home/css/welcome.css
deleted file mode 100644
index 3b840c0f46..0000000000
--- a/res/home/css/welcome.css
+++ /dev/null
@@ -1,106 +0,0 @@
-.mx_HomePage_header h1 {
- margin-left: 0px;
- margin-bottom: 0px;
- margin-top: 20px;
- margin-right: 20px;
-}
-
-.mx_HomePage_header h2 {
- margin-left: 0px;
- margin-top: 5px;
- margin-bottom: 20px;
- margin-right: 20px;
-}
-
-.mx_HomePage h3 {
- margin-top: 30px;
-}
-
-.mx_HomePage_header {
- border: 1px solid #76CFA6;
- background-color: #eaf5f0;
- border-radius: 5px;
- color: #454545;
- align-items: center;
-}
-
-.mx_HomePage_col {
- display: flex;
- flex-direction: row;
-}
-
-.mx_HomePage_toprow {
- flex-wrap: wrap;
-}
-
-.mx_HomePage_row {
- flex: 1 1 0;
- margin-right: 20px;
- display: flex;
- flex-direction: row;
- flex-wrap: wrap;
-}
-
-.mx_HomePage_logo {
- margin-top: 20px;
- margin-left: 40px;
- margin-right: 40px;
- margin-bottom: 20px;
- display: inline;
- height: 100px;
-}
-
-.mx_HomePage_room {
- cursor: pointer;
- float: left;
- text-decoration: none;
- text-align: center;
- padding-left: 10px;
- padding-right: 10px;
- width: 120px;
-}
-
-.mx_HomePage_toprow .mx_HomePage_room {
- width: 64px;
-}
-
-
-.mx_HomePage_room .mx_HomePage_icon {
- border-radius: 50%;
- width: 64px;
- height: 64px;
-}
-
-.mx_HomePage_room .mx_HomePage_name {
- display: block;
-}
-
-.mx_HomePage_room .mx_HomePage_desc {
- display: block;
- font-size: 12px;
- margin-top: 8px;
-}
-
-.mx_HomePage_comment {
- display: flex;
- align-items: center;
- margin-left: 100px;
- min-height: 64px;
-}
-
-.mx_HomePage_container h3::after,
-.mx_HomePage_container h4::after {
- content: ":";
-}
-
-.mx_HomePage_container {
- display: block ! important;
- margin: 20px;
-}
-
-.mx_HomePage_container h1,
-.mx_HomePage_container h2,
-.mx_HomePage_container h3,
-.mx_HomePage_container h4 {
- font-weight: 600;
-}
\ No newline at end of file
diff --git a/src/components/structures/HomePage.js b/src/components/structures/HomePage.js
index c646f1cebc..a9f2bbd0bc 100644
--- a/src/components/structures/HomePage.js
+++ b/src/components/structures/HomePage.js
@@ -45,6 +45,14 @@ module.exports = React.createClass({
};
},
+ translate: function(s) {
+ s = sanitizeHtml(_t(s));
+ // ugly fix for https://github.com/vector-im/riot-web/issues/4243
+ s = s.replace(/Riot\.im/, '
Riot.im');
+ s = s.replace(/\[matrix\]/, '
');
+ return s;
+ },
+
componentWillMount: function() {
if (this.props.teamToken && this.props.teamServerUrl) {
this.setState({
@@ -66,7 +74,7 @@ module.exports = React.createClass({
this.setState({ page: "Couldn't load home page" });
}
- body = body.replace(/_t\(['"]([\s\S]*?)['"]\)/mg, (match, g1)=>{ return sanitizeHtml(_t(g1)) });
+ body = body.replace(/_t\(['"]([\s\S]*?)['"]\)/mg, (match, g1)=>this.translate(g1));
this.setState({ page: body });
}
);
diff --git a/src/i18n/strings/de_DE.json b/src/i18n/strings/de_DE.json
index d1c33a822b..b9578e8282 100644
--- a/src/i18n/strings/de_DE.json
+++ b/src/i18n/strings/de_DE.json
@@ -171,7 +171,7 @@
"OK": "OK",
"Login": "Anmeldung",
"Welcome to Riot.im": "Willkommen bei Riot.im",
- "Decentralised, encrypted chat & collaboration powered by": "Dezentralisierter, verschlüsselter Chat & Zusammenarbeit unterstützt von",
+ "Decentralised, encrypted chat & collaboration powered by [matrix]": "Dezentralisierter, verschlüsselter Chat & Zusammenarbeit unterstützt von [matrix]",
"Search the room directory": "Durchsuche Raum-Verzeichnis",
"Chat with Riot Bot": "Chatte mit dem Riot-Bot",
"Get started with some tips from Riot Bot!": "Beginne mit einigen Tipps vom Riot-Bot!",
diff --git a/src/i18n/strings/en_EN.json b/src/i18n/strings/en_EN.json
index afc8cc687e..c6f461e0e7 100644
--- a/src/i18n/strings/en_EN.json
+++ b/src/i18n/strings/en_EN.json
@@ -163,7 +163,7 @@
"Welcome page": "Welcome page",
"With your current browser, the look and feel of the application may be completely incorrect, and some or all features may not function. If you want to try it anyway you can continue, but you are on your own in terms of any issues you may encounter!": "With your current browser, the look and feel of the application may be completely incorrect, and some or all features may not function. If you want to try it anyway you can continue, but you are on your own in terms of any issues you may encounter!",
"Welcome to Riot.im": "Welcome to Riot.im",
- "Decentralised, encrypted chat & collaboration powered by": "Decentralised, encrypted chat & collaboration powered by",
+ "Decentralised, encrypted chat & collaboration powered by [matrix]": "Decentralised, encrypted chat & collaboration powered by [matrix]",
"Search the room directory": "Search the room directory",
"Chat with Riot Bot": "Chat with Riot Bot",
"Get started with some tips from Riot Bot!": "Get started with some tips from Riot Bot!",
diff --git a/src/i18n/strings/ru.json b/src/i18n/strings/ru.json
index 6fce986eff..c65a49d17c 100644
--- a/src/i18n/strings/ru.json
+++ b/src/i18n/strings/ru.json
@@ -170,7 +170,7 @@
"With your current browser, the look and feel of the application may be completely incorrect, and some or all features may not function. If you want to try it anyway you can continue, but you are on your own in terms of any issues you may encounter!": "Еали ваш браузер не корректно отображает информацию и все или некоторые фукции отключены, вы можете и дальше этим браузеом пользоваться но но ваши проблемы останутся с вами!",
"Login": "Войти",
"Welcome to Riot.im": "Добро пожаловать на Riot.im",
- "Decentralised, encrypted chat & collaboration powered by": "Децентрализованное, шифрованное общение и сотрудничество на основе",
+ "Decentralised, encrypted chat & collaboration powered by [matrix]": "Децентрализованное, шифрованное общение и сотрудничество на основе [matrix]",
"Search the room directory": "Поиск по директории комнат",
"Chat with Riot Bot": "Пообщаться с Riot Bot"
}
diff --git a/src/i18n/strings/th.json b/src/i18n/strings/th.json
index f2f6d17c78..66df9f4b42 100644
--- a/src/i18n/strings/th.json
+++ b/src/i18n/strings/th.json
@@ -195,5 +195,5 @@
"This will allow you to return to your account after signing out, and sign in on other devices.": "เพื่อคุณจะได้กลับมายังบัญชีเดิมของคุณได้ หลังจากออกจากระบบ แล้วกลับเข้าสู่ระบบในอุปกรณ์อื่น ๆ",
"Design and implementation of E2E in Matrix": "การออกแบบและใช้งาน E2E ใน Matrix",
"Discussion of the Identity Service API": "พูดคุยเกี่ยวกับ Identity Service API",
- "Decentralised, encrypted chat & collaboration powered by": "แชทและประสานงานบนระบบที่ทั้งเข้ารหัสได้และกระจายศูนย์กลาง โดยใช้เทคโนโลยีจาก"
+ "Decentralised, encrypted chat & collaboration powered by [matrix]": "แชทและประสานงานบนระบบที่ทั้งเข้ารหัสได้และกระจายศูนย์กลาง โดยใช้เทคโนโลยีจาก [matrix]"
}
diff --git a/src/skins/vector/css/matrix-react-sdk/views/rooms/_EventTile.scss b/src/skins/vector/css/matrix-react-sdk/views/rooms/_EventTile.scss
index 6f029158c7..a980d1f9ce 100644
--- a/src/skins/vector/css/matrix-react-sdk/views/rooms/_EventTile.scss
+++ b/src/skins/vector/css/matrix-react-sdk/views/rooms/_EventTile.scss
@@ -332,6 +332,24 @@ limitations under the License.
.mx_EventTile_content .markdown-body code {
background-color: #f8f8f8;
}
+.mx_EventTile_copyButton {
+ position: absolute;
+ display: inline-block;
+ visibility: hidden;
+ cursor: pointer;
+ top: 6px;
+ right: 6px;
+ width: 19px;
+ height: 19px;
+ background-image: url($copy-button-url);
+}
+.mx_EventTile_body pre {
+ position: relative;
+}
+.mx_EventTile_body pre:hover .mx_EventTile_copyButton
+{
+ visibility: visible;
+}
.mx_EventTile_content .markdown-body h1,
.mx_EventTile_content .markdown-body h2,
diff --git a/src/skins/vector/css/themes/_base.scss b/src/skins/vector/css/themes/_base.scss
index b601191348..fc24af93e2 100644
--- a/src/skins/vector/css/themes/_base.scss
+++ b/src/skins/vector/css/themes/_base.scss
@@ -102,6 +102,7 @@ $event-redacted-img: url('../../img/redacted.jpg');
$event-timestamp-color: #acacac;
$edit-button-url: "../../img/icon_context_message.svg";
+$copy-button-url: "../../img/icon_copy_message.svg";
// e2e
$e2e-verified-color: #76cfa5; // N.B. *NOT* the same as $accent-color
@@ -114,4 +115,4 @@ $lightbox-fg-color: #ffffff;
$lightbox-border-color: #ffffff;
// unused?
-$progressbar-color: #000;
\ No newline at end of file
+$progressbar-color: #000;
diff --git a/src/skins/vector/css/themes/_dark.scss b/src/skins/vector/css/themes/_dark.scss
index 72c21b7572..fe2e7591cf 100644
--- a/src/skins/vector/css/themes/_dark.scss
+++ b/src/skins/vector/css/themes/_dark.scss
@@ -102,6 +102,7 @@ $event-redacted-img: url('../../img/redacted-dark.jpg');
$event-timestamp-color: #acacac;
$edit-button-url: "../../img/icon_context_message_dark.svg";
+$copy-button-url: "../../img/icon_copy_message_dark.svg";
// e2e
$e2e-verified-color: #76cfa5; // N.B. *NOT* the same as $accent-color
diff --git a/src/skins/vector/css/vector-web/structures/_HomePage.scss b/src/skins/vector/css/vector-web/structures/_HomePage.scss
index 81adb3ced1..cdac1bcc8a 100644
--- a/src/skins/vector/css/vector-web/structures/_HomePage.scss
+++ b/src/skins/vector/css/vector-web/structures/_HomePage.scss
@@ -19,13 +19,14 @@ limitations under the License.
max-width: 960px;
width: 100%;
height: 100%;
- overflow-y: hidden;
margin-left: auto;
margin-right: auto;
}
+
.mx_HomePage iframe {
+ display: block;
width: 100%;
- height: 90%;
+ height: 100%;
border: 0px;
}
diff --git a/src/skins/vector/img/icon_copy_message.svg b/src/skins/vector/img/icon_copy_message.svg
new file mode 100644
index 0000000000..8d8887bb22
--- /dev/null
+++ b/src/skins/vector/img/icon_copy_message.svg
@@ -0,0 +1,86 @@
+
+
diff --git a/src/skins/vector/img/icon_copy_message_dark.svg b/src/skins/vector/img/icon_copy_message_dark.svg
new file mode 100644
index 0000000000..b81e617d8c
--- /dev/null
+++ b/src/skins/vector/img/icon_copy_message_dark.svg
@@ -0,0 +1,77 @@
+
+