summary refs log tree commit diff
diff options
context:
space:
mode:
authorEmi Simpson <emi@alchemi.dev>2020-03-15 12:16:01 -0400
committerEmi Simpson <emi@alchemi.dev>2020-03-15 12:16:01 -0400
commit6bbe8ade0f11e0b9c2d0da9258e60b761ef32c89 (patch)
tree89890f58b49217eff57e3ec214df6b09eeeb0712
parentAdded toggle in the settings to ignore minor events (diff)
parentMerge pull request #145 from PC25/master (diff)
downloadnheko-6bbe8ade0f11e0b9c2d0da9258e60b761ef32c89.tar.xz
Made merge compatible with master
-rw-r--r--io.github.NhekoReborn.Nheko.json1
-rw-r--r--resources/langs/nheko_de.ts118
-rw-r--r--resources/langs/nheko_el.ts112
-rw-r--r--resources/langs/nheko_en.ts114
-rw-r--r--resources/langs/nheko_fi.ts114
-rw-r--r--resources/langs/nheko_fr.ts112
-rw-r--r--resources/langs/nheko_ja.ts114
-rw-r--r--resources/langs/nheko_nl.ts112
-rw-r--r--resources/langs/nheko_pl.ts112
-rw-r--r--resources/langs/nheko_ru.ts112
-rw-r--r--resources/langs/nheko_zh_CN.ts112
-rw-r--r--resources/qml/Avatar.qml7
-rw-r--r--resources/qml/TimelineRow.qml38
-rw-r--r--resources/qml/TimelineView.qml19
-rw-r--r--resources/qml/delegates/ImageMessage.qml2
-rw-r--r--src/ChatPage.cpp11
-rw-r--r--src/UserSettingsPage.cpp12
-rw-r--r--src/UserSettingsPage.h8
-rw-r--r--src/timeline/TimelineModel.cpp28
19 files changed, 687 insertions, 571 deletions
diff --git a/io.github.NhekoReborn.Nheko.json b/io.github.NhekoReborn.Nheko.json

