From aa0a1d9a262270e6a2a1acbb4b0d798d988c6dea Mon Sep 17 00:00:00 2001 From: Sarah Jamie Lewis Date: Mon, 7 Jun 2021 15:12:24 -0700 Subject: [PATCH] Flutter Upgrade + Translations --- lib/l10n/intl_de.arb | 4 ++++ lib/l10n/intl_en.arb | 4 ++++ lib/l10n/intl_es.arb | 4 ++++ lib/l10n/intl_fr.arb | 4 ++++ lib/l10n/intl_it.arb | 4 ++++ lib/l10n/intl_pt.arb | 4 ++++ lib/opaque.dart | 2 ++ lib/widgets/invitationbubble.dart | 13 +++++++------ lib/widgets/messagelist.dart | 3 +-- lib/widgets/messagerow.dart | 5 ++++- linux/flutter/generated_plugin_registrant.cc | 2 ++ linux/flutter/generated_plugin_registrant.h | 2 ++ pubspec.lock | 8 ++++---- windows/flutter/generated_plugin_registrant.cc | 2 ++ windows/flutter/generated_plugin_registrant.h | 2 ++ 15 files changed, 50 insertions(+), 13 deletions(-) diff --git a/lib/l10n/intl_de.arb b/lib/l10n/intl_de.arb index 902c84b..89bb1d4 100644 --- a/lib/l10n/intl_de.arb +++ b/lib/l10n/intl_de.arb @@ -1,5 +1,6 @@ { "@@locale": "de", + "accepted": "", "acceptGroupBtn": "Annehmen", "acceptGroupInviteLabel": "Möchtest Du die Einladung annehmen", "acknowledgedLabel": "bestätigt", @@ -19,6 +20,7 @@ "chatBtn": "Chat", "chatHistoryDefault": "", "contactAlreadyExists": "", + "contactSuggestion": "", "conversationSettings": "", "copiedClipboardNotification": "in die Zwischenablage kopiert", "copiedToClipboardNotification": "in die Zwischenablage kopiert", @@ -121,6 +123,7 @@ "radioNoPassword": "Unverschlüsselt (kein Passwort)", "radioUsePassword": "Passwort", "reallyLeaveThisGroupPrompt": "", + "rejected": "", "rejectGroupBtn": "Ablehnen", "saveBtn": "Speichern", "savePeerHistory": "Peer-Verlauf speichern", @@ -128,6 +131,7 @@ "saveProfileBtn": "Profil speichern", "search": "Suche...", "searchList": "", + "sendAnInvitation": "", "server": "Server", "serverConnectivityConnected": "Server verbunden", "serverConnectivityDisconnected": "Server getrennt", diff --git a/lib/l10n/intl_en.arb b/lib/l10n/intl_en.arb index 2f37d53..35e3731 100644 --- a/lib/l10n/intl_en.arb +++ b/lib/l10n/intl_en.arb @@ -1,5 +1,6 @@ { "@@locale": "en", + "accepted": "Accepted!", "acceptGroupBtn": "Accept", "acceptGroupInviteLabel": "Do you want to accept the invitation to", "acknowledgedLabel": "Acknowledged", @@ -19,6 +20,7 @@ "chatBtn": "Chat", "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.", "contactAlreadyExists": "Contact Already Exists", + "contactSuggestion": "This is a contact suggestion for: ", "conversationSettings": "Conversation Settings", "copiedClipboardNotification": "Copied to clipboard", "copiedToClipboardNotification": "Copied to Clipboard", @@ -121,6 +123,7 @@ "radioNoPassword": "Unencrypted (No password)", "radioUsePassword": "Password", "reallyLeaveThisGroupPrompt": "Are you sure you want to leave this conversation? All messages and attributes will be deleted.", + "rejected": "Rejected!", "rejectGroupBtn": "Reject", "saveBtn": "Save", "savePeerHistory": "Save Peer History", @@ -128,6 +131,7 @@ "saveProfileBtn": "Save Profile", "search": "Search...", "searchList": "Search List", + "sendAnInvitation": "You sent an invitation for: ", "server": "Server", "serverConnectivityConnected": "Server Connected", "serverConnectivityDisconnected": "Server Disconnected", diff --git a/lib/l10n/intl_es.arb b/lib/l10n/intl_es.arb index f4ad2b9..7e0ad97 100644 --- a/lib/l10n/intl_es.arb +++ b/lib/l10n/intl_es.arb @@ -1,5 +1,6 @@ { "@@locale": "es", + "accepted": "", "acceptGroupBtn": "Aceptar", "acceptGroupInviteLabel": "¿Quieres aceptar la invitación a ", "acknowledgedLabel": "Reconocido", @@ -19,6 +20,7 @@ "chatBtn": "Chat", "chatHistoryDefault": "", "contactAlreadyExists": "", + "contactSuggestion": "", "conversationSettings": "", "copiedClipboardNotification": "Copiado al portapapeles", "copiedToClipboardNotification": "Copiado al portapapeles", @@ -121,6 +123,7 @@ "radioNoPassword": "Sin cifrado (sin contraseña)", "radioUsePassword": "Contraseña", "reallyLeaveThisGroupPrompt": "", + "rejected": "", "rejectGroupBtn": "Rechazar", "saveBtn": "Guardar", "savePeerHistory": "Guardar el historial con contacto", @@ -128,6 +131,7 @@ "saveProfileBtn": "Guardar perfil", "search": "Búsqueda...", "searchList": "Buscar en la lista", + "sendAnInvitation": "", "server": "Servidor", "serverConnectivityConnected": "Servidor conectado", "serverConnectivityDisconnected": "Servidor desconectado", diff --git a/lib/l10n/intl_fr.arb b/lib/l10n/intl_fr.arb index 6df2f99..5e6c18f 100644 --- a/lib/l10n/intl_fr.arb +++ b/lib/l10n/intl_fr.arb @@ -1,5 +1,6 @@ { "@@locale": "fr", + "accepted": "", "acceptGroupBtn": "Accepter", "acceptGroupInviteLabel": "Voulez-vous accepter l'invitation au groupe", "acknowledgedLabel": "Confirmé", @@ -19,6 +20,7 @@ "chatBtn": "Discuter", "chatHistoryDefault": "", "contactAlreadyExists": "", + "contactSuggestion": "", "conversationSettings": "", "copiedClipboardNotification": "Copié dans le presse-papier", "copiedToClipboardNotification": "Copié dans le presse-papier", @@ -121,6 +123,7 @@ "radioNoPassword": "", "radioUsePassword": "", "reallyLeaveThisGroupPrompt": "", + "rejected": "", "rejectGroupBtn": "Refuser", "saveBtn": "Sauvegarder", "savePeerHistory": "", @@ -128,6 +131,7 @@ "saveProfileBtn": "", "search": "", "searchList": "", + "sendAnInvitation": "", "server": "", "serverConnectivityConnected": "", "serverConnectivityDisconnected": "", diff --git a/lib/l10n/intl_it.arb b/lib/l10n/intl_it.arb index fee6328..44a26cc 100644 --- a/lib/l10n/intl_it.arb +++ b/lib/l10n/intl_it.arb @@ -1,5 +1,6 @@ { "@@locale": "it", + "accepted": "", "acceptGroupBtn": "Accetta", "acceptGroupInviteLabel": "Vuoi accettare l'invito a", "acknowledgedLabel": "Riconosciuto", @@ -19,6 +20,7 @@ "chatBtn": "Chat", "chatHistoryDefault": "", "contactAlreadyExists": "", + "contactSuggestion": "", "conversationSettings": "", "copiedClipboardNotification": "Copiato negli Appunti", "copiedToClipboardNotification": "Copiato negli Appunti", @@ -121,6 +123,7 @@ "radioNoPassword": "Non criptato (senza password)", "radioUsePassword": "Password", "reallyLeaveThisGroupPrompt": "", + "rejected": "", "rejectGroupBtn": "Rifiuta", "saveBtn": "Salva", "savePeerHistory": "Salva cronologia peer", @@ -128,6 +131,7 @@ "saveProfileBtn": "Salva il profilo", "search": "Ricerca...", "searchList": "Cerca nella lista", + "sendAnInvitation": "", "server": "Server", "serverConnectivityConnected": "Server connesso", "serverConnectivityDisconnected": "Server disconnesso", diff --git a/lib/l10n/intl_pt.arb b/lib/l10n/intl_pt.arb index 772eb42..acfbd49 100644 --- a/lib/l10n/intl_pt.arb +++ b/lib/l10n/intl_pt.arb @@ -1,5 +1,6 @@ { "@@locale": "pt", + "accepted": "", "acceptGroupBtn": "Aceitar", "acceptGroupInviteLabel": "Você quer aceitar o convite para", "acknowledgedLabel": "Confirmada", @@ -19,6 +20,7 @@ "chatBtn": "Chat", "chatHistoryDefault": "", "contactAlreadyExists": "", + "contactSuggestion": "", "conversationSettings": "", "copiedClipboardNotification": "Copiado", "copiedToClipboardNotification": "Copiado", @@ -121,6 +123,7 @@ "radioNoPassword": "", "radioUsePassword": "", "reallyLeaveThisGroupPrompt": "", + "rejected": "", "rejectGroupBtn": "Recusar", "saveBtn": "Salvar", "savePeerHistory": "", @@ -128,6 +131,7 @@ "saveProfileBtn": "", "search": "", "searchList": "", + "sendAnInvitation": "", "server": "", "serverConnectivityConnected": "", "serverConnectivityDisconnected": "", diff --git a/lib/opaque.dart b/lib/opaque.dart index 5615486..6f8074d 100644 --- a/lib/opaque.dart +++ b/lib/opaque.dart @@ -1383,6 +1383,8 @@ ThemeData mkThemeData(Settings opaque) { )), ), ), + scrollbarTheme: ScrollbarThemeData( + isAlwaysShown: false, thumbColor: MaterialStateProperty.all(opaque.current().scrollbarActiveColor()), trackColor: MaterialStateProperty.all(opaque.current().scrollbarDefaultColor())), tabBarTheme: TabBarTheme(indicator: UnderlineTabIndicator(borderSide: BorderSide(color: opaque.current().defaultButtonActiveColor()))), dialogTheme: DialogTheme( backgroundColor: opaque.current().backgroundPaneColor(), diff --git a/lib/widgets/invitationbubble.dart b/lib/widgets/invitationbubble.dart index 10d0569..232fde3 100644 --- a/lib/widgets/invitationbubble.dart +++ b/lib/widgets/invitationbubble.dart @@ -64,23 +64,24 @@ class InvitationBubbleState extends State { } var wdgMessage = fromMe - ? senderInviteChrome("You sent an invitation for", isGroup ? "a group" : Provider.of(context).message, myKey) - : (inviteChrome(isGroup ? AppLocalizations.of(context)!.inviteToGroup : "This is a contact suggestion for:", Provider.of(context).inviteNick, + ? senderInviteChrome(AppLocalizations.of(context)!.sendAnInvitation, + isGroup ? Provider.of(context).contactList.getContact(Provider.of(context).inviteTarget)!.nickname : Provider.of(context).message, myKey) + : (inviteChrome(isGroup ? AppLocalizations.of(context)!.inviteToGroup : AppLocalizations.of(context)!.contactSuggestion, Provider.of(context).inviteNick, Provider.of(context).inviteTarget, myKey)); Widget wdgDecorations; if (fromMe) { wdgDecorations = MessageBubbleDecoration(ackd: Provider.of(context).ackd, errored: Provider.of(context).error, fromMe: fromMe, prettyDate: prettyDate); } else if (isAccepted) { - wdgDecorations = Text("Accepted!" + '\u202F'); + wdgDecorations = Text(AppLocalizations.of(context)!.accepted + '\u202F'); } else if (this.rejected) { - wdgDecorations = Text("Rejected." + '\u202F'); + wdgDecorations = Text(AppLocalizations.of(context)!.rejected + '\u202F'); } else { wdgDecorations = Center( widthFactor: 1, child: Wrap(children: [ - Padding(padding: EdgeInsets.all(5), child: TextButton(child: Text("Reject" + '\u202F'), onPressed: _btnReject)), - Padding(padding: EdgeInsets.all(5), child: TextButton(child: Text("Accept" + '\u202F'), onPressed: _btnAccept)), + Padding(padding: EdgeInsets.all(5), child: TextButton(child: Text(AppLocalizations.of(context)!.rejectGroupBtn + '\u202F'), onPressed: _btnReject)), + Padding(padding: EdgeInsets.all(5), child: TextButton(child: Text(AppLocalizations.of(context)!.acceptGroupBtn + '\u202F'), onPressed: _btnAccept)), ])); } diff --git a/lib/widgets/messagelist.dart b/lib/widgets/messagelist.dart index 2b424d4..5a8fc0f 100644 --- a/lib/widgets/messagelist.dart +++ b/lib/widgets/messagelist.dart @@ -39,7 +39,6 @@ class _MessageListState extends State { )), Expanded( child: Scrollbar( - isAlwaysShown: true, controller: ctrlr1, child: Container( // Only show broken heart is the contact is offline... @@ -54,7 +53,7 @@ class _MessageListState extends State { child: ListView.builder( controller: ctrlr1, itemCount: Provider.of(outerContext).totalMessages, - reverse: true, + reverse: true, // NOTE: There seems to be a bug in flutter that corrects the mouse wheel scroll, but not the drag direction... itemBuilder: (itemBuilderContext, index) { var trueIndex = Provider.of(outerContext).totalMessages - index - 1; return ChangeNotifierProvider( diff --git a/lib/widgets/messagerow.dart b/lib/widgets/messagerow.dart index 8f02b96..b6c9978 100644 --- a/lib/widgets/messagerow.dart +++ b/lib/widgets/messagerow.dart @@ -94,7 +94,10 @@ class _MessageRowState extends State { final setPeerAttributeJson = jsonEncode(setPeerAttribute); Provider.of(context, listen: false).cwtch.SendProfileEvent(profileOnion, setPeerAttributeJson); - final snackBar = SnackBar(content: Text(AppLocalizations.of(context)!.successfullAddedContact)); + final snackBar = SnackBar( + content: Text(AppLocalizations.of(context)!.successfullAddedContact), + duration: Duration(seconds: 2), + ); ScaffoldMessenger.of(context).showSnackBar(snackBar); } } diff --git a/linux/flutter/generated_plugin_registrant.cc b/linux/flutter/generated_plugin_registrant.cc index 99da0ef..9f8c703 100644 --- a/linux/flutter/generated_plugin_registrant.cc +++ b/linux/flutter/generated_plugin_registrant.cc @@ -2,6 +2,8 @@ // Generated file. Do not edit. // +// clang-format off + #include "generated_plugin_registrant.h" #include diff --git a/linux/flutter/generated_plugin_registrant.h b/linux/flutter/generated_plugin_registrant.h index 9bf7478..e0f0a47 100644 --- a/linux/flutter/generated_plugin_registrant.h +++ b/linux/flutter/generated_plugin_registrant.h @@ -2,6 +2,8 @@ // Generated file. Do not edit. // +// clang-format off + #ifndef GENERATED_PLUGIN_REGISTRANT_ #define GENERATED_PLUGIN_REGISTRANT_ diff --git a/pubspec.lock b/pubspec.lock index 9624a17..3db29ce 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -21,7 +21,7 @@ packages: name: async url: "https://pub.dartlang.org" source: hosted - version: "2.6.1" + version: "2.7.0" boolean_selector: dependency: transitive description: @@ -191,7 +191,7 @@ packages: name: meta url: "https://pub.dartlang.org" source: hosted - version: "1.3.0" + version: "1.4.0" nested: dependency: transitive description: @@ -392,7 +392,7 @@ packages: name: test_api url: "https://pub.dartlang.org" source: hosted - version: "0.3.0" + version: "0.4.0" typed_data: dependency: transitive description: @@ -450,7 +450,7 @@ packages: name: xml url: "https://pub.dartlang.org" source: hosted - version: "5.1.1" + version: "5.1.2" sdks: dart: ">=2.13.0 <3.0.0" flutter: ">=1.20.0" diff --git a/windows/flutter/generated_plugin_registrant.cc b/windows/flutter/generated_plugin_registrant.cc index 9deaa4e..9372fc5 100644 --- a/windows/flutter/generated_plugin_registrant.cc +++ b/windows/flutter/generated_plugin_registrant.cc @@ -2,6 +2,8 @@ // Generated file. Do not edit. // +// clang-format off + #include "generated_plugin_registrant.h" #include diff --git a/windows/flutter/generated_plugin_registrant.h b/windows/flutter/generated_plugin_registrant.h index 9846246..dc139d8 100644 --- a/windows/flutter/generated_plugin_registrant.h +++ b/windows/flutter/generated_plugin_registrant.h @@ -2,6 +2,8 @@ // Generated file. Do not edit. // +// clang-format off + #ifndef GENERATED_PLUGIN_REGISTRANT_ #define GENERATED_PLUGIN_REGISTRANT_