diff --git a/app/src/main/java/org/thoughtcrime/securesms/stories/landing/MyStoriesItem.kt b/app/src/main/java/org/thoughtcrime/securesms/stories/landing/MyStoriesItem.kt index 4cc1b738b..d99d74f55 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/stories/landing/MyStoriesItem.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/stories/landing/MyStoriesItem.kt @@ -3,7 +3,6 @@ package org.thoughtcrime.securesms.stories.landing import android.view.View import org.thoughtcrime.securesms.R import org.thoughtcrime.securesms.avatar.view.AvatarView -import org.thoughtcrime.securesms.badges.BadgeImageView import org.thoughtcrime.securesms.components.settings.PreferenceModel import org.thoughtcrime.securesms.recipients.Recipient import org.thoughtcrime.securesms.util.adapter.mapping.LayoutFactory @@ -30,14 +29,13 @@ object MyStoriesItem { private val thumbnail: View = itemView.findViewById(R.id.story) private val avatarView: AvatarView = itemView.findViewById(R.id.avatar) - private val badgeView: BadgeImageView = itemView.findViewById(R.id.badge) override fun bind(model: Model) { itemView.setOnClickListener { model.onClick() } thumbnail.setOnClickListener { model.onClickThumbnail() } + avatarView.setOnClickListener { model.onClickThumbnail() } avatarView.displayProfileAvatar(Recipient.self()) - badgeView.setBadgeFromRecipient(Recipient.self()) } } } diff --git a/app/src/main/java/org/thoughtcrime/securesms/stories/landing/StoriesLandingFragment.kt b/app/src/main/java/org/thoughtcrime/securesms/stories/landing/StoriesLandingFragment.kt index d724bd3b5..639c09fd6 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/stories/landing/StoriesLandingFragment.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/stories/landing/StoriesLandingFragment.kt @@ -235,6 +235,9 @@ class StoriesLandingFragment : DSLSettingsFragment(layoutId = R.layout.stories_l }, onInfo = { model, preview -> openStoryViewer(model, preview, true) + }, + onAvatarClick = { + cameraFab.performClick() } ) } diff --git a/app/src/main/java/org/thoughtcrime/securesms/stories/landing/StoriesLandingItem.kt b/app/src/main/java/org/thoughtcrime/securesms/stories/landing/StoriesLandingItem.kt index 47ecd1380..d037a9840 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/stories/landing/StoriesLandingItem.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/stories/landing/StoriesLandingItem.kt @@ -43,6 +43,7 @@ object StoriesLandingItem { class Model( val data: StoriesLandingItemData, + val onAvatarClick: () -> Unit, val onRowClick: (Model, View) -> Unit, val onHideStory: (Model) -> Unit, val onForwardStory: (Model) -> Unit, @@ -104,6 +105,7 @@ object StoriesLandingItem { private val date: TextView = itemView.findViewById(R.id.date) private val icon: ImageView = itemView.findViewById(R.id.icon) private val errorIndicator: View = itemView.findViewById(R.id.error_indicator) + private val addToStoriesView: View = itemView.findViewById(R.id.add_to_story) override fun bind(model: Model) { @@ -116,7 +118,7 @@ object StoriesLandingItem { if (model.data.storyRecipient.isMyStory) { avatarView.displayProfileAvatar(Recipient.self()) - badgeView.setBadgeFromRecipient(Recipient.self()) + badgeView.setBadgeFromRecipient(null) } else { avatarView.displayProfileAvatar(model.data.storyRecipient) badgeView.setBadgeFromRecipient(model.data.storyRecipient) @@ -233,11 +235,18 @@ object StoriesLandingItem { if (model.data.storyRecipient.isMyStory) { itemView.setOnLongClickListener(null) + avatarView.setOnClickListener { + model.onAvatarClick() + } + addToStoriesView.visible = true } else { itemView.setOnLongClickListener { displayContext(model) true } + avatarView.setOnClickListener(null) + avatarView.isClickable = false + addToStoriesView.visible = false } } diff --git a/app/src/main/res/drawable/ic_union.xml b/app/src/main/res/drawable/ic_union.xml index 96a2a67a6..0c2c05277 100644 --- a/app/src/main/res/drawable/ic_union.xml +++ b/app/src/main/res/drawable/ic_union.xml @@ -1,14 +1,10 @@ - - + android:width="10dp" + android:height="10dp" + android:viewportWidth="10" + android:viewportHeight="10"> - + android:fillColor="@color/signal_colorBackground" + android:fillType="evenOdd" + android:pathData="M5,0C4.655,0 4.375,0.28 4.375,0.625V4.375H0.625C0.28,4.375 0,4.655 0,5C0,5.345 0.28,5.625 0.625,5.625H4.375L4.375,9.375C4.375,9.72 4.655,10 5,10C5.345,10 5.625,9.72 5.625,9.375L5.625,5.625L9.375,5.625C9.72,5.625 10,5.345 10,5C10,4.655 9.72,4.375 9.375,4.375L5.625,4.375V0.625C5.625,0.28 5.345,0 5,0Z" /> diff --git a/app/src/main/res/drawable/stories_my_story_add_background.xml b/app/src/main/res/drawable/stories_my_story_add_background.xml new file mode 100644 index 000000000..fa517b5d5 --- /dev/null +++ b/app/src/main/res/drawable/stories_my_story_add_background.xml @@ -0,0 +1,11 @@ + + + diff --git a/app/src/main/res/layout/gradient_tool_tooltip.xml b/app/src/main/res/layout/gradient_tool_tooltip.xml index 3ae01b8e5..510d3ce2f 100644 --- a/app/src/main/res/layout/gradient_tool_tooltip.xml +++ b/app/src/main/res/layout/gradient_tool_tooltip.xml @@ -41,8 +41,7 @@ app:layout_constraintEnd_toStartOf="@id/text" app:layout_constraintHorizontal_chainStyle="packed" app:layout_constraintStart_toStartOf="@id/bubble" - app:layout_constraintTop_toTopOf="@id/bubble" - app:srcCompat="@drawable/ic_union" /> + app:layout_constraintTop_toTopOf="@id/bubble" /> + + - + app:layout_constraintTop_toTopOf="@id/avatar" + app:srcCompat="@drawable/ic_union" />