forked from cwtch.im/cwtch-ui
Add Polish Template
This commit is contained in:
parent
afa6794f8d
commit
370a7fd1da
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"@@locale": "de",
|
||||
"@@last_modified": "2021-06-29T19:15:43+02:00",
|
||||
"@@last_modified": "2021-07-05T21:26:10+02:00",
|
||||
"tooltipRejectContactRequest": "Reject this contact request",
|
||||
"tooltipAcceptContactRequest": "Accept this contact request.",
|
||||
"notificationNewMessageFromGroup": "Neue Nachricht in einer Gruppe!",
|
||||
|
@ -42,16 +42,10 @@
|
|||
"tooltipAddContact": "Neuen Kontakt oder Unterhaltung hinzufügen",
|
||||
"titleManageContacts": "Unterhaltungen",
|
||||
"titleManageServers": "Server verwalten",
|
||||
"dateMonthsAgo": "Months Ago",
|
||||
"dateNever": "Nie",
|
||||
"dateYearsAgo": "X Years Ago (displayed next to a contact row to indicate time of last action)",
|
||||
"dateLastYear": "Letzes Jahr",
|
||||
"dateYesterday": "Gestern",
|
||||
"dateLastMonth": "Letzter Monat",
|
||||
"dateWeeksAgo": "Weeks Ago",
|
||||
"dateDaysAgo": "Days Ago",
|
||||
"dateHoursAgo": "Hours Ago",
|
||||
"dateMinutesAgo": "Minutes Ago",
|
||||
"dateRightNow": "Jetzt",
|
||||
"successfullAddedContact": "Erfolgreich hinzugefügt",
|
||||
"descriptionBlockUnknownConnections": "Falls aktiviert, wird diese Einstellung alle Verbindungen von Cwtch Usern autmoatisch schliessen, wenn sie nicht in deinen Kontakten sind.",
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"@@locale": "en",
|
||||
"@@last_modified": "2021-06-29T19:15:43+02:00",
|
||||
"@@last_modified": "2021-07-05T21:26:10+02:00",
|
||||
"tooltipRejectContactRequest": "Reject this contact request",
|
||||
"tooltipAcceptContactRequest": "Accept this contact request.",
|
||||
"notificationNewMessageFromGroup": "New message in a group!",
|
||||
|
@ -42,16 +42,10 @@
|
|||
"tooltipAddContact": "Add a new contact or conversation",
|
||||
"titleManageContacts": "Conversations",
|
||||
"titleManageServers": "Manage Servers",
|
||||
"dateMonthsAgo": "Months Ago",
|
||||
"dateNever": "Never",
|
||||
"dateYearsAgo": "X Years Ago (displayed next to a contact row to indicate time of last action)",
|
||||
"dateLastYear": "Last Year",
|
||||
"dateYesterday": "Yesterday",
|
||||
"dateLastMonth": "Last Month",
|
||||
"dateWeeksAgo": "Weeks Ago",
|
||||
"dateDaysAgo": "Days Ago",
|
||||
"dateHoursAgo": "Hours Ago",
|
||||
"dateMinutesAgo": "Minutes Ago",
|
||||
"dateRightNow": "Right Now",
|
||||
"successfullAddedContact": "Successfully added ",
|
||||
"descriptionBlockUnknownConnections": "If turned on, this option will automatically close connections from Cwtch users that have not been added to your contact list.",
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"@@locale": "es",
|
||||
"@@last_modified": "2021-06-29T19:15:43+02:00",
|
||||
"@@last_modified": "2021-07-05T21:26:10+02:00",
|
||||
"tooltipRejectContactRequest": "Reject this contact request",
|
||||
"tooltipAcceptContactRequest": "Accept this contact request.",
|
||||
"notificationNewMessageFromGroup": "New message in a group!",
|
||||
|
@ -42,16 +42,10 @@
|
|||
"tooltipAddContact": "Add a new contact or conversation",
|
||||
"titleManageContacts": "Conversations",
|
||||
"titleManageServers": "Manage Servers",
|
||||
"dateMonthsAgo": "Months Ago",
|
||||
"dateNever": "Never",
|
||||
"dateYearsAgo": "X Years Ago (displayed next to a contact row to indicate time of last action)",
|
||||
"dateLastYear": "Last Year",
|
||||
"dateYesterday": "Yesterday",
|
||||
"dateLastMonth": "Last Month",
|
||||
"dateWeeksAgo": "Weeks Ago",
|
||||
"dateDaysAgo": "Days Ago",
|
||||
"dateHoursAgo": "Hours Ago",
|
||||
"dateMinutesAgo": "Minutes Ago",
|
||||
"dateRightNow": "Right Now",
|
||||
"successfullAddedContact": "Successfully added ",
|
||||
"descriptionBlockUnknownConnections": "If turned on, this option will automatically close connections from Cwtch users that have not been added to your contact list.",
|
||||
|
|
|
@ -1,18 +1,18 @@
|
|||
{
|
||||
"@@locale": "fr",
|
||||
"@@last_modified": "2021-06-29T19:15:43+02:00",
|
||||
"tooltipRejectContactRequest": "Reject this contact request",
|
||||
"tooltipAcceptContactRequest": "Accept this contact request.",
|
||||
"@@last_modified": "2021-07-05T21:26:10+02:00",
|
||||
"tooltipRejectContactRequest": "Refuser cette demande de contact",
|
||||
"tooltipAcceptContactRequest": "Acceptez cette demande de contact.",
|
||||
"notificationNewMessageFromGroup": "Nouveau message dans un groupe !",
|
||||
"notificationNewMessageFromPeer": "Nouveau message d'un contact !",
|
||||
"tooltipHidePassword": "Masquer le mot de passe",
|
||||
"tooltipShowPassword": "Afficher le mot de passe",
|
||||
"serverNotSynced": "Synchronisation des nouveaux messages (Cela peut prendre un certain temps)...",
|
||||
"groupInviteSettingsWarning": "Vous avez été invité à rejoindre un groupe ! Veuillez activer l'expérience de discussion de groupe dans les paramètres pour afficher cette invitation.",
|
||||
"shutdownCwtchAction": "Arrêt Cwtch",
|
||||
"shutdownCwtchAction": "Arrêt de Cwtch",
|
||||
"shutdownCwtchDialog": "Êtes-vous sûr de vouloir arrêter Cwtch ? Ceci fermera toutes les connexions, et quittera l'application.",
|
||||
"shutdownCwtchDialogTitle": "Arrêter Cwtch ?",
|
||||
"shutdownCwtchTooltip": "Arrêt Cwtch",
|
||||
"shutdownCwtchTooltip": "Arrêt de Cwtch",
|
||||
"malformedMessage": "Message mal formé",
|
||||
"profileDeleteSuccess": "Le profil a été supprimé avec succès",
|
||||
"debugLog": "Activer le journal de la console de débogage",
|
||||
|
@ -42,16 +42,10 @@
|
|||
"tooltipAddContact": "Ajouter un nouveau contact ou une nouvelle conversation",
|
||||
"titleManageContacts": "Conversations",
|
||||
"titleManageServers": "Gérer les serveurs",
|
||||
"dateMonthsAgo": "Il y a plusieurs mois",
|
||||
"dateNever": "Jamais",
|
||||
"dateYearsAgo": "Il y a X ans (affiché à côté d'une ligne de contact pour indiquer l'heure de la dernière action)",
|
||||
"dateLastYear": "L'année dernière",
|
||||
"dateYesterday": "Hier",
|
||||
"dateLastMonth": "Le mois dernier",
|
||||
"dateWeeksAgo": "Il y a quelques semaines",
|
||||
"dateDaysAgo": "Il y a quelques jours",
|
||||
"dateHoursAgo": "Il y a quelques heures",
|
||||
"dateMinutesAgo": "Il y a quelques minutes",
|
||||
"dateRightNow": "Maintenant",
|
||||
"successfullAddedContact": "Ajouté avec succès ",
|
||||
"descriptionBlockUnknownConnections": "Si elle est activée, cette option fermera automatiquement les connexions des utilisateurs de Cwtch qui n'ont pas été ajoutés à votre liste de contacts.",
|
||||
|
@ -66,7 +60,7 @@
|
|||
"enterCurrentPasswordForDelete": "Veuillez entrer le mot de passe actuel pour supprimer ce profil.",
|
||||
"enableGroups": "Activer la discussion de groupe",
|
||||
"experimentsEnabled": "Activer les expériences",
|
||||
"localeIt": "Italienne",
|
||||
"localeIt": "Italien",
|
||||
"localeEs": "Espagnol",
|
||||
"addListItem": "Ajouter un nouvel élément de liste",
|
||||
"addNewItem": "Ajouter un nouvel élément à la liste",
|
||||
|
@ -80,9 +74,9 @@
|
|||
"loadingTor": "Chargement de tor...",
|
||||
"smallTextLabel": "Petit",
|
||||
"defaultScalingText": "Taille par défaut du texte (échelle:",
|
||||
"builddate": "Construit sur : 2%",
|
||||
"version": "Version 1%",
|
||||
"versionTor": "Version 1% avec tor 2%",
|
||||
"builddate": "Construit le : %2",
|
||||
"version": "Version %1",
|
||||
"versionTor": "Version %1 avec tor %2",
|
||||
"themeDark": "Sombre",
|
||||
"themeLight": "Clair",
|
||||
"settingTheme": "Thème",
|
||||
|
@ -94,8 +88,8 @@
|
|||
"localeEn": "Anglais",
|
||||
"settingLanguage": "Langue",
|
||||
"blockUnknownLabel": "Bloquer les pairs inconnus",
|
||||
"zoomLabel": "Interface zoom (essentiellement la taille du texte et des composants de l'interface)",
|
||||
"versionBuilddate": "Version 1% avec tor 2%",
|
||||
"zoomLabel": "Zoom de l'interface (affecte principalement la taille du texte et des boutons)",
|
||||
"versionBuilddate": "Version : %1 Construite le : %2",
|
||||
"cwtchSettingsTitle": "Préférences Cwtch",
|
||||
"unlock": "Déverrouiller",
|
||||
"yourServers": "Vos serveurs",
|
||||
|
@ -105,7 +99,7 @@
|
|||
"enterProfilePassword": "Entrez un mot de passe pour consulter vos profils",
|
||||
"addNewProfileBtn": "Ajouter un nouveau profil",
|
||||
"deleteConfirmText": "SUPPRIMER",
|
||||
"deleteProfileConfirmBtn": "Vraiment supprimer le profil",
|
||||
"deleteProfileConfirmBtn": "Supprimer vraiment le profil ?",
|
||||
"deleteConfirmLabel": "Tapez SUPPRIMER pour confirmer",
|
||||
"deleteProfileBtn": "Supprimer le profil",
|
||||
"passwordChangeError": "Erreur lors de la modification du mot de passe : le mot de passe fourni est rejeté",
|
||||
|
@ -129,7 +123,7 @@
|
|||
"profileName": "Pseudo",
|
||||
"editProfileTitle": "Modifier le profil",
|
||||
"addProfileTitle": "Ajouter un nouveau profil",
|
||||
"deleteBtn": "Effacer",
|
||||
"deleteBtn": "Supprimer",
|
||||
"unblockBtn": "Débloquer le pair",
|
||||
"dontSavePeerHistory": "Supprimer l'historique des pairs",
|
||||
"savePeerHistoryDescription": "Détermine s'il faut ou non supprimer tout historique associé au pair.",
|
||||
|
@ -150,16 +144,16 @@
|
|||
"peerOfflineMessage": "Le pair est hors ligne, les messages ne peuvent pas être remis pour le moment",
|
||||
"peerBlockedMessage": "Le pair est bloqué",
|
||||
"pendingLabel": "En attente",
|
||||
"acknowledgedLabel": "Confirmé",
|
||||
"acknowledgedLabel": "Accusé de réception",
|
||||
"couldNotSendMsgError": "Impossible d'envoyer ce message",
|
||||
"dmTooltip": "Envoyer un message privé",
|
||||
"membershipDescription": "Liste des utilisateurs ayant envoyés un ou plusieurs messages au groupe. Cette liste peut ne pas être representatives de l'ensemble des membres du groupe.",
|
||||
"membershipDescription": "Liste des utilisateurs ayant envoyés un ou plusieurs messages au groupe. Cette liste peut ne pas être représentatives de l'ensemble des membres du groupe.",
|
||||
"addListItemBtn": "Ajouter un élément",
|
||||
"peerNotOnline": "Le pair est hors ligne, les messages ne peuvent pas être remis pour le moment",
|
||||
"searchList": "Liste de recherche",
|
||||
"update": "Mise à jour",
|
||||
"inviteBtn": "Invitation",
|
||||
"inviteToGroupLabel": "Inviter quelqu'un",
|
||||
"inviteToGroupLabel": "Inviter au groupe",
|
||||
"groupNameLabel": "Nom du groupe",
|
||||
"viewServerInfo": "Informations sur le serveur",
|
||||
"serverSynced": "Synchronisé",
|
||||
|
@ -192,6 +186,6 @@
|
|||
"createGroupTab": "Créer un groupe",
|
||||
"addPeerTab": "Ajouter un pair",
|
||||
"createGroupBtn": "Créer",
|
||||
"defaultGroupName": "Un super groupe",
|
||||
"defaultGroupName": "Un groupe génial",
|
||||
"createGroupTitle": "Créer un groupe"
|
||||
}
|
|
@ -1,71 +1,65 @@
|
|||
{
|
||||
"@@locale": "it",
|
||||
"@@last_modified": "2021-06-29T19:15:43+02:00",
|
||||
"tooltipRejectContactRequest": "Reject this contact request",
|
||||
"tooltipAcceptContactRequest": "Accept this contact request.",
|
||||
"notificationNewMessageFromGroup": "New message in a group!",
|
||||
"notificationNewMessageFromPeer": "New message from a contact!",
|
||||
"tooltipHidePassword": "Hide Password",
|
||||
"tooltipShowPassword": "Show Password",
|
||||
"serverNotSynced": "Non sincronizzato",
|
||||
"groupInviteSettingsWarning": "You have been invited to join a group! Please enable the Group Chat Experiment in Settings to view this Invitation.",
|
||||
"shutdownCwtchAction": "Shutdown Cwtch",
|
||||
"shutdownCwtchDialog": "Are you sure you want to shutdown Cwtch? This will close all connections, and exit the application.",
|
||||
"shutdownCwtchDialogTitle": "Shutdown Cwtch?",
|
||||
"shutdownCwtchTooltip": "Shutdown Cwtch",
|
||||
"malformedMessage": "Malformed message",
|
||||
"profileDeleteSuccess": "Successfully deleted profile",
|
||||
"debugLog": "Turn on console debug logging",
|
||||
"torNetworkStatus": "Tor network status",
|
||||
"addContactFirst": "Add or pick a contact to begin chatting.",
|
||||
"createProfileToBegin": "Please create or unlock a profile to begin",
|
||||
"nickChangeSuccess": "Profile nickname changed successfully",
|
||||
"addServerFirst": "You need to add a server before you can create a group",
|
||||
"deleteProfileSuccess": "Successfully deleted profile",
|
||||
"sendInvite": "Send a contact or group invite",
|
||||
"sendMessage": "Send Message",
|
||||
"cancel": "Cancel",
|
||||
"resetTor": "Reset",
|
||||
"torStatus": "Tor Status",
|
||||
"torVersion": "Tor Version",
|
||||
"sendAnInvitation": "You sent an invitation for: ",
|
||||
"contactSuggestion": "This is a contact suggestion for: ",
|
||||
"rejected": "Rejected!",
|
||||
"accepted": "Accepted!",
|
||||
"chatHistoryDefault": "This conversation will be deleted when Cwtch is closed! Message history can be enabled per-conversation via the Settings menu in the upper right.",
|
||||
"newPassword": "New Password",
|
||||
"yesLeave": "Yes, Leave This Conversation",
|
||||
"reallyLeaveThisGroupPrompt": "Are you sure you want to leave this conversation? All messages and attributes will be deleted.",
|
||||
"leaveGroup": "Leave This Conversation",
|
||||
"inviteToGroup": "You have been invited to join a group:",
|
||||
"pasteAddressToAddContact": "... incolla qui un indirizzo per aggiungere un contatto...",
|
||||
"tooltipAddContact": "Add a new contact or conversation",
|
||||
"titleManageContacts": "Conversations",
|
||||
"titleManageServers": "Manage Servers",
|
||||
"dateMonthsAgo": "Months Ago",
|
||||
"dateNever": "Never",
|
||||
"dateYearsAgo": "X Years Ago (displayed next to a contact row to indicate time of last action)",
|
||||
"dateLastYear": "Last Year",
|
||||
"dateYesterday": "Yesterday",
|
||||
"dateLastMonth": "Last Month",
|
||||
"dateWeeksAgo": "Weeks Ago",
|
||||
"dateDaysAgo": "Days Ago",
|
||||
"dateHoursAgo": "Hours Ago",
|
||||
"dateMinutesAgo": "Minutes Ago",
|
||||
"dateRightNow": "Right Now",
|
||||
"successfullAddedContact": "Successfully added ",
|
||||
"descriptionBlockUnknownConnections": "If turned on, this option will automatically close connections from Cwtch users that have not been added to your contact list.",
|
||||
"descriptionExperimentsGroups": "The group experiment allows Cwtch to connect with untrusted server infrastructure to facilitate communication with more than one contact.",
|
||||
"descriptionExperiments": "Cwtch experiments are optional, opt-in features that add additional functionality to Cwtch that may have different privacy considerations than traditional 1:1 metadata resistant chat e.g. group chat, bot integration etc.",
|
||||
"titleManageProfiles": "Manage Cwtch Profiles",
|
||||
"tooltipUnlockProfiles": "Unlock encrypted profiles by entering their password.",
|
||||
"tooltipOpenSettings": "Open the settings pane",
|
||||
"invalidImportString": "Invalid import string",
|
||||
"contactAlreadyExists": "Contact Already Exists",
|
||||
"conversationSettings": "Conversation Settings",
|
||||
"enterCurrentPasswordForDelete": "Please enter current password to delete this profile.",
|
||||
"enableGroups": "Enable Group Chat",
|
||||
"experimentsEnabled": "Esperimenti abilitati",
|
||||
"@@last_modified": "2021-07-05T21:26:10+02:00",
|
||||
"tooltipRejectContactRequest": "Rifiuta questa richiesta di contatto",
|
||||
"tooltipAcceptContactRequest": "Accetta questa richiesta di contatto.",
|
||||
"notificationNewMessageFromGroup": "Nuovo messaggio in un gruppo!",
|
||||
"notificationNewMessageFromPeer": "Nuovo messaggio da un contatto!",
|
||||
"tooltipHidePassword": "Nascondi la password",
|
||||
"tooltipShowPassword": "Mostra la password",
|
||||
"serverNotSynced": "Sincronizzazione nuovi messaggi (l'operazione può richiedere del tempo)...",
|
||||
"groupInviteSettingsWarning": "Sei stato invitato ad unirti ad un gruppo! Abilita l'Esperimento di chat di gruppo in Impostazioni per visualizzare questo Invito.",
|
||||
"shutdownCwtchAction": "Chiudi Cwtch",
|
||||
"shutdownCwtchDialog": "Sei sicuro di voler chiudere Cwtch? Questo chiuderà tutte le connessioni e uscirà dall'applicazione.",
|
||||
"shutdownCwtchDialogTitle": "Chiudi Cwtch?",
|
||||
"shutdownCwtchTooltip": "Chiudi Cwtch",
|
||||
"malformedMessage": "Messaggio non valido",
|
||||
"profileDeleteSuccess": "Profilo eliminato con successo",
|
||||
"debugLog": "Attiva la registrazione del debug della console",
|
||||
"torNetworkStatus": "Stato della rete Tor",
|
||||
"addContactFirst": "Aggiungi o scegli un contatto per iniziare a chattare.",
|
||||
"createProfileToBegin": "Crea o sblocca un profilo per iniziare",
|
||||
"nickChangeSuccess": "Nickname del profilo modificato con successo",
|
||||
"addServerFirst": "È necessario aggiungere un server prima di poter creare un gruppo",
|
||||
"deleteProfileSuccess": "Profilo eliminato con successo",
|
||||
"sendInvite": "Invia un invito a un contatto o a un gruppo",
|
||||
"sendMessage": "Invia messaggio",
|
||||
"cancel": "Annulla",
|
||||
"resetTor": "Resettare",
|
||||
"torStatus": "Stato di Tor",
|
||||
"torVersion": "Versione di Tor",
|
||||
"sendAnInvitation": "Hai inviato un invito per:",
|
||||
"contactSuggestion": "Questo è un suggerimento di contatto per:",
|
||||
"rejected": "Rifiutato!",
|
||||
"accepted": "Accettato!",
|
||||
"chatHistoryDefault": "Questa conversazione sarà cancellata quando Cwtch sarà chiuso! La cronologia dei messaggi può essere abilitata per ogni conversazione tramite il menu Impostazioni in alto a destra.",
|
||||
"newPassword": "Nuova password",
|
||||
"yesLeave": "Sì, lascia questa conversazione",
|
||||
"reallyLeaveThisGroupPrompt": "Uscire da questa conversazione? Tutti i messaggi e gli attributi verranno eliminati.",
|
||||
"leaveGroup": "Lascia questa conversazione",
|
||||
"inviteToGroup": "Hai ricevuto un invito a unirti a un gruppo:",
|
||||
"pasteAddressToAddContact": "Incolla qui un indirizzo cwtch, un invito o un mazzo di chiavi per aggiungere una nuova conversazione",
|
||||
"tooltipAddContact": "Aggiungi un nuovo contatto o conversazione",
|
||||
"titleManageContacts": "Conversazioni",
|
||||
"titleManageServers": "Gestisci i server",
|
||||
"dateNever": "Mai",
|
||||
"dateLastYear": "L'anno scorso",
|
||||
"dateYesterday": "Ieri",
|
||||
"dateLastMonth": "Mese scorso",
|
||||
"dateRightNow": "Ora",
|
||||
"successfullAddedContact": "Aggiunto con successo ",
|
||||
"descriptionBlockUnknownConnections": "Se attivata, questa opzione chiuderà automaticamente le connessioni degli utenti Cwtch che non sono stati aggiunti alla tua lista di contatti.",
|
||||
"descriptionExperimentsGroups": "L'esperimento di gruppo permette a Cwtch di connettersi con un'infrastruttura server non fidata per facilitare la comunicazione con più di un contatto.",
|
||||
"descriptionExperiments": "Gli esperimenti di Cwtch sono opzioni a scelta che aggiungono a Cwtch funzionalità che possono avere diverse considerazioni sulla privacy rispetto alla tradizionale chat 1:1 resistente ai metadati, ad esempio chat di gruppo, integrazione di bot ecc.",
|
||||
"titleManageProfiles": "Gestisci i profili Cwtch",
|
||||
"tooltipUnlockProfiles": "Sblocca i profili crittografati inserendo la loro password.",
|
||||
"tooltipOpenSettings": "Aprire il pannello delle impostazioni",
|
||||
"invalidImportString": "Importazione stringa non valida",
|
||||
"contactAlreadyExists": "Il contatto esiste già",
|
||||
"conversationSettings": "Impostazioni di conversazione",
|
||||
"enterCurrentPasswordForDelete": "Inserisci la password attuale per eliminare questo profilo.",
|
||||
"enableGroups": "Abilita la chat di gruppo",
|
||||
"experimentsEnabled": "Abilita esperimenti",
|
||||
"localeIt": "Italiano",
|
||||
"localeEs": "Spagnolo",
|
||||
"addListItem": "Aggiungi un nuovo elemento alla lista",
|
||||
|
|
|
@ -0,0 +1,89 @@
|
|||
import 'package:cwtch/widgets/malformedbubble.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:provider/provider.dart';
|
||||
import '../model.dart';
|
||||
import 'package:intl/intl.dart';
|
||||
|
||||
import '../settings.dart';
|
||||
import 'messagebubbledecorations.dart';
|
||||
|
||||
class QuotedMessageBubble extends StatefulWidget {
|
||||
@override
|
||||
QuotedMessageBubbleState createState() => QuotedMessageBubbleState();
|
||||
}
|
||||
|
||||
class QuotedMessageBubbleState extends State<QuotedMessageBubble> {
|
||||
FocusNode _focus = FocusNode();
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
var fromMe = Provider.of<MessageState>(context).senderOnion == Provider.of<ProfileInfoState>(context).onion;
|
||||
var prettyDate = "";
|
||||
var borderRadiousEh = 15.0;
|
||||
var myKey = Provider.of<MessageState>(context).profileOnion + "::" + Provider.of<MessageState>(context).contactHandle + "::" + Provider.of<MessageState>(context).messageIndex.toString();
|
||||
|
||||
if (Provider.of<MessageState>(context).timestamp != null) {
|
||||
// user-configurable timestamps prolly ideal? #todo
|
||||
DateTime messageDate = Provider.of<MessageState>(context).timestamp;
|
||||
prettyDate = DateFormat.yMd().add_jm().format(messageDate.toLocal());
|
||||
}
|
||||
|
||||
// If the sender is not us, then we want to give them a nickname...
|
||||
var senderDisplayStr = "";
|
||||
if (!fromMe && Provider.of<MessageState>(context).senderOnion != null) {
|
||||
ContactInfoState? contact = Provider.of<ProfileInfoState>(context).contactList.getContact(Provider.of<MessageState>(context).senderOnion);
|
||||
if (contact != null) {
|
||||
senderDisplayStr = contact.nickname;
|
||||
} else {
|
||||
senderDisplayStr = Provider.of<MessageState>(context).senderOnion;
|
||||
}
|
||||
}
|
||||
var wdgSender = SelectableText(senderDisplayStr,
|
||||
style: TextStyle(fontSize: 9.0, color: fromMe ? Provider.of<Settings>(context).theme.messageFromMeTextColor() : Provider.of<Settings>(context).theme.messageFromOtherTextColor()));
|
||||
|
||||
var wdgMessage = SelectableText(
|
||||
(Provider.of<MessageState>(context).message ?? "") + '\u202F',
|
||||
key: Key(myKey),
|
||||
focusNode: _focus,
|
||||
style: TextStyle(
|
||||
color: fromMe ? Provider.of<Settings>(context).theme.messageFromMeTextColor() : Provider.of<Settings>(context).theme.messageFromOtherTextColor(),
|
||||
),
|
||||
textAlign: TextAlign.left,
|
||||
textWidthBasis: TextWidthBasis.longestLine,
|
||||
);
|
||||
|
||||
var wdgDecorations = MessageBubbleDecoration(ackd: Provider.of<MessageState>(context).ackd, errored: Provider.of<MessageState>(context).error, fromMe: fromMe, prettyDate: prettyDate);
|
||||
|
||||
var error = Provider.of<MessageState>(context).error;
|
||||
|
||||
return LayoutBuilder(builder: (context, constraints) {
|
||||
//print(constraints.toString()+", "+constraints.maxWidth.toString());
|
||||
return RepaintBoundary(
|
||||
child: Container(
|
||||
child: Container(
|
||||
decoration: BoxDecoration(
|
||||
color: error
|
||||
? malformedColor
|
||||
: (fromMe ? Provider.of<Settings>(context).theme.messageFromMeBackgroundColor() : Provider.of<Settings>(context).theme.messageFromOtherBackgroundColor()),
|
||||
border: Border.all(
|
||||
color: error
|
||||
? malformedColor
|
||||
: (fromMe ? Provider.of<Settings>(context).theme.messageFromMeBackgroundColor() : Provider.of<Settings>(context).theme.messageFromOtherBackgroundColor()),
|
||||
width: 1),
|
||||
borderRadius: BorderRadius.only(
|
||||
topLeft: Radius.circular(borderRadiousEh),
|
||||
topRight: Radius.circular(borderRadiousEh),
|
||||
bottomLeft: fromMe ? Radius.circular(borderRadiousEh) : Radius.zero,
|
||||
bottomRight: fromMe ? Radius.zero : Radius.circular(borderRadiousEh),
|
||||
),
|
||||
),
|
||||
child: Padding(
|
||||
padding: EdgeInsets.all(9.0),
|
||||
child: Column(
|
||||
crossAxisAlignment: fromMe ? CrossAxisAlignment.end : CrossAxisAlignment.start,
|
||||
mainAxisAlignment: fromMe ? MainAxisAlignment.end : MainAxisAlignment.start,
|
||||
mainAxisSize: MainAxisSize.min,
|
||||
children: fromMe ? [wdgMessage, wdgDecorations] : [wdgSender, wdgMessage, wdgDecorations])))));
|
||||
});
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue