Skip to content

msglist: Friendlier placeholder text when narrow has no messages #1640

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 6 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
97 changes: 91 additions & 6 deletions assets/l10n/app_en.arb
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,10 @@
"@upgradeWelcomeDialogDismiss": {
"description": "Label for button dismissing dialog shown on first upgrade from the legacy Zulip app."
},
"learnMoreButtonLabel": "Learn more",
"@learnMoreButtonLabel": {
"description": "Label for a 'Learn more' button."
},
"chooseAccountPageTitle": "Choose account",
"@chooseAccountPageTitle": {
"description": "Title for the page to choose between Zulip accounts."
Expand Down Expand Up @@ -530,6 +534,79 @@
"others": {"type": "String", "example": "Alice, Bob"}
}
},
"emptyMessageList": "There are no messages here.",
"@emptyMessageList": {
"description": "Placeholder for some message-list pages when there are no messages."
},
"emptyMessageListCombinedFeed": "There are no messages in your combined feed.",
"@emptyMessageListCombinedFeed": {
"description": "Placeholder for the 'Combined feed' page when there are no messages."
},
"emptyMessageListPrivateChannelNotSubscribed": "This channel is private.",
"@emptyMessageListPrivateChannelNotSubscribed": {
"description": "Placeholder for a channel page when there are no messages, the channel is private, and you are not subscribed."
},
"emptyMessageListChannelUnavailable": "This channel doesn’t exist, or you are not allowed to view it.",
"@emptyMessageListChannelUnavailable": {
"description": "Placeholder for a channel page when there are no messages and the channel does not exist or you don't have access to it."
},
"emptyMessageListSelfDmHeader": "You have not sent any direct messages to yourself yet!",
"@emptyMessageListSelfDmHeader": {
"description": "Placeholder for the self-DM page when there are no messages."
},
"emptyMessageListSelfDmMessage": "Use this space for personal notes, or to test out Zulip features.",
"@emptyMessageListSelfDmMessage": {
"description": "Extra detail in the placeholder for the self-DM page when there are no messages."
},
"emptyMessageListDm": "You have no direct messages with {person} yet.",
"@emptyMessageListDm": {
"description": "Placeholder for a 1:1 DM page when there are no messages.",
"placeholders": {
"person": {"type": "String", "example": "Alice"}
}
},
"emptyMessageListDmDeactivatedUser": "You have no direct messages with {person}.",
"@emptyMessageListDmDeactivatedUser": {
"description": "Placeholder for a 1:1 DM page when there are no messages and the other user is deactivated.",
"placeholders": {
"person": {"type": "String", "example": "Alice"}
}
},
"emptyMessageListDmUnknownUser": "You have no direct messages with this person.",
"@emptyMessageListDmUnknownUser": {
"description": "Placeholder for a 1:1 DM page when there are no messages and the other user's name is unavailable."
},
"emptyMessageListGroupDm": "You have no direct messages with these users yet.",
"@emptyMessageListGroupDm": {
"description": "Placeholder for a group DM page when there are no messages."
},
"emptyMessageListGroupDmDeactivatedUser": "You have no direct messages with these users.",
"@emptyMessageListGroupDmDeactivatedUser": {
"description": "Placeholder for a group DM page when there are no messages and one or more participants is deactivated."
},
"emptyMessageListDmStartConversation": "Why not start the conversation?",
"@emptyMessageListDmStartConversation": {
"description": "Extra detail in the placeholder for some DM pages when there are no messages."
},
"emptyMessageListMentionsHeader": "This view will show messages where you are mentioned.",
"@emptyMessageListMentionsHeader": {
"description": "Placeholder for the 'Mentions' page when there are no messages."
},
"emptyMessageListMentionsMessage": "To call attention to a message, you can mention a user, a group, topic participants, or all subscribers to a channel. Type @ in the compose box, and choose who you’d like to mention from the list of suggestions.",
"@emptyMessageListMentionsMessage": {
"description": "Extra detail in the placeholder for the 'Mentions' page when there are no messages."
},
"emptyMessageListStarredHeader": "You have no starred messages.",
"@emptyMessageListStarredHeader": {
"description": "Placeholder for the 'Starred' page when there are no messages."
},
"emptyMessageListStarredMessage": "Starring messages is a good way to keep track of important messages, such as tasks you need to go back to, or useful references. To star a message, long-press it and tap “{button}.”",
"@emptyMessageListStarredMessage": {
"description": "Extra detail in the placeholder for the 'Starred' page when there are no messages. The {button} placeholder will be the button's translated text.",
"placeholders": {
"button": {"type": "String", "example": "Star message"}
}
},
"messageListGroupYouWithYourself": "Messages with yourself",
"@messageListGroupYouWithYourself": {
"description": "Message list recipient header for a DM group that only includes yourself."
Expand Down Expand Up @@ -793,10 +870,14 @@
"@inboxPageTitle": {
"description": "Title for the page with unreads."
},
"inboxEmptyPlaceholder": "There are no unread messages in your inbox. Use the buttons below to view the combined feed or list of channels.",
"@inboxEmptyPlaceholder": {
"inboxEmptyPlaceholderHeader": "There are no unread messages in your inbox.",
"@inboxEmptyPlaceholderHeader": {
"description": "Centered text on the 'Inbox' page saying that there is no content to show."
},
"inboxEmptyPlaceholderMessage": "Use the buttons below to view the combined feed or list of channels.",
"@inboxEmptyPlaceholderMessage": {
"description": "Additional centered text on the 'Inbox' page saying that there is no content to show."
},
"recentDmConversationsPageTitle": "Direct messages",
"@recentDmConversationsPageTitle": {
"description": "Title for the page with a list of DM conversations."
Expand All @@ -805,10 +886,14 @@
"@recentDmConversationsSectionHeader": {
"description": "Heading for direct messages section on the 'Inbox' message view."
},
"recentDmConversationsEmptyPlaceholder": "You have no direct messages yet! Why not start the conversation?",
"@recentDmConversationsEmptyPlaceholder": {
"recentDmConversationsEmptyPlaceholderHeader": "You have no direct messages yet!",
"@recentDmConversationsEmptyPlaceholderHeader": {
"description": "Centered text on the 'Direct messages' page saying that there is no content to show."
},
"recentDmConversationsEmptyPlaceholderMessage": "Why not start the conversation?",
"@recentDmConversationsEmptyPlaceholderMessage": {
"description": "Additional centered text on the 'Direct messages' page saying that there is no content to show."
},
"combinedFeedPageTitle": "Combined feed",
"@combinedFeedPageTitle": {
"description": "Page title for the 'Combined feed' message view."
Expand All @@ -825,8 +910,8 @@
"@channelsPageTitle": {
"description": "Title for the page with a list of subscribed channels."
},
"channelsEmptyPlaceholder": "You are not subscribed to any channels yet.",
"@channelsEmptyPlaceholder": {
"channelsEmptyPlaceholderHeader": "You are not subscribed to any channels yet.",
"@channelsEmptyPlaceholderHeader": {
"description": "Centered text on the 'Channels' page saying that there is no content to show."
},
"mainMenuMyProfile": "My profile",
Expand Down
124 changes: 119 additions & 5 deletions lib/generated/l10n/zulip_localizations.dart
Original file line number Diff line number Diff line change
Expand Up @@ -177,6 +177,12 @@ abstract class ZulipLocalizations {
/// **'Let\'s go'**
String get upgradeWelcomeDialogDismiss;

/// Label for a 'Learn more' button.
///
/// In en, this message translates to:
/// **'Learn more'**
String get learnMoreButtonLabel;

/// Title for the page to choose between Zulip accounts.
///
/// In en, this message translates to:
Expand Down Expand Up @@ -845,6 +851,102 @@ abstract class ZulipLocalizations {
/// **'DMs with {others}'**
String dmsWithOthersPageTitle(String others);

/// Placeholder for some message-list pages when there are no messages.
///
/// In en, this message translates to:
/// **'There are no messages here.'**
String get emptyMessageList;

/// Placeholder for the 'Combined feed' page when there are no messages.
///
/// In en, this message translates to:
/// **'There are no messages in your combined feed.'**
String get emptyMessageListCombinedFeed;

/// Placeholder for a channel page when there are no messages, the channel is private, and you are not subscribed.
///
/// In en, this message translates to:
/// **'This channel is private.'**
String get emptyMessageListPrivateChannelNotSubscribed;

/// Placeholder for a channel page when there are no messages and the channel does not exist or you don't have access to it.
///
/// In en, this message translates to:
/// **'This channel doesn’t exist, or you are not allowed to view it.'**
String get emptyMessageListChannelUnavailable;

/// Placeholder for the self-DM page when there are no messages.
///
/// In en, this message translates to:
/// **'You have not sent any direct messages to yourself yet!'**
String get emptyMessageListSelfDmHeader;

/// Extra detail in the placeholder for the self-DM page when there are no messages.
///
/// In en, this message translates to:
/// **'Use this space for personal notes, or to test out Zulip features.'**
String get emptyMessageListSelfDmMessage;

/// Placeholder for a 1:1 DM page when there are no messages.
///
/// In en, this message translates to:
/// **'You have no direct messages with {person} yet.'**
String emptyMessageListDm(String person);

/// Placeholder for a 1:1 DM page when there are no messages and the other user is deactivated.
///
/// In en, this message translates to:
/// **'You have no direct messages with {person}.'**
String emptyMessageListDmDeactivatedUser(String person);

/// Placeholder for a 1:1 DM page when there are no messages and the other user's name is unavailable.
///
/// In en, this message translates to:
/// **'You have no direct messages with this person.'**
String get emptyMessageListDmUnknownUser;

/// Placeholder for a group DM page when there are no messages.
///
/// In en, this message translates to:
/// **'You have no direct messages with these users yet.'**
String get emptyMessageListGroupDm;

/// Placeholder for a group DM page when there are no messages and one or more participants is deactivated.
///
/// In en, this message translates to:
/// **'You have no direct messages with these users.'**
String get emptyMessageListGroupDmDeactivatedUser;

/// Extra detail in the placeholder for some DM pages when there are no messages.
///
/// In en, this message translates to:
/// **'Why not start the conversation?'**
String get emptyMessageListDmStartConversation;

/// Placeholder for the 'Mentions' page when there are no messages.
///
/// In en, this message translates to:
/// **'This view will show messages where you are mentioned.'**
String get emptyMessageListMentionsHeader;

/// Extra detail in the placeholder for the 'Mentions' page when there are no messages.
///
/// In en, this message translates to:
/// **'To call attention to a message, you can mention a user, a group, topic participants, or all subscribers to a channel. Type @ in the compose box, and choose who you’d like to mention from the list of suggestions.'**
String get emptyMessageListMentionsMessage;

/// Placeholder for the 'Starred' page when there are no messages.
///
/// In en, this message translates to:
/// **'You have no starred messages.'**
String get emptyMessageListStarredHeader;

/// Extra detail in the placeholder for the 'Starred' page when there are no messages. The {button} placeholder will be the button's translated text.
///
/// In en, this message translates to:
/// **'Starring messages is a good way to keep track of important messages, such as tasks you need to go back to, or useful references. To star a message, long-press it and tap “{button}.”'**
String emptyMessageListStarredMessage(String button);

/// Message list recipient header for a DM group that only includes yourself.
///
/// In en, this message translates to:
Expand Down Expand Up @@ -1206,8 +1308,14 @@ abstract class ZulipLocalizations {
/// Centered text on the 'Inbox' page saying that there is no content to show.
///
/// In en, this message translates to:
/// **'There are no unread messages in your inbox. Use the buttons below to view the combined feed or list of channels.'**
String get inboxEmptyPlaceholder;
/// **'There are no unread messages in your inbox.'**
String get inboxEmptyPlaceholderHeader;

/// Additional centered text on the 'Inbox' page saying that there is no content to show.
///
/// In en, this message translates to:
/// **'Use the buttons below to view the combined feed or list of channels.'**
String get inboxEmptyPlaceholderMessage;

/// Title for the page with a list of DM conversations.
///
Expand All @@ -1224,8 +1332,14 @@ abstract class ZulipLocalizations {
/// Centered text on the 'Direct messages' page saying that there is no content to show.
///
/// In en, this message translates to:
/// **'You have no direct messages yet! Why not start the conversation?'**
String get recentDmConversationsEmptyPlaceholder;
/// **'You have no direct messages yet!'**
String get recentDmConversationsEmptyPlaceholderHeader;

/// Additional centered text on the 'Direct messages' page saying that there is no content to show.
///
/// In en, this message translates to:
/// **'Why not start the conversation?'**
String get recentDmConversationsEmptyPlaceholderMessage;

/// Page title for the 'Combined feed' message view.
///
Expand Down Expand Up @@ -1255,7 +1369,7 @@ abstract class ZulipLocalizations {
///
/// In en, this message translates to:
/// **'You are not subscribed to any channels yet.'**
String get channelsEmptyPlaceholder;
String get channelsEmptyPlaceholderHeader;

/// Label for main-menu button leading to the user's own profile.
///
Expand Down
Loading