feat: Add config hideTypingUsernames

This commit is contained in:
Christian Pauly 2020-12-12 17:01:59 +01:00
parent 721c0b2bfa
commit 19c04403a2
3 changed files with 16 additions and 1 deletions

View File

@ -16,6 +16,7 @@ abstract class AppConfig {
static bool renderHtml = false;
static bool hideRedactedEvents = false;
static bool hideUnknownEvents = false;
static const bool hideTypingUsernames = false;
static const bool hideAllStateEvents = false;
static const String inviteLinkPrefix = 'https://matrix.to/#/';
static const String pushNotificationsChannelId = 'fluffychat_push';

View File

@ -1757,6 +1757,13 @@
"unreadChats": {}
}
},
"numUsersTyping": "{count} users are typing…",
"@numUsersTyping": {
"type": "text",
"placeholders": {
"count": {}
}
},
"userAndOthersAreTyping": "{username} and {count} others are typing…",
"@userAndOthersAreTyping": {
"type": "text",

View File

@ -2,6 +2,7 @@ import 'package:famedlysdk/famedlysdk.dart';
import 'package:flutter/widgets.dart';
import 'package:flutter_gen/gen_l10n/l10n.dart';
import '../app_config.dart';
import 'date_time_extension.dart';
extension RoomStatusExtension on Room {
@ -37,7 +38,13 @@ extension RoomStatusExtension on Room {
var typingUsers = this.typingUsers;
typingUsers.removeWhere((User u) => u.id == client.userID);
if (typingUsers.length == 1) {
if (AppConfig.hideTypingUsernames) {
typingText = L10n.of(context).isTyping;
if (typingUsers.first.id != directChatMatrixID) {
typingText =
L10n.of(context).numUsersTyping(typingUsers.length.toString());
}
} else if (typingUsers.length == 1) {
typingText = L10n.of(context).isTyping;
if (typingUsers.first.id != directChatMatrixID) {
typingText =