diff --git a/resources/langs/nheko_de.ts b/resources/langs/nheko_de.ts
index 879551bd04cc1ca4143c3702a943d044f301c138..59c6dffd85c5cc196f6c2ec2214279f0f3fd521a 100644
--- a/resources/langs/nheko_de.ts
+++ b/resources/langs/nheko_de.ts
@@ -4,27 +4,12 @@
 <context>
     <name>ChatPage</name>
     <message>
-        <location filename="../../src/ChatPage.cpp" line="+330"/>
-        <source>Failed to upload image. Please try again.</source>
-        <translation>Hochladen des Bildes fehlgeschlagen. Bitte versuche es erneut.</translation>
+        <location filename="../../src/ChatPage.cpp" line="+346"/>
+        <source>Failed to upload media. Please try again.</source>
+        <translation>Medienupload fehlgeschlagen. Bitte versuche es erneut.</translation>
     </message>
     <message>
-        <location line="+45"/>
-        <source>Failed to upload file. Please try again.</source>
-        <translation>Hochladen der Datei fehlgeschlagen. Bitte versuche es erneut.</translation>
-    </message>
-    <message>
-        <location line="+43"/>
-        <source>Failed to upload audio. Please try again.</source>
-        <translation>Hochladen der Audiodatei fehlgeschlagen. Bitte versuche es erneut.</translation>
-    </message>
-    <message>
-        <location line="+42"/>
-        <source>Failed to upload video. Please try again.</source>
-        <translation>Hochladen der Videodatei fehlgeschlagen. Bitte versuche es erneut.</translation>
-    </message>
-    <message>
-        <location line="+393"/>
+        <location line="+389"/>
         <source>Failed to restore OLM account. Please login again.</source>
         <translation>Wiederherstellung des OLM Accounts fehlgeschlagen. Bitte logge dich erneut ein.</translation>
     </message>
@@ -194,6 +179,19 @@
         <translation>OK</translation>
     </message>
 </context>
+<context>
+    <name>MessageDelegate</name>
+    <message>
+        <location filename="../qml/delegates/MessageDelegate.qml" line="+43"/>
+        <source>redacted</source>
+        <translation>gelöscht</translation>
+    </message>
+    <message>
+        <location line="+6"/>
+        <source>Encryption enabled</source>
+        <translation>Verschlüsselung aktiviert</translation>
+    </message>
+</context>
 <context>
     <name>Placeholder</name>
     <message>
@@ -210,14 +208,6 @@
         <translation>Raum suchen…</translation>
     </message>
 </context>
-<context>
-    <name>Redacted</name>
-    <message>
-        <location filename="../qml/delegates/Redacted.qml" line="+5"/>
-        <source>redacted</source>
-        <translation>gelöscht</translation>
-    </message>
-</context>
 <context>
     <name>RegisterPage</name>
     <message>
@@ -354,13 +344,13 @@
 <context>
     <name>TextInputWidget</name>
     <message>
-        <location filename="../../src/TextInputWidget.cpp" line="+507"/>
+        <location filename="../../src/TextInputWidget.cpp" line="+502"/>
         <source>Send a file</source>
         <translation>Versende Datei</translation>
     </message>
     <message>
         <location line="+13"/>
-        <location filename="../../src/TextInputWidget.h" line="+164"/>
+        <location filename="../../src/TextInputWidget.h" line="+161"/>
         <source>Write a message...</source>
         <translation>Schreibe eine Nachricht…</translation>
     </message>
@@ -375,7 +365,7 @@
         <translation>Emoji</translation>
     </message>
     <message>
-        <location line="+75"/>
+        <location line="+72"/>
         <source>Select a file</source>
         <translation>Datei auswählen</translation>
     </message>
@@ -393,7 +383,7 @@
 <context>
     <name>TimelineModel</name>
     <message>
-        <location filename="../../src/timeline/TimelineModel.cpp" line="+780"/>
+        <location filename="../../src/timeline/TimelineModel.cpp" line="+835"/>
         <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>
@@ -423,10 +413,30 @@
         <translation>-- verschlüsselter Event (Unbekannter Eventtyp) --</translation>
     </message>
     <message>
-        <location line="+50"/>
+        <location line="+54"/>
         <source>Message redaction failed: %1</source>
         <translation>Nachricht zurückziehen fehlgeschlagen: %1</translation>
     </message>
+    <message>
+        <location line="+453"/>
+        <source>Save image</source>
+        <translation>Bild speichern</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Save video</source>
+        <translation>Video speichern</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Save audio</source>
+        <translation>Audiodatei speichern</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Save file</source>
+        <translation>Datei speichern</translation>
+    </message>
 </context>
 <context>
     <name>TimelineRow</name>
@@ -474,29 +484,6 @@
         <translation>Kein Raum geöffnet</translation>
     </message>
 </context>
