Skip to content

feat: Add custom reminder picker dialog - #2991

Open
Elouan1411 wants to merge 4 commits into
trailing-contentfrom
custom-reminder
Open

feat: Add custom reminder picker dialog#2991
Elouan1411 wants to merge 4 commits into
trailing-contentfrom
custom-reminder

Conversation

@Elouan1411

Copy link
Copy Markdown
Contributor

No description provided.

Copilot AI review requested due to automatic review settings July 22, 2026 13:34
@Elouan1411
Elouan1411 changed the base branch from main to trailing-content July 22, 2026 13:35

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds a custom delay picker to the draft reminder options.

Changes:

  • Adds an hours/days reminder picker dialog.
  • Connects custom reminders to send options and analytics.
  • Localizes unit labels across supported languages.

Reviewed changes

Copilot reviewed 17 out of 17 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
app/src/main/res/values/strings.xml Adds default unit plurals.
app/src/main/res/values-sv/strings.xml Adds Swedish unit plurals.
app/src/main/res/values-pt/strings.xml Adds Portuguese unit plurals.
app/src/main/res/values-pl/strings.xml Adds Polish unit plurals.
app/src/main/res/values-nl/strings.xml Adds Dutch unit plurals.
app/src/main/res/values-nb/strings.xml Adds Norwegian unit plurals.
app/src/main/res/values-it/strings.xml Adds Italian unit plurals.
app/src/main/res/values-fr/strings.xml Adds French unit plurals.
app/src/main/res/values-fi/strings.xml Adds Finnish unit plurals.
app/src/main/res/values-es/strings.xml Adds Spanish unit plurals.
app/src/main/res/values-el/strings.xml Adds Greek unit plurals.
app/src/main/res/values-de/strings.xml Adds German unit plurals.
app/src/main/res/values-da/strings.xml Adds Danish unit plurals.
app/src/main/res/layout/dialog_custom_reminder_picker.xml Defines the picker layout.
app/src/main/java/com/infomaniak/mail/ui/newMessage/sendOptions/DraftSendOptionsFragment.kt Integrates custom reminder selection.
app/src/main/java/com/infomaniak/mail/ui/alertDialogs/CustomReminderPickerDialog.kt Implements picker behavior.
app/src/main/java/com/infomaniak/mail/MatomoMail.kt Adds custom-reminder analytics.

Comment thread app/src/main/res/values-sv/strings.xml
Comment thread app/src/main/res/values-nb/strings.xml
Comment thread app/src/main/res/values-da/strings.xml
Comment on lines +46 to +53
<TextView
android:id="@+id/errorMessage"
style="@style/Body.Error"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:visibility="gone"
tools:text="The reminder must be at least 1 hour in the future"
tools:visibility="visible" />

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

YOu can remove this it's unused

Comment on lines +18 to +32
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_horizontal"
android:orientation="vertical"
android:paddingHorizontal="@dimen/marginStandard"
android:paddingVertical="@dimen/marginStandardSmall">

<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:orientation="horizontal">

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Remove one of these 2 layout

Comment on lines +353 to +354
binding.customDelayReminder.setSubtitle(requireContext().formatDelayText(delayMinutes))
binding.customDelayReminder.setCheckMark(displayCheckMark = true)

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
binding.customDelayReminder.setSubtitle(requireContext().formatDelayText(delayMinutes))
binding.customDelayReminder.setCheckMark(displayCheckMark = true)
binding.customDelayReminder.apply {
setSubtitle(requireContext().formatDelayText(delayMinutes))
customDelayReminder.setCheckMark(displayCheckMark = true)
}

Comment on lines +107 to +108
val selectedUnitIndex = binding.unitPicker.value
val selectedUnit = timeUnits[selectedUnitIndex]

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
val selectedUnitIndex = binding.unitPicker.value
val selectedUnit = timeUnits[selectedUnitIndex]
val selectedUnit = timeUnits[binding.unitPicker.value]

Comment on lines +83 to +84
val selectedUnit = timeUnits[newUnitIndex]
numberPicker.maxValue = selectedUnit.maxValue

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
val selectedUnit = timeUnits[newUnitIndex]
numberPicker.maxValue = selectedUnit.maxValue
numberPicker.maxValue = timeUnits[newUnitIndex].maxValue

@Elouan1411
Elouan1411 force-pushed the custom-reminder branch 2 times, most recently from d40a997 to 96d0739 Compare July 29, 2026 14:16
@Elouan1411
Elouan1411 force-pushed the custom-reminder branch 2 times, most recently from 83c700c to 1abc6f1 Compare July 30, 2026 09:30
@sonarqubecloud

Copy link
Copy Markdown

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants