From bff52a8bde00725199cfb63141f05e4ffddc7161 Mon Sep 17 00:00:00 2001
From: Docile-Alligator <25734209+Docile-Alligator@users.noreply.github.com>
Date: Wed, 1 Jul 2026 18:57:13 -0400
Subject: [PATCH] Continue implementing reminders.
---
.../activities/SetReminderActivity.kt | 27 ++++++++++++++++---
.../CommentMoreBottomSheetFragment.java | 1 +
.../PostOptionsBottomSheetFragment.java | 1 +
.../customviews/compose/CustomText.kt | 2 ++
app/src/main/res/values/strings.xml | 2 ++
5 files changed, 30 insertions(+), 3 deletions(-)
diff --git a/app/src/main/java/ml/docilealligator/infinityforreddit/activities/SetReminderActivity.kt b/app/src/main/java/ml/docilealligator/infinityforreddit/activities/SetReminderActivity.kt
index 372c7e5c..c7590f17 100644
--- a/app/src/main/java/ml/docilealligator/infinityforreddit/activities/SetReminderActivity.kt
+++ b/app/src/main/java/ml/docilealligator/infinityforreddit/activities/SetReminderActivity.kt
@@ -13,6 +13,7 @@ import androidx.compose.foundation.layout.Arrangement
import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.FlowRow
import androidx.compose.foundation.layout.Row
+import androidx.compose.foundation.layout.Spacer
import androidx.compose.foundation.layout.WindowInsets
import androidx.compose.foundation.layout.WindowInsetsSides
import androidx.compose.foundation.layout.fillMaxSize
@@ -22,6 +23,8 @@ import androidx.compose.foundation.layout.navigationBars
import androidx.compose.foundation.layout.only
import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.layout.safeDrawing
+import androidx.compose.foundation.rememberScrollState
+import androidx.compose.foundation.verticalScroll
import androidx.compose.material3.AlertDialog
import androidx.compose.material3.DatePicker
import androidx.compose.material3.DatePickerDialog
@@ -50,6 +53,7 @@ import androidx.compose.ui.input.nestedscroll.nestedScroll
import androidx.compose.ui.platform.LocalContext
import androidx.compose.ui.res.vectorResource
import androidx.compose.ui.text.font.FontWeight
+import androidx.compose.ui.text.style.TextAlign
import androidx.compose.ui.unit.dp
import androidx.core.view.WindowInsetsControllerCompat
import androidx.lifecycle.ViewModelProvider
@@ -67,6 +71,7 @@ import ml.docilealligator.infinityforreddit.customviews.compose.CustomPositiveTe
import ml.docilealligator.infinityforreddit.customviews.compose.LocalAppTheme
import ml.docilealligator.infinityforreddit.customviews.compose.LocalTypography
import ml.docilealligator.infinityforreddit.customviews.compose.PrimaryText
+import ml.docilealligator.infinityforreddit.customviews.compose.SecondaryText
import ml.docilealligator.infinityforreddit.customviews.compose.ThemedTopAppBar
import ml.docilealligator.infinityforreddit.post.Post
import ml.docilealligator.infinityforreddit.reminder.ReminderManager
@@ -197,7 +202,6 @@ class SetReminderActivity: BaseActivity() {
setContent {
AppTheme(customThemeWrapper.themeType, mSharedPreferences) {
val context = LocalContext.current
- val scrollBehavior = enterAlwaysScrollBehavior()
val content = remember {
mViewModel.content
@@ -288,7 +292,6 @@ class SetReminderActivity: BaseActivity() {
},
modifier = Modifier
.fillMaxSize()
- .nestedScroll(scrollBehavior.nestedScrollConnection)
.imePadding(),
snackbarHost = {
SnackbarHost(hostState = snackbarHostState)
@@ -299,7 +302,8 @@ class SetReminderActivity: BaseActivity() {
modifier = Modifier
.fillMaxSize()
.background(Color(LocalAppTheme.current.backgroundColor))
- .padding(innerPadding),
+ .padding(innerPadding)
+ .verticalScroll(rememberScrollState()),
) {
if (content.isNotEmpty()) {
PrimaryText(
@@ -397,6 +401,23 @@ class SetReminderActivity: BaseActivity() {
}
}
+ Spacer(Modifier.weight(1f))
+
+ PrimaryText(
+ R.string.note,
+ modifier = Modifier
+ .padding(horizontal = 16.dp),
+ fontSize = LocalTypography.current.fontSize.size16,
+ fontWeight = FontWeight.Bold
+ )
+
+ SecondaryText(
+ R.string.reminder_reliability_notice,
+ modifier = Modifier
+ .padding(horizontal = 16.dp),
+ textAlign = TextAlign.Justify
+ )
+
if (showDatePicker) {
DatePickerDialog(
onDismissRequest = {
diff --git a/app/src/main/java/ml/docilealligator/infinityforreddit/bottomsheetfragments/CommentMoreBottomSheetFragment.java b/app/src/main/java/ml/docilealligator/infinityforreddit/bottomsheetfragments/CommentMoreBottomSheetFragment.java
index f7712787..d00ac4e7 100644
--- a/app/src/main/java/ml/docilealligator/infinityforreddit/bottomsheetfragments/CommentMoreBottomSheetFragment.java
+++ b/app/src/main/java/ml/docilealligator/infinityforreddit/bottomsheetfragments/CommentMoreBottomSheetFragment.java
@@ -124,6 +124,7 @@ public class CommentMoreBottomSheetFragment extends LandscapeExpandedRoundedBott
binding.setReminderCommentMoreBottomSheetFragment.setOnClickListener(view -> {
SetReminderActivity.Companion.startReminderActivity(activity, comment.getLinkId(), comment);
+ dismiss();
});
}
diff --git a/app/src/main/java/ml/docilealligator/infinityforreddit/bottomsheetfragments/PostOptionsBottomSheetFragment.java b/app/src/main/java/ml/docilealligator/infinityforreddit/bottomsheetfragments/PostOptionsBottomSheetFragment.java
index 7d7d5ab3..d70bf5f3 100644
--- a/app/src/main/java/ml/docilealligator/infinityforreddit/bottomsheetfragments/PostOptionsBottomSheetFragment.java
+++ b/app/src/main/java/ml/docilealligator/infinityforreddit/bottomsheetfragments/PostOptionsBottomSheetFragment.java
@@ -255,6 +255,7 @@ public class PostOptionsBottomSheetFragment extends LandscapeExpandedRoundedBott
binding.setReminderTextViewPostOptionsBottomSheetFragment.setOnClickListener(view -> {
SetReminderActivity.Companion.startReminderActivity(mBaseActivity, mPost, null);
+ dismiss();
});
binding.reportTextViewPostOptionsBottomSheetFragment.setOnClickListener(view -> {
diff --git a/app/src/main/java/ml/docilealligator/infinityforreddit/customviews/compose/CustomText.kt b/app/src/main/java/ml/docilealligator/infinityforreddit/customviews/compose/CustomText.kt
index 187be2a3..215ef70c 100644
--- a/app/src/main/java/ml/docilealligator/infinityforreddit/customviews/compose/CustomText.kt
+++ b/app/src/main/java/ml/docilealligator/infinityforreddit/customviews/compose/CustomText.kt
@@ -22,6 +22,7 @@ fun PrimaryText(
fontFamily: FontFamily? = LocalTypography.current.fontFamily,
fontSize: TextUnit = LocalTypography.current.fontSize.default,
textAlign: TextAlign? = null,
+ fontWeight: FontWeight? = null,
lineHeight: TextUnit = TextUnit.Unspecified
) {
Text(
@@ -31,6 +32,7 @@ fun PrimaryText(
fontFamily = fontFamily,
fontSize = fontSize,
textAlign = textAlign,
+ fontWeight = fontWeight,
lineHeight = lineHeight
)
}
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index bc5f3cc1..16ad89e3 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -1668,6 +1668,8 @@
Please set a reminder time
The reminder time must be in the future.
Invalid post id
+ Note:
+ Reminders may not be delivered if you force stop the app or if the app is updated and not opened afterward. Simply opening the app again will restore reminder functionality.
Reminder set
Reminder