-<context>
-    <name>TimelineViewManager</name>
-    <message>
-        <location filename="../../src/timeline/TimelineViewManager.cpp" line="+161"/>
-        <source>Save image</source>
-        <translation>Bild speichern</translation>
-    </message>
-    <message>
-        <location line="+2"/>
-        <source>Save video</source>
-        <translation>Video speichern</translation>
-    </message>
-    <message>
-        <location line="+2"/>
-        <source>Save audio</source>
-        <translation>Audiodatei speichern</translation>
-    </message>
-    <message>
-        <location line="+2"/>
-        <source>Save file</source>
-        <translation>Datei speichern</translation>
-    </message>
-</context>
 <context>
     <name>TopRoomBar</name>
     <message>
diff --git a/resources/langs/nheko_el.ts b/resources/langs/nheko_el.ts
index e9c70da00221ff50ac1f574d8ce8719049f22071..fe65785bdaf2a0e1b33be757ca7b01977fb366cd 100644
--- a/resources/langs/nheko_el.ts
+++ b/resources/langs/nheko_el.ts
@@ -4,27 +4,12 @@
 <context>
     <name>ChatPage</name>
     <message>
-        <location filename="../../src/ChatPage.cpp" line="+330"/>
-        <source>Failed to upload image. Please try again.</source>
+        <location filename="../../src/ChatPage.cpp" line="+346"/>
+        <source>Failed to upload media. Please try again.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+45"/>
-        <source>Failed to upload file. Please try again.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location line="+43"/>
-        <source>Failed to upload audio. Please try again.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location line="+42"/>
-        <source>Failed to upload video. Please try again.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location line="+393"/>
+        <location line="+389"/>
         <source>Failed to restore OLM account. Please login again.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -194,6 +179,19 @@
         <translation type="unfinished"></translation>
     </message>
 </context>
+<context>
+    <name>MessageDelegate</name>
+    <message>
+        <location filename="../qml/delegates/MessageDelegate.qml" line="+43"/>
+        <source>redacted</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+6"/>
+        <source>Encryption enabled</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>Placeholder</name>
     <message>
@@ -210,14 +208,6 @@
         <translation>Αναζήτηση συνομιλίας...</translation>
     </message>
 </context>
-<context>
-    <name>Redacted</name>
-    <message>
-        <location filename="../qml/delegates/Redacted.qml" line="+5"/>
-        <source>redacted</source>
-        <translation type="unfinished"></translation>
-    </message>
-</context>
 <context>
     <name>RegisterPage</name>
     <message>
@@ -354,13 +344,13 @@
 <context>
     <name>TextInputWidget</name>
     <message>
-        <location filename="../../src/TextInputWidget.cpp" line="+507"/>
+        <location filename="../../src/TextInputWidget.cpp" line="+502"/>
         <source>Send a file</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+13"/>
-        <location filename="../../src/TextInputWidget.h" line="+164"/>
+        <location filename="../../src/TextInputWidget.h" line="+161"/>
         <source>Write a message...</source>
         <translation>Γράψε ένα μήνυμα...</translation>
     </message>
@@ -375,7 +365,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+75"/>
+        <location line="+72"/>
         <source>Select a file</source>
         <translation>Διάλεξε ένα αρχείο</translation>
     </message>
@@ -393,7 +383,7 @@
 <context>
     <name>TimelineModel</name>
     <message>
-        <location filename="../../src/timeline/TimelineModel.cpp" line="+780"/>
+        <location filename="../../src/timeline/TimelineModel.cpp" line="+835"/>
         <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>
@@ -423,10 +413,30 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+50"/>
+        <location line="+54"/>
         <source>Message redaction failed: %1</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location line="+453"/>
+        <source>Save image</source>
+        <translation type="unfinished">Αποθήκευση Εικόνας</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Save video</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Save audio</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Save file</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>TimelineRow</name>
@@ -474,29 +484,6 @@
         <translation type="unfinished"></translation>
     </message>
 </context>
-<context>
-    <name>TimelineViewManager</name>
-    <message>
-        <location filename="../../src/timeline/TimelineViewManager.cpp" line="+161"/>
-        <source>Save image</source>
-        <translation type="unfinished">Αποθήκευση Εικόνας</translation>
-    </message>
-    <message>
-        <location line="+2"/>
-        <source>Save video</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location line="+2"/>
-        <source>Save audio</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location line="+2"/>
-        <source>Save file</source>
-        <translation type="unfinished"></translation>
-    </message>
-</context>
 <context>
     <name>TopRoomBar</name>
     <message>
diff --git a/resources/langs/nheko_en.ts b/resources/langs/nheko_en.ts
index cb2ef1c7cdee27d3246a7326eaa5ef1cad4066ed..49ea7439b3de103141e7e7e58b59e513e66a9cd9 100644
--- a/resources/langs/nheko_en.ts
+++ b/resources/langs/nheko_en.ts
@@ -4,27 +4,12 @@
 <context>
     <name>ChatPage</name>
     <message>
-        <location filename="../../src/ChatPage.cpp" line="+330"/>
-        <source>Failed to upload image. Please try again.</source>
-        <translation>Failed to upload image. Please try again.</translation>
-    </message>
-    <message>
-        <location line="+45"/>
-        <source>Failed to upload file. Please try again.</source>
-        <translation>Failed to upload file. Please try again.</translation>
-    </message>
-    <message>
-        <location line="+43"/>
-        <source>Failed to upload audio. Please try again.</source>
-        <translation>Failed to upload audio. Please try again.</translation>
-    </message>
-    <message>
-        <location line="+42"/>
-        <source>Failed to upload video. Please try again.</source>
-        <translation>Failed to upload video. Please try again.</translation>
+        <location filename="../../src/ChatPage.cpp" line="+346"/>
+        <source>Failed to upload media. Please try again.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+393"/>
+        <location line="+389"/>
         <source>Failed to restore OLM account. Please login again.</source>
         <translation>Failed to restore OLM account. Please login again.</translation>
     </message>
@@ -194,6 +179,19 @@
         <translation>OK</translation>
     </message>
 </context>
+<context>
+    <name>MessageDelegate</name>
+    <message>
+        <location filename="../qml/delegates/MessageDelegate.qml" line="+43"/>
+        <source>redacted</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+6"/>
+        <source>Encryption enabled</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>Placeholder</name>
     <message>
@@ -210,14 +208,6 @@
         <translation>Search for a room…</translation>
     </message>
 </context>
-<context>
-    <name>Redacted</name>
-    <message>
-        <location filename="../qml/delegates/Redacted.qml" line="+5"/>
-        <source>redacted</source>
-        <translation type="unfinished"></translation>
-    </message>
-</context>
 <context>
     <name>RegisterPage</name>
     <message>
@@ -354,13 +344,13 @@
 <context>
     <name>TextInputWidget</name>
     <message>
-        <location filename="../../src/TextInputWidget.cpp" line="+507"/>
+        <location filename="../../src/TextInputWidget.cpp" line="+502"/>
         <source>Send a file</source>
         <translation>Send a file</translation>
     </message>
     <message>
         <location line="+13"/>
-        <location filename="../../src/TextInputWidget.h" line="+164"/>
+        <location filename="../../src/TextInputWidget.h" line="+161"/>
         <source>Write a message...</source>
         <translation>Write a message…</translation>
     </message>
@@ -375,7 +365,7 @@
         <translation>Emoji</translation>
     </message>
     <message>
-        <location line="+75"/>
+        <location line="+72"/>
         <source>Select a file</source>
         <translation>Select a file</translation>
     </message>
@@ -393,7 +383,7 @@
 <context>
     <name>TimelineModel</name>
     <message>
-        <location filename="../../src/timeline/TimelineModel.cpp" line="+780"/>
+        <location filename="../../src/timeline/TimelineModel.cpp" line="+835"/>
         <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>
@@ -423,10 +413,30 @@
         <translation type="unfinished">-- Encrypted Event (Unknown event type) --</translation>
     </message>
     <message>
-        <location line="+50"/>
+        <location line="+54"/>
         <source>Message redaction failed: %1</source>
         <translation type="unfinished">Message redaction failed: %1</translation>
     </message>
+    <message>
+        <location line="+453"/>
+        <source>Save image</source>
+        <translation type="unfinished">Save image</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Save video</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Save audio</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Save file</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>TimelineRow</name>
@@ -474,29 +484,6 @@
         <translation type="unfinished"></translation>
     </message>
 </context>
-<context>
-    <name>TimelineViewManager</name>
-    <message>
-        <location filename="../../src/timeline/TimelineViewManager.cpp" line="+161"/>
-        <source>Save image</source>
-        <translation type="unfinished">Save image</translation>
-    </message>
-    <message>
-        <location line="+2"/>
-        <source>Save video</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location line="+2"/>
-        <source>Save audio</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location line="+2"/>
-        <source>Save file</source>
-        <translation type="unfinished"></translation>
-    </message>
-</context>
 <context>
     <name>TopRoomBar</name>
     <message>
diff --git a/resources/langs/nheko_fi.ts b/resources/langs/nheko_fi.ts
index 76bf706407030fb73d077ce311ab6f795cf544ec..4bb20e3098f0a40afa07d6d26ffc5e629812549f 100644
--- a/resources/langs/nheko_fi.ts
+++ b/resources/langs/nheko_fi.ts
@@ -4,27 +4,12 @@
 <context>
     <name>ChatPage</name>
     <message>
-        <location filename="../../src/ChatPage.cpp" line="+330"/>
-        <source>Failed to upload image. Please try again.</source>
-        <translation>Kuvan lähettäminen epäonnistui. Ole hyvä ja yritä uudelleen.</translation>
-    </message>
-    <message>
-        <location line="+45"/>
-        <source>Failed to upload file. Please try again.</source>
-        <translation>Tiedoston lähettäminen epäonnistui. Ole hyvä ja yritä uudelleen.</translation>
-    </message>
-    <message>
-        <location line="+43"/>
-        <source>Failed to upload audio. Please try again.</source>
-        <translation>Äänitiedoston lähettäminen epäonnistui. Ole hyvä ja yritä uudelleen.</translation>
-    </message>
-    <message>
-        <location line="+42"/>
-        <source>Failed to upload video. Please try again.</source>
-        <translation>Videon lähettäminen epäonnistui. Ole hyvä ja yritä uudelleen.</translation>
+        <location filename="../../src/ChatPage.cpp" line="+346"/>
+        <source>Failed to upload media. Please try again.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+393"/>
+        <location line="+389"/>
         <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>
