Skip to content

Commit d8818a2

Browse files
author
chimnayajith
committed
new_dm: Add UI for starting new DM conversations
Add a modal bottom sheet UI for starting direct messages: - Search and select users from global list - Support single and group DMs - Navigate to message list after selection Design reference: https://www.figma.com/design/1JTNtYo9memgW7vV6d0ygq/Zulip-Mobile?node-id=4903-31879&p=f&t=pQP4QcxpccllCF7g-0 Fixes: #127
1 parent d22a97e commit d8818a2

14 files changed

+640
-2
lines changed

assets/l10n/app_en.arb

+20
Original file line numberDiff line numberDiff line change
@@ -309,6 +309,26 @@
309309
"@composeBoxGenericContentHint": {
310310
"description": "Hint text for content input when sending a message."
311311
},
312+
"newDmSheetBackButtonLabel": "Back",
313+
"@newDmSheetBackButtonLabel": {
314+
"description": "Label for the back button in the new DM sheet, allowing the user to return to the previous screen."
315+
},
316+
"newDmSheetNextButtonLabel": "Next",
317+
"@newDmSheetNextButtonLabel": {
318+
"description": "Label for the front button in the new DM sheet, if applicable, for navigation or action."
319+
},
320+
"newDmSheetScreenTitle": "New DM",
321+
"@newDmSheetScreenTitle": {
322+
"description": "Title displayed at the top of the new DM screen."
323+
},
324+
"newDmFabButtonLabel": "New DM",
325+
"@newDmFabButtonLabel": {
326+
"description": "Label for the floating action button (FAB) that opens the new DM sheet."
327+
},
328+
"newDmSheetSearchHint": "Add person",
329+
"@newDmSheetSearchHint": {
330+
"description": "Hint text for the search bar in the new DM sheet, prompting the user to add people to the conversation."
331+
},
312332
"composeBoxDmContentHint": "Message @{user}",
313333
"@composeBoxDmContentHint": {
314334
"description": "Hint text for content input when sending a message to one other person.",

lib/generated/l10n/zulip_localizations.dart

+30
Original file line numberDiff line numberDiff line change
@@ -519,6 +519,36 @@ abstract class ZulipLocalizations {
519519
/// **'Type a message'**
520520
String get composeBoxGenericContentHint;
521521

522+
/// Label for the back button in the new DM sheet, allowing the user to return to the previous screen.
523+
///
524+
/// In en, this message translates to:
525+
/// **'Back'**
526+
String get newDmSheetBackButtonLabel;
527+
528+
/// Label for the front button in the new DM sheet, if applicable, for navigation or action.
529+
///
530+
/// In en, this message translates to:
531+
/// **'Next'**
532+
String get newDmSheetNextButtonLabel;
533+
534+
/// Title displayed at the top of the new DM screen.
535+
///
536+
/// In en, this message translates to:
537+
/// **'New DM'**
538+
String get newDmSheetScreenTitle;
539+
540+
/// Label for the floating action button (FAB) that opens the new DM sheet.
541+
///
542+
/// In en, this message translates to:
543+
/// **'New DM'**
544+
String get newDmFabButtonLabel;
545+
546+
/// Hint text for the search bar in the new DM sheet, prompting the user to add people to the conversation.
547+
///
548+
/// In en, this message translates to:
549+
/// **'Add person'**
550+
String get newDmSheetSearchHint;
551+
522552
/// Hint text for content input when sending a message to one other person.
523553
///
524554
/// In en, this message translates to:

lib/generated/l10n/zulip_localizations_ar.dart

+15
Original file line numberDiff line numberDiff line change
@@ -247,6 +247,21 @@ class ZulipLocalizationsAr extends ZulipLocalizations {
247247
@override
248248
String get composeBoxGenericContentHint => 'Type a message';
249249

250+
@override
251+
String get newDmSheetBackButtonLabel => 'Back';
252+
253+
@override
254+
String get newDmSheetNextButtonLabel => 'Next';
255+
256+
@override
257+
String get newDmSheetScreenTitle => 'New DM';
258+
259+
@override
260+
String get newDmFabButtonLabel => 'New DM';
261+
262+
@override
263+
String get newDmSheetSearchHint => 'Add person';
264+
250265
@override
251266
String composeBoxDmContentHint(String user) {
252267
return 'Message @$user';

lib/generated/l10n/zulip_localizations_en.dart

+15
Original file line numberDiff line numberDiff line change
@@ -247,6 +247,21 @@ class ZulipLocalizationsEn extends ZulipLocalizations {
247247
@override
248248
String get composeBoxGenericContentHint => 'Type a message';
249249

250+
@override
251+
String get newDmSheetBackButtonLabel => 'Back';
252+
253+
@override
254+
String get newDmSheetNextButtonLabel => 'Next';
255+
256+
@override
257+
String get newDmSheetScreenTitle => 'New DM';
258+
259+
@override
260+
String get newDmFabButtonLabel => 'New DM';
261+
262+
@override
263+
String get newDmSheetSearchHint => 'Add person';
264+
250265
@override
251266
String composeBoxDmContentHint(String user) {
252267
return 'Message @$user';

lib/generated/l10n/zulip_localizations_ja.dart

+15
Original file line numberDiff line numberDiff line change
@@ -247,6 +247,21 @@ class ZulipLocalizationsJa extends ZulipLocalizations {
247247
@override
248248
String get composeBoxGenericContentHint => 'Type a message';
249249

250+
@override
251+
String get newDmSheetBackButtonLabel => 'Back';
252+
253+
@override
254+
String get newDmSheetNextButtonLabel => 'Next';
255+
256+
@override
257+
String get newDmSheetScreenTitle => 'New DM';
258+
259+
@override
260+
String get newDmFabButtonLabel => 'New DM';
261+
262+
@override
263+
String get newDmSheetSearchHint => 'Add person';
264+
250265
@override
251266
String composeBoxDmContentHint(String user) {
252267
return 'Message @$user';

lib/generated/l10n/zulip_localizations_nb.dart

+15
Original file line numberDiff line numberDiff line change
@@ -247,6 +247,21 @@ class ZulipLocalizationsNb extends ZulipLocalizations {
247247
@override
248248
String get composeBoxGenericContentHint => 'Type a message';
249249

250+
@override
251+
String get newDmSheetBackButtonLabel => 'Back';
252+
253+
@override
254+
String get newDmSheetNextButtonLabel => 'Next';
255+
256+
@override
257+
String get newDmSheetScreenTitle => 'New DM';
258+
259+
@override
260+
String get newDmFabButtonLabel => 'New DM';
261+
262+
@override
263+
String get newDmSheetSearchHint => 'Add person';
264+
250265
@override
251266
String composeBoxDmContentHint(String user) {
252267
return 'Message @$user';

lib/generated/l10n/zulip_localizations_pl.dart

+15
Original file line numberDiff line numberDiff line change
@@ -247,6 +247,21 @@ class ZulipLocalizationsPl extends ZulipLocalizations {
247247
@override
248248
String get composeBoxGenericContentHint => 'Wpisz wiadomość';
249249

250+
@override
251+
String get newDmSheetBackButtonLabel => 'Back';
252+
253+
@override
254+
String get newDmSheetNextButtonLabel => 'Next';
255+
256+
@override
257+
String get newDmSheetScreenTitle => 'New DM';
258+
259+
@override
260+
String get newDmFabButtonLabel => 'New DM';
261+
262+
@override
263+
String get newDmSheetSearchHint => 'Add person';
264+
250265
@override
251266
String composeBoxDmContentHint(String user) {
252267
return 'Napisz do @$user';

lib/generated/l10n/zulip_localizations_ru.dart

+15
Original file line numberDiff line numberDiff line change
@@ -247,6 +247,21 @@ class ZulipLocalizationsRu extends ZulipLocalizations {
247247
@override
248248
String get composeBoxGenericContentHint => 'Ввести сообщение';
249249

250+
@override
251+
String get newDmSheetBackButtonLabel => 'Back';
252+
253+
@override
254+
String get newDmSheetNextButtonLabel => 'Next';
255+
256+
@override
257+
String get newDmSheetScreenTitle => 'New DM';
258+
259+
@override
260+
String get newDmFabButtonLabel => 'New DM';
261+
262+
@override
263+
String get newDmSheetSearchHint => 'Add person';
264+
250265
@override
251266
String composeBoxDmContentHint(String user) {
252267
return 'Сообщение для @$user';

lib/generated/l10n/zulip_localizations_sk.dart

+15
Original file line numberDiff line numberDiff line change
@@ -247,6 +247,21 @@ class ZulipLocalizationsSk extends ZulipLocalizations {
247247
@override
248248
String get composeBoxGenericContentHint => 'Type a message';
249249

250+
@override
251+
String get newDmSheetBackButtonLabel => 'Back';
252+
253+
@override
254+
String get newDmSheetNextButtonLabel => 'Next';
255+
256+
@override
257+
String get newDmSheetScreenTitle => 'New DM';
258+
259+
@override
260+
String get newDmFabButtonLabel => 'New DM';
261+
262+
@override
263+
String get newDmSheetSearchHint => 'Add person';
264+
250265
@override
251266
String composeBoxDmContentHint(String user) {
252267
return 'Message @$user';

0 commit comments

Comments
 (0)