Skip to content

Commit 84d6a32

Browse files
committed
Merge branch 'main' into Komyyy/user_local_time
2 parents a34855e + ca26330 commit 84d6a32

28 files changed

+738
-67
lines changed

android/gradle.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
org.gradle.jvmargs=-Xmx1536M
1+
org.gradle.jvmargs=-Xmx3072M
22
android.useAndroidX=true
33
android.enableJetifier=true
44

assets/l10n/app_en.arb

Lines changed: 78 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,10 @@
5656
"@profileButtonSendDirectMessage": {
5757
"description": "Label for button in profile screen to navigate to DMs with the shown user."
5858
},
59+
"errorCouldNotShowUserProfile": "Could not show user profile.",
60+
"@errorCouldNotShowUserProfile": {
61+
"description": "Message that appears on the user profile page when the profile cannot be shown."
62+
},
5963
"permissionsNeededTitle": "Permissions needed",
6064
"@permissionsNeededTitle": {
6165
"description": "Title for dialog asking the user to grant additional permissions."
@@ -230,6 +234,17 @@
230234
"event": {"type": "String", "example": "UpdateMessageEvent(id: 123, messageIds: [2345, 3456], newTopic: 'dinner')"}
231235
}
232236
},
237+
"errorCouldNotOpenLinkTitle": "Unable to open link",
238+
"@errorCouldNotOpenLinkTitle": {
239+
"description": "Error title when opening a link failed."
240+
},
241+
"errorCouldNotOpenLink": "Link could not be opened: {url}",
242+
"@errorCouldNotOpenLink": {
243+
"description": "Error message when opening a link failed.",
244+
"placeholders": {
245+
"url": {"type": "String", "example": "https://chat.example.com"}
246+
}
247+
},
233248
"errorMuteTopicFailed": "Failed to mute topic",
234249
"@errorMuteTopicFailed": {
235250
"description": "Error message when muting a topic failed."
@@ -321,8 +336,8 @@
321336
"@composeBoxSendTooltip": {
322337
"description": "Tooltip for send button in compose box."
323338
},
324-
"composeBoxUnknownChannelName": "(unknown channel)",
325-
"@composeBoxUnknownChannelName": {
339+
"unknownChannelName": "(unknown channel)",
340+
"@unknownChannelName": {
326341
"description": "Replacement name for channel when it cannot be found in the store."
327342
},
328343
"composeBoxTopicHintText": "Topic",
@@ -336,17 +351,35 @@
336351
"filename": {"type": "String", "example": "file.txt"}
337352
}
338353
},
354+
"composeBoxLoadingMessage": "(loading message {messageId})",
355+
"@composeBoxLoadingMessage": {
356+
"description": "Placeholder in compose box showing the quoted message is currently loading.",
357+
"placeholders": {
358+
"messageId": {"type": "int", "example": "1234"}
359+
}
360+
},
339361
"unknownUserName": "(unknown user)",
340362
"@unknownUserName": {
341363
"description": "Name placeholder to use for a user when we don't know their name."
342364
},
365+
"dmsWithYourselfPageTitle": "DMs with yourself",
366+
"@dmsWithYourselfPageTitle": {
367+
"description": "Message list page title for a DM group that only includes yourself."
368+
},
343369
"messageListGroupYouAndOthers": "You and {others}",
344370
"@messageListGroupYouAndOthers": {
345371
"description": "Message list recipient header for a DM group with others.",
346372
"placeholders": {
347373
"others": {"type": "String", "example": "Alice, Bob"}
348374
}
349375
},
376+
"dmsWithOthersPageTitle": "DMs with {others}",
377+
"@dmsWithOthersPageTitle": {
378+
"description": "Message list page title for a DM group with others.",
379+
"placeholders": {
380+
"others": {"type": "String", "example": "Alice, Bob"}
381+
}
382+
},
350383
"messageListGroupYouWithYourself": "You with yourself",
351384
"@messageListGroupYouWithYourself": {
352385
"description": "Message list recipient header for a DM group that only includes yourself."
@@ -395,6 +428,14 @@
395428
"@lightboxCopyLinkTooltip": {
396429
"description": "Tooltip in lightbox for the copy link action."
397430
},
431+
"lightboxVideoCurrentPosition": "Current position",
432+
"@lightboxVideoCurrentPosition": {
433+
"description": "The current playback position of the video playing in the lightbox."
434+
},
435+
"lightboxVideoDuration": "Video duration",
436+
"@lightboxVideoDuration": {
437+
"description": "The total duration of the video playing in the lightbox."
438+
},
398439
"loginPageTitle": "Log in",
399440
"@loginPageTitle": {
400441
"description": "Title for login page."
@@ -586,6 +627,10 @@
586627
"@recentDmConversationsPageTitle": {
587628
"description": "Title for the page with a list of DM conversations."
588629
},
630+
"recentDmConversationsSectionHeader": "Direct messages",
631+
"@recentDmConversationsSectionHeader": {
632+
"description": "Heading for direct messages section on the 'Inbox' message view."
633+
},
589634
"combinedFeedPageTitle": "Combined feed",
590635
"@combinedFeedPageTitle": {
591636
"description": "Page title for the 'Combined feed' message view."
@@ -618,10 +663,26 @@
618663
"numOthers": {"type": "int", "example": "4"}
619664
}
620665
},
666+
"pinnedSubscriptionsLabel": "Pinned",
667+
"@pinnedSubscriptionsLabel": {
668+
"description": "Label for the list of pinned subscribed channels."
669+
},
670+
"unpinnedSubscriptionsLabel": "Unpinned",
671+
"@unpinnedSubscriptionsLabel": {
672+
"description": "Label for the list of unpinned subscribed channels."
673+
},
674+
"subscriptionListNoChannels": "No channels found",
675+
"@subscriptionListNoChannels": {
676+
"description": "Text to display on subscribed-channels page when there are no subscribed channels."
677+
},
621678
"notifSelfUser": "You",
622679
"@notifSelfUser": {
623680
"description": "Display name for the user themself, to show after replying in an Android notification"
624681
},
682+
"reactedEmojiSelfUser": "You",
683+
"@reactedEmojiSelfUser": {
684+
"description": "Display name for the user themself, to show on an emoji reaction added by the user."
685+
},
625686
"onePersonTyping": "{typist} is typing…",
626687
"@onePersonTyping": {
627688
"description": "Text to display when there is one user typing.",
@@ -685,6 +746,13 @@
685746
"@messageIsMovedLabel": {
686747
"description": "Label for a moved message. (Use ALL CAPS for cased alphabets: Latin, Greek, Cyrillic, etc.)"
687748
},
749+
"pollVoterNames": "({voterNames})",
750+
"@pollVoterNames": {
751+
"description": "The list of people who voted for a poll option, wrapped in parentheses.",
752+
"placeholders": {
753+
"voterNames": {"type": "String", "example": "Alice, Bob, Chad"}
754+
}
755+
},
688756
"pollWidgetQuestionMissing": "No question.",
689757
"@pollWidgetQuestionMissing": {
690758
"description": "Text to display for a poll when the question is missing"
@@ -717,6 +785,14 @@
717785
"@emojiPickerSearchEmoji": {
718786
"description": "Hint text for the emoji picker search text field."
719787
},
788+
"noEarlierMessages": "No earlier messages",
789+
"@noEarlierMessages": {
790+
"description": "Text to show at the start of a message list if there are no earlier messages."
791+
},
792+
"scrollToBottomTooltip": "Scroll to bottom",
793+
"@scrollToBottomTooltip": {
794+
"description": "Tooltip for button to scroll to bottom."
795+
},
720796
"userLocalTime": "{userTime} local time",
721797
"@userLocalTime": {
722798
"description": "Current time in the user's timezone",

lib/generated/l10n/zulip_localizations.dart

Lines changed: 97 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -189,6 +189,12 @@ abstract class ZulipLocalizations {
189189
/// **'Send direct message'**
190190
String get profileButtonSendDirectMessage;
191191

192+
/// Message that appears on the user profile page when the profile cannot be shown.
193+
///
194+
/// In en, this message translates to:
195+
/// **'Could not show user profile.'**
196+
String get errorCouldNotShowUserProfile;
197+
192198
/// Title for dialog asking the user to grant additional permissions.
193199
///
194200
/// In en, this message translates to:
@@ -405,6 +411,18 @@ abstract class ZulipLocalizations {
405411
/// **'Error handling a Zulip event from {serverUrl}; will retry.\n\nError: {error}\n\nEvent: {event}'**
406412
String errorHandlingEventDetails(String serverUrl, String error, String event);
407413

414+
/// Error title when opening a link failed.
415+
///
416+
/// In en, this message translates to:
417+
/// **'Unable to open link'**
418+
String get errorCouldNotOpenLinkTitle;
419+
420+
/// Error message when opening a link failed.
421+
///
422+
/// In en, this message translates to:
423+
/// **'Link could not be opened: {url}'**
424+
String errorCouldNotOpenLink(String url);
425+
408426
/// Error message when muting a topic failed.
409427
///
410428
/// In en, this message translates to:
@@ -535,7 +553,7 @@ abstract class ZulipLocalizations {
535553
///
536554
/// In en, this message translates to:
537555
/// **'(unknown channel)'**
538-
String get composeBoxUnknownChannelName;
556+
String get unknownChannelName;
539557

540558
/// Hint text for topic input widget in compose box.
541559
///
@@ -549,18 +567,36 @@ abstract class ZulipLocalizations {
549567
/// **'Uploading {filename}…'**
550568
String composeBoxUploadingFilename(String filename);
551569

570+
/// Placeholder in compose box showing the quoted message is currently loading.
571+
///
572+
/// In en, this message translates to:
573+
/// **'(loading message {messageId})'**
574+
String composeBoxLoadingMessage(int messageId);
575+
552576
/// Name placeholder to use for a user when we don't know their name.
553577
///
554578
/// In en, this message translates to:
555579
/// **'(unknown user)'**
556580
String get unknownUserName;
557581

582+
/// Message list page title for a DM group that only includes yourself.
583+
///
584+
/// In en, this message translates to:
585+
/// **'DMs with yourself'**
586+
String get dmsWithYourselfPageTitle;
587+
558588
/// Message list recipient header for a DM group with others.
559589
///
560590
/// In en, this message translates to:
561591
/// **'You and {others}'**
562592
String messageListGroupYouAndOthers(String others);
563593

594+
/// Message list page title for a DM group with others.
595+
///
596+
/// In en, this message translates to:
597+
/// **'DMs with {others}'**
598+
String dmsWithOthersPageTitle(String others);
599+
564600
/// Message list recipient header for a DM group that only includes yourself.
565601
///
566602
/// In en, this message translates to:
@@ -633,6 +669,18 @@ abstract class ZulipLocalizations {
633669
/// **'Copy link'**
634670
String get lightboxCopyLinkTooltip;
635671

672+
/// The current playback position of the video playing in the lightbox.
673+
///
674+
/// In en, this message translates to:
675+
/// **'Current position'**
676+
String get lightboxVideoCurrentPosition;
677+
678+
/// The total duration of the video playing in the lightbox.
679+
///
680+
/// In en, this message translates to:
681+
/// **'Video duration'**
682+
String get lightboxVideoDuration;
683+
636684
/// Title for login page.
637685
///
638686
/// In en, this message translates to:
@@ -891,6 +939,12 @@ abstract class ZulipLocalizations {
891939
/// **'Direct messages'**
892940
String get recentDmConversationsPageTitle;
893941

942+
/// Heading for direct messages section on the 'Inbox' message view.
943+
///
944+
/// In en, this message translates to:
945+
/// **'Direct messages'**
946+
String get recentDmConversationsSectionHeader;
947+
894948
/// Page title for the 'Combined feed' message view.
895949
///
896950
/// In en, this message translates to:
@@ -933,12 +987,36 @@ abstract class ZulipLocalizations {
933987
/// **'{senderFullName} to you and {numOthers, plural, =1{1 other} other{{numOthers} others}}'**
934988
String notifGroupDmConversationLabel(String senderFullName, int numOthers);
935989

990+
/// Label for the list of pinned subscribed channels.
991+
///
992+
/// In en, this message translates to:
993+
/// **'Pinned'**
994+
String get pinnedSubscriptionsLabel;
995+
996+
/// Label for the list of unpinned subscribed channels.
997+
///
998+
/// In en, this message translates to:
999+
/// **'Unpinned'**
1000+
String get unpinnedSubscriptionsLabel;
1001+
1002+
/// Text to display on subscribed-channels page when there are no subscribed channels.
1003+
///
1004+
/// In en, this message translates to:
1005+
/// **'No channels found'**
1006+
String get subscriptionListNoChannels;
1007+
9361008
/// Display name for the user themself, to show after replying in an Android notification
9371009
///
9381010
/// In en, this message translates to:
9391011
/// **'You'**
9401012
String get notifSelfUser;
9411013

1014+
/// Display name for the user themself, to show on an emoji reaction added by the user.
1015+
///
1016+
/// In en, this message translates to:
1017+
/// **'You'**
1018+
String get reactedEmojiSelfUser;
1019+
9421020
/// Text to display when there is one user typing.
9431021
///
9441022
/// In en, this message translates to:
@@ -1023,6 +1101,12 @@ abstract class ZulipLocalizations {
10231101
/// **'MOVED'**
10241102
String get messageIsMovedLabel;
10251103

1104+
/// The list of people who voted for a poll option, wrapped in parentheses.
1105+
///
1106+
/// In en, this message translates to:
1107+
/// **'({voterNames})'**
1108+
String pollVoterNames(String voterNames);
1109+
10261110
/// Text to display for a poll when the question is missing
10271111
///
10281112
/// In en, this message translates to:
@@ -1071,6 +1155,18 @@ abstract class ZulipLocalizations {
10711155
/// **'Search emoji'**
10721156
String get emojiPickerSearchEmoji;
10731157

1158+
/// Text to show at the start of a message list if there are no earlier messages.
1159+
///
1160+
/// In en, this message translates to:
1161+
/// **'No earlier messages'**
1162+
String get noEarlierMessages;
1163+
1164+
/// Tooltip for button to scroll to bottom.
1165+
///
1166+
/// In en, this message translates to:
1167+
/// **'Scroll to bottom'**
1168+
String get scrollToBottomTooltip;
1169+
10741170
/// Current time in the user's timezone
10751171
///
10761172
/// In en, this message translates to:

0 commit comments

Comments
 (0)