@@ -194,6 +179,19 @@
         <translation>OK</translation>
     </message>
 </context>
+<context>
+    <name>MessageDelegate</name>
+    <message>
+        <location filename="../qml/delegates/MessageDelegate.qml" line="+43"/>
+        <source>redacted</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+6"/>
+        <source>Encryption enabled</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>Placeholder</name>
     <message>
@@ -210,14 +208,6 @@
         <translation>Etsi huonetta…</translation>
     </message>
 </context>
-<context>
-    <name>Redacted</name>
-    <message>
-        <location filename="../qml/delegates/Redacted.qml" line="+5"/>
-        <source>redacted</source>
-        <translation type="unfinished"></translation>
-    </message>
-</context>
 <context>
     <name>RegisterPage</name>
     <message>
@@ -354,13 +344,13 @@
 <context>
     <name>TextInputWidget</name>
     <message>
-        <location filename="../../src/TextInputWidget.cpp" line="+507"/>
+        <location filename="../../src/TextInputWidget.cpp" line="+502"/>
         <source>Send a file</source>
         <translation>Lähetä tiedosto</translation>
     </message>
     <message>
         <location line="+13"/>
-        <location filename="../../src/TextInputWidget.h" line="+164"/>
+        <location filename="../../src/TextInputWidget.h" line="+161"/>
         <source>Write a message...</source>
         <translation>Kirjoita viesti…</translation>
     </message>
@@ -375,7 +365,7 @@
         <translation>Emoji</translation>
     </message>
     <message>
-        <location line="+75"/>
+        <location line="+72"/>
         <source>Select a file</source>
         <translation>Valitse tiedosto</translation>
     </message>
@@ -393,7 +383,7 @@
 <context>
     <name>TimelineModel</name>
     <message>
-        <location filename="../../src/timeline/TimelineModel.cpp" line="+780"/>
+        <location filename="../../src/timeline/TimelineModel.cpp" line="+835"/>
         <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>
@@ -423,10 +413,30 @@
         <translation type="unfinished">-- Salattu viesti (tuntematon viestityyppi) --</translation>
     </message>
     <message>
-        <location line="+50"/>
+        <location line="+54"/>
         <source>Message redaction failed: %1</source>
         <translation type="unfinished">Viestin poisto epäonnistui: %1</translation>
     </message>
+    <message>
+        <location line="+453"/>
+        <source>Save image</source>
+        <translation type="unfinished">Tallenna kuva</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Save video</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Save audio</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Save file</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>TimelineRow</name>
@@ -474,29 +484,6 @@
         <translation type="unfinished"></translation>
     </message>
 </context>
-<context>
-    <name>TimelineViewManager</name>
-    <message>
-        <location filename="../../src/timeline/TimelineViewManager.cpp" line="+161"/>
-        <source>Save image</source>
-        <translation type="unfinished">Tallenna kuva</translation>
-    </message>
-    <message>
-        <location line="+2"/>
-        <source>Save video</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location line="+2"/>
-        <source>Save audio</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location line="+2"/>
-        <source>Save file</source>
-        <translation type="unfinished"></translation>
-    </message>
-</context>
 <context>
     <name>TopRoomBar</name>
     <message>
diff --git a/resources/langs/nheko_fr.ts b/resources/langs/nheko_fr.ts
index 30ff85994096eb682064856633976ca7a91f2570..8ef2226822ed8831b683b970782caf68bde918cf 100644
--- a/resources/langs/nheko_fr.ts
+++ b/resources/langs/nheko_fr.ts
@@ -4,27 +4,12 @@
 <context>
     <name>ChatPage</name>
     <message>
-        <location filename="../../src/ChatPage.cpp" line="+330"/>
-        <source>Failed to upload image. Please try again.</source>
+        <location filename="../../src/ChatPage.cpp" line="+346"/>
+        <source>Failed to upload media. Please try again.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+45"/>
-        <source>Failed to upload file. Please try again.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location line="+43"/>
-        <source>Failed to upload audio. Please try again.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location line="+42"/>
-        <source>Failed to upload video. Please try again.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location line="+393"/>
+        <location line="+389"/>
         <source>Failed to restore OLM account. Please login again.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -194,6 +179,19 @@
         <translation type="unfinished"></translation>
     </message>
 </context>
+<context>
+    <name>MessageDelegate</name>
+    <message>
+        <location filename="../qml/delegates/MessageDelegate.qml" line="+43"/>
+        <source>redacted</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+6"/>
+        <source>Encryption enabled</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>Placeholder</name>
     <message>
@@ -210,14 +208,6 @@
         <translation>Chercher un salon…</translation>
     </message>
 </context>
