Skip to content

Commit f99e6d8

Browse files
chrisbobbesm-sayedi
andcommitted
msglist: Hide content of muted messages, with a "Reveal message" button
Figma design: https://www.figma.com/design/1JTNtYo9memgW7vV6d0ygq/Zulip-Mobile?node-id=6089-28385&t=28DdYiTs6fXWR9ua-0 Co-authored-by: Sayed Mahmood Sayedi <[email protected]>
1 parent 08d0b90 commit f99e6d8

18 files changed

+266
-52
lines changed

assets/l10n/app_en.arb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -987,7 +987,7 @@
987987
"@noEarlierMessages": {
988988
"description": "Text to show at the start of a message list if there are no earlier messages."
989989
},
990-
"revealButtonLabel": "Reveal message for muted sender",
990+
"revealButtonLabel": "Reveal message",
991991
"@revealButtonLabel": {
992992
"description": "Label for the button revealing hidden message from a muted sender in message list."
993993
},

assets/l10n/app_pl.arb

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1089,10 +1089,6 @@
10891089
"@mutedSender": {
10901090
"description": "Name for a muted user to display in message list."
10911091
},
1092-
"revealButtonLabel": "Odsłoń wiadomość od wyciszonego użytkownika",
1093-
"@revealButtonLabel": {
1094-
"description": "Label for the button revealing hidden message from a muted sender in message list."
1095-
},
10961092
"mutedUser": "Wyciszony użytkownik",
10971093
"@mutedUser": {
10981094
"description": "Name for a muted user to display all over the app."

assets/l10n/app_ru.arb

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1081,10 +1081,6 @@
10811081
"@mutedSender": {
10821082
"description": "Name for a muted user to display in message list."
10831083
},
1084-
"revealButtonLabel": "Показать сообщение отключенного отправителя",
1085-
"@revealButtonLabel": {
1086-
"description": "Label for the button revealing hidden message from a muted sender in message list."
1087-
},
10881084
"mutedUser": "Отключенный пользователь",
10891085
"@mutedUser": {
10901086
"description": "Name for a muted user to display all over the app."

lib/generated/l10n/zulip_localizations.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1472,7 +1472,7 @@ abstract class ZulipLocalizations {
14721472
/// Label for the button revealing hidden message from a muted sender in message list.
14731473
///
14741474
/// In en, this message translates to:
1475-
/// **'Reveal message for muted sender'**
1475+
/// **'Reveal message'**
14761476
String get revealButtonLabel;
14771477

14781478
/// Text to display in place of a muted user's name.

lib/generated/l10n/zulip_localizations_ar.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -803,7 +803,7 @@ class ZulipLocalizationsAr extends ZulipLocalizations {
803803
String get noEarlierMessages => 'No earlier messages';
804804

805805
@override
806-
String get revealButtonLabel => 'Reveal message for muted sender';
806+
String get revealButtonLabel => 'Reveal message';
807807

808808
@override
809809
String get mutedUser => 'Muted user';

lib/generated/l10n/zulip_localizations_de.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -803,7 +803,7 @@ class ZulipLocalizationsDe extends ZulipLocalizations {
803803
String get noEarlierMessages => 'No earlier messages';
804804

805805
@override
806-
String get revealButtonLabel => 'Reveal message for muted sender';
806+
String get revealButtonLabel => 'Reveal message';
807807

808808
@override
809809
String get mutedUser => 'Muted user';

lib/generated/l10n/zulip_localizations_en.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -803,7 +803,7 @@ class ZulipLocalizationsEn extends ZulipLocalizations {
803803
String get noEarlierMessages => 'No earlier messages';
804804

805805
@override
806-
String get revealButtonLabel => 'Reveal message for muted sender';
806+
String get revealButtonLabel => 'Reveal message';
807807

808808
@override
809809
String get mutedUser => 'Muted user';

lib/generated/l10n/zulip_localizations_ja.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -803,7 +803,7 @@ class ZulipLocalizationsJa extends ZulipLocalizations {
803803
String get noEarlierMessages => 'No earlier messages';
804804

805805
@override
806-
String get revealButtonLabel => 'Reveal message for muted sender';
806+
String get revealButtonLabel => 'Reveal message';
807807

808808
@override
809809
String get mutedUser => 'Muted user';

lib/generated/l10n/zulip_localizations_nb.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -803,7 +803,7 @@ class ZulipLocalizationsNb extends ZulipLocalizations {
803803
String get noEarlierMessages => 'No earlier messages';
804804

805805
@override
806-
String get revealButtonLabel => 'Reveal message for muted sender';
806+
String get revealButtonLabel => 'Reveal message';
807807

808808
@override
809809
String get mutedUser => 'Muted user';

lib/generated/l10n/zulip_localizations_pl.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -816,7 +816,7 @@ class ZulipLocalizationsPl extends ZulipLocalizations {
816816
String get noEarlierMessages => 'Brak historii';
817817

818818
@override
819-
String get revealButtonLabel => 'Odsłoń wiadomość od wyciszonego użytkownika';
819+
String get revealButtonLabel => 'Reveal message';
820820

821821
@override
822822
String get mutedUser => 'Wyciszony użytkownik';

lib/generated/l10n/zulip_localizations_ru.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -818,7 +818,7 @@ class ZulipLocalizationsRu extends ZulipLocalizations {
818818
String get noEarlierMessages => 'Предшествующих сообщений нет';
819819

820820
@override
821-
String get revealButtonLabel => 'Показать сообщение отключенного отправителя';
821+
String get revealButtonLabel => 'Reveal message';
822822

823823
@override
824824
String get mutedUser => 'Отключенный пользователь';

lib/generated/l10n/zulip_localizations_sk.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -805,7 +805,7 @@ class ZulipLocalizationsSk extends ZulipLocalizations {
805805
String get noEarlierMessages => 'No earlier messages';
806806

807807
@override
808-
String get revealButtonLabel => 'Reveal message for muted sender';
808+
String get revealButtonLabel => 'Reveal message';
809809

810810
@override
811811
String get mutedUser => 'Muted user';

lib/generated/l10n/zulip_localizations_uk.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -817,7 +817,7 @@ class ZulipLocalizationsUk extends ZulipLocalizations {
817817
String get noEarlierMessages => 'Немає попередніх повідомлень';
818818

819819
@override
820-
String get revealButtonLabel => 'Reveal message for muted sender';
820+
String get revealButtonLabel => 'Reveal message';
821821

822822
@override
823823
String get mutedUser => 'Muted user';

lib/generated/l10n/zulip_localizations_zh.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -803,7 +803,7 @@ class ZulipLocalizationsZh extends ZulipLocalizations {
803803
String get noEarlierMessages => 'No earlier messages';
804804

805805
@override
806-
String get revealButtonLabel => 'Reveal message for muted sender';
806+
String get revealButtonLabel => 'Reveal message';
807807

808808
@override
809809
String get mutedUser => 'Muted user';

lib/widgets/action_sheet.dart

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -589,6 +589,8 @@ void showMessageActionSheet({required BuildContext context, required Message mes
589589
final markAsUnreadSupported = store.zulipFeatureLevel >= 155; // TODO(server-6)
590590
final showMarkAsUnreadButton = markAsUnreadSupported && isMessageRead;
591591

592+
final isSenderMuted = store.isUserMuted(message.senderId);
593+
592594
final optionButtons = [
593595
if (popularEmojiLoaded)
594596
ReactionButtons(message: message, pageContext: pageContext),
@@ -597,6 +599,8 @@ void showMessageActionSheet({required BuildContext context, required Message mes
597599
QuoteAndReplyButton(message: message, pageContext: pageContext),
598600
if (showMarkAsUnreadButton)
599601
MarkAsUnreadButton(message: message, pageContext: pageContext),
602+
if (isSenderMuted)
603+
UnrevealMutedMessageButton(message: message, pageContext: pageContext),
600604
CopyMessageTextButton(message: message, pageContext: pageContext),
601605
CopyMessageLinkButton(message: message, pageContext: pageContext),
602606
ShareButton(message: message, pageContext: pageContext),
@@ -902,6 +906,27 @@ class MarkAsUnreadButton extends MessageActionSheetMenuItemButton {
902906
}
903907
}
904908

909+
class UnrevealMutedMessageButton extends MessageActionSheetMenuItemButton {
910+
UnrevealMutedMessageButton({
911+
super.key,
912+
required super.message,
913+
required super.pageContext,
914+
});
915+
916+
@override
917+
IconData get icon => ZulipIcons.eye_off;
918+
919+
@override
920+
String label(ZulipLocalizations zulipLocalizations) {
921+
return zulipLocalizations.actionSheetOptionHideMutedMessage;
922+
}
923+
924+
@override
925+
void onPressed() {
926+
findMessageListPage().unrevealMutedMessage(message.id);
927+
}
928+
}
929+
905930
class CopyMessageTextButton extends MessageActionSheetMenuItemButton {
906931
CopyMessageTextButton({super.key, required super.message, required super.pageContext});
907932

0 commit comments

Comments
 (0)