diff --git a/resources/langs/nheko_de.ts b/resources/langs/nheko_de.ts
index fbc2aa4f..a6d0e98d 100644
--- a/resources/langs/nheko_de.ts
+++ b/resources/langs/nheko_de.ts
@@ -4,12 +4,12 @@
<context>
<name>ChatPage</name>
<message>
- <location filename="../../src/ChatPage.cpp" line="+346"/>
+ <location filename="../../src/ChatPage.cpp" line="+329"/>
<source>Failed to upload media. Please try again.</source>
<translation>Medienupload fehlgeschlagen. Bitte versuche es erneut.</translation>
</message>
<message>
- <location line="+389"/>
+ <location line="+392"/>
<source>Failed to restore OLM account. Please login again.</source>
<translation>Wiederherstellung des OLM Accounts fehlgeschlagen. Bitte logge dich erneut ein.</translation>
</message>
@@ -19,7 +19,7 @@
<translation>Gespeicherte Nachrichten konnten nicht wiederhergestellt werden. Bitte melde Dich erneut an.</translation>
</message>
<message>
- <location line="+181"/>
+ <location line="+148"/>
<source>Failed to setup encryption keys. Server response: %1 %2. Please try again later.</source>
<translation>Fehler beim Setup der Verschlüsselungsschlüssel. Servermeldung: %1 %2. Bitte versuche es später erneut.</translation>
</message>
@@ -72,7 +72,7 @@
<context>
<name>EditModal</name>
<message>
- <location filename="../../src/dialogs/RoomSettings.cpp" line="+58"/>
+ <location filename="../../src/dialogs/RoomSettings.cpp" line="+59"/>
<source>Apply</source>
<translation>Anwenden</translation>
</message>
@@ -182,7 +182,7 @@
<context>
<name>MessageDelegate</name>
<message>
- <location filename="../qml/delegates/MessageDelegate.qml" line="+43"/>
+ <location filename="../qml/delegates/MessageDelegate.qml" line="+60"/>
<source>redacted</source>
<translation>gelöscht</translation>
</message>
@@ -223,7 +223,7 @@
<context>
<name>QuickSwitcher</name>
<message>
- <location filename="../../src/QuickSwitcher.cpp" line="+71"/>
+ <location filename="../../src/QuickSwitcher.cpp" line="+72"/>
<source>Search for a room...</source>
<translation>Raum suchen…</translation>
</message>
@@ -279,7 +279,7 @@
<context>
<name>ReplyPopup</name>
<message>
- <location filename="../../src/popups/ReplyPopup.cpp" line="+45"/>
+ <location filename="../../src/popups/ReplyPopup.cpp" line="+46"/>
<source>Logout</source>
<translation>Abmelden</translation>
</message>
@@ -287,7 +287,7 @@
<context>
<name>RoomInfo</name>
<message>
- <location filename="../../src/Cache.cpp" line="+2307"/>
+ <location filename="../../src/Cache.cpp" line="+2303"/>
<source>no version stored</source>
<translation>keine Version gespeichert</translation>
</message>
@@ -300,12 +300,12 @@
<translation>Raum verlassen</translation>
</message>
<message>
- <location line="+161"/>
+ <location line="+151"/>
<source>Accept</source>
<translation>Akzeptieren</translation>
</message>
<message>
- <location line="+1"/>
+ <location line="+3"/>
<source>Decline</source>
<translation>Ablehnen</translation>
</message>
@@ -364,13 +364,13 @@
<context>
<name>TextInputWidget</name>
<message>
- <location filename="../../src/TextInputWidget.cpp" line="+502"/>
+ <location filename="../../src/TextInputWidget.cpp" line="+496"/>
<source>Send a file</source>
<translation>Versende Datei</translation>
</message>
<message>
<location line="+13"/>
- <location filename="../../src/TextInputWidget.h" line="+161"/>
+ <location filename="../../src/TextInputWidget.h" line="+163"/>
<source>Write a message...</source>
<translation>Schreibe eine Nachricht…</translation>
</message>
@@ -385,7 +385,7 @@
<translation>Emoji</translation>
</message>
<message>
- <location line="+72"/>
+ <location line="+73"/>
<source>Select a file</source>
<translation>Datei auswählen</translation>
</message>
@@ -403,7 +403,7 @@
<context>
<name>TimelineModel</name>
<message>
- <location filename="../../src/timeline/TimelineModel.cpp" line="+867"/>
+ <location filename="../../src/timeline/TimelineModel.cpp" line="+687"/>
<source>-- Encrypted Event (No keys found for decryption) --</source>
<comment>Placeholder, when the message was not decrypted yet or can't be decrypted</comment>
<translation>-- verschlüsselter Event (keine Schlüssel zur Entschlüsselung gefunden) --</translation>
@@ -427,18 +427,18 @@
<translation>-- Entschlüsselungsfehler (%1) --</translation>
</message>
<message>
- <location line="+25"/>
+ <location line="+29"/>
<source>-- Encrypted Event (Unknown event type) --</source>
<comment>Placeholder, when the message was decrypted, but we couldn't parse it, because Nheko/mtxclient don't support that event type yet</comment>
<translation>-- verschlüsselter Event (Unbekannter Eventtyp) --</translation>
</message>
<message>
- <location line="+54"/>
+ <location line="+48"/>
<source>Message redaction failed: %1</source>
<translation>Nachricht zurückziehen fehlgeschlagen: %1</translation>
</message>
<message>
- <location line="+453"/>
+ <location line="+454"/>
<source>Save image</source>
<translation>Bild speichern</translation>
</message>
@@ -457,11 +457,20 @@
<source>Save file</source>
<translation>Datei speichern</translation>
</message>
+ <message numerus="yes">
+ <location line="+126"/>
+ <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>%1%2 tippt</numerusform>
+ <numerusform>%1 und %2 tippen</numerusform>
+ </translation>
+ </message>
</context>
<context>
<name>TimelineRow</name>
<message>
- <location filename="../qml/TimelineRow.qml" line="+57"/>
+ <location filename="../qml/TimelineRow.qml" line="+104"/>
<source>Reply</source>
<translation>Antworten</translation>
</message>
@@ -551,18 +560,6 @@
</message>
</context>
<context>
- <name>TypingDisplay</name>
- <message numerus="yes">
- <location filename="../../src/TypingDisplay.cpp" line="+37"/>
- <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>
- <numerusform>%1 und %2 tippen</numerusform>
- </translation>
- </message>
-</context>
-<context>
<name>UserInfoWidget</name>
<message>
<location filename="../../src/UserInfoWidget.cpp" line="+87"/>
@@ -573,7 +570,7 @@
<context>
<name>UserSettingsPage</name>
<message>
- <location filename="../../src/UserSettingsPage.cpp" line="+171"/>
+ <location filename="../../src/UserSettingsPage.cpp" line="+172"/>
<source>Minimize to tray</source>
<translation>Ins Benachrichtigungsfeld minimieren</translation>
</message>
@@ -740,7 +737,7 @@
<context>
<name>descriptiveTime</name>
<message>
- <location filename="../../src/Utils.cpp" line="+104"/>
+ <location filename="../../src/Utils.cpp" line="+106"/>
<source>Yesterday</source>
<translation>Gestern</translation>
</message>
@@ -1014,7 +1011,7 @@ Medien-Größe: %2
<translation>Aktivierung der Verschlüsselung fehlgeschlagen: %1</translation>
</message>
<message>
- <location line="+148"/>
+ <location line="+146"/>
<source>Select an avatar</source>
<translation>Wähle einen Avatar</translation>
</message>
@@ -1114,7 +1111,7 @@ Medien-Größe: %2
<context>
<name>message-description sent:</name>
<message>
- <location filename="../../src/Utils.h" line="+95"/>
+ <location filename="../../src/Utils.h" line="+100"/>
<source>You sent an audio clip</source>
<translation>Du hast eine Audiodatei gesendet.</translation>
</message>
@@ -1210,7 +1207,7 @@ Medien-Größe: %2
<context>
<name>utils</name>
<message>
- <location filename="../../src/Utils.cpp" line="+282"/>
+ <location filename="../../src/Utils.cpp" line="+306"/>
<source>sent a file.</source>
<translation type="unfinished"></translation>
</message>
diff --git a/resources/langs/nheko_el.ts b/resources/langs/nheko_el.ts
index 1d9720ee..35fdeb80 100644
--- a/resources/langs/nheko_el.ts
+++ b/resources/langs/nheko_el.ts
@@ -4,12 +4,12 @@
<context>
<name>ChatPage</name>
<message>
- <location filename="../../src/ChatPage.cpp" line="+346"/>
+ <location filename="../../src/ChatPage.cpp" line="+329"/>
<source>Failed to upload media. Please try again.</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+389"/>
+ <location line="+392"/>
<source>Failed to restore OLM account. Please login again.</source>
<translation type="unfinished"></translation>
</message>
@@ -19,7 +19,7 @@
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+181"/>
+ <location line="+148"/>
<source>Failed to setup encryption keys. Server response: %1 %2. Please try again later.</source>
<translation type="unfinished"></translation>
</message>
@@ -72,7 +72,7 @@
<context>
<name>EditModal</name>
<message>
- <location filename="../../src/dialogs/RoomSettings.cpp" line="+58"/>
+ <location filename="../../src/dialogs/RoomSettings.cpp" line="+59"/>
<source>Apply</source>
<translation type="unfinished"></translation>
</message>
@@ -182,7 +182,7 @@
<context>
<name>MessageDelegate</name>
<message>
- <location filename="../qml/delegates/MessageDelegate.qml" line="+43"/>
+ <location filename="../qml/delegates/MessageDelegate.qml" line="+60"/>
<source>redacted</source>
<translation type="unfinished"></translation>
</message>
@@ -223,7 +223,7 @@
<context>
<name>QuickSwitcher</name>
<message>
- <location filename="../../src/QuickSwitcher.cpp" line="+71"/>
+ <location filename="../../src/QuickSwitcher.cpp" line="+72"/>
<source>Search for a room...</source>
<translation>Αναζήτηση συνομιλίας...</translation>
</message>
@@ -279,7 +279,7 @@
<context>
<name>ReplyPopup</name>
<message>
- <location filename="../../src/popups/ReplyPopup.cpp" line="+45"/>
+ <location filename="../../src/popups/ReplyPopup.cpp" line="+46"/>
<source>Logout</source>
<translation type="unfinished"></translation>
</message>
@@ -287,7 +287,7 @@
<context>
<name>RoomInfo</name>
<message>
- <location filename="../../src/Cache.cpp" line="+2307"/>
+ <location filename="../../src/Cache.cpp" line="+2303"/>
<source>no version stored</source>
<translation type="unfinished"></translation>
</message>
@@ -300,12 +300,12 @@
<translation>Βγές</translation>
</message>
<message>
- <location line="+161"/>
+ <location line="+151"/>
<source>Accept</source>
<translation>Αποδοχή</translation>
</message>
<message>
- <location line="+1"/>
+ <location line="+3"/>
<source>Decline</source>
<translation>Απόρριψη</translation>
</message>
@@ -364,13 +364,13 @@
<context>
<name>TextInputWidget</name>
<message>
- <location filename="../../src/TextInputWidget.cpp" line="+502"/>
+ <location filename="../../src/TextInputWidget.cpp" line="+496"/>
<source>Send a file</source>
<translation type="unfinished"></translation>
</message>
<message>
<location line="+13"/>
- <location filename="../../src/TextInputWidget.h" line="+161"/>
+ <location filename="../../src/TextInputWidget.h" line="+163"/>
<source>Write a message...</source>
<translation>Γράψε ένα μήνυμα...</translation>
</message>
@@ -385,7 +385,7 @@
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+72"/>
+ <location line="+73"/>
<source>Select a file</source>
<translation>Διάλεξε ένα αρχείο</translation>
</message>
@@ -403,7 +403,7 @@
<context>
<name>TimelineModel</name>
<message>
- <location filename="../../src/timeline/TimelineModel.cpp" line="+867"/>
+ <location filename="../../src/timeline/TimelineModel.cpp" line="+687"/>
<source>-- Encrypted Event (No keys found for decryption) --</source>
<comment>Placeholder, when the message was not decrypted yet or can't be decrypted</comment>
<translation type="unfinished"></translation>
@@ -427,18 +427,18 @@
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+25"/>
+ <location line="+29"/>
<source>-- Encrypted Event (Unknown event type) --</source>
<comment>Placeholder, when the message was decrypted, but we couldn't parse it, because Nheko/mtxclient don't support that event type yet</comment>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+54"/>
+ <location line="+48"/>
<source>Message redaction failed: %1</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+453"/>
+ <location line="+454"/>
<source>Save image</source>
<translation type="unfinished">Αποθήκευση Εικόνας</translation>
</message>
@@ -457,11 +457,20 @@
<source>Save file</source>
<translation type="unfinished"></translation>
</message>
+ <message numerus="yes">
+ <location line="+126"/>
+ <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>
+ <numerusform></numerusform>
+ </translation>
+ </message>
</context>
<context>
<name>TimelineRow</name>
<message>
- <location filename="../qml/TimelineRow.qml" line="+57"/>
+ <location filename="../qml/TimelineRow.qml" line="+104"/>
<source>Reply</source>
<translation type="unfinished"></translation>
</message>
@@ -551,18 +560,6 @@
</message>
</context>
<context>
- <name>TypingDisplay</name>
- <message numerus="yes">
- <location filename="../../src/TypingDisplay.cpp" line="+37"/>
- <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>
- <numerusform></numerusform>
- </translation>
- </message>
-</context>
-<context>
<name>UserInfoWidget</name>
<message>
<location filename="../../src/UserInfoWidget.cpp" line="+87"/>
@@ -573,7 +570,7 @@
<context>
<name>UserSettingsPage</name>
<message>
- <location filename="../../src/UserSettingsPage.cpp" line="+171"/>
+ <location filename="../../src/UserSettingsPage.cpp" line="+172"/>
<source>Minimize to tray</source>
<translation>Ελαχιστοποίηση</translation>
</message>
@@ -740,7 +737,7 @@
<context>
<name>descriptiveTime</name>
<message>
- <location filename="../../src/Utils.cpp" line="+104"/>
+ <location filename="../../src/Utils.cpp" line="+106"/>
<source>Yesterday</source>
<translation type="unfinished"></translation>
</message>
@@ -1012,7 +1009,7 @@ Media size: %2
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+148"/>
+ <location line="+146"/>
<source>Select an avatar</source>
<translation type="unfinished"></translation>
</message>
@@ -1112,7 +1109,7 @@ Media size: %2
<context>
<name>message-description sent:</name>
<message>
- <location filename="../../src/Utils.h" line="+95"/>
+ <location filename="../../src/Utils.h" line="+100"/>
<source>You sent an audio clip</source>
<translation type="unfinished"></translation>
</message>
@@ -1208,7 +1205,7 @@ Media size: %2
<context>
<name>utils</name>
<message>
- <location filename="../../src/Utils.cpp" line="+282"/>
+ <location filename="../../src/Utils.cpp" line="+306"/>
<source>sent a file.</source>
<translation type="unfinished"></translation>
</message>
diff --git a/resources/langs/nheko_en.ts b/resources/langs/nheko_en.ts
index fd8b4b25..40b6f09b 100644
--- a/resources/langs/nheko_en.ts
+++ b/resources/langs/nheko_en.ts
@@ -4,12 +4,12 @@
<context>
<name>ChatPage</name>
<message>
- <location filename="../../src/ChatPage.cpp" line="+346"/>
+ <location filename="../../src/ChatPage.cpp" line="+329"/>
<source>Failed to upload media. Please try again.</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+389"/>
+ <location line="+392"/>
<source>Failed to restore OLM account. Please login again.</source>
<translation>Failed to restore OLM account. Please login again.</translation>
</message>
@@ -19,7 +19,7 @@
<translation>Failed to restore save data. Please login again.</translation>
</message>
<message>
- <location line="+181"/>
+ <location line="+148"/>
<source>Failed to setup encryption keys. Server response: %1 %2. Please try again later.</source>
<translation>Failed to setup encryption keys. Server response: %1 %2. Please try again later.</translation>
</message>
@@ -72,7 +72,7 @@
<context>
<name>EditModal</name>
<message>
- <location filename="../../src/dialogs/RoomSettings.cpp" line="+58"/>
+ <location filename="../../src/dialogs/RoomSettings.cpp" line="+59"/>
<source>Apply</source>
<translation>Apply</translation>
</message>
@@ -182,7 +182,7 @@
<context>
<name>MessageDelegate</name>
<message>
- <location filename="../qml/delegates/MessageDelegate.qml" line="+43"/>
+ <location filename="../qml/delegates/MessageDelegate.qml" line="+60"/>
<source>redacted</source>
<translation type="unfinished"></translation>
</message>
@@ -223,7 +223,7 @@
<context>
<name>QuickSwitcher</name>
<message>
- <location filename="../../src/QuickSwitcher.cpp" line="+71"/>
+ <location filename="../../src/QuickSwitcher.cpp" line="+72"/>
<source>Search for a room...</source>
<translation>Search for a room…</translation>
</message>
@@ -279,7 +279,7 @@
<context>
<name>ReplyPopup</name>
<message>
- <location filename="../../src/popups/ReplyPopup.cpp" line="+45"/>
+ <location filename="../../src/popups/ReplyPopup.cpp" line="+46"/>
<source>Logout</source>
<translation>Logout</translation>
</message>
@@ -287,7 +287,7 @@
<context>
<name>RoomInfo</name>
<message>
- <location filename="../../src/Cache.cpp" line="+2307"/>
+ <location filename="../../src/Cache.cpp" line="+2303"/>
<source>no version stored</source>
<translation>no version stored</translation>
</message>
@@ -300,12 +300,12 @@
<translation>Leave room</translation>
</message>
<message>
- <location line="+161"/>
+ <location line="+151"/>
<source>Accept</source>
<translation>Accept</translation>
</message>
<message>
- <location line="+1"/>
+ <location line="+3"/>
<source>Decline</source>
<translation>Decline</translation>
</message>
@@ -364,13 +364,13 @@
<context>
<name>TextInputWidget</name>
<message>
- <location filename="../../src/TextInputWidget.cpp" line="+502"/>
+ <location filename="../../src/TextInputWidget.cpp" line="+496"/>
<source>Send a file</source>
<translation>Send a file</translation>
</message>
<message>
<location line="+13"/>
- <location filename="../../src/TextInputWidget.h" line="+161"/>
+ <location filename="../../src/TextInputWidget.h" line="+163"/>
<source>Write a message...</source>
<translation>Write a message…</translation>
</message>
@@ -385,7 +385,7 @@
<translation>Emoji</translation>
</message>
<message>
- <location line="+72"/>
+ <location line="+73"/>
<source>Select a file</source>
<translation>Select a file</translation>
</message>
@@ -403,7 +403,7 @@
<context>
<name>TimelineModel</name>
<message>
- <location filename="../../src/timeline/TimelineModel.cpp" line="+867"/>
+ <location filename="../../src/timeline/TimelineModel.cpp" line="+687"/>
<source>-- Encrypted Event (No keys found for decryption) --</source>
<comment>Placeholder, when the message was not decrypted yet or can't be decrypted</comment>
<translation type="unfinished">-- Encrypted Event (No keys found for decryption) --</translation>
@@ -427,18 +427,18 @@
<translation type="unfinished">-- Decryption Error (%1) --</translation>
</message>
<message>
- <location line="+25"/>
+ <location line="+29"/>
<source>-- Encrypted Event (Unknown event type) --</source>
<comment>Placeholder, when the message was decrypted, but we couldn't parse it, because Nheko/mtxclient don't support that event type yet</comment>
<translation type="unfinished">-- Encrypted Event (Unknown event type) --</translation>
</message>
<message>
- <location line="+54"/>
+ <location line="+48"/>
<source>Message redaction failed: %1</source>
<translation type="unfinished">Message redaction failed: %1</translation>
</message>
<message>
- <location line="+453"/>
+ <location line="+454"/>
<source>Save image</source>
<translation type="unfinished">Save image</translation>
</message>
@@ -457,11 +457,20 @@
<source>Save file</source>
<translation type="unfinished"></translation>
</message>
+ <message numerus="yes">
+ <location line="+126"/>
+ <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>%1%2 is typing</numerusform>
+ <numerusform>%1 and %2 are typing</numerusform>
+ </translation>
+ </message>
</context>
<context>
<name>TimelineRow</name>
<message>
- <location filename="../qml/TimelineRow.qml" line="+57"/>
+ <location filename="../qml/TimelineRow.qml" line="+104"/>
<source>Reply</source>
<translation type="unfinished"></translation>
</message>
@@ -551,18 +560,6 @@
</message>
</context>
<context>
- <name>TypingDisplay</name>
- <message numerus="yes">
- <location filename="../../src/TypingDisplay.cpp" line="+37"/>
- <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>
- <numerusform>%1 and %2 are typing</numerusform>
- </translation>
- </message>
-</context>
-<context>
<name>UserInfoWidget</name>
<message>
<location filename="../../src/UserInfoWidget.cpp" line="+87"/>
@@ -573,7 +570,7 @@
<context>
<name>UserSettingsPage</name>
<message>
- <location filename="../../src/UserSettingsPage.cpp" line="+171"/>
+ <location filename="../../src/UserSettingsPage.cpp" line="+172"/>
<source>Minimize to tray</source>
<translation>Minimize to tray</translation>
</message>
@@ -740,7 +737,7 @@
<context>
<name>descriptiveTime</name>
<message>
- <location filename="../../src/Utils.cpp" line="+104"/>
+ <location filename="../../src/Utils.cpp" line="+106"/>
<source>Yesterday</source>
<translation>Yesterday</translation>
</message>
@@ -1016,7 +1013,7 @@ Media size: %2
<translation>Failed to enable encryption: %1</translation>
</message>
<message>
- <location line="+148"/>
+ <location line="+146"/>
<source>Select an avatar</source>
<translation>Select an avatar</translation>
</message>
@@ -1116,7 +1113,7 @@ Media size: %2
<context>
<name>message-description sent:</name>
<message>
- <location filename="../../src/Utils.h" line="+95"/>
+ <location filename="../../src/Utils.h" line="+100"/>
<source>You sent an audio clip</source>
<translation type="unfinished"></translation>
</message>
@@ -1212,7 +1209,7 @@ Media size: %2
<context>
<name>utils</name>
<message>
- <location filename="../../src/Utils.cpp" line="+282"/>
+ <location filename="../../src/Utils.cpp" line="+306"/>
<source>sent a file.</source>
<translation>sent a file.</translation>
</message>
diff --git a/resources/langs/nheko_fi.ts b/resources/langs/nheko_fi.ts
index d851b879..cae5a109 100644
--- a/resources/langs/nheko_fi.ts
+++ b/resources/langs/nheko_fi.ts
@@ -4,12 +4,12 @@
<context>
<name>ChatPage</name>
<message>
- <location filename="../../src/ChatPage.cpp" line="+346"/>
+ <location filename="../../src/ChatPage.cpp" line="+329"/>
<source>Failed to upload media. Please try again.</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+389"/>
+ <location line="+392"/>
<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>
@@ -19,7 +19,7 @@
<translation>Tallennettujen tietojen palauttaminen epäonnistui. Ole hyvä ja kirjaudu sisään uudelleen.</translation>
</message>
<message>
- <location line="+181"/>
+ <location line="+148"/>
<source>Failed to setup encryption keys. Server response: %1 %2. Please try again later.</source>
<translation>Salausavainten lähetys epäonnistui. Palvelimen vastaus: %1 %2. Ole hyvä ja yritä uudelleen myöhemmin.</translation>
</message>
@@ -72,7 +72,7 @@
<context>
<name>EditModal</name>
<message>
- <location filename="../../src/dialogs/RoomSettings.cpp" line="+58"/>
+ <location filename="../../src/dialogs/RoomSettings.cpp" line="+59"/>
<source>Apply</source>
<translation>Tallenna</translation>
</message>
@@ -182,7 +182,7 @@
<context>
<name>MessageDelegate</name>
<message>
- <location filename="../qml/delegates/MessageDelegate.qml" line="+43"/>
+ <location filename="../qml/delegates/MessageDelegate.qml" line="+60"/>
<source>redacted</source>
<translation type="unfinished"></translation>
</message>
@@ -223,7 +223,7 @@
<context>
<name>QuickSwitcher</name>
<message>
- <location filename="../../src/QuickSwitcher.cpp" line="+71"/>
+ <location filename="../../src/QuickSwitcher.cpp" line="+72"/>
<source>Search for a room...</source>
<translation>Etsi huonetta…</translation>
</message>
@@ -279,7 +279,7 @@
<context>
<name>ReplyPopup</name>
<message>
- <location filename="../../src/popups/ReplyPopup.cpp" line="+45"/>
+ <location filename="../../src/popups/ReplyPopup.cpp" line="+46"/>
<source>Logout</source>
<translation>Kirjaudu ulos</translation>
</message>
@@ -287,7 +287,7 @@
<context>
<name>RoomInfo</name>
<message>
- <location filename="../../src/Cache.cpp" line="+2307"/>
+ <location filename="../../src/Cache.cpp" line="+2303"/>
<source>no version stored</source>
<translation>ei tallennettua versiota</translation>
</message>
@@ -300,12 +300,12 @@
<translation>Poistu huoneesta</translation>
</message>
<message>
- <location line="+161"/>
+ <location line="+151"/>
<source>Accept</source>
<translation>Hyväksy</translation>
</message>
<message>
- <location line="+1"/>
+ <location line="+3"/>
<source>Decline</source>
<translation>Hylkää</translation>
</message>
@@ -364,13 +364,13 @@
<context>
<name>TextInputWidget</name>
<message>
- <location filename="../../src/TextInputWidget.cpp" line="+502"/>
+ <location filename="../../src/TextInputWidget.cpp" line="+496"/>
<source>Send a file</source>
<translation>Lähetä tiedosto</translation>
</message>
<message>
<location line="+13"/>
- <location filename="../../src/TextInputWidget.h" line="+161"/>
+ <location filename="../../src/TextInputWidget.h" line="+163"/>
<source>Write a message...</source>
<translation>Kirjoita viesti…</translation>
</message>
@@ -385,7 +385,7 @@
<translation>Emoji</translation>
</message>
<message>
- <location line="+72"/>
+ <location line="+73"/>
<source>Select a file</source>
<translation>Valitse tiedosto</translation>
</message>
@@ -403,7 +403,7 @@
<context>
<name>TimelineModel</name>
<message>
- <location filename="../../src/timeline/TimelineModel.cpp" line="+867"/>
+ <location filename="../../src/timeline/TimelineModel.cpp" line="+687"/>
<source>-- Encrypted Event (No keys found for decryption) --</source>
<comment>Placeholder, when the message was not decrypted yet or can't be decrypted</comment>
<translation type="unfinished">-- Salattu viesti (salauksen purkuavaimia ei löydetty) --</translation>
@@ -427,18 +427,18 @@
<translation type="unfinished">-- Virhe purkaessa salausta (%1) --</translation>
</message>
<message>
- <location line="+25"/>
+ <location line="+29"/>
<source>-- Encrypted Event (Unknown event type) --</source>
<comment>Placeholder, when the message was decrypted, but we couldn't parse it, because Nheko/mtxclient don't support that event type yet</comment>
<translation type="unfinished">-- Salattu viesti (tuntematon viestityyppi) --</translation>
</message>
<message>
- <location line="+54"/>
+ <location line="+48"/>
<source>Message redaction failed: %1</source>
<translation type="unfinished">Viestin poisto epäonnistui: %1</translation>
</message>
<message>
- <location line="+453"/>
+ <location line="+454"/>
<source>Save image</source>
<translation type="unfinished">Tallenna kuva</translation>
</message>
@@ -457,11 +457,20 @@
<source>Save file</source>
<translation type="unfinished"></translation>
</message>
+ <message numerus="yes">
+ <location line="+126"/>
+ <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>%1%2 kirjoittaa</numerusform>
+ <numerusform>%1 ja %2 kirjoittavat</numerusform>
+ </translation>
+ </message>
</context>
<context>
<name>TimelineRow</name>
<message>
- <location filename="../qml/TimelineRow.qml" line="+57"/>
+ <location filename="../qml/TimelineRow.qml" line="+104"/>
<source>Reply</source>
<translation type="unfinished"></translation>
</message>
@@ -551,18 +560,6 @@
</message>
</context>
<context>
- <name>TypingDisplay</name>
- <message numerus="yes">
- <location filename="../../src/TypingDisplay.cpp" line="+37"/>
- <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 kirjoittaa</numerusform>
- <numerusform>%1 ja %2 kirjoittavat</numerusform>
- </translation>
- </message>
-</context>
-<context>
<name>UserInfoWidget</name>
<message>
<location filename="../../src/UserInfoWidget.cpp" line="+87"/>
@@ -573,7 +570,7 @@
<context>
<name>UserSettingsPage</name>
<message>
- <location filename="../../src/UserSettingsPage.cpp" line="+171"/>
+ <location filename="../../src/UserSettingsPage.cpp" line="+172"/>
<source>Minimize to tray</source>
<translation>Pienennä ilmoitusalueelle</translation>
</message>
@@ -740,7 +737,7 @@
<context>
<name>descriptiveTime</name>
<message>
- <location filename="../../src/Utils.cpp" line="+104"/>
+ <location filename="../../src/Utils.cpp" line="+106"/>
<source>Yesterday</source>
<translation>Eilen</translation>
</message>
@@ -1016,7 +1013,7 @@ Median koko: %2
<translation>Salauksen aktivointi epäonnistui: %1</translation>
</message>
<message>
- <location line="+148"/>
+ <location line="+146"/>
<source>Select an avatar</source>
<translation>Valitse profiilikuva</translation>
</message>
@@ -1116,7 +1113,7 @@ Median koko: %2
<context>
<name>message-description sent:</name>
<message>
- <location filename="../../src/Utils.h" line="+95"/>
+ <location filename="../../src/Utils.h" line="+100"/>
<source>You sent an audio clip</source>
<translation type="unfinished"></translation>
</message>
@@ -1212,7 +1209,7 @@ Median koko: %2
<context>
<name>utils</name>
<message>
- <location filename="../../src/Utils.cpp" line="+282"/>
+ <location filename="../../src/Utils.cpp" line="+306"/>
<source>sent a file.</source>
<translation type="unfinished"></translation>
</message>
diff --git a/resources/langs/nheko_fr.ts b/resources/langs/nheko_fr.ts
index 15494953..3646d061 100644
--- a/resources/langs/nheko_fr.ts
+++ b/resources/langs/nheko_fr.ts
@@ -4,12 +4,12 @@
<context>
<name>ChatPage</name>
<message>
- <location filename="../../src/ChatPage.cpp" line="+346"/>
+ <location filename="../../src/ChatPage.cpp" line="+329"/>
<source>Failed to upload media. Please try again.</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+389"/>
+ <location line="+392"/>
<source>Failed to restore OLM account. Please login again.</source>
<translation type="unfinished"></translation>
</message>
@@ -19,7 +19,7 @@
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+181"/>
+ <location line="+148"/>
<source>Failed to setup encryption keys. Server response: %1 %2. Please try again later.</source>
<translation type="unfinished"></translation>
</message>
@@ -72,7 +72,7 @@
<context>
<name>EditModal</name>
<message>
- <location filename="../../src/dialogs/RoomSettings.cpp" line="+58"/>
+ <location filename="../../src/dialogs/RoomSettings.cpp" line="+59"/>
<source>Apply</source>
<translation type="unfinished"></translation>
</message>
@@ -182,7 +182,7 @@
<context>
<name>MessageDelegate</name>
<message>
- <location filename="../qml/delegates/MessageDelegate.qml" line="+43"/>
+ <location filename="../qml/delegates/MessageDelegate.qml" line="+60"/>
<source>redacted</source>
<translation type="unfinished"></translation>
</message>
@@ -223,7 +223,7 @@
<context>
<name>QuickSwitcher</name>
<message>
- <location filename="../../src/QuickSwitcher.cpp" line="+71"/>
+ <location filename="../../src/QuickSwitcher.cpp" line="+72"/>
<source>Search for a room...</source>
<translation>Chercher un salon…</translation>
</message>
@@ -280,7 +280,7 @@
<context>
<name>ReplyPopup</name>
<message>
- <location filename="../../src/popups/ReplyPopup.cpp" line="+45"/>
+ <location filename="../../src/popups/ReplyPopup.cpp" line="+46"/>
<source>Logout</source>
<translation type="unfinished"></translation>
</message>
@@ -288,7 +288,7 @@
<context>
<name>RoomInfo</name>
<message>
- <location filename="../../src/Cache.cpp" line="+2307"/>
+ <location filename="../../src/Cache.cpp" line="+2303"/>
<source>no version stored</source>
<translation type="unfinished"></translation>
</message>
@@ -301,12 +301,12 @@
<translation>Quitter le salon</translation>
</message>
<message>
- <location line="+161"/>
+ <location line="+151"/>
<source>Accept</source>
<translation>Accepter</translation>
</message>
<message>
- <location line="+1"/>
+ <location line="+3"/>
<source>Decline</source>
<translation>Décliner</translation>
</message>
@@ -365,13 +365,13 @@
<context>
<name>TextInputWidget</name>
<message>
- <location filename="../../src/TextInputWidget.cpp" line="+502"/>
+ <location filename="../../src/TextInputWidget.cpp" line="+496"/>
<source>Send a file</source>
<translation type="unfinished"></translation>
</message>
<message>
<location line="+13"/>
- <location filename="../../src/TextInputWidget.h" line="+161"/>
+ <location filename="../../src/TextInputWidget.h" line="+163"/>
<source>Write a message...</source>
<translation>Écrivez un message...</translation>
</message>
@@ -386,7 +386,7 @@
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+72"/>
+ <location line="+73"/>
<source>Select a file</source>
<translation>Sélectionnez un fichier</translation>
</message>
@@ -404,7 +404,7 @@
<context>
<name>TimelineModel</name>
<message>
- <location filename="../../src/timeline/TimelineModel.cpp" line="+867"/>
+ <location filename="../../src/timeline/TimelineModel.cpp" line="+687"/>
<source>-- Encrypted Event (No keys found for decryption) --</source>
<comment>Placeholder, when the message was not decrypted yet or can't be decrypted</comment>
<translation type="unfinished"></translation>
@@ -428,18 +428,18 @@
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+25"/>
+ <location line="+29"/>
<source>-- Encrypted Event (Unknown event type) --</source>
<comment>Placeholder, when the message was decrypted, but we couldn't parse it, because Nheko/mtxclient don't support that event type yet</comment>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+54"/>
+ <location line="+48"/>
<source>Message redaction failed: %1</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+453"/>
+ <location line="+454"/>
<source>Save image</source>
<translation type="unfinished">Enregistrer l'image</translation>
</message>
@@ -458,11 +458,20 @@
<source>Save file</source>
<translation type="unfinished"></translation>
</message>
+ <message numerus="yes">
+ <location line="+126"/>
+ <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>
+ <numerusform></numerusform>
+ </translation>
+ </message>
</context>
<context>
<name>TimelineRow</name>
<message>
- <location filename="../qml/TimelineRow.qml" line="+57"/>
+ <location filename="../qml/TimelineRow.qml" line="+104"/>
<source>Reply</source>
<translation type="unfinished"></translation>
</message>
@@ -552,18 +561,6 @@
</message>
</context>
<context>
- <name>TypingDisplay</name>
- <message numerus="yes">
- <location filename="../../src/TypingDisplay.cpp" line="+37"/>
- <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>
- <numerusform></numerusform>
- </translation>
- </message>
-</context>
-<context>
<name>UserInfoWidget</name>
<message>
<location filename="../../src/UserInfoWidget.cpp" line="+87"/>
@@ -574,7 +571,7 @@
<context>
<name>UserSettingsPage</name>
<message>
- <location filename="../../src/UserSettingsPage.cpp" line="+171"/>
+ <location filename="../../src/UserSettingsPage.cpp" line="+172"/>
<source>Minimize to tray</source>
<translation>Réduire à la barre des tâches</translation>
</message>
@@ -741,7 +738,7 @@
<context>
<name>descriptiveTime</name>
<message>
- <location filename="../../src/Utils.cpp" line="+104"/>
+ <location filename="../../src/Utils.cpp" line="+106"/>
<source>Yesterday</source>
<translation type="unfinished"></translation>
</message>
@@ -1015,7 +1012,7 @@ Taille du média : %2
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+148"/>
+ <location line="+146"/>
<source>Select an avatar</source>
<translation type="unfinished"></translation>
</message>
@@ -1115,7 +1112,7 @@ Taille du média : %2
<context>
<name>message-description sent:</name>
<message>
- <location filename="../../src/Utils.h" line="+95"/>
+ <location filename="../../src/Utils.h" line="+100"/>
<source>You sent an audio clip</source>
<translation type="unfinished"></translation>
</message>
@@ -1211,7 +1208,7 @@ Taille du média : %2
<context>
<name>utils</name>
<message>
- <location filename="../../src/Utils.cpp" line="+282"/>
+ <location filename="../../src/Utils.cpp" line="+306"/>
<source>sent a file.</source>
<translation type="unfinished"></translation>
</message>
diff --git a/resources/langs/nheko_nl.ts b/resources/langs/nheko_nl.ts
index 8ff6d5d8..960feb6e 100644
--- a/resources/langs/nheko_nl.ts
+++ b/resources/langs/nheko_nl.ts
@@ -4,12 +4,12 @@
<context>
<name>ChatPage</name>
<message>
- <location filename="../../src/ChatPage.cpp" line="+346"/>
+ <location filename="../../src/ChatPage.cpp" line="+329"/>
<source>Failed to upload media. Please try again.</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+389"/>
+ <location line="+392"/>
<source>Failed to restore OLM account. Please login again.</source>
<translation type="unfinished"></translation>
</message>
@@ -19,7 +19,7 @@
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+181"/>
+ <location line="+148"/>
<source>Failed to setup encryption keys. Server response: %1 %2. Please try again later.</source>
<translation type="unfinished"></translation>
</message>
@@ -72,7 +72,7 @@
<context>
<name>EditModal</name>
<message>
- <location filename="../../src/dialogs/RoomSettings.cpp" line="+58"/>
+ <location filename="../../src/dialogs/RoomSettings.cpp" line="+59"/>
<source>Apply</source>
<translation type="unfinished"></translation>
</message>
@@ -182,7 +182,7 @@
<context>
<name>MessageDelegate</name>
<message>
- <location filename="../qml/delegates/MessageDelegate.qml" line="+43"/>
+ <location filename="../qml/delegates/MessageDelegate.qml" line="+60"/>
<source>redacted</source>
<translation type="unfinished"></translation>
</message>
@@ -223,7 +223,7 @@
<context>
<name>QuickSwitcher</name>
<message>
- <location filename="../../src/QuickSwitcher.cpp" line="+71"/>
+ <location filename="../../src/QuickSwitcher.cpp" line="+72"/>
<source>Search for a room...</source>
<translation>Zoek een kamer...</translation>
</message>
@@ -279,7 +279,7 @@
<context>
<name>ReplyPopup</name>
<message>
- <location filename="../../src/popups/ReplyPopup.cpp" line="+45"/>
+ <location filename="../../src/popups/ReplyPopup.cpp" line="+46"/>
<source>Logout</source>
<translation type="unfinished"></translation>
</message>
@@ -287,7 +287,7 @@
<context>
<name>RoomInfo</name>
<message>
- <location filename="../../src/Cache.cpp" line="+2307"/>
+ <location filename="../../src/Cache.cpp" line="+2303"/>
<source>no version stored</source>
<translation type="unfinished"></translation>
</message>
@@ -300,12 +300,12 @@
<translation>Kamer verlaten</translation>
</message>
<message>
- <location line="+161"/>
+ <location line="+151"/>
<source>Accept</source>
<translation>Accepteren</translation>
</message>
<message>
- <location line="+1"/>
+ <location line="+3"/>
<source>Decline</source>
<translation>Afwijzen</translation>
</message>
@@ -364,13 +364,13 @@
<context>
<name>TextInputWidget</name>
<message>
- <location filename="../../src/TextInputWidget.cpp" line="+502"/>
+ <location filename="../../src/TextInputWidget.cpp" line="+496"/>
<source>Send a file</source>
<translation type="unfinished"></translation>
</message>
<message>
<location line="+13"/>
- <location filename="../../src/TextInputWidget.h" line="+161"/>
+ <location filename="../../src/TextInputWidget.h" line="+163"/>
<source>Write a message...</source>
<translation>Typ een bericht...</translation>
</message>
@@ -385,7 +385,7 @@
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+72"/>
+ <location line="+73"/>
<source>Select a file</source>
<translation>Kies een bestand</translation>
</message>
@@ -403,7 +403,7 @@
<context>
<name>TimelineModel</name>
<message>
- <location filename="../../src/timeline/TimelineModel.cpp" line="+867"/>
+ <location filename="../../src/timeline/TimelineModel.cpp" line="+687"/>
<source>-- Encrypted Event (No keys found for decryption) --</source>
<comment>Placeholder, when the message was not decrypted yet or can't be decrypted</comment>
<translation type="unfinished"></translation>
@@ -427,18 +427,18 @@
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+25"/>
+ <location line="+29"/>
<source>-- Encrypted Event (Unknown event type) --</source>
<comment>Placeholder, when the message was decrypted, but we couldn't parse it, because Nheko/mtxclient don't support that event type yet</comment>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+54"/>
+ <location line="+48"/>
<source>Message redaction failed: %1</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+453"/>
+ <location line="+454"/>
<source>Save image</source>
<translation type="unfinished">Afbeelding opslaan</translation>
</message>
@@ -457,11 +457,20 @@
<source>Save file</source>
<translation type="unfinished"></translation>
</message>
+ <message numerus="yes">
+ <location line="+126"/>
+ <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>
+ <numerusform></numerusform>
+ </translation>
+ </message>
</context>
<context>
<name>TimelineRow</name>
<message>
- <location filename="../qml/TimelineRow.qml" line="+57"/>
+ <location filename="../qml/TimelineRow.qml" line="+104"/>
<source>Reply</source>
<translation type="unfinished"></translation>
</message>
@@ -551,18 +560,6 @@
</message>
</context>
<context>
- <name>TypingDisplay</name>
- <message numerus="yes">
- <location filename="../../src/TypingDisplay.cpp" line="+37"/>
- <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>
- <numerusform></numerusform>
- </translation>
- </message>
-</context>
-<context>
<name>UserInfoWidget</name>
<message>
<location filename="../../src/UserInfoWidget.cpp" line="+87"/>
@@ -573,7 +570,7 @@
<context>
<name>UserSettingsPage</name>
<message>
- <location filename="../../src/UserSettingsPage.cpp" line="+171"/>
+ <location filename="../../src/UserSettingsPage.cpp" line="+172"/>
<source>Minimize to tray</source>
<translation>Minimaliseren naar systeemvak</translation>
</message>
@@ -740,7 +737,7 @@
<context>
<name>descriptiveTime</name>
<message>
- <location filename="../../src/Utils.cpp" line="+104"/>
+ <location filename="../../src/Utils.cpp" line="+106"/>
<source>Yesterday</source>
<translation type="unfinished"></translation>
</message>
@@ -1014,7 +1011,7 @@ Mediagrootte: %2
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+148"/>
+ <location line="+146"/>
<source>Select an avatar</source>
<translation type="unfinished"></translation>
</message>
@@ -1114,7 +1111,7 @@ Mediagrootte: %2
<context>
<name>message-description sent:</name>
<message>
- <location filename="../../src/Utils.h" line="+95"/>
+ <location filename="../../src/Utils.h" line="+100"/>
<source>You sent an audio clip</source>
<translation type="unfinished"></translation>
</message>
@@ -1210,7 +1207,7 @@ Mediagrootte: %2
<context>
<name>utils</name>
<message>
- <location filename="../../src/Utils.cpp" line="+282"/>
+ <location filename="../../src/Utils.cpp" line="+306"/>
<source>sent a file.</source>
<translation type="unfinished"></translation>
</message>
diff --git a/resources/langs/nheko_pl.ts b/resources/langs/nheko_pl.ts
index cb628fa6..a94ab30e 100644
--- a/resources/langs/nheko_pl.ts
+++ b/resources/langs/nheko_pl.ts
@@ -4,12 +4,12 @@
<context>
<name>ChatPage</name>
<message>
- <location filename="../../src/ChatPage.cpp" line="+346"/>
+ <location filename="../../src/ChatPage.cpp" line="+329"/>
<source>Failed to upload media. Please try again.</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+389"/>
+ <location line="+392"/>
<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>
@@ -19,7 +19,7 @@
<translation>Nie udało się przywrócić zapisanych danych. Spróbuj zalogować się ponownie.</translation>
</message>
<message>
- <location line="+181"/>
+ <location line="+148"/>
<source>Failed to setup encryption keys. Server response: %1 %2. Please try again later.</source>
<translation type="unfinished"></translation>
</message>
@@ -72,7 +72,7 @@
<context>
<name>EditModal</name>
<message>
- <location filename="../../src/dialogs/RoomSettings.cpp" line="+58"/>
+ <location filename="../../src/dialogs/RoomSettings.cpp" line="+59"/>
<source>Apply</source>
<translation type="unfinished"></translation>
</message>
@@ -182,7 +182,7 @@
<context>
<name>MessageDelegate</name>
<message>
- <location filename="../qml/delegates/MessageDelegate.qml" line="+43"/>
+ <location filename="../qml/delegates/MessageDelegate.qml" line="+60"/>
<source>redacted</source>
<translation type="unfinished"></translation>
</message>
@@ -223,7 +223,7 @@
<context>
<name>QuickSwitcher</name>
<message>
- <location filename="../../src/QuickSwitcher.cpp" line="+71"/>
+ <location filename="../../src/QuickSwitcher.cpp" line="+72"/>
<source>Search for a room...</source>
<translation>Wyszukaj pokoju…</translation>
</message>
@@ -279,7 +279,7 @@
<context>
<name>ReplyPopup</name>
<message>
- <location filename="../../src/popups/ReplyPopup.cpp" line="+45"/>
+ <location filename="../../src/popups/ReplyPopup.cpp" line="+46"/>
<source>Logout</source>
<translation type="unfinished">Wyloguj</translation>
</message>
@@ -287,7 +287,7 @@
<context>
<name>RoomInfo</name>
<message>
- <location filename="../../src/Cache.cpp" line="+2307"/>
+ <location filename="../../src/Cache.cpp" line="+2303"/>
<source>no version stored</source>
<translation type="unfinished"></translation>
</message>
@@ -300,12 +300,12 @@
<translation>Opuść pokój</translation>
</message>
<message>
- <location line="+161"/>
+ <location line="+151"/>
<source>Accept</source>
<translation>Akceptuj</translation>
</message>
<message>
- <location line="+1"/>
+ <location line="+3"/>
<source>Decline</source>
<translation>Odrzuć</translation>
</message>
@@ -364,13 +364,13 @@
<context>
<name>TextInputWidget</name>
<message>
- <location filename="../../src/TextInputWidget.cpp" line="+502"/>
+ <location filename="../../src/TextInputWidget.cpp" line="+496"/>
<source>Send a file</source>
<translation>Wyślij plik</translation>
</message>
<message>
<location line="+13"/>
- <location filename="../../src/TextInputWidget.h" line="+161"/>
+ <location filename="../../src/TextInputWidget.h" line="+163"/>
<source>Write a message...</source>
<translation>Napisz wiadomość…</translation>
</message>
@@ -385,7 +385,7 @@
<translation>Emoji</translation>
</message>
<message>
- <location line="+72"/>
+ <location line="+73"/>
<source>Select a file</source>
<translation>Wybierz plik</translation>
</message>
@@ -403,7 +403,7 @@
<context>
<name>TimelineModel</name>
<message>
- <location filename="../../src/timeline/TimelineModel.cpp" line="+867"/>
+ <location filename="../../src/timeline/TimelineModel.cpp" line="+687"/>
<source>-- Encrypted Event (No keys found for decryption) --</source>
<comment>Placeholder, when the message was not decrypted yet or can't be decrypted</comment>
<translation type="unfinished"></translation>
@@ -427,18 +427,18 @@
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+25"/>
+ <location line="+29"/>
<source>-- Encrypted Event (Unknown event type) --</source>
<comment>Placeholder, when the message was decrypted, but we couldn't parse it, because Nheko/mtxclient don't support that event type yet</comment>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+54"/>
+ <location line="+48"/>
<source>Message redaction failed: %1</source>
<translation type="unfinished">Redagowanie wiadomości nie powiodło się: %1</translation>
</message>
<message>
- <location line="+453"/>
+ <location line="+454"/>
<source>Save image</source>
<translation type="unfinished">Zapisz obraz</translation>
</message>
@@ -457,11 +457,21 @@
<source>Save file</source>
<translation type="unfinished"></translation>
</message>
+ <message numerus="yes">
+ <location line="+126"/>
+ <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>
+ <numerusform></numerusform>
+ <numerusform></numerusform>
+ </translation>
+ </message>
</context>
<context>
<name>TimelineRow</name>
<message>
- <location filename="../qml/TimelineRow.qml" line="+57"/>
+ <location filename="../qml/TimelineRow.qml" line="+104"/>
<source>Reply</source>
<translation type="unfinished"></translation>
</message>
@@ -551,19 +561,6 @@
</message>
</context>
<context>
- <name>TypingDisplay</name>
- <message numerus="yes">
- <location filename="../../src/TypingDisplay.cpp" line="+37"/>
- <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>
- <numerusform></numerusform>
- <numerusform></numerusform>
- </translation>
- </message>
-</context>
-<context>
<name>UserInfoWidget</name>
<message>
<location filename="../../src/UserInfoWidget.cpp" line="+87"/>
@@ -574,7 +571,7 @@
<context>
<name>UserSettingsPage</name>
<message>
- <location filename="../../src/UserSettingsPage.cpp" line="+171"/>
+ <location filename="../../src/UserSettingsPage.cpp" line="+172"/>
<source>Minimize to tray</source>
<translation>Zminimalizuj do paska zadań</translation>
</message>
@@ -741,7 +738,7 @@
<context>
<name>descriptiveTime</name>
<message>
- <location filename="../../src/Utils.cpp" line="+104"/>
+ <location filename="../../src/Utils.cpp" line="+106"/>
<source>Yesterday</source>
<translation type="unfinished"></translation>
</message>
@@ -1018,7 +1015,7 @@ Rozmiar multimediów: %2
<translation>Nie udało się włączyć szyfrowania: %1</translation>
</message>
<message>
- <location line="+148"/>
+ <location line="+146"/>
<source>Select an avatar</source>
<translation>Wybierz awatar</translation>
</message>
@@ -1118,7 +1115,7 @@ Rozmiar multimediów: %2
<context>
<name>message-description sent:</name>
<message>
- <location filename="../../src/Utils.h" line="+95"/>
+ <location filename="../../src/Utils.h" line="+100"/>
<source>You sent an audio clip</source>
<translation type="unfinished"></translation>
</message>
@@ -1214,7 +1211,7 @@ Rozmiar multimediów: %2
<context>
<name>utils</name>
<message>
- <location filename="../../src/Utils.cpp" line="+282"/>
+ <location filename="../../src/Utils.cpp" line="+306"/>
<source>sent a file.</source>
<translation type="unfinished"></translation>
</message>
diff --git a/resources/langs/nheko_ru.ts b/resources/langs/nheko_ru.ts
index 12b9873e..e8c7a4e8 100644
--- a/resources/langs/nheko_ru.ts
+++ b/resources/langs/nheko_ru.ts
@@ -4,12 +4,12 @@
<context>
<name>ChatPage</name>
<message>
- <location filename="../../src/ChatPage.cpp" line="+346"/>
+ <location filename="../../src/ChatPage.cpp" line="+329"/>
<source>Failed to upload media. Please try again.</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+389"/>
+ <location line="+392"/>
<source>Failed to restore OLM account. Please login again.</source>
<translation>Не удалось восстановить учетную запись OLM. Пожалуйста, войдите снова.</translation>
</message>
@@ -19,7 +19,7 @@
<translation>Не удалось восстановить сохраненные данные. Пожалуйста, войдите снова.</translation>
</message>
<message>
- <location line="+181"/>
+ <location line="+148"/>
<source>Failed to setup encryption keys. Server response: %1 %2. Please try again later.</source>
<translation>Не удалось настроить ключи шифрования. Ответ сервера:%1 %2. Пожалуйста, попробуйте позже.</translation>
</message>
@@ -72,7 +72,7 @@
<context>
<name>EditModal</name>
<message>
- <location filename="../../src/dialogs/RoomSettings.cpp" line="+58"/>
+ <location filename="../../src/dialogs/RoomSettings.cpp" line="+59"/>
<source>Apply</source>
<translation>Применить</translation>
</message>
@@ -182,7 +182,7 @@
<context>
<name>MessageDelegate</name>
<message>
- <location filename="../qml/delegates/MessageDelegate.qml" line="+43"/>
+ <location filename="../qml/delegates/MessageDelegate.qml" line="+60"/>
<source>redacted</source>
<translation type="unfinished"></translation>
</message>
@@ -223,7 +223,7 @@
<context>
<name>QuickSwitcher</name>
<message>
- <location filename="../../src/QuickSwitcher.cpp" line="+71"/>
+ <location filename="../../src/QuickSwitcher.cpp" line="+72"/>
<source>Search for a room...</source>
<translation>Поиск комнаты...</translation>
</message>
@@ -279,7 +279,7 @@
<context>
<name>ReplyPopup</name>
<message>
- <location filename="../../src/popups/ReplyPopup.cpp" line="+45"/>
+ <location filename="../../src/popups/ReplyPopup.cpp" line="+46"/>
<source>Logout</source>
<translation type="unfinished">Выйти</translation>
</message>
@@ -287,7 +287,7 @@
<context>
<name>RoomInfo</name>
<message>
- <location filename="../../src/Cache.cpp" line="+2307"/>
+ <location filename="../../src/Cache.cpp" line="+2303"/>
<source>no version stored</source>
<translation type="unfinished"></translation>
</message>
@@ -300,12 +300,12 @@
<translation>Покинуть комнату</translation>
</message>
<message>
- <location line="+161"/>
+ <location line="+151"/>
<source>Accept</source>
<translation>Принять</translation>
</message>
<message>
- <location line="+1"/>
+ <location line="+3"/>
<source>Decline</source>
<translation>Отказаться</translation>
</message>
@@ -364,13 +364,13 @@
<context>
<name>TextInputWidget</name>
<message>
- <location filename="../../src/TextInputWidget.cpp" line="+502"/>
+ <location filename="../../src/TextInputWidget.cpp" line="+496"/>
<source>Send a file</source>
<translation>Отправить файл</translation>
</message>
<message>
<location line="+13"/>
- <location filename="../../src/TextInputWidget.h" line="+161"/>
+ <location filename="../../src/TextInputWidget.h" line="+163"/>
<source>Write a message...</source>
<translation>Написать сообщение...</translation>
</message>
@@ -385,7 +385,7 @@
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+72"/>
+ <location line="+73"/>
<source>Select a file</source>
<translation>Выберите файл</translation>
</message>
@@ -403,7 +403,7 @@
<context>
<name>TimelineModel</name>
<message>
- <location filename="../../src/timeline/TimelineModel.cpp" line="+867"/>
+ <location filename="../../src/timeline/TimelineModel.cpp" line="+687"/>
<source>-- Encrypted Event (No keys found for decryption) --</source>
<comment>Placeholder, when the message was not decrypted yet or can't be decrypted</comment>
<translation type="unfinished"></translation>
@@ -427,18 +427,18 @@
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+25"/>
+ <location line="+29"/>
<source>-- Encrypted Event (Unknown event type) --</source>
<comment>Placeholder, when the message was decrypted, but we couldn't parse it, because Nheko/mtxclient don't support that event type yet</comment>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+54"/>
+ <location line="+48"/>
<source>Message redaction failed: %1</source>
<translation type="unfinished">Ошибка редактирования сообщения: %1</translation>
</message>
<message>
- <location line="+453"/>
+ <location line="+454"/>
<source>Save image</source>
<translation type="unfinished">Сохранить изображение</translation>
</message>
@@ -457,11 +457,21 @@
<source>Save file</source>
<translation type="unfinished"></translation>
</message>
+ <message numerus="yes">
+ <location line="+126"/>
+ <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>
+ <numerusform></numerusform>
+ <numerusform></numerusform>
+ </translation>
+ </message>
</context>
<context>
<name>TimelineRow</name>
<message>
- <location filename="../qml/TimelineRow.qml" line="+57"/>
+ <location filename="../qml/TimelineRow.qml" line="+104"/>
<source>Reply</source>
<translation type="unfinished"></translation>
</message>
@@ -551,19 +561,6 @@
</message>
</context>
<context>
- <name>TypingDisplay</name>
- <message numerus="yes">
- <location filename="../../src/TypingDisplay.cpp" line="+37"/>
- <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>
- <numerusform></numerusform>
- <numerusform></numerusform>
- </translation>
- </message>
-</context>
-<context>
<name>UserInfoWidget</name>
<message>
<location filename="../../src/UserInfoWidget.cpp" line="+87"/>
@@ -574,7 +571,7 @@
<context>
<name>UserSettingsPage</name>
<message>
- <location filename="../../src/UserSettingsPage.cpp" line="+171"/>
+ <location filename="../../src/UserSettingsPage.cpp" line="+172"/>
<source>Minimize to tray</source>
<translation>Сворачивать в системную панель</translation>
</message>
@@ -742,7 +739,7 @@
<context>
<name>descriptiveTime</name>
<message>
- <location filename="../../src/Utils.cpp" line="+104"/>
+ <location filename="../../src/Utils.cpp" line="+106"/>
<source>Yesterday</source>
<translation type="unfinished"></translation>
</message>
@@ -1017,7 +1014,7 @@ Media size: %2
<translation>Не удалось включить шифрование: %1</translation>
</message>
<message>
- <location line="+148"/>
+ <location line="+146"/>
<source>Select an avatar</source>
<translation>Выберите аватар</translation>
</message>
@@ -1117,7 +1114,7 @@ Media size: %2
<context>
<name>message-description sent:</name>
<message>
- <location filename="../../src/Utils.h" line="+95"/>
+ <location filename="../../src/Utils.h" line="+100"/>
<source>You sent an audio clip</source>
<translation type="unfinished"></translation>
</message>
@@ -1213,7 +1210,7 @@ Media size: %2
<context>
<name>utils</name>
<message>
- <location filename="../../src/Utils.cpp" line="+282"/>
+ <location filename="../../src/Utils.cpp" line="+306"/>
<source>sent a file.</source>
<translation type="unfinished"></translation>
</message>
diff --git a/resources/langs/nheko_zh_CN.ts b/resources/langs/nheko_zh_CN.ts
index 799a534d..718bcb55 100644
--- a/resources/langs/nheko_zh_CN.ts
+++ b/resources/langs/nheko_zh_CN.ts
@@ -4,12 +4,12 @@
<context>
<name>ChatPage</name>
<message>
- <location filename="../../src/ChatPage.cpp" line="+346"/>
+ <location filename="../../src/ChatPage.cpp" line="+329"/>
<source>Failed to upload media. Please try again.</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+389"/>
+ <location line="+392"/>
<source>Failed to restore OLM account. Please login again.</source>
<translation>恢复 OLM 账户失败。请重新登录。</translation>
</message>
@@ -19,7 +19,7 @@
<translation>恢复保存的数据失败。请重新登录。</translation>
</message>
<message>
- <location line="+181"/>
+ <location line="+148"/>
<source>Failed to setup encryption keys. Server response: %1 %2. Please try again later.</source>
<translation type="unfinished"></translation>
</message>
@@ -72,7 +72,7 @@
<context>
<name>EditModal</name>
<message>
- <location filename="../../src/dialogs/RoomSettings.cpp" line="+58"/>
+ <location filename="../../src/dialogs/RoomSettings.cpp" line="+59"/>
<source>Apply</source>
<translation type="unfinished"></translation>
</message>
@@ -182,7 +182,7 @@
<context>
<name>MessageDelegate</name>
<message>
- <location filename="../qml/delegates/MessageDelegate.qml" line="+43"/>
+ <location filename="../qml/delegates/MessageDelegate.qml" line="+60"/>
<source>redacted</source>
<translation type="unfinished"></translation>
</message>
@@ -223,7 +223,7 @@
<context>
<name>QuickSwitcher</name>
<message>
- <location filename="../../src/QuickSwitcher.cpp" line="+71"/>
+ <location filename="../../src/QuickSwitcher.cpp" line="+72"/>
<source>Search for a room...</source>
<translation>寻找一个聊天室...</translation>
</message>
@@ -279,7 +279,7 @@
<context>
<name>ReplyPopup</name>
<message>
- <location filename="../../src/popups/ReplyPopup.cpp" line="+45"/>
+ <location filename="../../src/popups/ReplyPopup.cpp" line="+46"/>
<source>Logout</source>
<translation type="unfinished">登出</translation>
</message>
@@ -287,7 +287,7 @@
<context>
<name>RoomInfo</name>
<message>
- <location filename="../../src/Cache.cpp" line="+2307"/>
+ <location filename="../../src/Cache.cpp" line="+2303"/>
<source>no version stored</source>
<translation type="unfinished"></translation>
</message>
@@ -300,12 +300,12 @@
<translation>离开聊天室</translation>
</message>
<message>
- <location line="+161"/>
+ <location line="+151"/>
<source>Accept</source>
<translation>接受</translation>
</message>
<message>
- <location line="+1"/>
+ <location line="+3"/>
<source>Decline</source>
<translation>拒绝</translation>
</message>
@@ -364,13 +364,13 @@
<context>
<name>TextInputWidget</name>
<message>
- <location filename="../../src/TextInputWidget.cpp" line="+502"/>
+ <location filename="../../src/TextInputWidget.cpp" line="+496"/>
<source>Send a file</source>
<translation>发送一个文件</translation>
</message>
<message>
<location line="+13"/>
- <location filename="../../src/TextInputWidget.h" line="+161"/>
+ <location filename="../../src/TextInputWidget.h" line="+163"/>
<source>Write a message...</source>
<translation>写一条消息...</translation>
</message>
@@ -385,7 +385,7 @@
<translation></translation>
</message>
<message>
- <location line="+72"/>
+ <location line="+73"/>
<source>Select a file</source>
<translation>选择一个文件</translation>
</message>
@@ -403,7 +403,7 @@
<context>
<name>TimelineModel</name>
<message>
- <location filename="../../src/timeline/TimelineModel.cpp" line="+867"/>
+ <location filename="../../src/timeline/TimelineModel.cpp" line="+687"/>
<source>-- Encrypted Event (No keys found for decryption) --</source>
<comment>Placeholder, when the message was not decrypted yet or can't be decrypted</comment>
<translation type="unfinished"></translation>
@@ -427,18 +427,18 @@
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+25"/>
+ <location line="+29"/>
<source>-- Encrypted Event (Unknown event type) --</source>
<comment>Placeholder, when the message was decrypted, but we couldn't parse it, because Nheko/mtxclient don't support that event type yet</comment>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+54"/>
+ <location line="+48"/>
<source>Message redaction failed: %1</source>
<translation type="unfinished">删除消息失败:%1</translation>
</message>
<message>
- <location line="+453"/>
+ <location line="+454"/>
<source>Save image</source>
<translation type="unfinished">保存图像</translation>
</message>
@@ -457,11 +457,19 @@
<source>Save file</source>
<translation type="unfinished"></translation>
</message>
+ <message numerus="yes">
+ <location line="+126"/>
+ <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>
+ </translation>
+ </message>
</context>
<context>
<name>TimelineRow</name>
<message>
- <location filename="../qml/TimelineRow.qml" line="+57"/>
+ <location filename="../qml/TimelineRow.qml" line="+104"/>
<source>Reply</source>
<translation type="unfinished"></translation>
</message>
@@ -551,17 +559,6 @@
</message>
</context>
<context>
- <name>TypingDisplay</name>
- <message numerus="yes">
- <location filename="../../src/TypingDisplay.cpp" line="+37"/>
- <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>
- </translation>
- </message>
-</context>
-<context>
<name>UserInfoWidget</name>
<message>
<location filename="../../src/UserInfoWidget.cpp" line="+87"/>
@@ -572,7 +569,7 @@
<context>
<name>UserSettingsPage</name>
<message>
- <location filename="../../src/UserSettingsPage.cpp" line="+171"/>
+ <location filename="../../src/UserSettingsPage.cpp" line="+172"/>
<source>Minimize to tray</source>
<translation>最小化至托盘</translation>
</message>
@@ -739,7 +736,7 @@
<context>
<name>descriptiveTime</name>
<message>
- <location filename="../../src/Utils.cpp" line="+104"/>
+ <location filename="../../src/Utils.cpp" line="+106"/>
<source>Yesterday</source>
<translation type="unfinished"></translation>
</message>
@@ -1014,7 +1011,7 @@ Media size: %2
<translation>启用加密失败:%1</translation>
</message>
<message>
- <location line="+148"/>
+ <location line="+146"/>
<source>Select an avatar</source>
<translation>选择一个头像</translation>
</message>
@@ -1122,7 +1119,7 @@ Media size: %2
<context>
<name>message-description sent:</name>
<message>
- <location filename="../../src/Utils.h" line="+95"/>
+ <location filename="../../src/Utils.h" line="+100"/>
<source>You sent an audio clip</source>
<translation type="unfinished"></translation>
</message>
@@ -1218,7 +1215,7 @@ Media size: %2
<context>
<name>utils</name>
<message>
- <location filename="../../src/Utils.cpp" line="+282"/>
+ <location filename="../../src/Utils.cpp" line="+306"/>
<source>sent a file.</source>
<translation type="unfinished"></translation>
</message>
diff --git a/resources/qml/TimelineView.qml b/resources/qml/TimelineView.qml
index bfea79ee..60a8e6c1 100644
--- a/resources/qml/TimelineView.qml
+++ b/resources/qml/TimelineView.qml
@@ -38,7 +38,11 @@ Item {
id: chat
visible: timelineManager.timeline != null
- anchors.fill: parent
+
+ anchors.left: parent.left
+ anchors.right: parent.right
+ anchors.top: parent.top
+ anchors.bottom: chatFooter.top
anchors.leftMargin: 4
anchors.rightMargin: scrollbar.width
@@ -179,6 +183,31 @@ Item {
}
}
}
+
+ }
+
+ Rectangle {
+ id: chatFooter
+
+ height: Math.max(16, typingDisplay.height)
+ anchors.left: parent.left
+ anchors.right: parent.right
+ anchors.bottom: parent.bottom
+ z: 3
+
+ color: colors.window
+
+ Text {
+ anchors.left: parent.left
+ anchors.right: parent.right
+ anchors.bottom: parent.bottom
+ anchors.leftMargin: 10
+ anchors.rightMargin: 10
+
+ id: typingDisplay
+ text: chat.model ? chat.model.formatTypingUsers(chat.model.typingUsers, chatFooter.color) : ""
+ color: colors.windowText
+ }
}
}
}
|