-<context>
-    <name>Redacted</name>
-    <message>
-        <location filename="../qml/delegates/Redacted.qml" line="+5"/>
-        <source>redacted</source>
-        <translation type="unfinished"></translation>
-    </message>
-</context>
 <context>
     <name>RegisterPage</name>
     <message>
@@ -355,13 +345,13 @@
 <context>
     <name>TextInputWidget</name>
     <message>
-        <location filename="../../src/TextInputWidget.cpp" line="+507"/>
+        <location filename="../../src/TextInputWidget.cpp" line="+502"/>
         <source>Send a file</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+13"/>
-        <location filename="../../src/TextInputWidget.h" line="+164"/>
+        <location filename="../../src/TextInputWidget.h" line="+161"/>
         <source>Write a message...</source>
         <translation>Écrivez un message...</translation>
     </message>
@@ -376,7 +366,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+75"/>
+        <location line="+72"/>
         <source>Select a file</source>
         <translation>Sélectionnez un fichier</translation>
     </message>
@@ -394,7 +384,7 @@
 <context>
     <name>TimelineModel</name>
     <message>
-        <location filename="../../src/timeline/TimelineModel.cpp" line="+780"/>
+        <location filename="../../src/timeline/TimelineModel.cpp" line="+835"/>
         <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>
@@ -424,10 +414,30 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+50"/>
+        <location line="+54"/>
         <source>Message redaction failed: %1</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location line="+453"/>
+        <source>Save image</source>
+        <translation type="unfinished">Enregistrer l&apos;image</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Save video</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Save audio</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Save file</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>TimelineRow</name>
@@ -475,29 +485,6 @@
         <translation type="unfinished"></translation>
     </message>
 </context>
-<context>
-    <name>TimelineViewManager</name>
-    <message>
-        <location filename="../../src/timeline/TimelineViewManager.cpp" line="+161"/>
-        <source>Save image</source>
-        <translation type="unfinished">Enregistrer l&apos;image</translation>
-    </message>
-    <message>
-        <location line="+2"/>
-        <source>Save video</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location line="+2"/>
-        <source>Save audio</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location line="+2"/>
-        <source>Save file</source>
-        <translation type="unfinished"></translation>
-    </message>
-</context>
 <context>
     <name>TopRoomBar</name>
     <message>
diff --git a/resources/langs/nheko_nl.ts b/resources/langs/nheko_nl.ts
index 1c8a83c0205e00257826fa80dc9673b682df7b8b..aaeae41c242c3a73e928cf187f0970582f69f88e 100644
--- a/resources/langs/nheko_nl.ts
+++ b/resources/langs/nheko_nl.ts
@@ -4,27 +4,12 @@
 <context>
     <name>ChatPage</name>
     <message>
-        <location filename="../../src/ChatPage.cpp" line="+330"/>
-        <source>Failed to upload image. Please try again.</source>
+        <location filename="../../src/ChatPage.cpp" line="+346"/>
+        <source>Failed to upload media. Please try again.</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+45"/>
-        <source>Failed to upload file. Please try again.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location line="+43"/>
-        <source>Failed to upload audio. Please try again.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location line="+42"/>
-        <source>Failed to upload video. Please try again.</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location line="+393"/>
+        <location line="+389"/>
         <source>Failed to restore OLM account. Please login again.</source>
         <translation type="unfinished"></translation>
     </message>
@@ -194,6 +179,19 @@
         <translation type="unfinished"></translation>
     </message>
 </context>
+<context>
+    <name>MessageDelegate</name>
+    <message>
+        <location filename="../qml/delegates/MessageDelegate.qml" line="+43"/>
+        <source>redacted</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+6"/>
+        <source>Encryption enabled</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>Placeholder</name>
     <message>
@@ -210,14 +208,6 @@
         <translation>Zoek een kamer...</translation>
     </message>
 </context>
-<context>
-    <name>Redacted</name>
-    <message>
-        <location filename="../qml/delegates/Redacted.qml" line="+5"/>
-        <source>redacted</source>
-        <translation type="unfinished"></translation>
-    </message>
-</context>
 <context>
     <name>RegisterPage</name>
     <message>
@@ -354,13 +344,13 @@
 <context>
     <name>TextInputWidget</name>
     <message>
-        <location filename="../../src/TextInputWidget.cpp" line="+507"/>
+        <location filename="../../src/TextInputWidget.cpp" line="+502"/>
         <source>Send a file</source>
         <translation type="unfinished"></translation>
     </message>
     <message>
         <location line="+13"/>
-        <location filename="../../src/TextInputWidget.h" line="+164"/>
+        <location filename="../../src/TextInputWidget.h" line="+161"/>
         <source>Write a message...</source>
         <translation>Typ een bericht...</translation>
     </message>
@@ -375,7 +365,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+75"/>
+        <location line="+72"/>
         <source>Select a file</source>
         <translation>Kies een bestand</translation>
     </message>
@@ -393,7 +383,7 @@
 <context>
     <name>TimelineModel</name>
     <message>
