diff --git a/CMakeLists.txt b/CMakeLists.txt
index c962d2da..36403890 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -333,7 +333,7 @@ if(USE_BUNDLED_MTXCLIENT)
FetchContent_Declare(
MatrixClient
GIT_REPOSITORY https://github.com/Nheko-Reborn/mtxclient.git
- GIT_TAG 1018c0822b80cdfc5d6b589fe94d1fd759113ef6
+ GIT_TAG f5c78f4331b62a1e25a2d839cb38b07bb9bd7829
)
FetchContent_MakeAvailable(MatrixClient)
else()
diff --git a/io.github.NhekoReborn.Nheko.json b/io.github.NhekoReborn.Nheko.json
index 3de04370..50fa3b33 100644
--- a/io.github.NhekoReborn.Nheko.json
+++ b/io.github.NhekoReborn.Nheko.json
@@ -146,9 +146,9 @@
"name": "mtxclient",
"sources": [
{
- "sha256": "537f4e6b280f351ad950cd6598c2407505a55f0d6c856b4ff97a9c59fc6fdb7a",
+ "sha256": "16203a92b03c488178b31bedca9d9015b1d406443f7e5363a2e09171e50f8dfc",
"type": "archive",
- "url": "https://github.com/Nheko-Reborn/mtxclient/archive/1018c0822b80cdfc5d6b589fe94d1fd759113ef6.tar.gz"
+ "url": "https://github.com/Nheko-Reborn/mtxclient/archive/f5c78f4331b62a1e25a2d839cb38b07bb9bd7829.tar.gz"
}
]
},
diff --git a/resources/langs/nheko_de.ts b/resources/langs/nheko_de.ts
index 24c6cea7..3936febc 100644
--- a/resources/langs/nheko_de.ts
+++ b/resources/langs/nheko_de.ts
@@ -18,7 +18,7 @@
</message>
<message>
<location line="+4"/>
- <location line="+898"/>
+ <location line="+921"/>
<source>Invited user: %1</source>
<translation>Eingeladener Benutzer: %1</translation>
</message>
@@ -153,6 +153,12 @@
</message>
<message>
<location line="+2"/>
+ <source>Server Notices</source>
+ <comment>Tag translation for m.server_notice</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+2"/>
<location line="+2"/>
<source> (tag)</source>
<translation> (tag)</translation>
@@ -189,7 +195,7 @@
<context>
<name>EmojiPicker</name>
<message>
- <location filename="../qml/emoji/EmojiPicker.qml" line="+104"/>
+ <location filename="../qml/emoji/EmojiPicker.qml" line="+114"/>
<location line="+135"/>
<source>Search</source>
<translation type="unfinished"></translation>
@@ -494,12 +500,59 @@ Beispiel: https://mein.server:8787</translation>
<context>
<name>RoomInfoListItem</name>
<message>
- <location filename="../../src/RoomInfoListItem.cpp" line="+98"/>
+ <location filename="../../src/RoomInfoListItem.cpp" line="+102"/>
<source>Leave room</source>
<translation>Raum verlassen</translation>
</message>
<message>
- <location line="+160"/>
+ <location line="+7"/>
+ <source>Tag room as:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+18"/>
+ <source>Favourite</source>
+ <comment>Standard matrix tag for favourites</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+3"/>
+ <source>Low Priority</source>
+ <comment>Standard matrix tag for low priority rooms</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+3"/>
+ <source>Server Notice</source>
+ <comment>Standard matrix tag for server notices</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+12"/>
+ <source>Adds or removes the specified tag.</source>
+ <comment>WhatsThis hint for tag menu actions</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+38"/>
+ <source>New tag...</source>
+ <comment>Add a new tag to the room</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+4"/>
+ <source>New Tag</source>
+ <comment>Tag name prompt title</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+1"/>
+ <source>Tag:</source>
+ <comment>Tag name prompt</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+173"/>
<source>Accept</source>
<translation>Akzeptieren</translation>
</message>
@@ -563,7 +616,7 @@ Beispiel: https://mein.server:8787</translation>
<context>
<name>TextInputWidget</name>
<message>
- <location filename="../../src/TextInputWidget.cpp" line="+459"/>
+ <location filename="../../src/TextInputWidget.cpp" line="+460"/>
<source>Send a file</source>
<translation>Versende Datei</translation>
</message>
@@ -584,7 +637,7 @@ Beispiel: https://mein.server:8787</translation>
<translation>Emoji</translation>
</message>
<message>
- <location line="+84"/>
+ <location line="+86"/>
<source>Select a file</source>
<translation>Datei auswählen</translation>
</message>
@@ -602,7 +655,7 @@ Beispiel: https://mein.server:8787</translation>
<context>
<name>TimelineModel</name>
<message>
- <location filename="../../src/timeline/TimelineModel.cpp" line="+853"/>
+ <location filename="../../src/timeline/TimelineModel.cpp" line="+873"/>
<source>-- Decryption Error (failed to communicate with DB) --</source>
<comment>Placeholder, when the message can't be decrypted, because the DB access failed when trying to lookup the session.</comment>
<translation>-- Entschlüsselungsfehler (Fehler bei Kommunikation mit Datenbank) --</translation>
@@ -771,12 +824,12 @@ Beispiel: https://mein.server:8787</translation>
<translation>%1 hat das Anklopfen zurückgezogen.</translation>
</message>
<message>
- <location line="-1278"/>
+ <location line="-1286"/>
<source>You joined this room.</source>
<translation>Du bist dem Raum beigetreten.</translation>
</message>
<message>
- <location line="+1280"/>
+ <location line="+1288"/>
<source>Rejected the knock from %1.</source>
<translation>Hat das Anklopfen von %1 abgewiesen.</translation>
</message>
@@ -800,12 +853,12 @@ Beispiel: https://mein.server:8787</translation>
<context>
<name>TimelineRow</name>
<message>
- <location filename="../qml/TimelineRow.qml" line="+84"/>
+ <location filename="../qml/TimelineRow.qml" line="+88"/>
<source>React</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+16"/>
+ <location line="+18"/>
<source>Reply</source>
<translation>Antworten</translation>
</message>
@@ -818,7 +871,7 @@ Beispiel: https://mein.server:8787</translation>
<context>
<name>TimelineView</name>
<message>
- <location filename="../qml/TimelineView.qml" line="+65"/>
+ <location filename="../qml/TimelineView.qml" line="+69"/>
<source>React</source>
<translation type="unfinished"></translation>
</message>
@@ -863,7 +916,7 @@ Beispiel: https://mein.server:8787</translation>
<translation>Kein Raum geöffnet</translation>
</message>
<message>
- <location line="+256"/>
+ <location line="+257"/>
<source>Close</source>
<translation>Schließen</translation>
</message>
@@ -925,7 +978,7 @@ Beispiel: https://mein.server:8787</translation>
<context>
<name>UserSettingsPage</name>
<message>
- <location filename="../../src/UserSettingsPage.cpp" line="+335"/>
+ <location filename="../../src/UserSettingsPage.cpp" line="+339"/>
<source>Minimize to tray</source>
<translation>Ins Benachrichtigungsfeld minimieren</translation>
</message>
@@ -980,6 +1033,11 @@ Beispiel: https://mein.server:8787</translation>
<translation>Desktopbenachrichtigungen</translation>
</message>
<message>
+ <location line="+1"/>
+ <source>Highlight message on hover</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
<location line="+5"/>
<source>Scale factor</source>
<translation>Skalierungsfaktor</translation>
@@ -1010,7 +1068,7 @@ Beispiel: https://mein.server:8787</translation>
<translation>Gerätefingerabdruck</translation>
</message>
<message>
- <location line="-59"/>
+ <location line="-60"/>
<source>Session Keys</source>
<translation>Sitzungsschlüssel</translation>
</message>
@@ -1030,22 +1088,22 @@ Beispiel: https://mein.server:8787</translation>
<translation>VERSCHLÜSSELUNG</translation>
</message>
<message>
- <location line="-63"/>
+ <location line="-64"/>
<source>GENERAL</source>
<translation>ALLGEMEINES</translation>
</message>
<message>
- <location line="+25"/>
+ <location line="+26"/>
<source>INTERFACE</source>
<translation>OBERFLÄCHE</translation>
</message>
<message>
- <location line="+108"/>
+ <location line="+109"/>
<source>Emoji Font Family</source>
<translation>Emojischriftart</translation>
</message>
<message>
- <location line="+158"/>
+ <location line="+163"/>
<source>Open Sessions File</source>
<translation>Öffne Sessions Datei</translation>
</message>
diff --git a/resources/langs/nheko_el.ts b/resources/langs/nheko_el.ts
index 6c186504..c92e29d6 100644
--- a/resources/langs/nheko_el.ts
+++ b/resources/langs/nheko_el.ts
@@ -18,7 +18,7 @@
</message>
<message>
<location line="+4"/>
- <location line="+898"/>
+ <location line="+921"/>
<source>Invited user: %1</source>
<translation type="unfinished"></translation>
</message>
@@ -153,6 +153,12 @@
</message>
<message>
<location line="+2"/>
+ <source>Server Notices</source>
+ <comment>Tag translation for m.server_notice</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+2"/>
<location line="+2"/>
<source> (tag)</source>
<translation type="unfinished"></translation>
@@ -189,7 +195,7 @@
<context>
<name>EmojiPicker</name>
<message>
- <location filename="../qml/emoji/EmojiPicker.qml" line="+104"/>
+ <location filename="../qml/emoji/EmojiPicker.qml" line="+114"/>
<location line="+135"/>
<source>Search</source>
<translation type="unfinished"></translation>
@@ -490,12 +496,59 @@ Example: https://server.my:8787</source>
<context>
<name>RoomInfoListItem</name>
<message>
- <location filename="../../src/RoomInfoListItem.cpp" line="+98"/>
+ <location filename="../../src/RoomInfoListItem.cpp" line="+102"/>
<source>Leave room</source>
<translation>Βγές</translation>
</message>
<message>
- <location line="+160"/>
+ <location line="+7"/>
+ <source>Tag room as:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+18"/>
+ <source>Favourite</source>
+ <comment>Standard matrix tag for favourites</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+3"/>
+ <source>Low Priority</source>
+ <comment>Standard matrix tag for low priority rooms</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+3"/>
+ <source>Server Notice</source>
+ <comment>Standard matrix tag for server notices</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+12"/>
+ <source>Adds or removes the specified tag.</source>
+ <comment>WhatsThis hint for tag menu actions</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+38"/>
+ <source>New tag...</source>
+ <comment>Add a new tag to the room</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+4"/>
+ <source>New Tag</source>
+ <comment>Tag name prompt title</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+1"/>
+ <source>Tag:</source>
+ <comment>Tag name prompt</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+173"/>
<source>Accept</source>
<translation>Αποδοχή</translation>
</message>
@@ -559,7 +612,7 @@ Example: https://server.my:8787</source>
<context>
<name>TextInputWidget</name>
<message>
- <location filename="../../src/TextInputWidget.cpp" line="+459"/>
+ <location filename="../../src/TextInputWidget.cpp" line="+460"/>
<source>Send a file</source>
<translation type="unfinished"></translation>
</message>
@@ -580,7 +633,7 @@ Example: https://server.my:8787</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+84"/>
+ <location line="+86"/>
<source>Select a file</source>
<translation>Διάλεξε ένα αρχείο</translation>
</message>
@@ -598,7 +651,7 @@ Example: https://server.my:8787</source>
<context>
<name>TimelineModel</name>
<message>
- <location filename="../../src/timeline/TimelineModel.cpp" line="+853"/>
+ <location filename="../../src/timeline/TimelineModel.cpp" line="+873"/>
<source>-- Decryption Error (failed to communicate with DB) --</source>
<comment>Placeholder, when the message can't be decrypted, because the DB access failed when trying to lookup the session.</comment>
<translation type="unfinished"></translation>
@@ -767,12 +820,12 @@ Example: https://server.my:8787</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="-1278"/>
+ <location line="-1286"/>
<source>You joined this room.</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+1280"/>
+ <location line="+1288"/>
<source>Rejected the knock from %1.</source>
<translation type="unfinished"></translation>
</message>
@@ -796,12 +849,12 @@ Example: https://server.my:8787</source>
<context>
<name>TimelineRow</name>
<message>
- <location filename="../qml/TimelineRow.qml" line="+84"/>
+ <location filename="../qml/TimelineRow.qml" line="+88"/>
<source>React</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+16"/>
+ <location line="+18"/>
<source>Reply</source>
<translation type="unfinished"></translation>
</message>
@@ -814,7 +867,7 @@ Example: https://server.my:8787</source>
<context>
<name>TimelineView</name>
<message>
- <location filename="../qml/TimelineView.qml" line="+65"/>
+ <location filename="../qml/TimelineView.qml" line="+69"/>
<source>React</source>
<translation type="unfinished"></translation>
</message>
@@ -859,7 +912,7 @@ Example: https://server.my:8787</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+256"/>
+ <location line="+257"/>
<source>Close</source>
<translation type="unfinished"></translation>
</message>
@@ -921,7 +974,7 @@ Example: https://server.my:8787</source>
<context>
<name>UserSettingsPage</name>
<message>
- <location filename="../../src/UserSettingsPage.cpp" line="+335"/>
+ <location filename="../../src/UserSettingsPage.cpp" line="+339"/>
<source>Minimize to tray</source>
<translation>Ελαχιστοποίηση</translation>
</message>
@@ -976,6 +1029,11 @@ Example: https://server.my:8787</source>
<translation type="unfinished"></translation>
</message>
<message>
+ <location line="+1"/>
+ <source>Highlight message on hover</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
<location line="+5"/>
<source>Scale factor</source>
<translation type="unfinished"></translation>
@@ -1006,7 +1064,7 @@ Example: https://server.my:8787</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="-59"/>
+ <location line="-60"/>
<source>Session Keys</source>
<translation type="unfinished"></translation>
</message>
@@ -1026,22 +1084,22 @@ Example: https://server.my:8787</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="-63"/>
+ <location line="-64"/>
<source>GENERAL</source>
<translation>ΓΕΝΙΚΑ</translation>
</message>
<message>
- <location line="+25"/>
+ <location line="+26"/>
<source>INTERFACE</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+108"/>
+ <location line="+109"/>
<source>Emoji Font Family</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+158"/>
+ <location line="+163"/>
<source>Open Sessions File</source>
<translation type="unfinished"></translation>
</message>
diff --git a/resources/langs/nheko_en.ts b/resources/langs/nheko_en.ts
index d6f5336b..ea2241f1 100644
--- a/resources/langs/nheko_en.ts
+++ b/resources/langs/nheko_en.ts
@@ -18,7 +18,7 @@
</message>
<message>
<location line="+4"/>
- <location line="+898"/>
+ <location line="+921"/>
<source>Invited user: %1</source>
<translation>Invited user: %1</translation>
</message>
@@ -153,6 +153,12 @@
</message>
<message>
<location line="+2"/>
+ <source>Server Notices</source>
+ <comment>Tag translation for m.server_notice</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+2"/>
<location line="+2"/>
<source> (tag)</source>
<translation> (tag)</translation>
@@ -189,7 +195,7 @@
<context>
<name>EmojiPicker</name>
<message>
- <location filename="../qml/emoji/EmojiPicker.qml" line="+104"/>
+ <location filename="../qml/emoji/EmojiPicker.qml" line="+114"/>
<location line="+135"/>
<source>Search</source>
<translation type="unfinished"></translation>
@@ -494,12 +500,59 @@ Example: https://server.my:8787</translation>
<context>
<name>RoomInfoListItem</name>
<message>
- <location filename="../../src/RoomInfoListItem.cpp" line="+98"/>
+ <location filename="../../src/RoomInfoListItem.cpp" line="+102"/>
<source>Leave room</source>
<translation>Leave room</translation>
</message>
<message>
- <location line="+160"/>
+ <location line="+7"/>
+ <source>Tag room as:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+18"/>
+ <source>Favourite</source>
+ <comment>Standard matrix tag for favourites</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+3"/>
+ <source>Low Priority</source>
+ <comment>Standard matrix tag for low priority rooms</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+3"/>
+ <source>Server Notice</source>
+ <comment>Standard matrix tag for server notices</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+12"/>
+ <source>Adds or removes the specified tag.</source>
+ <comment>WhatsThis hint for tag menu actions</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+38"/>
+ <source>New tag...</source>
+ <comment>Add a new tag to the room</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+4"/>
+ <source>New Tag</source>
+ <comment>Tag name prompt title</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+1"/>
+ <source>Tag:</source>
+ <comment>Tag name prompt</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+173"/>
<source>Accept</source>
<translation>Accept</translation>
</message>
@@ -563,7 +616,7 @@ Example: https://server.my:8787</translation>
<context>
<name>TextInputWidget</name>
<message>
- <location filename="../../src/TextInputWidget.cpp" line="+459"/>
+ <location filename="../../src/TextInputWidget.cpp" line="+460"/>
<source>Send a file</source>
<translation>Send a file</translation>
</message>
@@ -584,7 +637,7 @@ Example: https://server.my:8787</translation>
<translation>Emoji</translation>
</message>
<message>
- <location line="+84"/>
+ <location line="+86"/>
<source>Select a file</source>
<translation>Select a file</translation>
</message>
@@ -602,7 +655,7 @@ Example: https://server.my:8787</translation>
<context>
<name>TimelineModel</name>
<message>
- <location filename="../../src/timeline/TimelineModel.cpp" line="+853"/>
+ <location filename="../../src/timeline/TimelineModel.cpp" line="+873"/>
<source>-- Decryption Error (failed to communicate with DB) --</source>
<comment>Placeholder, when the message can't be decrypted, because the DB access failed when trying to lookup the session.</comment>
<translation>-- Decryption Error (failed to communicate with DB) --</translation>
@@ -771,12 +824,12 @@ Example: https://server.my:8787</translation>
<translation>%1 redacted their knock.</translation>
</message>
<message>
- <location line="-1278"/>
+ <location line="-1286"/>
<source>You joined this room.</source>
<translation>You joined this room.</translation>
</message>
<message>
- <location line="+1280"/>
+ <location line="+1288"/>
<source>Rejected the knock from %1.</source>
<translation>Rejected the knock from %1.</translation>
</message>
@@ -800,12 +853,12 @@ Example: https://server.my:8787</translation>
<context>
<name>TimelineRow</name>
<message>
- <location filename="../qml/TimelineRow.qml" line="+84"/>
+ <location filename="../qml/TimelineRow.qml" line="+88"/>
<source>React</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+16"/>
+ <location line="+18"/>
<source>Reply</source>
<translation>Reply</translation>
</message>
@@ -818,7 +871,7 @@ Example: https://server.my:8787</translation>
<context>
<name>TimelineView</name>
<message>
- <location filename="../qml/TimelineView.qml" line="+65"/>
+ <location filename="../qml/TimelineView.qml" line="+69"/>
<source>React</source>
<translation type="unfinished"></translation>
</message>
@@ -863,7 +916,7 @@ Example: https://server.my:8787</translation>
<translation>No room open</translation>
</message>
<message>
- <location line="+256"/>
+ <location line="+257"/>
<source>Close</source>
<translation>Close</translation>
</message>
@@ -925,7 +978,7 @@ Example: https://server.my:8787</translation>
<context>
<name>UserSettingsPage</name>
<message>
- <location filename="../../src/UserSettingsPage.cpp" line="+335"/>
+ <location filename="../../src/UserSettingsPage.cpp" line="+339"/>
<source>Minimize to tray</source>
<translation>Minimize to tray</translation>
</message>
@@ -980,6 +1033,11 @@ Example: https://server.my:8787</translation>
<translation>Desktop notifications</translation>
</message>
<message>
+ <location line="+1"/>
+ <source>Highlight message on hover</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
<location line="+5"/>
<source>Scale factor</source>
<translation>Scale factor</translation>
@@ -1010,7 +1068,7 @@ Example: https://server.my:8787</translation>
<translation>Device Fingerprint</translation>
</message>
<message>
- <location line="-59"/>
+ <location line="-60"/>
<source>Session Keys</source>
<translation>Session Keys</translation>
</message>
@@ -1030,22 +1088,22 @@ Example: https://server.my:8787</translation>
<translation>ENCRYPTION</translation>
</message>
<message>
- <location line="-63"/>
+ <location line="-64"/>
<source>GENERAL</source>
<translation>GENERAL</translation>
</message>
<message>
- <location line="+25"/>
+ <location line="+26"/>
<source>INTERFACE</source>
<translation>INTERFACE</translation>
</message>
<message>
- <location line="+108"/>
+ <location line="+109"/>
<source>Emoji Font Family</source>
<translation>Emoji Font Family</translation>
</message>
<message>
- <location line="+158"/>
+ <location line="+163"/>
<source>Open Sessions File</source>
<translation>Open Sessions File</translation>
</message>
diff --git a/resources/langs/nheko_fi.ts b/resources/langs/nheko_fi.ts
index b8aa463f..01f78691 100644
--- a/resources/langs/nheko_fi.ts
+++ b/resources/langs/nheko_fi.ts
@@ -18,7 +18,7 @@
</message>
<message>
<location line="+4"/>
- <location line="+898"/>
+ <location line="+921"/>
<source>Invited user: %1</source>
<translation type="unfinished"></translation>
</message>
@@ -153,6 +153,12 @@
</message>
<message>
<location line="+2"/>
+ <source>Server Notices</source>
+ <comment>Tag translation for m.server_notice</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+2"/>
<location line="+2"/>
<source> (tag)</source>
<translation> (tag)</translation>
@@ -189,7 +195,7 @@
<context>
<name>EmojiPicker</name>
<message>
- <location filename="../qml/emoji/EmojiPicker.qml" line="+104"/>
+ <location filename="../qml/emoji/EmojiPicker.qml" line="+114"/>
<location line="+135"/>
<source>Search</source>
<translation type="unfinished"></translation>
@@ -490,12 +496,59 @@ Example: https://server.my:8787</source>
<context>
<name>RoomInfoListItem</name>
<message>
- <location filename="../../src/RoomInfoListItem.cpp" line="+98"/>
+ <location filename="../../src/RoomInfoListItem.cpp" line="+102"/>
<source>Leave room</source>
<translation>Poistu huoneesta</translation>
</message>
<message>
- <location line="+160"/>
+ <location line="+7"/>
+ <source>Tag room as:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+18"/>
+ <source>Favourite</source>
+ <comment>Standard matrix tag for favourites</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+3"/>
+ <source>Low Priority</source>
+ <comment>Standard matrix tag for low priority rooms</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+3"/>
+ <source>Server Notice</source>
+ <comment>Standard matrix tag for server notices</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+12"/>
+ <source>Adds or removes the specified tag.</source>
+ <comment>WhatsThis hint for tag menu actions</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+38"/>
+ <source>New tag...</source>
+ <comment>Add a new tag to the room</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+4"/>
+ <source>New Tag</source>
+ <comment>Tag name prompt title</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+1"/>
+ <source>Tag:</source>
+ <comment>Tag name prompt</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+173"/>
<source>Accept</source>
<translation>Hyväksy</translation>
</message>
@@ -559,7 +612,7 @@ Example: https://server.my:8787</source>
<context>
<name>TextInputWidget</name>
<message>
- <location filename="../../src/TextInputWidget.cpp" line="+459"/>
+ <location filename="../../src/TextInputWidget.cpp" line="+460"/>
<source>Send a file</source>
<translation>Lähetä tiedosto</translation>
</message>
@@ -580,7 +633,7 @@ Example: https://server.my:8787</source>
<translation>Emoji</translation>
</message>
<message>
- <location line="+84"/>
+ <location line="+86"/>
<source>Select a file</source>
<translation>Valitse tiedosto</translation>
</message>
@@ -598,7 +651,7 @@ Example: https://server.my:8787</source>
<context>
<name>TimelineModel</name>
<message>
- <location filename="../../src/timeline/TimelineModel.cpp" line="+853"/>
+ <location filename="../../src/timeline/TimelineModel.cpp" line="+873"/>
<source>-- Decryption Error (failed to communicate with DB) --</source>
<comment>Placeholder, when the message can't be decrypted, because the DB access failed when trying to lookup the session.</comment>
<translation type="unfinished">-- Virhe purkaessa salausta (tietokannan kanssa kommunikointi epäonnistui) --</translation>
@@ -767,12 +820,12 @@ Example: https://server.my:8787</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="-1278"/>
+ <location line="-1286"/>
<source>You joined this room.</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+1280"/>
+ <location line="+1288"/>
<source>Rejected the knock from %1.</source>
<translation type="unfinished"></translation>
</message>
@@ -796,12 +849,12 @@ Example: https://server.my:8787</source>
<context>
<name>TimelineRow</name>
<message>
- <location filename="../qml/TimelineRow.qml" line="+84"/>
+ <location filename="../qml/TimelineRow.qml" line="+88"/>
<source>React</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+16"/>
+ <location line="+18"/>
<source>Reply</source>
<translation type="unfinished"></translation>
</message>
@@ -814,7 +867,7 @@ Example: https://server.my:8787</source>
<context>
<name>TimelineView</name>
<message>
- <location filename="../qml/TimelineView.qml" line="+65"/>
+ <location filename="../qml/TimelineView.qml" line="+69"/>
<source>React</source>
<translation type="unfinished"></translation>
</message>
@@ -859,7 +912,7 @@ Example: https://server.my:8787</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+256"/>
+ <location line="+257"/>
<source>Close</source>
<translation type="unfinished">Sulje</translation>
</message>
@@ -921,7 +974,7 @@ Example: https://server.my:8787</source>
<context>
<name>UserSettingsPage</name>
<message>
- <location filename="../../src/UserSettingsPage.cpp" line="+335"/>
+ <location filename="../../src/UserSettingsPage.cpp" line="+339"/>
<source>Minimize to tray</source>
<translation>Pienennä ilmoitusalueelle</translation>
</message>
@@ -976,6 +1029,11 @@ Example: https://server.my:8787</source>
<translation>Työpöytäilmoitukset</translation>
</message>
<message>
+ <location line="+1"/>
+ <source>Highlight message on hover</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
<location line="+5"/>
<source>Scale factor</source>
<translation>Mittakerroin</translation>
@@ -1006,7 +1064,7 @@ Example: https://server.my:8787</source>
<translation>Laitteen sormenjälki</translation>
</message>
<message>
- <location line="-59"/>
+ <location line="-60"/>
<source>Session Keys</source>
<translation>Istunnon avaimet</translation>
</message>
@@ -1026,22 +1084,22 @@ Example: https://server.my:8787</source>
<translation>SALAUS</translation>
</message>
<message>
- <location line="-63"/>
+ <location line="-64"/>
<source>GENERAL</source>
<translation>YLEISET ASETUKSET</translation>
</message>
<message>
- <location line="+25"/>
+ <location line="+26"/>
<source>INTERFACE</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+108"/>
+ <location line="+109"/>
<source>Emoji Font Family</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+158"/>
+ <location line="+163"/>
<source>Open Sessions File</source>
<translation>Avaa Istuntoavaintiedosto</translation>
</message>
diff --git a/resources/langs/nheko_fr.ts b/resources/langs/nheko_fr.ts
index cc8c8238..2efe7777 100644
--- a/resources/langs/nheko_fr.ts
+++ b/resources/langs/nheko_fr.ts
@@ -18,7 +18,7 @@
</message>
<message>
<location line="+4"/>
- <location line="+898"/>
+ <location line="+921"/>
<source>Invited user: %1</source>
<translation type="unfinished"></translation>
</message>
@@ -153,6 +153,12 @@
</message>
<message>
<location line="+2"/>
+ <source>Server Notices</source>
+ <comment>Tag translation for m.server_notice</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+2"/>
<location line="+2"/>
<source> (tag)</source>
<translation type="unfinished"></translation>
@@ -189,7 +195,7 @@
<context>
<name>EmojiPicker</name>
<message>
- <location filename="../qml/emoji/EmojiPicker.qml" line="+104"/>
+ <location filename="../qml/emoji/EmojiPicker.qml" line="+114"/>
<location line="+135"/>
<source>Search</source>
<translation type="unfinished"></translation>
@@ -490,12 +496,59 @@ Example: https://server.my:8787</source>
<context>
<name>RoomInfoListItem</name>
<message>
- <location filename="../../src/RoomInfoListItem.cpp" line="+98"/>
+ <location filename="../../src/RoomInfoListItem.cpp" line="+102"/>
<source>Leave room</source>
<translation>Quitter le salon</translation>
</message>
<message>
- <location line="+160"/>
+ <location line="+7"/>
+ <source>Tag room as:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+18"/>
+ <source>Favourite</source>
+ <comment>Standard matrix tag for favourites</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+3"/>
+ <source>Low Priority</source>
+ <comment>Standard matrix tag for low priority rooms</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+3"/>
+ <source>Server Notice</source>
+ <comment>Standard matrix tag for server notices</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+12"/>
+ <source>Adds or removes the specified tag.</source>
+ <comment>WhatsThis hint for tag menu actions</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+38"/>
+ <source>New tag...</source>
+ <comment>Add a new tag to the room</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+4"/>
+ <source>New Tag</source>
+ <comment>Tag name prompt title</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+1"/>
+ <source>Tag:</source>
+ <comment>Tag name prompt</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+173"/>
<source>Accept</source>
<translation>Accepter</translation>
</message>
@@ -559,7 +612,7 @@ Example: https://server.my:8787</source>
<context>
<name>TextInputWidget</name>
<message>
- <location filename="../../src/TextInputWidget.cpp" line="+459"/>
+ <location filename="../../src/TextInputWidget.cpp" line="+460"/>
<source>Send a file</source>
<translation type="unfinished"></translation>
</message>
@@ -580,7 +633,7 @@ Example: https://server.my:8787</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+84"/>
+ <location line="+86"/>
<source>Select a file</source>
<translation>Sélectionnez un fichier</translation>
</message>
@@ -598,7 +651,7 @@ Example: https://server.my:8787</source>
<context>
<name>TimelineModel</name>
<message>
- <location filename="../../src/timeline/TimelineModel.cpp" line="+853"/>
+ <location filename="../../src/timeline/TimelineModel.cpp" line="+873"/>
<source>-- Decryption Error (failed to communicate with DB) --</source>
<comment>Placeholder, when the message can't be decrypted, because the DB access failed when trying to lookup the session.</comment>
<translation type="unfinished"></translation>
@@ -767,12 +820,12 @@ Example: https://server.my:8787</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="-1278"/>
+ <location line="-1286"/>
<source>You joined this room.</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+1280"/>
+ <location line="+1288"/>
<source>Rejected the knock from %1.</source>
<translation type="unfinished"></translation>
</message>
@@ -796,12 +849,12 @@ Example: https://server.my:8787</source>
<context>
<name>TimelineRow</name>
<message>
- <location filename="../qml/TimelineRow.qml" line="+84"/>
+ <location filename="../qml/TimelineRow.qml" line="+88"/>
<source>React</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+16"/>
+ <location line="+18"/>
<source>Reply</source>
<translation type="unfinished"></translation>
</message>
@@ -814,7 +867,7 @@ Example: https://server.my:8787</source>
<context>
<name>TimelineView</name>
<message>
- <location filename="../qml/TimelineView.qml" line="+65"/>
+ <location filename="../qml/TimelineView.qml" line="+69"/>
<source>React</source>
<translation type="unfinished"></translation>
</message>
@@ -859,7 +912,7 @@ Example: https://server.my:8787</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+256"/>
+ <location line="+257"/>
<source>Close</source>
<translation type="unfinished"></translation>
</message>
@@ -921,7 +974,7 @@ Example: https://server.my:8787</source>
<context>
<name>UserSettingsPage</name>
<message>
- <location filename="../../src/UserSettingsPage.cpp" line="+335"/>
+ <location filename="../../src/UserSettingsPage.cpp" line="+339"/>
<source>Minimize to tray</source>
<translation>Réduire à la barre des tâches</translation>
</message>
@@ -976,6 +1029,11 @@ Example: https://server.my:8787</source>
<translation type="unfinished"></translation>
</message>
<message>
+ <location line="+1"/>
+ <source>Highlight message on hover</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
<location line="+5"/>
<source>Scale factor</source>
<translation type="unfinished"></translation>
@@ -1006,7 +1064,7 @@ Example: https://server.my:8787</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="-59"/>
+ <location line="-60"/>
<source>Session Keys</source>
<translation type="unfinished"></translation>
</message>
@@ -1026,22 +1084,22 @@ Example: https://server.my:8787</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="-63"/>
+ <location line="-64"/>
<source>GENERAL</source>
<translation>GÉNÉRAL</translation>
</message>
<message>
- <location line="+25"/>
+ <location line="+26"/>
<source>INTERFACE</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+108"/>
+ <location line="+109"/>
<source>Emoji Font Family</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+158"/>
+ <location line="+163"/>
<source>Open Sessions File</source>
<translation type="unfinished"></translation>
</message>
diff --git a/resources/langs/nheko_ja.ts b/resources/langs/nheko_ja.ts
index aaba8bd4..40840af3 100644
--- a/resources/langs/nheko_ja.ts
+++ b/resources/langs/nheko_ja.ts
@@ -18,7 +18,7 @@
</message>
<message>
<location line="+4"/>
- <location line="+898"/>
+ <location line="+921"/>
<source>Invited user: %1</source>
<translation>招待されたユーザー: %1</translation>
</message>
@@ -153,6 +153,12 @@
</message>
<message>
<location line="+2"/>
+ <source>Server Notices</source>
+ <comment>Tag translation for m.server_notice</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+2"/>
<location line="+2"/>
<source> (tag)</source>
<translation> (タグ)</translation>
@@ -189,7 +195,7 @@
<context>
<name>EmojiPicker</name>
<message>
- <location filename="../qml/emoji/EmojiPicker.qml" line="+104"/>
+ <location filename="../qml/emoji/EmojiPicker.qml" line="+114"/>
<location line="+135"/>
<source>Search</source>
<translation type="unfinished"></translation>
@@ -490,12 +496,59 @@ Example: https://server.my:8787</source>
<context>
<name>RoomInfoListItem</name>
<message>
- <location filename="../../src/RoomInfoListItem.cpp" line="+98"/>
+ <location filename="../../src/RoomInfoListItem.cpp" line="+102"/>
<source>Leave room</source>
<translation>部屋を出る</translation>
</message>
<message>
- <location line="+160"/>
+ <location line="+7"/>
+ <source>Tag room as:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+18"/>
+ <source>Favourite</source>
+ <comment>Standard matrix tag for favourites</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+3"/>
+ <source>Low Priority</source>
+ <comment>Standard matrix tag for low priority rooms</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+3"/>
+ <source>Server Notice</source>
+ <comment>Standard matrix tag for server notices</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+12"/>
+ <source>Adds or removes the specified tag.</source>
+ <comment>WhatsThis hint for tag menu actions</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+38"/>
+ <source>New tag...</source>
+ <comment>Add a new tag to the room</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+4"/>
+ <source>New Tag</source>
+ <comment>Tag name prompt title</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+1"/>
+ <source>Tag:</source>
+ <comment>Tag name prompt</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+173"/>
<source>Accept</source>
<translation>容認</translation>
</message>
@@ -559,7 +612,7 @@ Example: https://server.my:8787</source>
<context>
<name>TextInputWidget</name>
<message>
- <location filename="../../src/TextInputWidget.cpp" line="+459"/>
+ <location filename="../../src/TextInputWidget.cpp" line="+460"/>
<source>Send a file</source>
<translation>ファイルを送信</translation>
</message>
@@ -580,7 +633,7 @@ Example: https://server.my:8787</source>
<translation>絵文字</translation>
</message>
<message>
- <location line="+84"/>
+ <location line="+86"/>
<source>Select a file</source>
<translation>ファイルを選択</translation>
</message>
@@ -598,7 +651,7 @@ Example: https://server.my:8787</source>
<context>
<name>TimelineModel</name>
<message>
- <location filename="../../src/timeline/TimelineModel.cpp" line="+853"/>
+ <location filename="../../src/timeline/TimelineModel.cpp" line="+873"/>
<source>-- Decryption Error (failed to communicate with DB) --</source>
<comment>Placeholder, when the message can't be decrypted, because the DB access failed when trying to lookup the session.</comment>
<translation>-- 復号エラー (データベースと通信できませんでした) --</translation>
@@ -766,12 +819,12 @@ Example: https://server.my:8787</source>
<translation>%1がノックを編集しました。</translation>
</message>
<message>
- <location line="-1278"/>
+ <location line="-1286"/>
<source>You joined this room.</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+1280"/>
+ <location line="+1288"/>
<source>Rejected the knock from %1.</source>
<translation>%1からのノックを拒否しました。</translation>
</message>
@@ -795,12 +848,12 @@ Example: https://server.my:8787</source>
<context>
<name>TimelineRow</name>
<message>
- <location filename="../qml/TimelineRow.qml" line="+84"/>
+ <location filename="../qml/TimelineRow.qml" line="+88"/>
<source>React</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+16"/>
+ <location line="+18"/>
<source>Reply</source>
<translation>返信</translation>
</message>
@@ -813,7 +866,7 @@ Example: https://server.my:8787</source>
<context>
<name>TimelineView</name>
<message>
- <location filename="../qml/TimelineView.qml" line="+65"/>
+ <location filename="../qml/TimelineView.qml" line="+69"/>
<source>React</source>
<translation type="unfinished"></translation>
</message>
@@ -858,7 +911,7 @@ Example: https://server.my:8787</source>
<translation>部屋が開いていません</translation>
</message>
<message>
- <location line="+256"/>
+ <location line="+257"/>
<source>Close</source>
<translation>閉じる</translation>
</message>
@@ -920,7 +973,7 @@ Example: https://server.my:8787</source>
<context>
<name>UserSettingsPage</name>
<message>
- <location filename="../../src/UserSettingsPage.cpp" line="+335"/>
+ <location filename="../../src/UserSettingsPage.cpp" line="+339"/>
<source>Minimize to tray</source>
<translation>トレイへ最小化</translation>
</message>
@@ -975,6 +1028,11 @@ Example: https://server.my:8787</source>
<translation>デスクトップ通知</translation>
</message>
<message>
+ <location line="+1"/>
+ <source>Highlight message on hover</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
<location line="+5"/>
<source>Scale factor</source>
<translation>尺度係数</translation>
@@ -1005,7 +1063,7 @@ Example: https://server.my:8787</source>
<translation>デバイスの指紋</translation>
</message>
<message>
- <location line="-59"/>
+ <location line="-60"/>
<source>Session Keys</source>
<translation>セッション鍵</translation>
</message>
@@ -1025,22 +1083,22 @@ Example: https://server.my:8787</source>
<translation>暗号化</translation>
</message>
<message>
- <location line="-63"/>
+ <location line="-64"/>
<source>GENERAL</source>
<translation>全般</translation>
</message>
<message>
- <location line="+25"/>
+ <location line="+26"/>
<source>INTERFACE</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+108"/>
+ <location line="+109"/>
<source>Emoji Font Family</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+158"/>
+ <location line="+163"/>
<source>Open Sessions File</source>
<translation>セッションファイルを開く</translation>
</message>
diff --git a/resources/langs/nheko_nl.ts b/resources/langs/nheko_nl.ts
index 8f5a9f21..3994c843 100644
--- a/resources/langs/nheko_nl.ts
+++ b/resources/langs/nheko_nl.ts
@@ -18,7 +18,7 @@
</message>
<message>
<location line="+4"/>
- <location line="+898"/>
+ <location line="+921"/>
<source>Invited user: %1</source>
<translation type="unfinished"></translation>
</message>
@@ -153,6 +153,12 @@
</message>
<message>
<location line="+2"/>
+ <source>Server Notices</source>
+ <comment>Tag translation for m.server_notice</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+2"/>
<location line="+2"/>
<source> (tag)</source>
<translation type="unfinished"></translation>
@@ -189,7 +195,7 @@
<context>
<name>EmojiPicker</name>
<message>
- <location filename="../qml/emoji/EmojiPicker.qml" line="+104"/>
+ <location filename="../qml/emoji/EmojiPicker.qml" line="+114"/>
<location line="+135"/>
<source>Search</source>
<translation type="unfinished"></translation>
@@ -490,12 +496,59 @@ Example: https://server.my:8787</source>
<context>
<name>RoomInfoListItem</name>
<message>
- <location filename="../../src/RoomInfoListItem.cpp" line="+98"/>
+ <location filename="../../src/RoomInfoListItem.cpp" line="+102"/>
<source>Leave room</source>
<translation>Kamer verlaten</translation>
</message>
<message>
- <location line="+160"/>
+ <location line="+7"/>
+ <source>Tag room as:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+18"/>
+ <source>Favourite</source>
+ <comment>Standard matrix tag for favourites</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+3"/>
+ <source>Low Priority</source>
+ <comment>Standard matrix tag for low priority rooms</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+3"/>
+ <source>Server Notice</source>
+ <comment>Standard matrix tag for server notices</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+12"/>
+ <source>Adds or removes the specified tag.</source>
+ <comment>WhatsThis hint for tag menu actions</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+38"/>
+ <source>New tag...</source>
+ <comment>Add a new tag to the room</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+4"/>
+ <source>New Tag</source>
+ <comment>Tag name prompt title</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+1"/>
+ <source>Tag:</source>
+ <comment>Tag name prompt</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+173"/>
<source>Accept</source>
<translation>Accepteren</translation>
</message>
@@ -559,7 +612,7 @@ Example: https://server.my:8787</source>
<context>
<name>TextInputWidget</name>
<message>
- <location filename="../../src/TextInputWidget.cpp" line="+459"/>
+ <location filename="../../src/TextInputWidget.cpp" line="+460"/>
<source>Send a file</source>
<translation type="unfinished"></translation>
</message>
@@ -580,7 +633,7 @@ Example: https://server.my:8787</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+84"/>
+ <location line="+86"/>
<source>Select a file</source>
<translation>Kies een bestand</translation>
</message>
@@ -598,7 +651,7 @@ Example: https://server.my:8787</source>
<context>
<name>TimelineModel</name>
<message>
- <location filename="../../src/timeline/TimelineModel.cpp" line="+853"/>
+ <location filename="../../src/timeline/TimelineModel.cpp" line="+873"/>
<source>-- Decryption Error (failed to communicate with DB) --</source>
<comment>Placeholder, when the message can't be decrypted, because the DB access failed when trying to lookup the session.</comment>
<translation type="unfinished"></translation>
@@ -767,12 +820,12 @@ Example: https://server.my:8787</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="-1278"/>
+ <location line="-1286"/>
<source>You joined this room.</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+1280"/>
+ <location line="+1288"/>
<source>Rejected the knock from %1.</source>
<translation type="unfinished"></translation>
</message>
@@ -796,12 +849,12 @@ Example: https://server.my:8787</source>
<context>
<name>TimelineRow</name>
<message>
- <location filename="../qml/TimelineRow.qml" line="+84"/>
+ <location filename="../qml/TimelineRow.qml" line="+88"/>
<source>React</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+16"/>
+ <location line="+18"/>
<source>Reply</source>
<translation type="unfinished"></translation>
</message>
@@ -814,7 +867,7 @@ Example: https://server.my:8787</source>
<context>
<name>TimelineView</name>
<message>
- <location filename="../qml/TimelineView.qml" line="+65"/>
+ <location filename="../qml/TimelineView.qml" line="+69"/>
<source>React</source>
<translation type="unfinished"></translation>
</message>
@@ -859,7 +912,7 @@ Example: https://server.my:8787</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+256"/>
+ <location line="+257"/>
<source>Close</source>
<translation type="unfinished"></translation>
</message>
@@ -921,7 +974,7 @@ Example: https://server.my:8787</source>
<context>
<name>UserSettingsPage</name>
<message>
- <location filename="../../src/UserSettingsPage.cpp" line="+335"/>
+ <location filename="../../src/UserSettingsPage.cpp" line="+339"/>
<source>Minimize to tray</source>
<translation>Minimaliseren naar systeemvak</translation>
</message>
@@ -976,6 +1029,11 @@ Example: https://server.my:8787</source>
<translation type="unfinished"></translation>
</message>
<message>
+ <location line="+1"/>
+ <source>Highlight message on hover</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
<location line="+5"/>
<source>Scale factor</source>
<translation type="unfinished"></translation>
@@ -1006,7 +1064,7 @@ Example: https://server.my:8787</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="-59"/>
+ <location line="-60"/>
<source>Session Keys</source>
<translation type="unfinished"></translation>
</message>
@@ -1026,22 +1084,22 @@ Example: https://server.my:8787</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="-63"/>
+ <location line="-64"/>
<source>GENERAL</source>
<translation>ALGEMEEN</translation>
</message>
<message>
- <location line="+25"/>
+ <location line="+26"/>
<source>INTERFACE</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+108"/>
+ <location line="+109"/>
<source>Emoji Font Family</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+158"/>
+ <location line="+163"/>
<source>Open Sessions File</source>
<translation type="unfinished"></translation>
</message>
diff --git a/resources/langs/nheko_pl.ts b/resources/langs/nheko_pl.ts
index 7e4495fa..ce1478f4 100644
--- a/resources/langs/nheko_pl.ts
+++ b/resources/langs/nheko_pl.ts
@@ -18,7 +18,7 @@
</message>
<message>
<location line="+4"/>
- <location line="+898"/>
+ <location line="+921"/>
<source>Invited user: %1</source>
<translation type="unfinished"></translation>
</message>
@@ -153,6 +153,12 @@
</message>
<message>
<location line="+2"/>
+ <source>Server Notices</source>
+ <comment>Tag translation for m.server_notice</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+2"/>
<location line="+2"/>
<source> (tag)</source>
<translation type="unfinished"></translation>
@@ -189,7 +195,7 @@
<context>
<name>EmojiPicker</name>
<message>
- <location filename="../qml/emoji/EmojiPicker.qml" line="+104"/>
+ <location filename="../qml/emoji/EmojiPicker.qml" line="+114"/>
<location line="+135"/>
<source>Search</source>
<translation type="unfinished"></translation>
@@ -490,12 +496,59 @@ Example: https://server.my:8787</source>
<context>
<name>RoomInfoListItem</name>
<message>
- <location filename="../../src/RoomInfoListItem.cpp" line="+98"/>
+ <location filename="../../src/RoomInfoListItem.cpp" line="+102"/>
<source>Leave room</source>
<translation>Opuść pokój</translation>
</message>
<message>
- <location line="+160"/>
+ <location line="+7"/>
+ <source>Tag room as:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+18"/>
+ <source>Favourite</source>
+ <comment>Standard matrix tag for favourites</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+3"/>
+ <source>Low Priority</source>
+ <comment>Standard matrix tag for low priority rooms</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+3"/>
+ <source>Server Notice</source>
+ <comment>Standard matrix tag for server notices</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+12"/>
+ <source>Adds or removes the specified tag.</source>
+ <comment>WhatsThis hint for tag menu actions</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+38"/>
+ <source>New tag...</source>
+ <comment>Add a new tag to the room</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+4"/>
+ <source>New Tag</source>
+ <comment>Tag name prompt title</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+1"/>
+ <source>Tag:</source>
+ <comment>Tag name prompt</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+173"/>
<source>Accept</source>
<translation>Akceptuj</translation>
</message>
@@ -559,7 +612,7 @@ Example: https://server.my:8787</source>
<context>
<name>TextInputWidget</name>
<message>
- <location filename="../../src/TextInputWidget.cpp" line="+459"/>
+ <location filename="../../src/TextInputWidget.cpp" line="+460"/>
<source>Send a file</source>
<translation>Wyślij plik</translation>
</message>
@@ -580,7 +633,7 @@ Example: https://server.my:8787</source>
<translation>Emoji</translation>
</message>
<message>
- <location line="+84"/>
+ <location line="+86"/>
<source>Select a file</source>
<translation>Wybierz plik</translation>
</message>
@@ -598,7 +651,7 @@ Example: https://server.my:8787</source>
<context>
<name>TimelineModel</name>
<message>
- <location filename="../../src/timeline/TimelineModel.cpp" line="+853"/>
+ <location filename="../../src/timeline/TimelineModel.cpp" line="+873"/>
<source>-- Decryption Error (failed to communicate with DB) --</source>
<comment>Placeholder, when the message can't be decrypted, because the DB access failed when trying to lookup the session.</comment>
<translation type="unfinished"></translation>
@@ -768,12 +821,12 @@ Example: https://server.my:8787</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="-1278"/>
+ <location line="-1286"/>
<source>You joined this room.</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+1280"/>
+ <location line="+1288"/>
<source>Rejected the knock from %1.</source>
<translation type="unfinished"></translation>
</message>
@@ -797,12 +850,12 @@ Example: https://server.my:8787</source>
<context>
<name>TimelineRow</name>
<message>
- <location filename="../qml/TimelineRow.qml" line="+84"/>
+ <location filename="../qml/TimelineRow.qml" line="+88"/>
<source>React</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+16"/>
+ <location line="+18"/>
<source>Reply</source>
<translation type="unfinished"></translation>
</message>
@@ -815,7 +868,7 @@ Example: https://server.my:8787</source>
<context>
<name>TimelineView</name>
<message>
- <location filename="../qml/TimelineView.qml" line="+65"/>
+ <location filename="../qml/TimelineView.qml" line="+69"/>
<source>React</source>
<translation type="unfinished"></translation>
</message>
@@ -860,7 +913,7 @@ Example: https://server.my:8787</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+256"/>
+ <location line="+257"/>
<source>Close</source>
<translation type="unfinished"></translation>
</message>
@@ -922,7 +975,7 @@ Example: https://server.my:8787</source>
<context>
<name>UserSettingsPage</name>
<message>
- <location filename="../../src/UserSettingsPage.cpp" line="+335"/>
+ <location filename="../../src/UserSettingsPage.cpp" line="+339"/>
<source>Minimize to tray</source>
<translation>Zminimalizuj do paska zadań</translation>
</message>
@@ -977,6 +1030,11 @@ Example: https://server.my:8787</source>
<translation>Powiadomienia na pulpicie</translation>
</message>
<message>
+ <location line="+1"/>
+ <source>Highlight message on hover</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
<location line="+5"/>
<source>Scale factor</source>
<translation type="unfinished"></translation>
@@ -1007,7 +1065,7 @@ Example: https://server.my:8787</source>
<translation>Odcisk palca urządzenia</translation>
</message>
<message>
- <location line="-59"/>
+ <location line="-60"/>
<source>Session Keys</source>
<translation type="unfinished"></translation>
</message>
@@ -1027,22 +1085,22 @@ Example: https://server.my:8787</source>
<translation>SZYFROWANIE</translation>
</message>
<message>
- <location line="-63"/>
+ <location line="-64"/>
<source>GENERAL</source>
<translation>OGÓLNE</translation>
</message>
<message>
- <location line="+25"/>
+ <location line="+26"/>
<source>INTERFACE</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+108"/>
+ <location line="+109"/>
<source>Emoji Font Family</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+158"/>
+ <location line="+163"/>
<source>Open Sessions File</source>
<translation type="unfinished"></translation>
</message>
diff --git a/resources/langs/nheko_ru.ts b/resources/langs/nheko_ru.ts
index 99a31673..42b0948e 100644
--- a/resources/langs/nheko_ru.ts
+++ b/resources/langs/nheko_ru.ts
@@ -18,7 +18,7 @@
</message>
<message>
<location line="+4"/>
- <location line="+898"/>
+ <location line="+921"/>
<source>Invited user: %1</source>
<translation type="unfinished"></translation>
</message>
@@ -153,6 +153,12 @@
</message>
<message>
<location line="+2"/>
+ <source>Server Notices</source>
+ <comment>Tag translation for m.server_notice</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+2"/>
<location line="+2"/>
<source> (tag)</source>
<translation> (тег)</translation>
@@ -189,7 +195,7 @@
<context>
<name>EmojiPicker</name>
<message>
- <location filename="../qml/emoji/EmojiPicker.qml" line="+104"/>
+ <location filename="../qml/emoji/EmojiPicker.qml" line="+114"/>
<location line="+135"/>
<source>Search</source>
<translation type="unfinished"></translation>
@@ -490,12 +496,59 @@ Example: https://server.my:8787</source>
<context>
<name>RoomInfoListItem</name>
<message>
- <location filename="../../src/RoomInfoListItem.cpp" line="+98"/>
+ <location filename="../../src/RoomInfoListItem.cpp" line="+102"/>
<source>Leave room</source>
<translation>Покинуть комнату</translation>
</message>
<message>
- <location line="+160"/>
+ <location line="+7"/>
+ <source>Tag room as:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+18"/>
+ <source>Favourite</source>
+ <comment>Standard matrix tag for favourites</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+3"/>
+ <source>Low Priority</source>
+ <comment>Standard matrix tag for low priority rooms</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+3"/>
+ <source>Server Notice</source>
+ <comment>Standard matrix tag for server notices</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+12"/>
+ <source>Adds or removes the specified tag.</source>
+ <comment>WhatsThis hint for tag menu actions</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+38"/>
+ <source>New tag...</source>
+ <comment>Add a new tag to the room</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+4"/>
+ <source>New Tag</source>
+ <comment>Tag name prompt title</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+1"/>
+ <source>Tag:</source>
+ <comment>Tag name prompt</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+173"/>
<source>Accept</source>
<translation>Принять</translation>
</message>
@@ -559,7 +612,7 @@ Example: https://server.my:8787</source>
<context>
<name>TextInputWidget</name>
<message>
- <location filename="../../src/TextInputWidget.cpp" line="+459"/>
+ <location filename="../../src/TextInputWidget.cpp" line="+460"/>
<source>Send a file</source>
<translation>Отправить файл</translation>
</message>
@@ -580,7 +633,7 @@ Example: https://server.my:8787</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+84"/>
+ <location line="+86"/>
<source>Select a file</source>
<translation>Выберите файл</translation>
</message>
@@ -598,7 +651,7 @@ Example: https://server.my:8787</source>
<context>
<name>TimelineModel</name>
<message>
- <location filename="../../src/timeline/TimelineModel.cpp" line="+853"/>
+ <location filename="../../src/timeline/TimelineModel.cpp" line="+873"/>
<source>-- Decryption Error (failed to communicate with DB) --</source>
<comment>Placeholder, when the message can't be decrypted, because the DB access failed when trying to lookup the session.</comment>
<translation type="unfinished"></translation>
@@ -768,12 +821,12 @@ Example: https://server.my:8787</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="-1278"/>
+ <location line="-1286"/>
<source>You joined this room.</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+1280"/>
+ <location line="+1288"/>
<source>Rejected the knock from %1.</source>
<translation type="unfinished"></translation>
</message>
@@ -797,12 +850,12 @@ Example: https://server.my:8787</source>
<context>
<name>TimelineRow</name>
<message>
- <location filename="../qml/TimelineRow.qml" line="+84"/>
+ <location filename="../qml/TimelineRow.qml" line="+88"/>
<source>React</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+16"/>
+ <location line="+18"/>
<source>Reply</source>
<translation type="unfinished"></translation>
</message>
@@ -815,7 +868,7 @@ Example: https://server.my:8787</source>
<context>
<name>TimelineView</name>
<message>
- <location filename="../qml/TimelineView.qml" line="+65"/>
+ <location filename="../qml/TimelineView.qml" line="+69"/>
<source>React</source>
<translation type="unfinished"></translation>
</message>
@@ -860,7 +913,7 @@ Example: https://server.my:8787</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+256"/>
+ <location line="+257"/>
<source>Close</source>
<translation type="unfinished">Закрыть</translation>
</message>
@@ -922,7 +975,7 @@ Example: https://server.my:8787</source>
<context>
<name>UserSettingsPage</name>
<message>
- <location filename="../../src/UserSettingsPage.cpp" line="+335"/>
+ <location filename="../../src/UserSettingsPage.cpp" line="+339"/>
<source>Minimize to tray</source>
<translation>Сворачивать в системную панель</translation>
</message>
@@ -977,6 +1030,11 @@ Example: https://server.my:8787</source>
<translation>Уведомления на рабочем столе</translation>
</message>
<message>
+ <location line="+1"/>
+ <source>Highlight message on hover</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
<location line="+5"/>
<source>Scale factor</source>
<translation>Масштаб</translation>
@@ -1007,7 +1065,7 @@ Example: https://server.my:8787</source>
<translation>Отпечаток устройства</translation>
</message>
<message>
- <location line="-59"/>
+ <location line="-60"/>
<source>Session Keys</source>
<translation>Ключи сеанса</translation>
</message>
@@ -1027,22 +1085,22 @@ Example: https://server.my:8787</source>
<translation>ШИФРОВАНИЕ</translation>
</message>
<message>
- <location line="-63"/>
+ <location line="-64"/>
<source>GENERAL</source>
<translation>ГЛАВНОЕ</translation>
</message>
<message>
- <location line="+25"/>
+ <location line="+26"/>
<source>INTERFACE</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+108"/>
+ <location line="+109"/>
<source>Emoji Font Family</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+158"/>
+ <location line="+163"/>
<source>Open Sessions File</source>
<translation>Открыть файл сеансов</translation>
</message>
diff --git a/resources/langs/nheko_zh_CN.ts b/resources/langs/nheko_zh_CN.ts
index 8afd6e3b..33598230 100644
--- a/resources/langs/nheko_zh_CN.ts
+++ b/resources/langs/nheko_zh_CN.ts
@@ -18,7 +18,7 @@
</message>
<message>
<location line="+4"/>
- <location line="+898"/>
+ <location line="+921"/>
<source>Invited user: %1</source>
<translation type="unfinished"></translation>
</message>
@@ -153,6 +153,12 @@
</message>
<message>
<location line="+2"/>
+ <source>Server Notices</source>
+ <comment>Tag translation for m.server_notice</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+2"/>
<location line="+2"/>
<source> (tag)</source>
<translation type="unfinished"></translation>
@@ -189,7 +195,7 @@
<context>
<name>EmojiPicker</name>
<message>
- <location filename="../qml/emoji/EmojiPicker.qml" line="+104"/>
+ <location filename="../qml/emoji/EmojiPicker.qml" line="+114"/>
<location line="+135"/>
<source>Search</source>
<translation type="unfinished"></translation>
@@ -490,12 +496,59 @@ Example: https://server.my:8787</source>
<context>
<name>RoomInfoListItem</name>
<message>
- <location filename="../../src/RoomInfoListItem.cpp" line="+98"/>
+ <location filename="../../src/RoomInfoListItem.cpp" line="+102"/>
<source>Leave room</source>
<translation>离开聊天室</translation>
</message>
<message>
- <location line="+160"/>
+ <location line="+7"/>
+ <source>Tag room as:</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+18"/>
+ <source>Favourite</source>
+ <comment>Standard matrix tag for favourites</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+3"/>
+ <source>Low Priority</source>
+ <comment>Standard matrix tag for low priority rooms</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+3"/>
+ <source>Server Notice</source>
+ <comment>Standard matrix tag for server notices</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+12"/>
+ <source>Adds or removes the specified tag.</source>
+ <comment>WhatsThis hint for tag menu actions</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+38"/>
+ <source>New tag...</source>
+ <comment>Add a new tag to the room</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+4"/>
+ <source>New Tag</source>
+ <comment>Tag name prompt title</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+1"/>
+ <source>Tag:</source>
+ <comment>Tag name prompt</comment>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+173"/>
<source>Accept</source>
<translation>接受</translation>
</message>
@@ -559,7 +612,7 @@ Example: https://server.my:8787</source>
<context>
<name>TextInputWidget</name>
<message>
- <location filename="../../src/TextInputWidget.cpp" line="+459"/>
+ <location filename="../../src/TextInputWidget.cpp" line="+460"/>
<source>Send a file</source>
<translation>发送一个文件</translation>
</message>
@@ -580,7 +633,7 @@ Example: https://server.my:8787</source>
<translation></translation>
</message>
<message>
- <location line="+84"/>
+ <location line="+86"/>
<source>Select a file</source>
<translation>选择一个文件</translation>
</message>
@@ -598,7 +651,7 @@ Example: https://server.my:8787</source>
<context>
<name>TimelineModel</name>
<message>
- <location filename="../../src/timeline/TimelineModel.cpp" line="+853"/>
+ <location filename="../../src/timeline/TimelineModel.cpp" line="+873"/>
<source>-- Decryption Error (failed to communicate with DB) --</source>
<comment>Placeholder, when the message can't be decrypted, because the DB access failed when trying to lookup the session.</comment>
<translation type="unfinished"></translation>
@@ -766,12 +819,12 @@ Example: https://server.my:8787</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="-1278"/>
+ <location line="-1286"/>
<source>You joined this room.</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+1280"/>
+ <location line="+1288"/>
<source>Rejected the knock from %1.</source>
<translation type="unfinished"></translation>
</message>
@@ -795,12 +848,12 @@ Example: https://server.my:8787</source>
<context>
<name>TimelineRow</name>
<message>
- <location filename="../qml/TimelineRow.qml" line="+84"/>
+ <location filename="../qml/TimelineRow.qml" line="+88"/>
<source>React</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+16"/>
+ <location line="+18"/>
<source>Reply</source>
<translation type="unfinished"></translation>
</message>
@@ -813,7 +866,7 @@ Example: https://server.my:8787</source>
<context>
<name>TimelineView</name>
<message>
- <location filename="../qml/TimelineView.qml" line="+65"/>
+ <location filename="../qml/TimelineView.qml" line="+69"/>
<source>React</source>
<translation type="unfinished"></translation>
</message>
@@ -858,7 +911,7 @@ Example: https://server.my:8787</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+256"/>
+ <location line="+257"/>
<source>Close</source>
<translation type="unfinished"></translation>
</message>
@@ -920,7 +973,7 @@ Example: https://server.my:8787</source>
<context>
<name>UserSettingsPage</name>
<message>
- <location filename="../../src/UserSettingsPage.cpp" line="+335"/>
+ <location filename="../../src/UserSettingsPage.cpp" line="+339"/>
<source>Minimize to tray</source>
<translation>最小化至托盘</translation>
</message>
@@ -975,6 +1028,11 @@ Example: https://server.my:8787</source>
<translation>桌面通知</translation>
</message>
<message>
+ <location line="+1"/>
+ <source>Highlight message on hover</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
<location line="+5"/>
<source>Scale factor</source>
<translation type="unfinished"></translation>
@@ -1005,7 +1063,7 @@ Example: https://server.my:8787</source>
<translation>设备指纹</translation>
</message>
<message>
- <location line="-59"/>
+ <location line="-60"/>
<source>Session Keys</source>
<translation>会话密钥</translation>
</message>
@@ -1025,22 +1083,22 @@ Example: https://server.my:8787</source>
<translation>加密</translation>
</message>
<message>
- <location line="-63"/>
+ <location line="-64"/>
<source>GENERAL</source>
<translation>通用</translation>
</message>
<message>
- <location line="+25"/>
+ <location line="+26"/>
<source>INTERFACE</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+108"/>
+ <location line="+109"/>
<source>Emoji Font Family</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+158"/>
+ <location line="+163"/>
<source>Open Sessions File</source>
<translation>打开会话文件</translation>
</message>
diff --git a/src/Cache.cpp b/src/Cache.cpp
index 3a388bb9..1061e60e 100644
--- a/src/Cache.cpp
+++ b/src/Cache.cpp
@@ -915,8 +915,8 @@ Cache::saveState(const mtx::responses::Sync &res)
bool has_new_tags = false;
for (const auto &evt : room.second.account_data.events) {
// for now only fetch tag events
- if (std::holds_alternative<Event<account_data::Tag>>(evt)) {
- auto tags_evt = std::get<Event<account_data::Tag>>(evt);
+ if (std::holds_alternative<Event<account_data::Tags>>(evt)) {
+ auto tags_evt = std::get<Event<account_data::Tags>>(evt);
has_new_tags = true;
for (const auto &tag : tags_evt.content.tags) {
updatedInfo.tags.push_back(tag.first);
@@ -1081,7 +1081,7 @@ Cache::roomsWithTagUpdates(const mtx::responses::Sync &res)
for (const auto &room : res.rooms.join) {
bool hasUpdates = false;
for (const auto &evt : room.second.account_data.events) {
- if (std::holds_alternative<Event<account_data::Tag>>(evt)) {
+ if (std::holds_alternative<Event<account_data::Tags>>(evt)) {
hasUpdates = true;
}
}
diff --git a/src/ChatPage.cpp b/src/ChatPage.cpp
index 6670532c..1e06da5d 100644
--- a/src/ChatPage.cpp
+++ b/src/ChatPage.cpp
@@ -301,6 +301,29 @@ ChatPage::ChatPage(QSharedPointer<UserSettings> userSettings, QWidget *parent)
connect(text_input_, &TextInputWidget::sendUnbanRoomRequest, this, &ChatPage::unbanUser);
connect(
+ text_input_, &TextInputWidget::changeRoomNick, this, [this](const QString &displayName) {
+ mtx::events::state::Member member;
+ member.display_name = displayName.toStdString();
+ member.avatar_url =
+ cache::avatarUrl(currentRoom(),
+ QString::fromStdString(http::client()->user_id().to_string()))
+ .toStdString();
+ member.membership = mtx::events::state::Membership::Join;
+
+ http::client()
+ ->send_state_event<mtx::events::state::Member,
+ mtx::events::EventType::RoomMember>(
+ currentRoom().toStdString(),
+ http::client()->user_id().to_string(),
+ member,
+ [](mtx::responses::EventId, mtx::http::RequestErr err) {
+ if (err)
+ nhlog::net()->error("Failed to set room displayname: {}",
+ err->matrix_error.error);
+ });
+ });
+
+ connect(
text_input_,
&TextInputWidget::uploadMedia,
this,
diff --git a/src/ChatPage.h b/src/ChatPage.h
index 94a5db59..b6b72319 100644
--- a/src/ChatPage.h
+++ b/src/ChatPage.h
@@ -77,6 +77,8 @@ public:
QSharedPointer<UserSettings> userSettings() { return userSettings_; }
void deleteConfigs();
+ CommunitiesList *communitiesList() { return communitiesList_; }
+
//! Calculate the width of the message timeline.
uint64_t timelineWidth();
bool isSideBarExpanded();
diff --git a/src/CommunitiesList.cpp b/src/CommunitiesList.cpp
index bb57ca40..8a938646 100644
--- a/src/CommunitiesList.cpp
+++ b/src/CommunitiesList.cpp
@@ -257,6 +257,18 @@ CommunitiesList::roomList(const QString &id) const
return {};
}
+std::vector<std::string>
+CommunitiesList::currentTags() const
+{
+ std::vector<std::string> tags;
+ for (auto &entry : communities_) {
+ CommunitiesListItem *item = entry.second.data();
+ if (item->is_tag())
+ tags.push_back(entry.first.mid(4).toStdString());
+ }
+ return tags;
+}
+
void
CommunitiesList::sortEntries()
{
diff --git a/src/CommunitiesList.h b/src/CommunitiesList.h
index d3cbeeff..63f7af07 100644
--- a/src/CommunitiesList.h
+++ b/src/CommunitiesList.h
@@ -28,6 +28,7 @@ public:
void syncTags(const std::map<QString, RoomInfo> &info);
void setTagsForRoom(const QString &id, const std::vector<std::string> &tags);
+ std::vector<std::string> currentTags() const;
signals:
void communityChanged(const QString &id);
diff --git a/src/CommunitiesListItem.cpp b/src/CommunitiesListItem.cpp
index 274271e5..c56c74a2 100644
--- a/src/CommunitiesListItem.cpp
+++ b/src/CommunitiesListItem.cpp
@@ -137,6 +137,8 @@ CommunitiesListItem::updateTooltip()
setToolTip(tr("Favourite rooms"));
else if (tag == "m.lowpriority")
setToolTip(tr("Low priority rooms"));
+ else if (tag == "m.server_notice")
+ setToolTip(tr("Server Notices", "Tag translation for m.server_notice"));
else if (tag.startsWith("u."))
setToolTip(tag.right(tag.size() - 2) + tr(" (tag)"));
else
diff --git a/src/RoomInfoListItem.cpp b/src/RoomInfoListItem.cpp
index ee8d532d..ad774360 100644
--- a/src/RoomInfoListItem.cpp
+++ b/src/RoomInfoListItem.cpp
@@ -16,6 +16,7 @@
*/
#include <QDateTime>
+#include <QInputDialog>
#include <QMouseEvent>
#include <QPainter>
#include <QSettings>
@@ -23,7 +24,10 @@
#include "AvatarProvider.h"
#include "Cache.h"
+#include "ChatPage.h"
#include "Config.h"
+#include "Logging.h"
+#include "MatrixClient.h"
#include "RoomInfoListItem.h"
#include "Splitter.h"
#include "UserSettingsPage.h"
@@ -97,7 +101,106 @@ RoomInfoListItem::init(QWidget *parent)
menu_ = new Menu(this);
leaveRoom_ = new QAction(tr("Leave room"), this);
connect(leaveRoom_, &QAction::triggered, this, [this]() { emit leaveRoom(roomId_); });
- menu_->addAction(leaveRoom_);
+
+ connect(menu_, &QMenu::aboutToShow, this, [this]() {
+ menu_->clear();
+ menu_->addAction(leaveRoom_);
+
+ menu_->addSection(QIcon(":/icons/icons/ui/tag.png"), tr("Tag room as:"));
+
+ auto roomInfo = cache::singleRoomInfo(roomId_.toStdString());
+
+ auto tags = ChatPage::instance()->communitiesList()->currentTags();
+
+ // add default tag, remove server notice tag
+ if (std::find(tags.begin(), tags.end(), "m.favourite") == tags.end())
+ tags.push_back("m.favourite");
+ if (std::find(tags.begin(), tags.end(), "m.lowpriority") == tags.end())
+ tags.push_back("m.lowpriority");
+ if (auto it = std::find(tags.begin(), tags.end(), "m.server_notice");
+ it != tags.end())
+ tags.erase(it);
+
+ for (const auto &tag : tags) {
+ QString tagName;
+ if (tag == "m.favourite")
+ tagName = tr("Favourite", "Standard matrix tag for favourites");
+ else if (tag == "m.lowpriority")
+ tagName =
+ tr("Low Priority", "Standard matrix tag for low priority rooms");
+ else if (tag == "m.server_notice")
+ tagName =
+ tr("Server Notice", "Standard matrix tag for server notices");
+ else if ((tag.size() > 2 && tag.substr(0, 2) == "u.") ||
+ tag.find(".") !=
+ std::string::npos) // tag manager creates tags without u., which
+ // is wrong, but we still want to display them
+ tagName = QString::fromStdString(tag.substr(2));
+
+ if (tagName.isEmpty())
+ continue;
+
+ auto tagAction = menu_->addAction(tagName);
+ tagAction->setCheckable(true);
+ tagAction->setWhatsThis(tr("Adds or removes the specified tag.",
+ "WhatsThis hint for tag menu actions"));
+
+ for (const auto &riTag : roomInfo.tags)
+ if (riTag == tag) {
+ tagAction->setChecked(true);
+ break;
+ }
+
+ connect(tagAction, &QAction::triggered, this, [this, tag](bool checked) {
+ if (checked)
+ http::client()->put_tag(
+ roomId_.toStdString(),
+ tag,
+ {},
+ [tag](mtx::http::RequestErr err) {
+ if (err) {
+ nhlog::ui()->error(
+ "Failed to add tag: {}, {}",
+ tag,
+ err->matrix_error.error);
+ }
+ });
+ else
+ http::client()->delete_tag(
+ roomId_.toStdString(),
+ tag,
+ [tag](mtx::http::RequestErr err) {
+ if (err) {
+ nhlog::ui()->error(
+ "Failed to delete tag: {}, {}",
+ tag,
+ err->matrix_error.error);
+ }
+ });
+ });
+ }
+
+ auto newTagAction = menu_->addAction(tr("New tag...", "Add a new tag to the room"));
+ connect(newTagAction, &QAction::triggered, this, [this]() {
+ QString tagName =
+ QInputDialog::getText(this,
+ tr("New Tag", "Tag name prompt title"),
+ tr("Tag:", "Tag name prompt"));
+ if (tagName.isEmpty())
+ return;
+
+ std::string tag = "u." + tagName.toStdString();
+
+ http::client()->put_tag(
+ roomId_.toStdString(), tag, {}, [tag](mtx::http::RequestErr err) {
+ if (err) {
+ nhlog::ui()->error("Failed to add tag: {}, {}",
+ tag,
+ err->matrix_error.error);
+ }
+ });
+ });
+ });
}
RoomInfoListItem::RoomInfoListItem(QString room_id,
diff --git a/src/TextInputWidget.cpp b/src/TextInputWidget.cpp
index af5c278e..3e3915bb 100644
--- a/src/TextInputWidget.cpp
+++ b/src/TextInputWidget.cpp
@@ -279,6 +279,7 @@ FilteredTextEdit::canInsertFromMimeData(const QMimeData *source) const
void
FilteredTextEdit::insertFromMimeData(const QMimeData *source)
{
+ qInfo() << "Got mime formats: \n" << source->formats();
const auto formats = source->formats().filter("/");
const auto image = formats.filter("image/", Qt::CaseInsensitive);
const auto audio = formats.filter("audio/", Qt::CaseInsensitive);
@@ -576,6 +577,8 @@ TextInputWidget::command(QString command, QString args)
sendBanRoomRequest(args.section(' ', 0, 0), args.section(' ', 1, -1));
} else if (command == "unban") {
sendUnbanRoomRequest(args.section(' ', 0, 0), args.section(' ', 1, -1));
+ } else if (command == "roomnick") {
+ changeRoomNick(args);
} else if (command == "shrug") {
sendTextMessage("¯\\_(ツ)_/¯");
} else if (command == "fliptable") {
diff --git a/src/TextInputWidget.h b/src/TextInputWidget.h
index addb61ec..a0105eb0 100644
--- a/src/TextInputWidget.h
+++ b/src/TextInputWidget.h
@@ -167,6 +167,7 @@ signals:
void sendKickRoomRequest(const QString &userid, const QString &reason);
void sendBanRoomRequest(const QString &userid, const QString &reason);
void sendUnbanRoomRequest(const QString &userid, const QString &reason);
+ void changeRoomNick(const QString &displayname);
void startedTyping();
void stoppedTyping();
diff --git a/src/dialogs/PreviewUploadOverlay.cpp b/src/dialogs/PreviewUploadOverlay.cpp
index 42558d67..20959b0a 100644
--- a/src/dialogs/PreviewUploadOverlay.cpp
+++ b/src/dialogs/PreviewUploadOverlay.cpp
@@ -136,6 +136,11 @@ PreviewUploadOverlay::setLabels(const QString &type, const QString &mime, uint64
void
PreviewUploadOverlay::setPreview(const QImage &src, const QString &mime)
{
+ nhlog::ui()->info("Pasting image with size: {}x{}, format: {}",
+ src.height(),
+ src.width(),
+ mime.toStdString());
+
auto const &split = mime.split('/');
auto const &type = split[1];
|