index b444e507..c042854f 100644 --- a/io.github.NhekoReborn.Nheko.json +++ b/io.github.NhekoReborn.Nheko.json
@@ -10,7 +10,6 @@ "rename-appdata-file": "nheko.appdata.xml", "finish-args": [ "--device=dri", - "--filesystem=home", "--share=ipc", "--share=network", "--socket=pulseaudio", diff --git a/resources/langs/nheko_de.ts b/resources/langs/nheko_de.ts
index 8a982f5e..cfc58189 100644 --- a/resources/langs/nheko_de.ts +++ b/resources/langs/nheko_de.ts
@@ -4,15 +4,15 @@ <context> <name>ChatPage</name> <message> - <location filename="../../src/ChatPage.cpp" line="+223"/> + <location filename="../../src/ChatPage.cpp" line="+225"/> <source>Failed to invite user: %1</source> - <translation type="unfinished"></translation> + <translation>Nutzer konnte nicht eingeladen werden: %1</translation> </message> <message> <location line="+4"/> - <location line="+868"/> + <location line="+894"/> <source>Invited user: %1</source> - <translation type="unfinished"></translation> + <translation>Eingeladener Benutzer: %1</translation> </message> <message> <location line="-5"/> @@ -50,12 +50,12 @@ <translation type="unfinished"></translation> </message> <message> - <location line="-807"/> + <location line="-815"/> <source>Failed to upload media. Please try again.</source> <translation>Medienupload fehlgeschlagen. Bitte versuche es erneut.</translation> </message> <message> - <location line="+399"/> + <location line="+407"/> <source>Failed to restore OLM account. Please login again.</source> <translation>Wiederherstellung des OLM Accounts fehlgeschlagen. Bitte logge dich erneut ein.</translation> </message> @@ -479,13 +479,7 @@ <context> <name>TimelineModel</name> <message> - <location filename="../../src/timeline/TimelineModel.cpp" line="+714"/> - <source>-- Encrypted Event (No keys found for decryption) --</source> - <comment>Placeholder, when the message was not decrypted yet or can&apos;t be decrypted</comment> - <translation>-- verschlüsselter Event (keine Schlüssel zur Entschlüsselung gefunden) --</translation> - </message> - <message> - <location line="+15"/> + <location filename="../../src/timeline/TimelineModel.cpp" line="+733"/> <source>-- Decryption Error (failed to communicate with DB) --</source> <comment>Placeholder, when the message can&apos;t be decrypted, because the DB access failed when trying to lookup the session.</comment> <translation>-- Entschlüsselungsfehler (Fehler bei Kommunikation mit Datenbank) --</translation> @@ -497,19 +491,7 @@ <translation>-- Entschlüsselungsfehler (Fehler bei Suche nach megolm Schlüsseln in Datenbank) --</translation> </message> <message> - <location line="+12"/> - <source>-- Decryption Error (%1) --</source> - <comment>Placeholder, when the message can&apos;t be decrypted. In this case, the Olm decrytion returned an error, which is passed ad %1</comment> - <translation>-- Entschlüsselungsfehler (%1) --</translation> - </message> - <message> - <location line="+29"/> - <source>-- Encrypted Event (Unknown event type) --</source> - <comment>Placeholder, when the message was decrypted, but we couldn&apos;t parse it, because Nheko/mtxclient don&apos;t support that event type yet</comment> - <translation>-- verschlüsselter Event (Unbekannter Eventtyp) --</translation> - </message> - <message> - <location line="+47"/> + <location line="+88"/> <source>Message redaction failed: %1</source> <translation>Nachricht zurückziehen fehlgeschlagen: %1</translation> </message> @@ -533,9 +515,27 @@ <source>Save file</source> <translation>Datei speichern</translation> </message> + <message> + <location line="-582"/> + <source>-- Encrypted Event (No keys found for decryption) --</source> + <comment>Placeholder, when the message was not decrypted yet or can&apos;t be decrypted.</comment> + <translation type="unfinished">-- Verschlüsseltes Event (keine Schlüssel zur Entschlüsselung gefunden) --</translation> + </message> + <message> + <location line="+46"/> + <source>-- Decryption Error (%1) --</source> + <comment>Placeholder, when the message can&apos;t be decrypted. In this case, the Olm decrytion returned an error, which is passed as %1.</comment> + <translation type="unfinished">-- Entschlüsselungsfehler (%1) --</translation> + </message> + <message> + <location line="+29"/> + <source>-- Encrypted Event (Unknown event type) --</source> + <comment>Placeholder, when the message was decrypted, but we couldn&apos;t parse it, because Nheko/mtxclient don&apos;t support that event type yet.</comment> + <translation type="unfinished">-- Verschlüsseltes Event (Unbekannter Eventtyp) --</translation> + </message> <message numerus="yes"> - <location line="+129"/> - <source>%1 and %2 are typing</source> + <location line="+636"/> + <source>%1 and %2 are typing.</source> <comment>Multiple users are typing. First argument is a comma separated list of potentially multiple users. Second argument is the last user of that list. (If only one user is typing, %1 is empty. You should still use it in your string though to silence Qt warnings.)</comment> <translation> <numerusform>%1%2 tippt</numerusform> @@ -544,42 +544,42 @@ </message> <message> <location line="+68"/> - <source>%1 opened the room to the public</source> + <source>%1 opened the room to the public.</source> <translation type="unfinished"></translation> </message> <message> <location line="+2"/> - <source>%1 made this room require and invitation to join</source> + <source>%1 made this room require and invitation to join.</source> <translation type="unfinished"></translation> </message> <message> <location line="+23"/> - <source>%1 made the room open to guests</source> + <source>%1 made the room open to guests.</source> <translation type="unfinished"></translation> </message> <message> <location line="+2"/> - <source>%1 has closed the room to guest access</source> + <source>%1 has closed the room to guest access.</source> <translation type="unfinished"></translation> </message> <message> <location line="+23"/> - <source>%1 made the room history world readable. Events may be now read by non-joined people</source> + <source>%1 made the room history world readable. Events may be now read by non-joined people.</source> <translation type="unfinished"></translation> </message> <message> <location line="+4"/> - <source>%1 set the room history visible to members from this point on</source> + <source>%1 set the room history visible to members from this point on.</source> <translation type="unfinished"></translation> </message> <message> <location line="+3"/> - <source>%1 set the room history visible to members since they were invited</source> + <source>%1 set the room history visible to members since they were invited.</source> <translation type="unfinished"></translation> </message> <message> <location line="+3"/> - <source>%1 set the room history visible to members since they joined the room</source> + <source>%1 set the room history visible to members since they joined the room.</source> <translation type="unfinished"></translation> </message> <message> @@ -634,11 +634,16 @@ </message> <message> <location line="+2"/> - <source>Unbanned %1</source> - <translation>Hat die Verbannung von %1 zurückgezogen.</translation> + <source>Unbanned %1.</source> + <translation type="unfinished">Hat die Verbannung von %1 zurückgezogen.</translation> </message> <message> - <location line="+3"/> + <location line="+14"/> + <source>%1 was banned.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="-11"/> <source>%1 redacted their knock.</source> <translation>%1 hat das Anklopfen zurückgezogen.</translation> </message> @@ -654,12 +659,7 @@ <translation type="unfinished">%1 hat den Raum verlassen.</translation> </message> <message> - <location line="+7"/> - <source>%1 was banned</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+8"/> + <location line="+15"/> <source> Reason: %1</source> <translation type="unfinished"></translation> </message> @@ -672,7 +672,7 @@ <context> <name>TimelineRow</name> <message> - <location filename="../qml/TimelineRow.qml" line="+84"/> + <location filename="../qml/TimelineRow.qml" line="+69"/> <source>Reply</source> <translation>Antworten</translation> </message> @@ -685,7 +685,12 @@ <context> <name>TimelineView</name> <message> - <location filename="../qml/TimelineView.qml" line="+32"/> + <location filename="../qml/TimelineView.qml" line="+45"/> + <source>Reply</source> + <translation type="unfinished">Antworten</translation> + </message> + <message> + <location line="+4"/> <source>Read receipts</source> <translation type="unfinished">Lesebestätigungen</translation> </message> @@ -715,7 +720,7 @@ <translation>Kein Raum geöffnet</translation> </message> <message> - <location line="+239"/> + <location line="+241"/> <source>Close</source> <translation type="unfinished">Schließen</translation> </message> @@ -777,7 +782,7 @@ <context> <name>UserSettingsPage</name> <message> - <location filename="../../src/UserSettingsPage.cpp" line="+290"/> + <location filename="../../src/UserSettingsPage.cpp" line="+296"/> <source>Minimize to tray</source> <translation>Ins Benachrichtigungsfeld minimieren</translation> </message> @@ -798,6 +803,11 @@ </message> <message> <location line="+2"/> + <source>Show buttons in timeline</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+1"/> <source>Typing notifications</source> <translation>Schreibbenachrichtigungen</translation> </message> @@ -847,7 +857,7 @@ <translation>Gerätefingerabdruck</translation> </message> <message> - <location line="-56"/> + <location line="-57"/> <source>Session Keys</source> <translation>Sitzungsschlüssel</translation> </message> @@ -867,22 +877,22 @@ <translation>VERSCHLÜSSELUNG</translation> </message> <message> - <location line="-60"/> + <location line="-61"/> <source>GENERAL</source> <translation>ALLGEMEINES</translation> </message> <message> - <location line="+22"/> + <location line="+23"/> <source>INTERFACE</source> <translation type="unfinished"></translation> </message> <message> - <location line="+105"/> + <location line="+106"/> <source>Emoji Font Family</source> <translation type="unfinished"></translation> </message> <message> - <location line="+142"/> + <location line="+147"/> <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 0398f066..0d374cf5 100644 --- a/resources/langs/nheko_el.ts +++ b/resources/langs/nheko_el.ts
@@ -4,13 +4,13 @@ <context> <name>ChatPage</name> <message> - <location filename="../../src/ChatPage.cpp" line="+223"/> + <location filename="../../src/ChatPage.cpp" line="+225"/> <source>Failed to invite user: %1</source> <translation type="unfinished"></translation> </message> <message> <location line="+4"/> - <location line="+868"/> + <location line="+894"/> <source>Invited user: %1</source> <translation type="unfinished"></translation> </message> @@ -50,12 +50,12 @@ <translation type="unfinished"></translation> </message> <message> - <location line="-807"/> + <location line="-815"/> <source>Failed to upload media. Please try again.</source> <translation type="unfinished"></translation> </message> <message> - <location line="+399"/> + <location line="+407"/> <source>Failed to restore OLM account. Please login again.</source> <translation type="unfinished"></translation> </message> @@ -479,13 +479,7 @@ <context> <name>TimelineModel</name> <message> - <location filename="../../src/timeline/TimelineModel.cpp" line="+714"/> - <source>-- Encrypted Event (No keys found for decryption) --</source> - <comment>Placeholder, when the message was not decrypted yet or can&apos;t be decrypted</comment> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+15"/> + <location filename="../../src/timeline/TimelineModel.cpp" line="+733"/> <source>-- Decryption Error (failed to communicate with DB) --</source> <comment>Placeholder, when the message can&apos;t be decrypted, because the DB access failed when trying to lookup the session.</comment> <translation type="unfinished"></translation> @@ -497,19 +491,7 @@ <translation type="unfinished"></translation> </message> <message> - <location line="+12"/> - <source>-- Decryption Error (%1) --</source> - <comment>Placeholder, when the message can&apos;t be decrypted. In this case, the Olm decrytion returned an error, which is passed ad %1</comment> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+29"/> - <source>-- Encrypted Event (Unknown event type) --</source> - <comment>Placeholder, when the message was decrypted, but we couldn&apos;t parse it, because Nheko/mtxclient don&apos;t support that event type yet</comment> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+47"/> + <location line="+88"/> <source>Message redaction failed: %1</source> <translation type="unfinished"></translation> </message> @@ -533,9 +515,27 @@ <source>Save file</source> <translation type="unfinished"></translation> </message> + <message> + <location line="-582"/> + <source>-- Encrypted Event (No keys found for decryption) --</source> + <comment>Placeholder, when the message was not decrypted yet or can&apos;t be decrypted.</comment> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+46"/> + <source>-- Decryption Error (%1) --</source> + <comment>Placeholder, when the message can&apos;t be decrypted. In this case, the Olm decrytion returned an error, which is passed as %1.</comment> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+29"/> + <source>-- Encrypted Event (Unknown event type) --</source> + <comment>Placeholder, when the message was decrypted, but we couldn&apos;t parse it, because Nheko/mtxclient don&apos;t support that event type yet.</comment> + <translation type="unfinished"></translation> + </message> <message numerus="yes"> - <location line="+129"/> - <source>%1 and %2 are typing</source> + <location line="+636"/> + <source>%1 and %2 are typing.</source> <comment>Multiple users are typing. First argument is a comma separated list of potentially multiple users. Second argument is the last user of that list. (If only one user is typing, %1 is empty. You should still use it in your string though to silence Qt warnings.)</comment> <translation type="unfinished"> <numerusform></numerusform> @@ -544,42 +544,42 @@ </message> <message> <location line="+68"/> - <source>%1 opened the room to the public</source> + <source>%1 opened the room to the public.</source> <translation type="unfinished"></translation> </message> <message> <location line="+2"/> - <source>%1 made this room require and invitation to join</source> + <source>%1 made this room require and invitation to join.</source> <translation type="unfinished"></translation> </message> <message> <location line="+23"/> - <source>%1 made the room open to guests</source> + <source>%1 made the room open to guests.</source> <translation type="unfinished"></translation> </message> <message> <location line="+2"/> - <source>%1 has closed the room to guest access</source> + <source>%1 has closed the room to guest access.</source> <translation type="unfinished"></translation> </message> <message> <location line="+23"/> - <source>%1 made the room history world readable. Events may be now read by non-joined people</source> + <source>%1 made the room history world readable. Events may be now read by non-joined people.</source> <translation type="unfinished"></translation> </message> <message> <location line="+4"/> - <source>%1 set the room history visible to members from this point on</source> + <source>%1 set the room history visible to members from this point on.</source> <translation type="unfinished"></translation> </message> <message> <location line="+3"/> - <source>%1 set the room history visible to members since they were invited</source> + <source>%1 set the room history visible to members since they were invited.</source> <translation type="unfinished"></translation> </message> <message> <location line="+3"/> - <source>%1 set the room history visible to members since they joined the room</source> + <source>%1 set the room history visible to members since they joined the room.</source> <translation type="unfinished"></translation> </message> <message> @@ -634,11 +634,16 @@ </message> <message> <location line="+2"/> - <source>Unbanned %1</source> + <source>Unbanned %1.</source> <translation type="unfinished"></translation> </message> <message> - <location line="+3"/> + <location line="+14"/> + <source>%1 was banned.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="-11"/> <source>%1 redacted their knock.</source> <translation type="unfinished"></translation> </message> @@ -654,12 +659,7 @@ <translation type="unfinished"></translation> </message> <message> - <location line="+7"/> - <source>%1 was banned</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+8"/> + <location line="+15"/> <source> Reason: %1</source> <translation type="unfinished"></translation> </message> @@ -672,7 +672,7 @@ <context> <name>TimelineRow</name> <message> - <location filename="../qml/TimelineRow.qml" line="+84"/> + <location filename="../qml/TimelineRow.qml" line="+69"/> <source>Reply</source> <translation type="unfinished"></translation> </message> @@ -685,7 +685,12 @@ <context> <name>TimelineView</name> <message> - <location filename="../qml/TimelineView.qml" line="+32"/> + <location filename="../qml/TimelineView.qml" line="+45"/> + <source>Reply</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+4"/> <source>Read receipts</source> <translation type="unfinished"></translation> </message> @@ -715,7 +720,7 @@ <translation type="unfinished"></translation> </message> <message> - <location line="+239"/> + <location line="+241"/> <source>Close</source> <translation type="unfinished"></translation> </message> @@ -777,7 +782,7 @@ <context> <name>UserSettingsPage</name> <message> - <location filename="../../src/UserSettingsPage.cpp" line="+290"/> + <location filename="../../src/UserSettingsPage.cpp" line="+296"/> <source>Minimize to tray</source> <translation>Ελαχιστοποίηση</translation> </message> @@ -798,6 +803,11 @@ </message> <message> <location line="+2"/> + <source>Show buttons in timeline</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+1"/> <source>Typing notifications</source> <translation type="unfinished"></translation> </message> @@ -847,7 +857,7 @@ <translation type="unfinished"></translation> </message> <message> - <location line="-56"/> + <location line="-57"/> <source>Session Keys</source> <translation type="unfinished"></translation> </message> @@ -867,22 +877,22 @@ <translation type="unfinished"></translation> </message> <message> - <location line="-60"/> + <location line="-61"/> <source>GENERAL</source> <translation>ΓΕΝΙΚΑ</translation> </message> <message> - <location line="+22"/> + <location line="+23"/> <source>INTERFACE</source> <translation type="unfinished"></translation> </message> <message> - <location line="+105"/> + <location line="+106"/> <source>Emoji Font Family</source> <translation type="unfinished"></translation> </message> <message> - <location line="+142"/> + <location line="+147"/> <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 638e0a89..c97a4ac2 100644 --- a/resources/langs/nheko_en.ts +++ b/resources/langs/nheko_en.ts
@@ -4,13 +4,13 @@ <context> <name>ChatPage</name> <message> - <location filename="../../src/ChatPage.cpp" line="+223"/> + <location filename="../../src/ChatPage.cpp" line="+225"/> <source>Failed to invite user: %1</source> <translation>Failed to invite user: %1</translation> </message> <message> <location line="+4"/> - <location line="+868"/> + <location line="+894"/> <source>Invited user: %1</source> <translation>Invited user: %1</translation> </message> @@ -50,12 +50,12 @@ <translation>Unbanned user: %1</translation> </message> <message> - <location line="-807"/> + <location line="-815"/> <source>Failed to upload media. Please try again.</source> <translation>Failed to upload media. Please try again.</translation> </message> <message> - <location line="+399"/> + <location line="+407"/> <source>Failed to restore OLM account. Please login again.</source> <translation>Failed to restore OLM account. Please login again.</translation> </message> @@ -479,13 +479,7 @@ <context> <name>TimelineModel</name> <message> - <location filename="../../src/timeline/TimelineModel.cpp" line="+714"/> - <source>-- Encrypted Event (No keys found for decryption) --</source> - <comment>Placeholder, when the message was not decrypted yet or can&apos;t be decrypted</comment> - <translation>-- Encrypted Event (No keys found for decryption) --</translation> - </message> - <message> - <location line="+15"/> + <location filename="../../src/timeline/TimelineModel.cpp" line="+733"/> <source>-- Decryption Error (failed to communicate with DB) --</source> <comment>Placeholder, when the message can&apos;t be decrypted, because the DB access failed when trying to lookup the session.</comment> <translation>-- Decryption Error (failed to communicate with DB) --</translation> @@ -497,19 +491,7 @@ <translation>-- Decryption Error (failed to retrieve megolm keys from db) --</translation> </message> <message> - <location line="+12"/> - <source>-- Decryption Error (%1) --</source> - <comment>Placeholder, when the message can&apos;t be decrypted. In this case, the Olm decrytion returned an error, which is passed ad %1</comment> - <translation>-- Decryption Error (%1) --</translation> - </message> - <message> - <location line="+29"/> - <source>-- Encrypted Event (Unknown event type) --</source> - <comment>Placeholder, when the message was decrypted, but we couldn&apos;t parse it, because Nheko/mtxclient don&apos;t support that event type yet</comment> - <translation>-- Encrypted Event (Unknown event type) --</translation> - </message> - <message> - <location line="+47"/> + <location line="+88"/> <source>Message redaction failed: %1</source> <translation>Message redaction failed: %1</translation> </message> @@ -533,9 +515,27 @@ <source>Save file</source> <translation>Save file</translation> </message> + <message> + <location line="-582"/> + <source>-- Encrypted Event (No keys found for decryption) --</source> + <comment>Placeholder, when the message was not decrypted yet or can&apos;t be decrypted.</comment> + <translation type="unfinished">-- Encrypted Event (No keys found for decryption) --</translation> + </message> + <message> + <location line="+46"/> + <source>-- Decryption Error (%1) --</source> + <comment>Placeholder, when the message can&apos;t be decrypted. In this case, the Olm decrytion returned an error, which is passed as %1.</comment> + <translation type="unfinished">-- Decryption Error (%1) --</translation> + </message> + <message> + <location line="+29"/> + <source>-- Encrypted Event (Unknown event type) --</source> + <comment>Placeholder, when the message was decrypted, but we couldn&apos;t parse it, because Nheko/mtxclient don&apos;t support that event type yet.</comment> + <translation type="unfinished">-- Encrypted Event (Unknown event type) --</translation> + </message> <message numerus="yes"> - <location line="+129"/> - <source>%1 and %2 are typing</source> + <location line="+636"/> + <source>%1 and %2 are typing.</source> <comment>Multiple users are typing. First argument is a comma separated list of potentially multiple users. Second argument is the last user of that list. (If only one user is typing, %1 is empty. You should still use it in your string though to silence Qt warnings.)</comment> <translation> <numerusform>%1%2 is typing</numerusform> @@ -544,42 +544,42 @@ </message> <message> <location line="+68"/> - <source>%1 opened the room to the public</source> + <source>%1 opened the room to the public.</source> <translation type="unfinished"></translation> </message> <message> <location line="+2"/> - <source>%1 made this room require and invitation to join</source> + <source>%1 made this room require and invitation to join.</source> <translation type="unfinished"></translation> </message> <message> <location line="+23"/> - <source>%1 made the room open to guests</source> + <source>%1 made the room open to guests.</source> <translation type="unfinished"></translation> </message> <message> <location line="+2"/> - <source>%1 has closed the room to guest access</source> + <source>%1 has closed the room to guest access.</source> <translation type="unfinished"></translation> </message> <message> <location line="+23"/> - <source>%1 made the room history world readable. Events may be now read by non-joined people</source> + <source>%1 made the room history world readable. Events may be now read by non-joined people.</source> <translation type="unfinished"></translation> </message> <message> <location line="+4"/> - <source>%1 set the room history visible to members from this point on</source> + <source>%1 set the room history visible to members from this point on.</source> <translation type="unfinished"></translation> </message> <message> <location line="+3"/> - <source>%1 set the room history visible to members since they were invited</source> + <source>%1 set the room history visible to members since they were invited.</source> <translation type="unfinished"></translation> </message> <message> <location line="+3"/> - <source>%1 set the room history visible to members since they joined the room</source> + <source>%1 set the room history visible to members since they joined the room.</source> <translation type="unfinished"></translation> </message> <message> @@ -634,11 +634,16 @@ </message> <message> <location line="+2"/> - <source>Unbanned %1</source> - <translation>Unbanned %1.</translation> + <source>Unbanned %1.</source> + <translation type="unfinished">Unbanned %1.</translation> </message> <message> - <location line="+3"/> + <location line="+14"/> + <source>%1 was banned.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="-11"/> <source>%1 redacted their knock.</source> <translation>%1 redacted their knock.</translation> </message> @@ -654,12 +659,7 @@ <translation type="unfinished">%1 left after having already left!</translation> </message> <message> - <location line="+7"/> - <source>%1 was banned</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+8"/> + <location line="+15"/> <source> Reason: %1</source> <translation type="unfinished"></translation> </message> @@ -672,7 +672,7 @@ <context> <name>TimelineRow</name> <message> - <location filename="../qml/TimelineRow.qml" line="+84"/> + <location filename="../qml/TimelineRow.qml" line="+69"/> <source>Reply</source> <translation>Reply</translation> </message> @@ -685,7 +685,12 @@ <context> <name>TimelineView</name> <message> - <location filename="../qml/TimelineView.qml" line="+32"/> + <location filename="../qml/TimelineView.qml" line="+45"/> + <source>Reply</source> + <translation type="unfinished">Reply</translation> + </message> + <message> + <location line="+4"/> <source>Read receipts</source> <translation>Read receipts</translation> </message> @@ -715,7 +720,7 @@ <translation>No room open</translation> </message> <message> - <location line="+239"/> + <location line="+241"/> <source>Close</source> <translation>Close</translation> </message> @@ -777,7 +782,7 @@ <context> <name>UserSettingsPage</name> <message> - <location filename="../../src/UserSettingsPage.cpp" line="+290"/> + <location filename="../../src/UserSettingsPage.cpp" line="+296"/> <source>Minimize to tray</source> <translation>Minimize to tray</translation> </message> @@ -798,6 +803,11 @@ </message> <message> <location line="+2"/> + <source>Show buttons in timeline</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+1"/> <source>Typing notifications</source> <translation>Typing notifications</translation> </message> @@ -847,7 +857,7 @@ <translation>Device Fingerprint</translation> </message> <message> - <location line="-56"/> + <location line="-57"/> <source>Session Keys</source> <translation>Session Keys</translation> </message> @@ -867,22 +877,22 @@ <translation>ENCRYPTION</translation> </message> <message> - <location line="-60"/> + <location line="-61"/> <source>GENERAL</source> <translation>GENERAL</translation> </message> <message> - <location line="+22"/> + <location line="+23"/> <source>INTERFACE</source> <translation type="unfinished"></translation> </message> <message> - <location line="+105"/> + <location line="+106"/> <source>Emoji Font Family</source> <translation type="unfinished"></translation> </message> <message> - <location line="+142"/> + <location line="+147"/> <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 bf7dd6f0..8659d560 100644 --- a/resources/langs/nheko_fi.ts +++ b/resources/langs/nheko_fi.ts
@@ -4,13 +4,13 @@ <context> <name>ChatPage</name> <message> - <location filename="../../src/ChatPage.cpp" line="+223"/> + <location filename="../../src/ChatPage.cpp" line="+225"/> <source>Failed to invite user: %1</source> <translation type="unfinished"></translation> </message> <message> <location line="+4"/> - <location line="+868"/> + <location line="+894"/> <source>Invited user: %1</source> <translation type="unfinished"></translation> </message> @@ -50,12 +50,12 @@ <translation type="unfinished"></translation> </message> <message> - <location line="-807"/> + <location line="-815"/> <source>Failed to upload media. Please try again.</source> <translation type="unfinished"></translation> </message> <message> - <location line="+399"/> + <location line="+407"/> <source>Failed to restore OLM account. Please login again.</source> <translation>OLM-tilin palauttaminen epäonnistui. Ole hyvä ja kirjaudu sisään uudelleen.</translation> </message> @@ -479,13 +479,7 @@ <context> <name>TimelineModel</name> <message> - <location filename="../../src/timeline/TimelineModel.cpp" line="+714"/> - <source>-- Encrypted Event (No keys found for decryption) --</source> - <comment>Placeholder, when the message was not decrypted yet or can&apos;t be decrypted</comment> - <translation type="unfinished">-- Salattu viesti (salauksen purkuavaimia ei löydetty) --</translation> - </message> - <message> - <location line="+15"/> + <location filename="../../src/timeline/TimelineModel.cpp" line="+733"/> <source>-- Decryption Error (failed to communicate with DB) --</source> <comment>Placeholder, when the message can&apos;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> @@ -497,19 +491,7 @@ <translation type="unfinished">-- Virhe purkaessa salausta (megolm-avaimien hakeminen tietokannasta epäonnistui) --</translation> </message> <message> - <location line="+12"/> - <source>-- Decryption Error (%1) --</source> - <comment>Placeholder, when the message can&apos;t be decrypted. In this case, the Olm decrytion returned an error, which is passed ad %1</comment> - <translation type="unfinished">-- Virhe purkaessa salausta (%1) --</translation> - </message> - <message> - <location line="+29"/> - <source>-- Encrypted Event (Unknown event type) --</source> - <comment>Placeholder, when the message was decrypted, but we couldn&apos;t parse it, because Nheko/mtxclient don&apos;t support that event type yet</comment> - <translation type="unfinished">-- Salattu viesti (tuntematon viestityyppi) --</translation> - </message> - <message> - <location line="+47"/> + <location line="+88"/> <source>Message redaction failed: %1</source> <translation type="unfinished">Viestin poisto epäonnistui: %1</translation> </message> @@ -533,53 +515,71 @@ <source>Save file</source> <translation type="unfinished"></translation> </message> + <message> + <location line="-582"/> + <source>-- Encrypted Event (No keys found for decryption) --</source> + <comment>Placeholder, when the message was not decrypted yet or can&apos;t be decrypted.</comment> + <translation type="unfinished">-- Salattu viesti (salauksen purkuavaimia ei löydetty) --</translation> + </message> + <message> + <location line="+46"/> + <source>-- Decryption Error (%1) --</source> + <comment>Placeholder, when the message can&apos;t be decrypted. In this case, the Olm decrytion returned an error, which is passed as %1.</comment> + <translation type="unfinished">-- Virhe purkaessa salausta (%1) --</translation> + </message> + <message> + <location line="+29"/> + <source>-- Encrypted Event (Unknown event type) --</source> + <comment>Placeholder, when the message was decrypted, but we couldn&apos;t parse it, because Nheko/mtxclient don&apos;t support that event type yet.</comment> + <translation type="unfinished">-- Salattu viesti (tuntematon viestityyppi) --</translation> + </message> <message numerus="yes"> - <location line="+129"/> - <source>%1 and %2 are typing</source> + <location line="+636"/> + <source>%1 and %2 are typing.</source> <comment>Multiple users are typing. First argument is a comma separated list of potentially multiple users. Second argument is the last user of that list. (If only one user is typing, %1 is empty. You should still use it in your string though to silence Qt warnings.)</comment> - <translation type="unfinished"> + <translation> <numerusform>%1%2 kirjoittaa</numerusform> <numerusform>%1 ja %2 kirjoittavat</numerusform> </translation> </message> <message> <location line="+68"/> - <source>%1 opened the room to the public</source> + <source>%1 opened the room to the public.</source> <translation type="unfinished"></translation> </message> <message> <location line="+2"/> - <source>%1 made this room require and invitation to join</source> + <source>%1 made this room require and invitation to join.</source> <translation type="unfinished"></translation> </message> <message> <location line="+23"/> - <source>%1 made the room open to guests</source> + <source>%1 made the room open to guests.</source> <translation type="unfinished"></translation> </message> <message> <location line="+2"/> - <source>%1 has closed the room to guest access</source> + <source>%1 has closed the room to guest access.</source> <translation type="unfinished"></translation> </message> <message> <location line="+23"/> - <source>%1 made the room history world readable. Events may be now read by non-joined people</source> + <source>%1 made the room history world readable. Events may be now read by non-joined people.</source> <translation type="unfinished"></translation> </message> <message> <location line="+4"/> - <source>%1 set the room history visible to members from this point on</source> + <source>%1 set the room history visible to members from this point on.</source> <translation type="unfinished"></translation> </message> <message> <location line="+3"/> - <source>%1 set the room history visible to members since they were invited</source> + <source>%1 set the room history visible to members since they were invited.</source> <translation type="unfinished"></translation> </message> <message> <location line="+3"/> - <source>%1 set the room history visible to members since they joined the room</source> + <source>%1 set the room history visible to members since they joined the room.</source> <translation type="unfinished"></translation> </message> <message> @@ -634,11 +634,16 @@ </message> <message> <location line="+2"/> - <source>Unbanned %1</source> + <source>Unbanned %1.</source> <translation type="unfinished"></translation> </message> <message> - <location line="+3"/> + <location line="+14"/> + <source>%1 was banned.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="-11"/> <source>%1 redacted their knock.</source> <translation type="unfinished"></translation> </message> @@ -654,12 +659,7 @@ <translation type="unfinished"></translation> </message> <message> - <location line="+7"/> - <source>%1 was banned</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+8"/> + <location line="+15"/> <source> Reason: %1</source> <translation type="unfinished"></translation> </message> @@ -672,7 +672,7 @@ <context> <name>TimelineRow</name> <message> - <location filename="../qml/TimelineRow.qml" line="+84"/> + <location filename="../qml/TimelineRow.qml" line="+69"/> <source>Reply</source> <translation type="unfinished"></translation> </message> @@ -685,7 +685,12 @@ <context> <name>TimelineView</name> <message> - <location filename="../qml/TimelineView.qml" line="+32"/> + <location filename="../qml/TimelineView.qml" line="+45"/> + <source>Reply</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+4"/> <source>Read receipts</source> <translation type="unfinished">Lukukuittaukset</translation> </message> @@ -715,7 +720,7 @@ <translation type="unfinished"></translation> </message> <message> - <location line="+239"/> + <location line="+241"/> <source>Close</source> <translation type="unfinished">Sulje</translation> </message> @@ -777,7 +782,7 @@ <context> <name>UserSettingsPage</name> <message> - <location filename="../../src/UserSettingsPage.cpp" line="+290"/> + <location filename="../../src/UserSettingsPage.cpp" line="+296"/> <source>Minimize to tray</source> <translation>Pienennä ilmoitusalueelle</translation> </message> @@ -798,6 +803,11 @@ </message> <message> <location line="+2"/> + <source>Show buttons in timeline</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+1"/> <source>Typing notifications</source> <translation>Kirjoitusilmoitukset</translation> </message> @@ -847,7 +857,7 @@ <translation>Laitteen sormenjälki</translation> </message> <message> - <location line="-56"/> + <location line="-57"/> <source>Session Keys</source> <translation>Istunnon avaimet</translation> </message> @@ -867,22 +877,22 @@ <translation>SALAUS</translation> </message> <message> - <location line="-60"/> + <location line="-61"/> <source>GENERAL</source> <translation>YLEISET ASETUKSET</translation> </message> <message> - <location line="+22"/> + <location line="+23"/> <source>INTERFACE</source> <translation type="unfinished"></translation> </message> <message> - <location line="+105"/> + <location line="+106"/> <source>Emoji Font Family</source> <translation type="unfinished"></translation> </message> <message> - <location line="+142"/> + <location line="+147"/> <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 19236b11..6efe8252 100644 --- a/resources/langs/nheko_fr.ts +++ b/resources/langs/nheko_fr.ts
@@ -4,13 +4,13 @@ <context> <name>ChatPage</name> <message> - <location filename="../../src/ChatPage.cpp" line="+223"/> + <location filename="../../src/ChatPage.cpp" line="+225"/> <source>Failed to invite user: %1</source> <translation type="unfinished"></translation> </message> <message> <location line="+4"/> - <location line="+868"/> + <location line="+894"/> <source>Invited user: %1</source> <translation type="unfinished"></translation> </message> @@ -50,12 +50,12 @@ <translation type="unfinished"></translation> </message> <message> - <location line="-807"/> + <location line="-815"/> <source>Failed to upload media. Please try again.</source> <translation type="unfinished"></translation> </message> <message> - <location line="+399"/> + <location line="+407"/> <source>Failed to restore OLM account. Please login again.</source> <translation type="unfinished"></translation> </message> @@ -480,13 +480,7 @@ <context> <name>TimelineModel</name> <message> - <location filename="../../src/timeline/TimelineModel.cpp" line="+714"/> - <source>-- Encrypted Event (No keys found for decryption) --</source> - <comment>Placeholder, when the message was not decrypted yet or can&apos;t be decrypted</comment> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+15"/> + <location filename="../../src/timeline/TimelineModel.cpp" line="+733"/> <source>-- Decryption Error (failed to communicate with DB) --</source> <comment>Placeholder, when the message can&apos;t be decrypted, because the DB access failed when trying to lookup the session.</comment> <translation type="unfinished"></translation> @@ -498,19 +492,7 @@ <translation type="unfinished"></translation> </message> <message> - <location line="+12"/> - <source>-- Decryption Error (%1) --</source> - <comment>Placeholder, when the message can&apos;t be decrypted. In this case, the Olm decrytion returned an error, which is passed ad %1</comment> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+29"/> - <source>-- Encrypted Event (Unknown event type) --</source> - <comment>Placeholder, when the message was decrypted, but we couldn&apos;t parse it, because Nheko/mtxclient don&apos;t support that event type yet</comment> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+47"/> + <location line="+88"/> <source>Message redaction failed: %1</source> <translation type="unfinished"></translation> </message> @@ -534,9 +516,27 @@ <source>Save file</source> <translation type="unfinished"></translation> </message> + <message> + <location line="-582"/> + <source>-- Encrypted Event (No keys found for decryption) --</source> + <comment>Placeholder, when the message was not decrypted yet or can&apos;t be decrypted.</comment> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+46"/> + <source>-- Decryption Error (%1) --</source> + <comment>Placeholder, when the message can&apos;t be decrypted. In this case, the Olm decrytion returned an error, which is passed as %1.</comment> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+29"/> + <source>-- Encrypted Event (Unknown event type) --</source> + <comment>Placeholder, when the message was decrypted, but we couldn&apos;t parse it, because Nheko/mtxclient don&apos;t support that event type yet.</comment> + <translation type="unfinished"></translation> + </message> <message numerus="yes"> - <location line="+129"/> - <source>%1 and %2 are typing</source> + <location line="+636"/> + <source>%1 and %2 are typing.</source> <comment>Multiple users are typing. First argument is a comma separated list of potentially multiple users. Second argument is the last user of that list. (If only one user is typing, %1 is empty. You should still use it in your string though to silence Qt warnings.)</comment> <translation type="unfinished"> <numerusform></numerusform> @@ -545,42 +545,42 @@ </message> <message> <location line="+68"/> - <source>%1 opened the room to the public</source> + <source>%1 opened the room to the public.</source> <translation type="unfinished"></translation> </message> <message> <location line="+2"/> - <source>%1 made this room require and invitation to join</source> + <source>%1 made this room require and invitation to join.</source> <translation type="unfinished"></translation> </message> <message> <location line="+23"/> - <source>%1 made the room open to guests</source> + <source>%1 made the room open to guests.</source> <translation type="unfinished"></translation> </message> <message> <location line="+2"/> - <source>%1 has closed the room to guest access</source> + <source>%1 has closed the room to guest access.</source> <translation type="unfinished"></translation> </message> <message> <location line="+23"/> - <source>%1 made the room history world readable. Events may be now read by non-joined people</source> + <source>%1 made the room history world readable. Events may be now read by non-joined people.</source> <translation type="unfinished"></translation> </message> <message> <location line="+4"/> - <source>%1 set the room history visible to members from this point on</source> + <source>%1 set the room history visible to members from this point on.</source> <translation type="unfinished"></translation> </message> <message> <location line="+3"/> - <source>%1 set the room history visible to members since they were invited</source> + <source>%1 set the room history visible to members since they were invited.</source> <translation type="unfinished"></translation> </message> <message> <location line="+3"/> - <source>%1 set the room history visible to members since they joined the room</source> + <source>%1 set the room history visible to members since they joined the room.</source> <translation type="unfinished"></translation> </message> <message> @@ -635,11 +635,16 @@ </message> <message> <location line="+2"/> - <source>Unbanned %1</source> + <source>Unbanned %1.</source> <translation type="unfinished"></translation> </message> <message> - <location line="+3"/> + <location line="+14"/> + <source>%1 was banned.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="-11"/> <source>%1 redacted their knock.</source> <translation type="unfinished"></translation> </message> @@ -655,12 +660,7 @@ <translation type="unfinished"></translation> </message> <message> - <location line="+7"/> - <source>%1 was banned</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+8"/> + <location line="+15"/> <source> Reason: %1</source> <translation type="unfinished"></translation> </message> @@ -673,7 +673,7 @@ <context> <name>TimelineRow</name> <message> - <location filename="../qml/TimelineRow.qml" line="+84"/> + <location filename="../qml/TimelineRow.qml" line="+69"/> <source>Reply</source> <translation type="unfinished"></translation> </message> @@ -686,7 +686,12 @@ <context> <name>TimelineView</name> <message> - <location filename="../qml/TimelineView.qml" line="+32"/> + <location filename="../qml/TimelineView.qml" line="+45"/> + <source>Reply</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+4"/> <source>Read receipts</source> <translation type="unfinished">Accusés de lecture</translation> </message> @@ -716,7 +721,7 @@ <translation type="unfinished"></translation> </message> <message> - <location line="+239"/> + <location line="+241"/> <source>Close</source> <translation type="unfinished"></translation> </message> @@ -778,7 +783,7 @@ <context> <name>UserSettingsPage</name> <message> - <location filename="../../src/UserSettingsPage.cpp" line="+290"/> + <location filename="../../src/UserSettingsPage.cpp" line="+296"/> <source>Minimize to tray</source> <translation>Réduire à la barre des tâches</translation> </message> @@ -799,6 +804,11 @@ </message> <message> <location line="+2"/> + <source>Show buttons in timeline</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+1"/> <source>Typing notifications</source> <translation>Notifications d&apos;écriture</translation> </message> @@ -848,7 +858,7 @@ <translation type="unfinished"></translation> </message> <message> - <location line="-56"/> + <location line="-57"/> <source>Session Keys</source> <translation type="unfinished"></translation> </message> @@ -868,22 +878,22 @@ <translation type="unfinished"></translation> </message> <message> - <location line="-60"/> + <location line="-61"/> <source>GENERAL</source> <translation>GÉNÉRAL</translation> </message> <message> - <location line="+22"/> + <location line="+23"/> <source>INTERFACE</source> <translation type="unfinished"></translation> </message> <message> - <location line="+105"/> + <location line="+106"/> <source>Emoji Font Family</source> <translation type="unfinished"></translation> </message> <message> - <location line="+142"/> + <location line="+147"/> <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 c0891f1f..05528a42 100644 --- a/resources/langs/nheko_ja.ts +++ b/resources/langs/nheko_ja.ts
@@ -4,13 +4,13 @@ <context> <name>ChatPage</name> <message> - <location filename="../../src/ChatPage.cpp" line="+223"/> + <location filename="../../src/ChatPage.cpp" line="+225"/> <source>Failed to invite user: %1</source> <translation>ユーザーを招待できませんでした: %1</translation> </message> <message> <location line="+4"/> - <location line="+868"/> + <location line="+894"/> <source>Invited user: %1</source> <translation>招待されたユーザー: %1</translation> </message> @@ -50,12 +50,12 @@ <translation>永久追放を解除されたユーザー: %1</translation> </message> <message> - <location line="-807"/> + <location line="-815"/> <source>Failed to upload media. Please try again.</source> <translation>メディアをアップロードできませんでした。やり直して下さい。</translation> </message> <message> - <location line="+399"/> + <location line="+407"/> <source>Failed to restore OLM account. Please login again.</source> <translation>OLMアカウントを復元できませんでした。もう一度ログインして下さい。</translation> </message> @@ -479,13 +479,7 @@ <context> <name>TimelineModel</name> <message> - <location filename="../../src/timeline/TimelineModel.cpp" line="+714"/> - <source>-- Encrypted Event (No keys found for decryption) --</source> - <comment>Placeholder, when the message was not decrypted yet or can&apos;t be decrypted</comment> - <translation>-- 暗号化イベント (復号鍵が見つかりません) --</translation> - </message> - <message> - <location line="+15"/> + <location filename="../../src/timeline/TimelineModel.cpp" line="+733"/> <source>-- Decryption Error (failed to communicate with DB) --</source> <comment>Placeholder, when the message can&apos;t be decrypted, because the DB access failed when trying to lookup the session.</comment> <translation>-- 復号エラー (データベースと通信できませんでした) --</translation> @@ -497,19 +491,7 @@ <translation>-- 復号エラー (データベースからmegolm鍵を取得できませんでした) --</translation> </message> <message> - <location line="+12"/> - <source>-- Decryption Error (%1) --</source> - <comment>Placeholder, when the message can&apos;t be decrypted. In this case, the Olm decrytion returned an error, which is passed ad %1</comment> - <translation>-- 復号エラー (%1) --</translation> - </message> - <message> - <location line="+29"/> - <source>-- Encrypted Event (Unknown event type) --</source> - <comment>Placeholder, when the message was decrypted, but we couldn&apos;t parse it, because Nheko/mtxclient don&apos;t support that event type yet</comment> - <translation>-- 暗号化イベント (不明なイベント型です) --</translation> - </message> - <message> - <location line="+47"/> + <location line="+88"/> <source>Message redaction failed: %1</source> <translation>メッセージを編集できませんでした: %1</translation> </message> @@ -533,9 +515,27 @@ <source>Save file</source> <translation>ファイルを保存</translation> </message> + <message> + <location line="-582"/> + <source>-- Encrypted Event (No keys found for decryption) --</source> + <comment>Placeholder, when the message was not decrypted yet or can&apos;t be decrypted.</comment> + <translation type="unfinished">-- 暗号化イベント (復号鍵が見つかりません) --</translation> + </message> + <message> + <location line="+46"/> + <source>-- Decryption Error (%1) --</source> + <comment>Placeholder, when the message can&apos;t be decrypted. In this case, the Olm decrytion returned an error, which is passed as %1.</comment> + <translation type="unfinished">-- 復号エラー (%1) --</translation> + </message> + <message> + <location line="+29"/> + <source>-- Encrypted Event (Unknown event type) --</source> + <comment>Placeholder, when the message was decrypted, but we couldn&apos;t parse it, because Nheko/mtxclient don&apos;t support that event type yet.</comment> + <translation type="unfinished">-- 暗号化イベント (不明なイベント型です) --</translation> + </message> <message numerus="yes"> - <location line="+129"/> - <source>%1 and %2 are typing</source> + <location line="+636"/> + <source>%1 and %2 are typing.</source> <comment>Multiple users are typing. First argument is a comma separated list of potentially multiple users. Second argument is the last user of that list. (If only one user is typing, %1 is empty. You should still use it in your string though to silence Qt warnings.)</comment> <translation> <numerusform>%1%2が入力しています</numerusform> @@ -543,42 +543,42 @@ </message> <message> <location line="+68"/> - <source>%1 opened the room to the public</source> + <source>%1 opened the room to the public.</source> <translation type="unfinished"></translation> </message> <message> <location line="+2"/> - <source>%1 made this room require and invitation to join</source> + <source>%1 made this room require and invitation to join.</source> <translation type="unfinished"></translation> </message> <message> <location line="+23"/> - <source>%1 made the room open to guests</source> + <source>%1 made the room open to guests.</source> <translation type="unfinished"></translation> </message> <message> <location line="+2"/> - <source>%1 has closed the room to guest access</source> + <source>%1 has closed the room to guest access.</source> <translation type="unfinished"></translation> </message> <message> <location line="+23"/> - <source>%1 made the room history world readable. Events may be now read by non-joined people</source> + <source>%1 made the room history world readable. Events may be now read by non-joined people.</source> <translation type="unfinished"></translation> </message> <message> <location line="+4"/> - <source>%1 set the room history visible to members from this point on</source> + <source>%1 set the room history visible to members from this point on.</source> <translation type="unfinished"></translation> </message> <message> <location line="+3"/> - <source>%1 set the room history visible to members since they were invited</source> + <source>%1 set the room history visible to members since they were invited.</source> <translation type="unfinished"></translation> </message> <message> <location line="+3"/> - <source>%1 set the room history visible to members since they joined the room</source> + <source>%1 set the room history visible to members since they joined the room.</source> <translation type="unfinished"></translation> </message> <message> @@ -633,11 +633,16 @@ </message> <message> <location line="+2"/> - <source>Unbanned %1</source> - <translation>%1の永久追放を解除しました</translation> + <source>Unbanned %1.</source> + <translation type="unfinished">%1 の永久追放を解除しました。</translation> </message> <message> - <location line="+3"/> + <location line="+14"/> + <source>%1 was banned.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="-11"/> <source>%1 redacted their knock.</source> <translation>%1がノックを編集しました。</translation> </message> @@ -653,12 +658,7 @@ <translation type="unfinished">退出済みの%1が退出しました!</translation> </message> <message> - <location line="+7"/> - <source>%1 was banned</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+8"/> + <location line="+15"/> <source> Reason: %1</source> <translation type="unfinished"></translation> </message> @@ -671,7 +671,7 @@ <context> <name>TimelineRow</name> <message> - <location filename="../qml/TimelineRow.qml" line="+84"/> + <location filename="../qml/TimelineRow.qml" line="+69"/> <source>Reply</source> <translation>返信</translation> </message> @@ -684,7 +684,12 @@ <context> <name>TimelineView</name> <message> - <location filename="../qml/TimelineView.qml" line="+32"/> + <location filename="../qml/TimelineView.qml" line="+45"/> + <source>Reply</source> + <translation type="unfinished">返信</translation> + </message> + <message> + <location line="+4"/> <source>Read receipts</source> <translation>開封確認</translation> </message> @@ -714,7 +719,7 @@ <translation>部屋が開いていません</translation> </message> <message> - <location line="+239"/> + <location line="+241"/> <source>Close</source> <translation>閉じる</translation> </message> @@ -776,7 +781,7 @@ <context> <name>UserSettingsPage</name> <message> - <location filename="../../src/UserSettingsPage.cpp" line="+290"/> + <location filename="../../src/UserSettingsPage.cpp" line="+296"/> <source>Minimize to tray</source> <translation>トレイへ最小化</translation> </message> @@ -797,6 +802,11 @@ </message> <message> <location line="+2"/> + <source>Show buttons in timeline</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+1"/> <source>Typing notifications</source> <translation>入力状態の通知</translation> </message> @@ -846,7 +856,7 @@ <translation>デバイスの指紋</translation> </message> <message> - <location line="-56"/> + <location line="-57"/> <source>Session Keys</source> <translation>セッション鍵</translation> </message> @@ -866,22 +876,22 @@ <translation>暗号化</translation> </message> <message> - <location line="-60"/> + <location line="-61"/> <source>GENERAL</source> <translation>全般</translation> </message> <message> - <location line="+22"/> + <location line="+23"/> <source>INTERFACE</source> <translation type="unfinished"></translation> </message> <message> - <location line="+105"/> + <location line="+106"/> <source>Emoji Font Family</source> <translation type="unfinished"></translation> </message> <message> - <location line="+142"/> + <location line="+147"/> <source>Open Sessions File</source> <translation>セッションファイルを開く</translation> </message> diff --git a/resources/langs/nheko_nl.ts b/resources/langs/nheko_nl.ts
index 3cb64e6c..79e82714 100644 --- a/resources/langs/nheko_nl.ts +++ b/resources/langs/nheko_nl.ts
@@ -4,13 +4,13 @@ <context> <name>ChatPage</name> <message> - <location filename="../../src/ChatPage.cpp" line="+223"/> + <location filename="../../src/ChatPage.cpp" line="+225"/> <source>Failed to invite user: %1</source> <translation type="unfinished"></translation> </message> <message> <location line="+4"/> - <location line="+868"/> + <location line="+894"/> <source>Invited user: %1</source> <translation type="unfinished"></translation> </message> @@ -50,12 +50,12 @@ <translation type="unfinished"></translation> </message> <message> - <location line="-807"/> + <location line="-815"/> <source>Failed to upload media. Please try again.</source> <translation type="unfinished"></translation> </message> <message> - <location line="+399"/> + <location line="+407"/> <source>Failed to restore OLM account. Please login again.</source> <translation type="unfinished"></translation> </message> @@ -479,13 +479,7 @@ <context> <name>TimelineModel</name> <message> - <location filename="../../src/timeline/TimelineModel.cpp" line="+714"/> - <source>-- Encrypted Event (No keys found for decryption) --</source> - <comment>Placeholder, when the message was not decrypted yet or can&apos;t be decrypted</comment> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+15"/> + <location filename="../../src/timeline/TimelineModel.cpp" line="+733"/> <source>-- Decryption Error (failed to communicate with DB) --</source> <comment>Placeholder, when the message can&apos;t be decrypted, because the DB access failed when trying to lookup the session.</comment> <translation type="unfinished"></translation> @@ -497,19 +491,7 @@ <translation type="unfinished"></translation> </message> <message> - <location line="+12"/> - <source>-- Decryption Error (%1) --</source> - <comment>Placeholder, when the message can&apos;t be decrypted. In this case, the Olm decrytion returned an error, which is passed ad %1</comment> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+29"/> - <source>-- Encrypted Event (Unknown event type) --</source> - <comment>Placeholder, when the message was decrypted, but we couldn&apos;t parse it, because Nheko/mtxclient don&apos;t support that event type yet</comment> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+47"/> + <location line="+88"/> <source>Message redaction failed: %1</source> <translation type="unfinished"></translation> </message> @@ -533,9 +515,27 @@ <source>Save file</source> <translation type="unfinished"></translation> </message> + <message> + <location line="-582"/> + <source>-- Encrypted Event (No keys found for decryption) --</source> + <comment>Placeholder, when the message was not decrypted yet or can&apos;t be decrypted.</comment> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+46"/> + <source>-- Decryption Error (%1) --</source> + <comment>Placeholder, when the message can&apos;t be decrypted. In this case, the Olm decrytion returned an error, which is passed as %1.</comment> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+29"/> + <source>-- Encrypted Event (Unknown event type) --</source> + <comment>Placeholder, when the message was decrypted, but we couldn&apos;t parse it, because Nheko/mtxclient don&apos;t support that event type yet.</comment> + <translation type="unfinished"></translation> + </message> <message numerus="yes"> - <location line="+129"/> - <source>%1 and %2 are typing</source> + <location line="+636"/> + <source>%1 and %2 are typing.</source> <comment>Multiple users are typing. First argument is a comma separated list of potentially multiple users. Second argument is the last user of that list. (If only one user is typing, %1 is empty. You should still use it in your string though to silence Qt warnings.)</comment> <translation type="unfinished"> <numerusform></numerusform> @@ -544,42 +544,42 @@ </message> <message> <location line="+68"/> - <source>%1 opened the room to the public</source> + <source>%1 opened the room to the public.</source> <translation type="unfinished"></translation> </message> <message> <location line="+2"/> - <source>%1 made this room require and invitation to join</source> + <source>%1 made this room require and invitation to join.</source> <translation type="unfinished"></translation> </message> <message> <location line="+23"/> - <source>%1 made the room open to guests</source> + <source>%1 made the room open to guests.</source> <translation type="unfinished"></translation> </message> <message> <location line="+2"/> - <source>%1 has closed the room to guest access</source> + <source>%1 has closed the room to guest access.</source> <translation type="unfinished"></translation> </message> <message> <location line="+23"/> - <source>%1 made the room history world readable. Events may be now read by non-joined people</source> + <source>%1 made the room history world readable. Events may be now read by non-joined people.</source> <translation type="unfinished"></translation> </message> <message> <location line="+4"/> - <source>%1 set the room history visible to members from this point on</source> + <source>%1 set the room history visible to members from this point on.</source> <translation type="unfinished"></translation> </message> <message> <location line="+3"/> - <source>%1 set the room history visible to members since they were invited</source> + <source>%1 set the room history visible to members since they were invited.</source> <translation type="unfinished"></translation> </message> <message> <location line="+3"/> - <source>%1 set the room history visible to members since they joined the room</source> + <source>%1 set the room history visible to members since they joined the room.</source> <translation type="unfinished"></translation> </message> <message> @@ -634,11 +634,16 @@ </message> <message> <location line="+2"/> - <source>Unbanned %1</source> + <source>Unbanned %1.</source> <translation type="unfinished"></translation> </message> <message> - <location line="+3"/> + <location line="+14"/> + <source>%1 was banned.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="-11"/> <source>%1 redacted their knock.</source> <translation type="unfinished"></translation> </message> @@ -654,12 +659,7 @@ <translation type="unfinished"></translation> </message> <message> - <location line="+7"/> - <source>%1 was banned</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+8"/> + <location line="+15"/> <source> Reason: %1</source> <translation type="unfinished"></translation> </message> @@ -672,7 +672,7 @@ <context> <name>TimelineRow</name> <message> - <location filename="../qml/TimelineRow.qml" line="+84"/> + <location filename="../qml/TimelineRow.qml" line="+69"/> <source>Reply</source> <translation type="unfinished"></translation> </message> @@ -685,7 +685,12 @@ <context> <name>TimelineView</name> <message> - <location filename="../qml/TimelineView.qml" line="+32"/> + <location filename="../qml/TimelineView.qml" line="+45"/> + <source>Reply</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+4"/> <source>Read receipts</source> <translation type="unfinished">Leesbevestigingen</translation> </message> @@ -715,7 +720,7 @@ <translation type="unfinished"></translation> </message> <message> - <location line="+239"/> + <location line="+241"/> <source>Close</source> <translation type="unfinished"></translation> </message> @@ -777,7 +782,7 @@ <context> <name>UserSettingsPage</name> <message> - <location filename="../../src/UserSettingsPage.cpp" line="+290"/> + <location filename="../../src/UserSettingsPage.cpp" line="+296"/> <source>Minimize to tray</source> <translation>Minimaliseren naar systeemvak</translation> </message> @@ -798,6 +803,11 @@ </message> <message> <location line="+2"/> + <source>Show buttons in timeline</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+1"/> <source>Typing notifications</source> <translation>Meldingen bij typen van berichten</translation> </message> @@ -847,7 +857,7 @@ <translation type="unfinished"></translation> </message> <message> - <location line="-56"/> + <location line="-57"/> <source>Session Keys</source> <translation type="unfinished"></translation> </message> @@ -867,22 +877,22 @@ <translation type="unfinished"></translation> </message> <message> - <location line="-60"/> + <location line="-61"/> <source>GENERAL</source> <translation>ALGEMEEN</translation> </message> <message> - <location line="+22"/> + <location line="+23"/> <source>INTERFACE</source> <translation type="unfinished"></translation> </message> <message> - <location line="+105"/> + <location line="+106"/> <source>Emoji Font Family</source> <translation type="unfinished"></translation> </message> <message> - <location line="+142"/> + <location line="+147"/> <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 f6764e82..774868db 100644 --- a/resources/langs/nheko_pl.ts +++ b/resources/langs/nheko_pl.ts
@@ -4,13 +4,13 @@ <context> <name>ChatPage</name> <message> - <location filename="../../src/ChatPage.cpp" line="+223"/> + <location filename="../../src/ChatPage.cpp" line="+225"/> <source>Failed to invite user: %1</source> <translation type="unfinished"></translation> </message> <message> <location line="+4"/> - <location line="+868"/> + <location line="+894"/> <source>Invited user: %1</source> <translation type="unfinished"></translation> </message> @@ -50,12 +50,12 @@ <translation type="unfinished"></translation> </message> <message> - <location line="-807"/> + <location line="-815"/> <source>Failed to upload media. Please try again.</source> <translation type="unfinished"></translation> </message> <message> - <location line="+399"/> + <location line="+407"/> <source>Failed to restore OLM account. Please login again.</source> <translation>Nie udało się przywrócić konta OLM. Spróbuj zalogować się ponownie.</translation> </message> @@ -479,13 +479,7 @@ <context> <name>TimelineModel</name> <message> - <location filename="../../src/timeline/TimelineModel.cpp" line="+714"/> - <source>-- Encrypted Event (No keys found for decryption) --</source> - <comment>Placeholder, when the message was not decrypted yet or can&apos;t be decrypted</comment> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+15"/> + <location filename="../../src/timeline/TimelineModel.cpp" line="+733"/> <source>-- Decryption Error (failed to communicate with DB) --</source> <comment>Placeholder, when the message can&apos;t be decrypted, because the DB access failed when trying to lookup the session.</comment> <translation type="unfinished"></translation> @@ -497,19 +491,7 @@ <translation type="unfinished"></translation> </message> <message> - <location line="+12"/> - <source>-- Decryption Error (%1) --</source> - <comment>Placeholder, when the message can&apos;t be decrypted. In this case, the Olm decrytion returned an error, which is passed ad %1</comment> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+29"/> - <source>-- Encrypted Event (Unknown event type) --</source> - <comment>Placeholder, when the message was decrypted, but we couldn&apos;t parse it, because Nheko/mtxclient don&apos;t support that event type yet</comment> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+47"/> + <location line="+88"/> <source>Message redaction failed: %1</source> <translation type="unfinished">Redagowanie wiadomości nie powiodło się: %1</translation> </message> @@ -533,9 +515,27 @@ <source>Save file</source> <translation type="unfinished"></translation> </message> + <message> + <location line="-582"/> + <source>-- Encrypted Event (No keys found for decryption) --</source> + <comment>Placeholder, when the message was not decrypted yet or can&apos;t be decrypted.</comment> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+46"/> + <source>-- Decryption Error (%1) --</source> + <comment>Placeholder, when the message can&apos;t be decrypted. In this case, the Olm decrytion returned an error, which is passed as %1.</comment> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+29"/> + <source>-- Encrypted Event (Unknown event type) --</source> + <comment>Placeholder, when the message was decrypted, but we couldn&apos;t parse it, because Nheko/mtxclient don&apos;t support that event type yet.</comment> + <translation type="unfinished"></translation> + </message> <message numerus="yes"> - <location line="+129"/> - <source>%1 and %2 are typing</source> + <location line="+636"/> + <source>%1 and %2 are typing.</source> <comment>Multiple users are typing. First argument is a comma separated list of potentially multiple users. Second argument is the last user of that list. (If only one user is typing, %1 is empty. You should still use it in your string though to silence Qt warnings.)</comment> <translation type="unfinished"> <numerusform></numerusform> @@ -545,42 +545,42 @@ </message> <message> <location line="+68"/> - <source>%1 opened the room to the public</source> + <source>%1 opened the room to the public.</source> <translation type="unfinished"></translation> </message> <message> <location line="+2"/> - <source>%1 made this room require and invitation to join</source> + <source>%1 made this room require and invitation to join.</source> <translation type="unfinished"></translation> </message> <message> <location line="+23"/> - <source>%1 made the room open to guests</source> + <source>%1 made the room open to guests.</source> <translation type="unfinished"></translation> </message> <message> <location line="+2"/> - <source>%1 has closed the room to guest access</source> + <source>%1 has closed the room to guest access.</source> <translation type="unfinished"></translation> </message> <message> <location line="+23"/> - <source>%1 made the room history world readable. Events may be now read by non-joined people</source> + <source>%1 made the room history world readable. Events may be now read by non-joined people.</source> <translation type="unfinished"></translation> </message> <message> <location line="+4"/> - <source>%1 set the room history visible to members from this point on</source> + <source>%1 set the room history visible to members from this point on.</source> <translation type="unfinished"></translation> </message> <message> <location line="+3"/> - <source>%1 set the room history visible to members since they were invited</source> + <source>%1 set the room history visible to members since they were invited.</source> <translation type="unfinished"></translation> </message> <message> <location line="+3"/> - <source>%1 set the room history visible to members since they joined the room</source> + <source>%1 set the room history visible to members since they joined the room.</source> <translation type="unfinished"></translation> </message> <message> @@ -635,11 +635,16 @@ </message> <message> <location line="+2"/> - <source>Unbanned %1</source> + <source>Unbanned %1.</source> <translation type="unfinished"></translation> </message> <message> - <location line="+3"/> + <location line="+14"/> + <source>%1 was banned.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="-11"/> <source>%1 redacted their knock.</source> <translation type="unfinished"></translation> </message> @@ -655,12 +660,7 @@ <translation type="unfinished"></translation> </message> <message> - <location line="+7"/> - <source>%1 was banned</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+8"/> + <location line="+15"/> <source> Reason: %1</source> <translation type="unfinished"></translation> </message> @@ -673,7 +673,7 @@ <context> <name>TimelineRow</name> <message> - <location filename="../qml/TimelineRow.qml" line="+84"/> + <location filename="../qml/TimelineRow.qml" line="+69"/> <source>Reply</source> <translation type="unfinished"></translation> </message> @@ -686,7 +686,12 @@ <context> <name>TimelineView</name> <message> - <location filename="../qml/TimelineView.qml" line="+32"/> + <location filename="../qml/TimelineView.qml" line="+45"/> + <source>Reply</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+4"/> <source>Read receipts</source> <translation type="unfinished">Potwierdzenia przeczytania</translation> </message> @@ -716,7 +721,7 @@ <translation type="unfinished"></translation> </message> <message> - <location line="+239"/> + <location line="+241"/> <source>Close</source> <translation type="unfinished"></translation> </message> @@ -778,7 +783,7 @@ <context> <name>UserSettingsPage</name> <message> - <location filename="../../src/UserSettingsPage.cpp" line="+290"/> + <location filename="../../src/UserSettingsPage.cpp" line="+296"/> <source>Minimize to tray</source> <translation>Zminimalizuj do paska zadań</translation> </message> @@ -799,6 +804,11 @@ </message> <message> <location line="+2"/> + <source>Show buttons in timeline</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+1"/> <source>Typing notifications</source> <translation>Powiadomienia o pisaniu</translation> </message> @@ -848,7 +858,7 @@ <translation>Odcisk palca urządzenia</translation> </message> <message> - <location line="-56"/> + <location line="-57"/> <source>Session Keys</source> <translation type="unfinished"></translation> </message> @@ -868,22 +878,22 @@ <translation>SZYFROWANIE</translation> </message> <message> - <location line="-60"/> + <location line="-61"/> <source>GENERAL</source> <translation>OGÓLNE</translation> </message> <message> - <location line="+22"/> + <location line="+23"/> <source>INTERFACE</source> <translation type="unfinished"></translation> </message> <message> - <location line="+105"/> + <location line="+106"/> <source>Emoji Font Family</source> <translation type="unfinished"></translation> </message> <message> - <location line="+142"/> + <location line="+147"/> <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 a2c8c951..0dce43f5 100644 --- a/resources/langs/nheko_ru.ts +++ b/resources/langs/nheko_ru.ts
@@ -4,13 +4,13 @@ <context> <name>ChatPage</name> <message> - <location filename="../../src/ChatPage.cpp" line="+223"/> + <location filename="../../src/ChatPage.cpp" line="+225"/> <source>Failed to invite user: %1</source> <translation type="unfinished"></translation> </message> <message> <location line="+4"/> - <location line="+868"/> + <location line="+894"/> <source>Invited user: %1</source> <translation type="unfinished"></translation> </message> @@ -50,12 +50,12 @@ <translation type="unfinished"></translation> </message> <message> - <location line="-807"/> + <location line="-815"/> <source>Failed to upload media. Please try again.</source> <translation type="unfinished"></translation> </message> <message> - <location line="+399"/> + <location line="+407"/> <source>Failed to restore OLM account. Please login again.</source> <translation>Не удалось восстановить учетную запись OLM. Пожалуйста, войдите снова.</translation> </message> @@ -479,13 +479,7 @@ <context> <name>TimelineModel</name> <message> - <location filename="../../src/timeline/TimelineModel.cpp" line="+714"/> - <source>-- Encrypted Event (No keys found for decryption) --</source> - <comment>Placeholder, when the message was not decrypted yet or can&apos;t be decrypted</comment> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+15"/> + <location filename="../../src/timeline/TimelineModel.cpp" line="+733"/> <source>-- Decryption Error (failed to communicate with DB) --</source> <comment>Placeholder, when the message can&apos;t be decrypted, because the DB access failed when trying to lookup the session.</comment> <translation type="unfinished"></translation> @@ -497,19 +491,7 @@ <translation type="unfinished"></translation> </message> <message> - <location line="+12"/> - <source>-- Decryption Error (%1) --</source> - <comment>Placeholder, when the message can&apos;t be decrypted. In this case, the Olm decrytion returned an error, which is passed ad %1</comment> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+29"/> - <source>-- Encrypted Event (Unknown event type) --</source> - <comment>Placeholder, when the message was decrypted, but we couldn&apos;t parse it, because Nheko/mtxclient don&apos;t support that event type yet</comment> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+47"/> + <location line="+88"/> <source>Message redaction failed: %1</source> <translation type="unfinished">Ошибка редактирования сообщения: %1</translation> </message> @@ -533,9 +515,27 @@ <source>Save file</source> <translation type="unfinished"></translation> </message> + <message> + <location line="-582"/> + <source>-- Encrypted Event (No keys found for decryption) --</source> + <comment>Placeholder, when the message was not decrypted yet or can&apos;t be decrypted.</comment> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+46"/> + <source>-- Decryption Error (%1) --</source> + <comment>Placeholder, when the message can&apos;t be decrypted. In this case, the Olm decrytion returned an error, which is passed as %1.</comment> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+29"/> + <source>-- Encrypted Event (Unknown event type) --</source> + <comment>Placeholder, when the message was decrypted, but we couldn&apos;t parse it, because Nheko/mtxclient don&apos;t support that event type yet.</comment> + <translation type="unfinished"></translation> + </message> <message numerus="yes"> - <location line="+129"/> - <source>%1 and %2 are typing</source> + <location line="+636"/> + <source>%1 and %2 are typing.</source> <comment>Multiple users are typing. First argument is a comma separated list of potentially multiple users. Second argument is the last user of that list. (If only one user is typing, %1 is empty. You should still use it in your string though to silence Qt warnings.)</comment> <translation type="unfinished"> <numerusform></numerusform> @@ -545,42 +545,42 @@ </message> <message> <location line="+68"/> - <source>%1 opened the room to the public</source> + <source>%1 opened the room to the public.</source> <translation type="unfinished"></translation> </message> <message> <location line="+2"/> - <source>%1 made this room require and invitation to join</source> + <source>%1 made this room require and invitation to join.</source> <translation type="unfinished"></translation> </message> <message> <location line="+23"/> - <source>%1 made the room open to guests</source> + <source>%1 made the room open to guests.</source> <translation type="unfinished"></translation> </message> <message> <location line="+2"/> - <source>%1 has closed the room to guest access</source> + <source>%1 has closed the room to guest access.</source> <translation type="unfinished"></translation> </message> <message> <location line="+23"/> - <source>%1 made the room history world readable. Events may be now read by non-joined people</source> + <source>%1 made the room history world readable. Events may be now read by non-joined people.</source> <translation type="unfinished"></translation> </message> <message> <location line="+4"/> - <source>%1 set the room history visible to members from this point on</source> + <source>%1 set the room history visible to members from this point on.</source> <translation type="unfinished"></translation> </message> <message> <location line="+3"/> - <source>%1 set the room history visible to members since they were invited</source> + <source>%1 set the room history visible to members since they were invited.</source> <translation type="unfinished"></translation> </message> <message> <location line="+3"/> - <source>%1 set the room history visible to members since they joined the room</source> + <source>%1 set the room history visible to members since they joined the room.</source> <translation type="unfinished"></translation> </message> <message> @@ -635,11 +635,16 @@ </message> <message> <location line="+2"/> - <source>Unbanned %1</source> + <source>Unbanned %1.</source> <translation type="unfinished"></translation> </message> <message> - <location line="+3"/> + <location line="+14"/> + <source>%1 was banned.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="-11"/> <source>%1 redacted their knock.</source> <translation type="unfinished"></translation> </message> @@ -655,12 +660,7 @@ <translation type="unfinished"></translation> </message> <message> - <location line="+7"/> - <source>%1 was banned</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+8"/> + <location line="+15"/> <source> Reason: %1</source> <translation type="unfinished"></translation> </message> @@ -673,7 +673,7 @@ <context> <name>TimelineRow</name> <message> - <location filename="../qml/TimelineRow.qml" line="+84"/> + <location filename="../qml/TimelineRow.qml" line="+69"/> <source>Reply</source> <translation type="unfinished"></translation> </message> @@ -686,7 +686,12 @@ <context> <name>TimelineView</name> <message> - <location filename="../qml/TimelineView.qml" line="+32"/> + <location filename="../qml/TimelineView.qml" line="+45"/> + <source>Reply</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+4"/> <source>Read receipts</source> <translation type="unfinished">Подтверждать прочтение</translation> </message> @@ -716,7 +721,7 @@ <translation type="unfinished"></translation> </message> <message> - <location line="+239"/> + <location line="+241"/> <source>Close</source> <translation type="unfinished">Закрыть</translation> </message> @@ -778,7 +783,7 @@ <context> <name>UserSettingsPage</name> <message> - <location filename="../../src/UserSettingsPage.cpp" line="+290"/> + <location filename="../../src/UserSettingsPage.cpp" line="+296"/> <source>Minimize to tray</source> <translation>Сворачивать в системную панель</translation> </message> @@ -799,6 +804,11 @@ </message> <message> <location line="+2"/> + <source>Show buttons in timeline</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+1"/> <source>Typing notifications</source> <translation>Сообщать о наборе сообщения</translation> </message> @@ -848,7 +858,7 @@ <translation>Отпечаток устройства</translation> </message> <message> - <location line="-56"/> + <location line="-57"/> <source>Session Keys</source> <translation>Ключи сеанса</translation> </message> @@ -868,22 +878,22 @@ <translation>ШИФРОВАНИЕ</translation> </message> <message> - <location line="-60"/> + <location line="-61"/> <source>GENERAL</source> <translation>ГЛАВНОЕ</translation> </message> <message> - <location line="+22"/> + <location line="+23"/> <source>INTERFACE</source> <translation type="unfinished"></translation> </message> <message> - <location line="+105"/> + <location line="+106"/> <source>Emoji Font Family</source> <translation type="unfinished"></translation> </message> <message> - <location line="+142"/> + <location line="+147"/> <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 0ed3153e..8bd4c750 100644 --- a/resources/langs/nheko_zh_CN.ts +++ b/resources/langs/nheko_zh_CN.ts
@@ -4,13 +4,13 @@ <context> <name>ChatPage</name> <message> - <location filename="../../src/ChatPage.cpp" line="+223"/> + <location filename="../../src/ChatPage.cpp" line="+225"/> <source>Failed to invite user: %1</source> <translation type="unfinished"></translation> </message> <message> <location line="+4"/> - <location line="+868"/> + <location line="+894"/> <source>Invited user: %1</source> <translation type="unfinished"></translation> </message> @@ -50,12 +50,12 @@ <translation type="unfinished"></translation> </message> <message> - <location line="-807"/> + <location line="-815"/> <source>Failed to upload media. Please try again.</source> <translation type="unfinished"></translation> </message> <message> - <location line="+399"/> + <location line="+407"/> <source>Failed to restore OLM account. Please login again.</source> <translation>恢复 OLM 账户失败。请重新登录。</translation> </message> @@ -479,13 +479,7 @@ <context> <name>TimelineModel</name> <message> - <location filename="../../src/timeline/TimelineModel.cpp" line="+714"/> - <source>-- Encrypted Event (No keys found for decryption) --</source> - <comment>Placeholder, when the message was not decrypted yet or can&apos;t be decrypted</comment> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+15"/> + <location filename="../../src/timeline/TimelineModel.cpp" line="+733"/> <source>-- Decryption Error (failed to communicate with DB) --</source> <comment>Placeholder, when the message can&apos;t be decrypted, because the DB access failed when trying to lookup the session.</comment> <translation type="unfinished"></translation> @@ -497,19 +491,7 @@ <translation type="unfinished"></translation> </message> <message> - <location line="+12"/> - <source>-- Decryption Error (%1) --</source> - <comment>Placeholder, when the message can&apos;t be decrypted. In this case, the Olm decrytion returned an error, which is passed ad %1</comment> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+29"/> - <source>-- Encrypted Event (Unknown event type) --</source> - <comment>Placeholder, when the message was decrypted, but we couldn&apos;t parse it, because Nheko/mtxclient don&apos;t support that event type yet</comment> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+47"/> + <location line="+88"/> <source>Message redaction failed: %1</source> <translation type="unfinished">删除消息失败:%1</translation> </message> @@ -533,9 +515,27 @@ <source>Save file</source> <translation type="unfinished"></translation> </message> + <message> + <location line="-582"/> + <source>-- Encrypted Event (No keys found for decryption) --</source> + <comment>Placeholder, when the message was not decrypted yet or can&apos;t be decrypted.</comment> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+46"/> + <source>-- Decryption Error (%1) --</source> + <comment>Placeholder, when the message can&apos;t be decrypted. In this case, the Olm decrytion returned an error, which is passed as %1.</comment> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+29"/> + <source>-- Encrypted Event (Unknown event type) --</source> + <comment>Placeholder, when the message was decrypted, but we couldn&apos;t parse it, because Nheko/mtxclient don&apos;t support that event type yet.</comment> + <translation type="unfinished"></translation> + </message> <message numerus="yes"> - <location line="+129"/> - <source>%1 and %2 are typing</source> + <location line="+636"/> + <source>%1 and %2 are typing.</source> <comment>Multiple users are typing. First argument is a comma separated list of potentially multiple users. Second argument is the last user of that list. (If only one user is typing, %1 is empty. You should still use it in your string though to silence Qt warnings.)</comment> <translation type="unfinished"> <numerusform></numerusform> @@ -543,42 +543,42 @@ </message> <message> <location line="+68"/> - <source>%1 opened the room to the public</source> + <source>%1 opened the room to the public.</source> <translation type="unfinished"></translation> </message> <message> <location line="+2"/> - <source>%1 made this room require and invitation to join</source> + <source>%1 made this room require and invitation to join.</source> <translation type="unfinished"></translation> </message> <message> <location line="+23"/> - <source>%1 made the room open to guests</source> + <source>%1 made the room open to guests.</source> <translation type="unfinished"></translation> </message> <message> <location line="+2"/> - <source>%1 has closed the room to guest access</source> + <source>%1 has closed the room to guest access.</source> <translation type="unfinished"></translation> </message> <message> <location line="+23"/> - <source>%1 made the room history world readable. Events may be now read by non-joined people</source> + <source>%1 made the room history world readable. Events may be now read by non-joined people.</source> <translation type="unfinished"></translation> </message> <message> <location line="+4"/> - <source>%1 set the room history visible to members from this point on</source> + <source>%1 set the room history visible to members from this point on.</source> <translation type="unfinished"></translation> </message> <message> <location line="+3"/> - <source>%1 set the room history visible to members since they were invited</source> + <source>%1 set the room history visible to members since they were invited.</source> <translation type="unfinished"></translation> </message> <message> <location line="+3"/> - <source>%1 set the room history visible to members since they joined the room</source> + <source>%1 set the room history visible to members since they joined the room.</source> <translation type="unfinished"></translation> </message> <message> @@ -633,11 +633,16 @@ </message> <message> <location line="+2"/> - <source>Unbanned %1</source> + <source>Unbanned %1.</source> <translation type="unfinished"></translation> </message> <message> - <location line="+3"/> + <location line="+14"/> + <source>%1 was banned.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="-11"/> <source>%1 redacted their knock.</source> <translation type="unfinished"></translation> </message> @@ -653,12 +658,7 @@ <translation type="unfinished"></translation> </message> <message> - <location line="+7"/> - <source>%1 was banned</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+8"/> + <location line="+15"/> <source> Reason: %1</source> <translation type="unfinished"></translation> </message> @@ -671,7 +671,7 @@ <context> <name>TimelineRow</name> <message> - <location filename="../qml/TimelineRow.qml" line="+84"/> + <location filename="../qml/TimelineRow.qml" line="+69"/> <source>Reply</source> <translation type="unfinished"></translation> </message> @@ -684,7 +684,12 @@ <context> <name>TimelineView</name> <message> - <location filename="../qml/TimelineView.qml" line="+32"/> + <location filename="../qml/TimelineView.qml" line="+45"/> + <source>Reply</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+4"/> <source>Read receipts</source> <translation type="unfinished">阅读回执</translation> </message> @@ -714,7 +719,7 @@ <translation type="unfinished"></translation> </message> <message> - <location line="+239"/> + <location line="+241"/> <source>Close</source> <translation type="unfinished"></translation> </message> @@ -776,7 +781,7 @@ <context> <name>UserSettingsPage</name> <message> - <location filename="../../src/UserSettingsPage.cpp" line="+290"/> + <location filename="../../src/UserSettingsPage.cpp" line="+296"/> <source>Minimize to tray</source> <translation>最小化至托盘</translation> </message> @@ -797,6 +802,11 @@ </message> <message> <location line="+2"/> + <source>Show buttons in timeline</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+1"/> <source>Typing notifications</source> <translation>打字通知</translation> </message> @@ -846,7 +856,7 @@ <translation>设备指纹</translation> </message> <message> - <location line="-56"/> + <location line="-57"/> <source>Session Keys</source> <translation>会话密钥</translation> </message> @@ -866,22 +876,22 @@ <translation>加密</translation> </message> <message> - <location line="-60"/> + <location line="-61"/> <source>GENERAL</source> <translation>通用</translation> </message> <message> - <location line="+22"/> + <location line="+23"/> <source>INTERFACE</source> <translation type="unfinished"></translation> </message> <message> - <location line="+105"/> + <location line="+106"/> <source>Emoji Font Family</source> <translation type="unfinished"></translation> </message> <message> - <location line="+142"/> + <location line="+147"/> <source>Open Sessions File</source> <translation>打开会话文件</translation> </message> diff --git a/resources/qml/Avatar.qml b/resources/qml/Avatar.qml
index 0a53eac9..54875f9f 100644 --- a/resources/qml/Avatar.qml +++ b/resources/qml/Avatar.qml
@@ -1,6 +1,5 @@ import QtQuick 2.6 import QtGraphicalEffects 1.0 -import Qt.labs.settings 1.0 Rectangle { id: avatar @@ -8,12 +7,6 @@ Rectangle { height: 48 radius: settings.avatar_circles ? height/2 : 3 - Settings { - id: settings - category: "user" - property bool avatar_circles: true - } - property alias url: img.source property string displayName diff --git a/resources/qml/TimelineRow.qml b/resources/qml/TimelineRow.qml
index 2984844f..a9ae5f5c 100644 --- a/resources/qml/TimelineRow.qml +++ b/resources/qml/TimelineRow.qml
@@ -8,36 +8,21 @@ import im.nheko 1.0 import "./delegates" MouseArea { - id: rowArea - anchors.left: parent.left anchors.right: parent.right height: row.height - - hoverEnabled: true - preventStealing: true propagateComposedEvents: true - acceptedButtons: Qt.NoButton - - property bool showButtons: false + preventStealing: true - Timer { - running: rowArea.containsMouse - interval: 150 - onTriggered: rowArea.state = "showButtons" + acceptedButtons: Qt.LeftButton | Qt.RightButton + onClicked: { + if (mouse.button === Qt.RightButton) + messageContextMenu.show(model.id, model.type, row) + } + onPressAndHold: { + if (mouse.source === Qt.MouseEventNotSynthesized) + messageContextMenu.show(model.id, model.type, row) } - - states: [ - State { - name: "hideButtons" - when: !rowArea.containsMouse - PropertyChanges { target: rowArea; showButtons: false; } - }, - State { - name: "showButtons" - PropertyChanges { target: rowArea; showButtons: true; } - } - ] RowLayout { id: row @@ -70,7 +55,7 @@ MouseArea { } ImageButton { - visible: rowArea.showButtons + visible: timelineSettings.buttons Layout.alignment: Qt.AlignRight | Qt.AlignTop Layout.preferredHeight: 16 width: 16 @@ -86,7 +71,7 @@ MouseArea { onClicked: chat.model.replyAction(model.id) } ImageButton { - visible: rowArea.showButtons + visible: timelineSettings.buttons Layout.alignment: Qt.AlignRight | Qt.AlignTop Layout.preferredHeight: 16 width: 16 @@ -125,6 +110,7 @@ MouseArea { id: ma anchors.fill: parent hoverEnabled: true + propagateComposedEvents: true } ToolTip.visible: ma.containsMouse diff --git a/resources/qml/TimelineView.qml b/resources/qml/TimelineView.qml
index 46cf484b..5612b04c 100644 --- a/resources/qml/TimelineView.qml +++ b/resources/qml/TimelineView.qml
@@ -3,6 +3,7 @@ import QtQuick.Controls 2.3 import QtQuick.Layouts 1.2 import QtGraphicalEffects 1.0 import QtQuick.Window 2.2 +import Qt.labs.settings 1.0 import im.nheko 1.0 @@ -14,6 +15,18 @@ Item { property var inactiveColors: currentInactivePalette ? currentInactivePalette : systemInactive property int avatarSize: 40 + Settings { + id: settings + category: "user" + property bool avatar_circles: true + } + + Settings { + id: timelineSettings + category: "user/timeline" + property bool buttons: true + } + Menu { id: messageContextMenu palette: colors @@ -29,6 +42,10 @@ Item { property int eventType MenuItem { + text: qsTr("Reply") + onClicked: chat.model.replyAction(messageContextMenu.eventId) + } + MenuItem { text: qsTr("Read receipts") onTriggered: chat.model.readReceiptsAction(messageContextMenu.eventId) } @@ -212,6 +229,7 @@ Item { anchors.fill: parent onClicked: chat.model.openUserProfile(modelData.userId) cursorShape: Qt.PointingHandCursor + propagateComposedEvents: true } } @@ -225,6 +243,7 @@ Item { anchors.fill: parent onClicked: chat.model.openUserProfile(section.split(" ")[0]) cursorShape: Qt.PointingHandCursor + propagateComposedEvents: true } } } diff --git a/resources/qml/delegates/ImageMessage.qml b/resources/qml/delegates/ImageMessage.qml
index 65e1c454..229f8f09 100644 --- a/resources/qml/delegates/ImageMessage.qml +++ b/resources/qml/delegates/ImageMessage.qml
@@ -3,7 +3,7 @@ import QtQuick 2.6 import im.nheko 1.0 Item { - property double tempWidth: Math.min(parent ? parent.width : undefined, model.data.width) + property double tempWidth: Math.min(parent ? parent.width : undefined, model.data.width < 1 ? parent.width : model.data.width) property double tempHeight: tempWidth * model.data.proportionalHeight property bool tooHigh: tempHeight > timelineRoot.height / 2 diff --git a/src/ChatPage.cpp b/src/ChatPage.cpp
index 7674f11c..91ecd58a 100644 --- a/src/ChatPage.cpp +++ b/src/ChatPage.cpp
@@ -307,16 +307,16 @@ ChatPage::ChatPage(QSharedPointer<UserSettings> userSettings, QWidget *parent) QString mimeClass, const QString &fn, const std::optional<RelatedInfo> &related) { - QMimeDatabase db; - QMimeType mime = db.mimeTypeForData(dev.data()); - if (!dev->open(QIODevice::ReadOnly)) { emit uploadFailed( QString("Error while reading media: %1").arg(dev->errorString())); return; } - auto bin = dev->peek(dev->size()); + auto bin = dev->readAll(); + QMimeDatabase db; + QMimeType mime = db.mimeTypeForData(bin); + auto payload = std::string(bin.data(), bin.size()); std::optional<mtx::crypto::EncryptedFile> encryptedFile; if (cache::isRoomEncrypted(current_room_.toStdString())) { @@ -328,10 +328,9 @@ ChatPage::ChatPage(QSharedPointer<UserSettings> userSettings, QWidget *parent) QSize dimensions; QString blurhash; if (mimeClass == "image") { - dimensions = QImageReader(dev.data()).size(); - QImage img; img.loadFromData(bin); + dimensions = img.size(); if (img.height() > 200 && img.width() > 360) img = img.scaled(360, 200, Qt::KeepAspectRatioByExpanding); std::vector<unsigned char> data; diff --git a/src/UserSettingsPage.cpp b/src/UserSettingsPage.cpp
index 7bae01a0..6a7c5b35 100644 --- a/src/UserSettingsPage.cpp +++ b/src/UserSettingsPage.cpp
@@ -55,6 +55,7 @@ UserSettings::load() hasDesktopNotifications_ = settings.value("user/desktop_notifications", true).toBool(); isStartInTrayEnabled_ = settings.value("user/window/start_in_tray", false).toBool(); isGroupViewEnabled_ = settings.value("user/group_view", true).toBool(); + isButtonsInTimelineEnabled_ = settings.value("user/timeline/buttons", true).toBool(); isMarkdownEnabled_ = settings.value("user/markdown_enabled", true).toBool(); isTypingNotificationsEnabled_ = settings.value("user/typing_notifications", true).toBool(); ignoreMinorEvents_ = settings.value("user/minor_events", false).toBool(); @@ -127,6 +128,10 @@ UserSettings::save() settings.setValue("start_in_tray", isStartInTrayEnabled_); settings.endGroup(); + settings.beginGroup("timeline"); + settings.setValue("buttons", isButtonsInTimelineEnabled_); + settings.endGroup(); + settings.setValue("avatar_circles", avatarCircles_); settings.setValue("font_size", baseFontSize_); @@ -192,6 +197,7 @@ UserSettingsPage::UserSettingsPage(QSharedPointer<UserSettings> settings, QWidge startInTrayToggle_ = new Toggle{this}; avatarCircles_ = new Toggle{this}; groupViewToggle_ = new Toggle{this}; + timelineButtonsToggle_ = new Toggle{this}; typingNotifications_ = new Toggle{this}; ignoreMinorEvents_ = new Toggle{this}; readReceipts_ = new Toggle{this}; @@ -295,6 +301,7 @@ UserSettingsPage::UserSettingsPage(QSharedPointer<UserSettings> settings, QWidge formLayout_->addRow(new HorizontalLine{this}); boxWrap(tr("Circular Avatars"), avatarCircles_); boxWrap(tr("Group's sidebar"), groupViewToggle_); + boxWrap(tr("Show buttons in timeline"), timelineButtonsToggle_); boxWrap(tr("Typing notifications"), typingNotifications_); boxWrap(tr("Ignore minor events in room list"), ignoreMinorEvents_); formLayout_->addRow(new HorizontalLine{this}); @@ -402,6 +409,10 @@ UserSettingsPage::UserSettingsPage(QSharedPointer<UserSettings> settings, QWidge settings_->setIgnoreMinorEvents(!isDisabled); }); + connect(timelineButtonsToggle_, &Toggle::toggled, this, [this](bool isDisabled) { + settings_->setButtonsInTimeline(!isDisabled); + }); + connect(readReceipts_, &Toggle::toggled, this, [this](bool isDisabled) { settings_->setReadReceipts(!isDisabled); }); @@ -437,6 +448,7 @@ UserSettingsPage::showEvent(QShowEvent *) avatarCircles_->setState(!settings_->isAvatarCirclesEnabled()); typingNotifications_->setState(!settings_->isTypingNotificationsEnabled()); ignoreMinorEvents_->setState(!settings_->isIgnoreMinorEventsEnabled()); + timelineButtonsToggle_->setState(!settings_->isButtonsInTimelineEnabled()); readReceipts_->setState(!settings_->isReadReceiptsEnabled()); markdownEnabled_->setState(!settings_->isMarkdownEnabled()); desktopNotifications_->setState(!settings_->hasDesktopNotifications()); diff --git a/src/UserSettingsPage.h b/src/UserSettingsPage.h
index e1c52277..9dbe643e 100644 --- a/src/UserSettingsPage.h +++ b/src/UserSettingsPage.h
@@ -90,6 +90,11 @@ public: void setIgnoreMinorEvents(bool state) { ignoreMinorEvents_ = state; + } + + void setButtonsInTimeline(bool state) + { + isButtonsInTimelineEnabled_ = state; save(); } @@ -113,6 +118,7 @@ public: bool isMarkdownEnabled() const { return isMarkdownEnabled_; } bool isTypingNotificationsEnabled() const { return isTypingNotificationsEnabled_; } bool isIgnoreMinorEventsEnabled() const { return ignoreMinorEvents_; } + bool isButtonsInTimelineEnabled() const { return isButtonsInTimelineEnabled_; } bool isReadReceiptsEnabled() const { return isReadReceiptsEnabled_; } bool hasDesktopNotifications() const { return hasDesktopNotifications_; } double fontSize() const { return baseFontSize_; } @@ -135,6 +141,7 @@ private: bool isMarkdownEnabled_; bool isTypingNotificationsEnabled_; bool ignoreMinorEvents_; + bool isButtonsInTimelineEnabled_; bool isReadReceiptsEnabled_; bool hasDesktopNotifications_; bool avatarCircles_; @@ -183,6 +190,7 @@ private: Toggle *trayToggle_; Toggle *startInTrayToggle_; Toggle *groupViewToggle_; + Toggle *timelineButtonsToggle_; Toggle *typingNotifications_; Toggle *ignoreMinorEvents_; Toggle *readReceipts_; diff --git a/src/timeline/TimelineModel.cpp b/src/timeline/TimelineModel.cpp
index e1d2e822..ec98da23 100644 --- a/src/timeline/TimelineModel.cpp +++ b/src/timeline/TimelineModel.cpp
@@ -716,7 +716,7 @@ TimelineModel::decryptEvent(const mtx::events::EncryptedEvent<mtx::events::msg:: dummy.sender = e.sender; dummy.content.body = tr("-- Encrypted Event (No keys found for decryption) --", - "Placeholder, when the message was not decrypted yet or can't be decrypted") + "Placeholder, when the message was not decrypted yet or can't be decrypted.") .toStdString(); try { @@ -763,7 +763,7 @@ TimelineModel::decryptEvent(const mtx::events::EncryptedEvent<mtx::events::msg:: dummy.content.body = tr("-- Decryption Error (%1) --", "Placeholder, when the message can't be decrypted. In this case, the Olm " - "decrytion returned an error, which is passed ad %1") + "decrytion returned an error, which is passed ad %1.") .arg(e.what()) .toStdString(); return {dummy, false}; @@ -792,7 +792,7 @@ TimelineModel::decryptEvent(const mtx::events::EncryptedEvent<mtx::events::msg:: dummy.content.body = tr("-- Encrypted Event (Unknown event type) --", "Placeholder, when the message was decrypted, but we couldn't parse it, because " - "Nheko/mtxclient don't support that event type yet") + "Nheko/mtxclient don't support that event type yet.") .toStdString(); return {dummy, false}; } @@ -1426,7 +1426,7 @@ QString TimelineModel::formatTypingUsers(const std::vector<QString> &users, QColor bg) { QString temp = - tr("%1 and %2 are typing", + tr("%1 and %2 are typing.", "Multiple users are typing. First argument is a comma separated list of potentially " "multiple users. Second argument is the last user of that list. (If only one user is " "typing, %1 is empty. You should still use it in your string though to silence Qt " @@ -1494,9 +1494,9 @@ TimelineModel::formatJoinRuleEvent(QString id) switch (event->content.join_rule) { case mtx::events::state::JoinRule::Public: - return tr("%1 opened the room to the public").arg(name); + return tr("%1 opened the room to the public.").arg(name); case mtx::events::state::JoinRule::Invite: - return tr("%1 made this room require and invitation to join").arg(name); + return tr("%1 made this room require and invitation to join.").arg(name); default: // Currently, knock and private are reserved keywords and not implemented in Matrix. return ""; @@ -1519,9 +1519,9 @@ TimelineModel::formatGuestAccessEvent(QString id) switch (event->content.guest_access) { case mtx::events::state::AccessState::CanJoin: - return tr("%1 made the room open to guests").arg(name); + return tr("%1 made the room open to guests.").arg(name); case mtx::events::state::AccessState::Forbidden: - return tr("%1 has closed the room to guest access").arg(name); + return tr("%1 has closed the room to guest access.").arg(name); default: return ""; } @@ -1545,16 +1545,16 @@ TimelineModel::formatHistoryVisibilityEvent(QString id) switch (event->content.history_visibility) { case mtx::events::state::Visibility::WorldReadable: return tr("%1 made the room history world readable. Events may be now read by " - "non-joined people") + "non-joined people.") .arg(name); case mtx::events::state::Visibility::Shared: - return tr("%1 set the room history visible to members from this point on") + return tr("%1 set the room history visible to members from this point on.") .arg(name); case mtx::events::state::Visibility::Invited: - return tr("%1 set the room history visible to members since they were invited") + return tr("%1 set the room history visible to members since they were invited.") .arg(name); case mtx::events::state::Visibility::Joined: - return tr("%1 set the room history visible to members since they joined the room") + return tr("%1 set the room history visible to members since they joined the room.") .arg(name); default: return ""; @@ -1661,7 +1661,7 @@ TimelineModel::formatMemberEvent(QString id) else rendered = tr("Kicked %1.").arg(name); } else if (prevEvent->content.membership == Membership::Ban) { - rendered = tr("Unbanned %1").arg(name); + rendered = tr("Unbanned %1.").arg(name); } else if (prevEvent->content.membership == Membership::Knock) { if (event->state_key == event->sender) rendered = tr("%1 redacted their knock.").arg(name); @@ -1675,7 +1675,7 @@ TimelineModel::formatMemberEvent(QString id) break; case Membership::Ban: - rendered = tr("%1 was banned").arg(name); + rendered = tr("%1 was banned.").arg(name); break; case Membership::Knock: rendered = tr("%1 knocked.").arg(name);