-        <location filename="../../src/timeline/TimelineModel.cpp" line="+780"/>
+        <location filename="../../src/timeline/TimelineModel.cpp" line="+835"/>
         <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>
@@ -423,10 +413,30 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+50"/>
+        <location line="+54"/>
         <source>Message redaction failed: %1</source>
         <translation type="unfinished"></translation>
     </message>
+    <message>
+        <location line="+453"/>
+        <source>Save image</source>
+        <translation type="unfinished">Afbeelding opslaan</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Save video</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Save audio</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Save file</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>TimelineRow</name>
@@ -474,29 +484,6 @@
         <translation type="unfinished"></translation>
     </message>
 </context>
-<context>
-    <name>TimelineViewManager</name>
-    <message>
-        <location filename="../../src/timeline/TimelineViewManager.cpp" line="+161"/>
-        <source>Save image</source>
-        <translation type="unfinished">Afbeelding opslaan</translation>
-    </message>
-    <message>
-        <location line="+2"/>
-        <source>Save video</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location line="+2"/>
-        <source>Save audio</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location line="+2"/>
-        <source>Save file</source>
-        <translation type="unfinished"></translation>
-    </message>
-</context>
 <context>
     <name>TopRoomBar</name>
     <message>
diff --git a/resources/langs/nheko_pl.ts b/resources/langs/nheko_pl.ts
index 6c3b2abd4fea6f37f161437bf5987bd8c3eedca3..b7c3878d9fc97dfcd25a5da6258fc2f0b7fd7d77 100644
--- a/resources/langs/nheko_pl.ts
+++ b/resources/langs/nheko_pl.ts
@@ -4,27 +4,12 @@
 <context>
     <name>ChatPage</name>
     <message>
-        <location filename="../../src/ChatPage.cpp" line="+330"/>
-        <source>Failed to upload image. Please try again.</source>
-        <translation>Nie udało się wysłać obrazu. Spróbuj ponownie.</translation>
-    </message>
-    <message>
-        <location line="+45"/>
-        <source>Failed to upload file. Please try again.</source>
-        <translation>Nie udało się wysłać pliku. Spróbuj ponownie.</translation>
-    </message>
-    <message>
-        <location line="+43"/>
-        <source>Failed to upload audio. Please try again.</source>
-        <translation>Nie udało się wysłać pliku dźwiękowego. Spróbuj ponownie.</translation>
-    </message>
-    <message>
-        <location line="+42"/>
-        <source>Failed to upload video. Please try again.</source>
-        <translation>Nie udało się wysłać filmu. Spróbuj ponownie.</translation>
+        <location filename="../../src/ChatPage.cpp" line="+346"/>
+        <source>Failed to upload media. Please try again.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+393"/>
+        <location line="+389"/>
         <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>
@@ -194,6 +179,19 @@
         <translation type="unfinished"></translation>
     </message>
 </context>
+<context>
+    <name>MessageDelegate</name>
+    <message>
+        <location filename="../qml/delegates/MessageDelegate.qml" line="+43"/>
+        <source>redacted</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+6"/>
+        <source>Encryption enabled</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>Placeholder</name>
     <message>
@@ -210,14 +208,6 @@
         <translation>Wyszukaj pokoju…</translation>
     </message>
 </context>
-<context>
-    <name>Redacted</name>
-    <message>
-        <location filename="../qml/delegates/Redacted.qml" line="+5"/>
-        <source>redacted</source>
-        <translation type="unfinished"></translation>
-    </message>
-</context>
 <context>
     <name>RegisterPage</name>
     <message>
@@ -354,13 +344,13 @@
 <context>
     <name>TextInputWidget</name>
     <message>
-        <location filename="../../src/TextInputWidget.cpp" line="+507"/>
+        <location filename="../../src/TextInputWidget.cpp" line="+502"/>
         <source>Send a file</source>
         <translation>Wyślij plik</translation>
     </message>
     <message>
         <location line="+13"/>
-        <location filename="../../src/TextInputWidget.h" line="+164"/>
+        <location filename="../../src/TextInputWidget.h" line="+161"/>
         <source>Write a message...</source>
         <translation>Napisz wiadomość…</translation>
     </message>
@@ -375,7 +365,7 @@
         <translation>Emoji</translation>
     </message>
     <message>
-        <location line="+75"/>
+        <location line="+72"/>
         <source>Select a file</source>
         <translation>Wybierz plik</translation>
     </message>
@@ -393,7 +383,7 @@
 <context>
     <name>TimelineModel</name>
     <message>
-        <location filename="../../src/timeline/TimelineModel.cpp" line="+780"/>
+        <location filename="../../src/timeline/TimelineModel.cpp" line="+835"/>
         <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>
@@ -423,10 +413,30 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+50"/>
+        <location line="+54"/>
         <source>Message redaction failed: %1</source>
         <translation type="unfinished">Redagowanie wiadomości nie powiodło się: %1</translation>
     </message>
