diff --git a/app/src/main/java/org/thoughtcrime/securesms/stories/viewer/page/StoryViewerPageFragment.kt b/app/src/main/java/org/thoughtcrime/securesms/stories/viewer/page/StoryViewerPageFragment.kt
index 504b09d04..6ff3f28c1 100644
--- a/app/src/main/java/org/thoughtcrime/securesms/stories/viewer/page/StoryViewerPageFragment.kt
+++ b/app/src/main/java/org/thoughtcrime/securesms/stories/viewer/page/StoryViewerPageFragment.kt
@@ -24,6 +24,7 @@ import androidx.fragment.app.DialogFragment
import androidx.fragment.app.Fragment
import androidx.fragment.app.viewModels
import androidx.lifecycle.LiveDataReactiveStreams
+import com.google.android.material.button.MaterialButton
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
import io.reactivex.rxjava3.core.Observable
import org.signal.core.util.DimensionUnit
@@ -82,7 +83,7 @@ class StoryViewerPageFragment :
private lateinit var progressBar: SegmentedProgressBar
private lateinit var storySlate: StorySlateView
- private lateinit var viewsAndReplies: TextView
+ private lateinit var viewsAndReplies: MaterialButton
private lateinit var storyCrossfader: StoriesSharedElementCrossFaderView
private lateinit var blurContainer: ImageView
private lateinit var storyCaptionContainer: FrameLayout
@@ -714,14 +715,25 @@ class StoryViewerPageFragment :
if (Recipient.self() == post.sender) {
if (post.replyCount == 0) {
+ viewsAndReplies.setIconResource(R.drawable.ic_chevron_end_24)
+ viewsAndReplies.iconGravity = MaterialButton.ICON_GRAVITY_TEXT_END
viewsAndReplies.text = views
} else {
+ viewsAndReplies.setIconResource(R.drawable.ic_chevron_end_24)
+ viewsAndReplies.iconGravity = MaterialButton.ICON_GRAVITY_TEXT_END
viewsAndReplies.text = getString(R.string.StoryViewerFragment__s_s, views, replies)
}
} else if (post.replyCount > 0) {
+ viewsAndReplies.setIconResource(R.drawable.ic_chevron_end_24)
+ viewsAndReplies.iconGravity = MaterialButton.ICON_GRAVITY_TEXT_END
viewsAndReplies.text = replies
+ } else if (post.group != null) {
+ viewsAndReplies.setIconResource(R.drawable.ic_reply_24_outline)
+ viewsAndReplies.iconGravity = MaterialButton.ICON_GRAVITY_TEXT_START
+ viewsAndReplies.setText(R.string.StoryViewerPageFragment__reply_to_group)
} else {
-
+ viewsAndReplies.setIconResource(R.drawable.ic_reply_24_outline)
+ viewsAndReplies.iconGravity = MaterialButton.ICON_GRAVITY_TEXT_START
viewsAndReplies.setText(R.string.StoryViewerPageFragment__reply)
}
}
diff --git a/app/src/main/java/org/thoughtcrime/securesms/stories/viewer/reply/direct/StoryDirectReplyDialogFragment.kt b/app/src/main/java/org/thoughtcrime/securesms/stories/viewer/reply/direct/StoryDirectReplyDialogFragment.kt
index 52ffad428..16c3261f3 100644
--- a/app/src/main/java/org/thoughtcrime/securesms/stories/viewer/reply/direct/StoryDirectReplyDialogFragment.kt
+++ b/app/src/main/java/org/thoughtcrime/securesms/stories/viewer/reply/direct/StoryDirectReplyDialogFragment.kt
@@ -110,8 +110,10 @@ class StoryDirectReplyDialogFragment :
}
viewModel.state.observe(viewLifecycleOwner) { state ->
- if (state.recipient != null) {
- composer.displayPrivacyChrome(state.recipient)
+ if (state.groupDirectReplyRecipient != null) {
+ composer.displayPrivacyChrome(state.groupDirectReplyRecipient)
+ } else if (state.storyRecord != null) {
+ composer.displayPrivacyChrome(state.storyRecord.recipient)
}
if (state.storyRecord != null) {
diff --git a/app/src/main/java/org/thoughtcrime/securesms/stories/viewer/reply/direct/StoryDirectReplyState.kt b/app/src/main/java/org/thoughtcrime/securesms/stories/viewer/reply/direct/StoryDirectReplyState.kt
index 426378238..3af9fb920 100644
--- a/app/src/main/java/org/thoughtcrime/securesms/stories/viewer/reply/direct/StoryDirectReplyState.kt
+++ b/app/src/main/java/org/thoughtcrime/securesms/stories/viewer/reply/direct/StoryDirectReplyState.kt
@@ -4,6 +4,6 @@ import org.thoughtcrime.securesms.database.model.MessageRecord
import org.thoughtcrime.securesms.recipients.Recipient
data class StoryDirectReplyState(
- val recipient: Recipient? = null,
+ val groupDirectReplyRecipient: Recipient? = null,
val storyRecord: MessageRecord? = null
)
diff --git a/app/src/main/java/org/thoughtcrime/securesms/stories/viewer/reply/direct/StoryDirectReplyViewModel.kt b/app/src/main/java/org/thoughtcrime/securesms/stories/viewer/reply/direct/StoryDirectReplyViewModel.kt
index 5d5f12f18..ec91cae59 100644
--- a/app/src/main/java/org/thoughtcrime/securesms/stories/viewer/reply/direct/StoryDirectReplyViewModel.kt
+++ b/app/src/main/java/org/thoughtcrime/securesms/stories/viewer/reply/direct/StoryDirectReplyViewModel.kt
@@ -24,7 +24,7 @@ class StoryDirectReplyViewModel(
init {
if (groupDirectReplyRecipientId != null) {
store.update(Recipient.live(groupDirectReplyRecipientId).liveDataResolved) { recipient, state ->
- state.copy(recipient = recipient)
+ state.copy(groupDirectReplyRecipient = recipient)
}
}
diff --git a/app/src/main/res/drawable-ldltr/ic_reply_24_outline.xml b/app/src/main/res/drawable-ldltr/ic_reply_24_outline.xml
new file mode 100644
index 000000000..726dae192
--- /dev/null
+++ b/app/src/main/res/drawable-ldltr/ic_reply_24_outline.xml
@@ -0,0 +1,5 @@
+
+
+
diff --git a/app/src/main/res/drawable-ldrtl/ic_chevron_end_24.xml b/app/src/main/res/drawable-ldrtl/ic_chevron_end_24.xml
new file mode 100644
index 000000000..8927c67d2
--- /dev/null
+++ b/app/src/main/res/drawable-ldrtl/ic_chevron_end_24.xml
@@ -0,0 +1,9 @@
+
+
+
diff --git a/app/src/main/res/drawable-ldrtl/ic_reply_24_outline.xml b/app/src/main/res/drawable-ldrtl/ic_reply_24_outline.xml
new file mode 100644
index 000000000..f77ad2bec
--- /dev/null
+++ b/app/src/main/res/drawable-ldrtl/ic_reply_24_outline.xml
@@ -0,0 +1,9 @@
+
+
+
diff --git a/app/src/main/res/drawable/ic_chevron_end_24.xml b/app/src/main/res/drawable/ic_chevron_end_24.xml
new file mode 100644
index 000000000..52b7971d3
--- /dev/null
+++ b/app/src/main/res/drawable/ic_chevron_end_24.xml
@@ -0,0 +1,9 @@
+
+
+
diff --git a/app/src/main/res/drawable/ic_reply_24_outline.xml b/app/src/main/res/drawable/ic_reply_24_outline.xml
new file mode 100644
index 000000000..535336fdd
--- /dev/null
+++ b/app/src/main/res/drawable/ic_reply_24_outline.xml
@@ -0,0 +1,5 @@
+
+
+
diff --git a/app/src/main/res/layout/stories_viewer_fragment_page.xml b/app/src/main/res/layout/stories_viewer_fragment_page.xml
index f6d5cbcf4..3080eeb31 100644
--- a/app/src/main/res/layout/stories_viewer_fragment_page.xml
+++ b/app/src/main/res/layout/stories_viewer_fragment_page.xml
@@ -70,18 +70,23 @@
-
%1$s to %2$s
Reply
+
+ Reply to group
No views yet