+    <message>
+        <location line="+453"/>
+        <source>Save image</source>
+        <translation type="unfinished">Zapisz obraz</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Save video</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Save audio</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Save file</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>TimelineRow</name>
@@ -474,29 +484,6 @@
         <translation type="unfinished"></translation>
     </message>
 </context>
-<context>
-    <name>TimelineViewManager</name>
-    <message>
-        <location filename="../../src/timeline/TimelineViewManager.cpp" line="+161"/>
-        <source>Save image</source>
-        <translation type="unfinished">Zapisz obraz</translation>
-    </message>
-    <message>
-        <location line="+2"/>
-        <source>Save video</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location line="+2"/>
-        <source>Save audio</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location line="+2"/>
-        <source>Save file</source>
-        <translation type="unfinished"></translation>
-    </message>
-</context>
 <context>
     <name>TopRoomBar</name>
     <message>
diff --git a/resources/langs/nheko_ru.ts b/resources/langs/nheko_ru.ts
index d5544cf84688fff70c65b05b1b82bc4067184ea7..3069cdadb3347b81f9199e33e65e13519825015b 100644
--- a/resources/langs/nheko_ru.ts
+++ b/resources/langs/nheko_ru.ts
@@ -4,27 +4,12 @@
 <context>
     <name>ChatPage</name>
     <message>
-        <location filename="../../src/ChatPage.cpp" line="+330"/>
-        <source>Failed to upload image. Please try again.</source>
-        <translation>Не удалось загрузить изображение. Пожалуйста, попробуйте еще раз.</translation>
-    </message>
-    <message>
-        <location line="+45"/>
-        <source>Failed to upload file. Please try again.</source>
-        <translation>Не удалось загрузить файл. Пожалуйста, попробуйте еще раз.</translation>
-    </message>
-    <message>
-        <location line="+43"/>
-        <source>Failed to upload audio. Please try again.</source>
-        <translation>Не удалось загрузить аудио. Пожалуйста, попробуйте еще раз.</translation>
-    </message>
-    <message>
-        <location line="+42"/>
-        <source>Failed to upload video. Please try again.</source>
-        <translation>Не удалось загрузить видео. Пожалуйста, попробуйте еще раз.</translation>
+        <location filename="../../src/ChatPage.cpp" line="+346"/>
+        <source>Failed to upload media. Please try again.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+393"/>
+        <location line="+389"/>
         <source>Failed to restore OLM account. Please login again.</source>
         <translation>Не удалось восстановить учетную запись OLM. Пожалуйста, войдите снова.</translation>
     </message>
@@ -194,6 +179,19 @@
         <translation type="unfinished"></translation>
     </message>
 </context>
+<context>
+    <name>MessageDelegate</name>
+    <message>
+        <location filename="../qml/delegates/MessageDelegate.qml" line="+43"/>
+        <source>redacted</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+6"/>
+        <source>Encryption enabled</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>Placeholder</name>
     <message>
@@ -210,14 +208,6 @@
         <translation>Поиск комнаты...</translation>
     </message>
 </context>
-<context>
-    <name>Redacted</name>
-    <message>
-        <location filename="../qml/delegates/Redacted.qml" line="+5"/>
-        <source>redacted</source>
-        <translation type="unfinished"></translation>
-    </message>
-</context>
 <context>
     <name>RegisterPage</name>
     <message>
@@ -354,13 +344,13 @@
 <context>
     <name>TextInputWidget</name>
     <message>
-        <location filename="../../src/TextInputWidget.cpp" line="+507"/>
+        <location filename="../../src/TextInputWidget.cpp" line="+502"/>
         <source>Send a file</source>
         <translation>Отправить файл</translation>
     </message>
     <message>
         <location line="+13"/>
-        <location filename="../../src/TextInputWidget.h" line="+164"/>
+        <location filename="../../src/TextInputWidget.h" line="+161"/>
         <source>Write a message...</source>
         <translation>Написать сообщение...</translation>
     </message>
@@ -375,7 +365,7 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+75"/>
+        <location line="+72"/>
         <source>Select a file</source>
         <translation>Выберите файл</translation>
     </message>
@@ -393,7 +383,7 @@
 <context>
     <name>TimelineModel</name>
     <message>
-        <location filename="../../src/timeline/TimelineModel.cpp" line="+780"/>
+        <location filename="../../src/timeline/TimelineModel.cpp" line="+835"/>
         <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>
@@ -423,10 +413,30 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+50"/>
+        <location line="+54"/>
         <source>Message redaction failed: %1</source>
         <translation type="unfinished">Ошибка редактирования сообщения: %1</translation>
     </message>
+    <message>
+        <location line="+453"/>
+        <source>Save image</source>
+        <translation type="unfinished">Сохранить изображение</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Save video</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Save audio</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Save file</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>TimelineRow</name>
@@ -474,29 +484,6 @@
         <translation type="unfinished"></translation>
     </message>
 </context>
-<context>
-    <name>TimelineViewManager</name>
-    <message>
-        <location filename="../../src/timeline/TimelineViewManager.cpp" line="+161"/>
-        <source>Save image</source>
-        <translation type="unfinished">Сохранить изображение</translation>
-    </message>
-    <message>
-        <location line="+2"/>
-        <source>Save video</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location line="+2"/>
-        <source>Save audio</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location line="+2"/>
-        <source>Save file</source>
-        <translation type="unfinished"></translation>
-    </message>
-</context>
 <context>
     <name>TopRoomBar</name>
     <message>
diff --git a/resources/langs/nheko_zh_CN.ts b/resources/langs/nheko_zh_CN.ts
index 57f49d431541f8f46a34c5c983c2161cfcacd58e..31ca068cdfb9d48e64d89a575ad3d34719c453ed 100644
--- a/resources/langs/nheko_zh_CN.ts
+++ b/resources/langs/nheko_zh_CN.ts
@@ -4,27 +4,12 @@
 <context>
     <name>ChatPage</name>
     <message>
-        <location filename="../../src/ChatPage.cpp" line="+330"/>
-        <source>Failed to upload image. Please try again.</source>
-        <translation>上传图像失败。请重试。</translation>
-    </message>
-    <message>
-        <location line="+45"/>
-        <source>Failed to upload file. Please try again.</source>
-        <translation>上传文件失败,请重试。</translation>
-    </message>
-    <message>
-        <location line="+43"/>
-        <source>Failed to upload audio. Please try again.</source>
-        <translation>上传音频失败。请重试。</translation>
-    </message>
-    <message>
-        <location line="+42"/>
-        <source>Failed to upload video. Please try again.</source>
-        <translation>上传视频失败。请重试。</translation>
+        <location filename="../../src/ChatPage.cpp" line="+346"/>
+        <source>Failed to upload media. Please try again.</source>
+        <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+393"/>
+        <location line="+389"/>
         <source>Failed to restore OLM account. Please login again.</source>
         <translation>恢复 OLM 账户失败。请重新登录。</translation>
     </message>
@@ -194,6 +179,19 @@
         <translation type="unfinished"></translation>
     </message>
 </context>
+<context>
+    <name>MessageDelegate</name>
+    <message>
+        <location filename="../qml/delegates/MessageDelegate.qml" line="+43"/>
+        <source>redacted</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+6"/>
+        <source>Encryption enabled</source>
+        <translation type="unfinished"></translation>
+    </message>
+</context>
 <context>
     <name>Placeholder</name>
     <message>
@@ -210,14 +208,6 @@
         <translation>寻找一个聊天室...</translation>
     </message>
 </context>
-<context>
-    <name>Redacted</name>
-    <message>
-        <location filename="../qml/delegates/Redacted.qml" line="+5"/>
-        <source>redacted</source>
-        <translation type="unfinished"></translation>
-    </message>
-</context>
 <context>
     <name>RegisterPage</name>
     <message>
@@ -354,13 +344,13 @@
 <context>
     <name>TextInputWidget</name>
     <message>
-        <location filename="../../src/TextInputWidget.cpp" line="+507"/>
+        <location filename="../../src/TextInputWidget.cpp" line="+502"/>
         <source>Send a file</source>
         <translation>发送一个文件</translation>
     </message>
     <message>
         <location line="+13"/>
-        <location filename="../../src/TextInputWidget.h" line="+164"/>
+        <location filename="../../src/TextInputWidget.h" line="+161"/>
         <source>Write a message...</source>
         <translation>写一条消息...</translation>
     </message>
@@ -375,7 +365,7 @@
         <translation></translation>
     </message>
     <message>
-        <location line="+75"/>
+        <location line="+72"/>
         <source>Select a file</source>
         <translation>选择一个文件</translation>
     </message>
@@ -393,7 +383,7 @@
 <context>
     <name>TimelineModel</name>
     <message>
-        <location filename="../../src/timeline/TimelineModel.cpp" line="+780"/>
+        <location filename="../../src/timeline/TimelineModel.cpp" line="+835"/>
         <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>
@@ -423,10 +413,30 @@
         <translation type="unfinished"></translation>
     </message>
     <message>
-        <location line="+50"/>
+        <location line="+54"/>
         <source>Message redaction failed: %1</source>
         <translation type="unfinished">删除消息失败:%1</translation>
     </message>
+    <message>
+        <location line="+453"/>
+        <source>Save image</source>
+        <translation type="unfinished">保存图像</translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Save video</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Save audio</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location line="+2"/>
+        <source>Save file</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 <context>
     <name>TimelineRow</name>
@@ -474,29 +484,6 @@
         <translation type="unfinished"></translation>
     </message>
 </context>
-<context>
-    <name>TimelineViewManager</name>
-    <message>
-        <location filename="../../src/timeline/TimelineViewManager.cpp" line="+161"/>
-        <source>Save image</source>
-        <translation type="unfinished">保存图像</translation>
-    </message>
-    <message>
-        <location line="+2"/>
-        <source>Save video</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location line="+2"/>
-        <source>Save audio</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location line="+2"/>
-        <source>Save file</source>
-        <translation type="unfinished"></translation>
-    </message>
-</context>
 <context>
     <name>TopRoomBar</name>
     <message>