Ensure we display badge in conversation settings.

fork-5.53.8
Alex Hart 2021-11-08 14:42:01 -04:00
rodzic 48e47c9d92
commit 75bf3a7c7e
5 zmienionych plików z 49 dodań i 13 usunięć

Wyświetl plik

@ -10,6 +10,7 @@ import android.os.Bundle
import android.view.MenuItem
import android.view.View
import android.view.ViewGroup
import android.widget.FrameLayout
import android.widget.TextView
import android.widget.Toast
import androidx.appcompat.widget.Toolbar
@ -30,6 +31,7 @@ import org.thoughtcrime.securesms.MuteDialog
import org.thoughtcrime.securesms.PushContactSelectionActivity
import org.thoughtcrime.securesms.R
import org.thoughtcrime.securesms.VerifyIdentityActivity
import org.thoughtcrime.securesms.badges.BadgeImageView
import org.thoughtcrime.securesms.badges.Badges
import org.thoughtcrime.securesms.badges.Badges.displayBadges
import org.thoughtcrime.securesms.badges.models.Badge
@ -77,6 +79,7 @@ import org.thoughtcrime.securesms.recipients.ui.sharablegrouplink.ShareableGroup
import org.thoughtcrime.securesms.util.CommunicationActions
import org.thoughtcrime.securesms.util.ContextUtil
import org.thoughtcrime.securesms.util.ExpirationUtil
import org.thoughtcrime.securesms.util.FeatureFlags
import org.thoughtcrime.securesms.util.ThemeUtil
import org.thoughtcrime.securesms.util.ViewUtil
import org.thoughtcrime.securesms.util.views.SimpleProgressDialog
@ -126,7 +129,9 @@ class ConversationSettingsFragment : DSLSettingsFragment(
private lateinit var callback: Callback
private lateinit var toolbar: Toolbar
private lateinit var toolbarAvatarContainer: FrameLayout
private lateinit var toolbarAvatar: AvatarImageView
private lateinit var toolbarBadge: BadgeImageView
private lateinit var toolbarTitle: TextView
private lateinit var toolbarBackground: View
@ -140,7 +145,9 @@ class ConversationSettingsFragment : DSLSettingsFragment(
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
toolbar = view.findViewById(R.id.toolbar)
toolbarAvatarContainer = view.findViewById(R.id.toolbar_avatar_container)
toolbarAvatar = view.findViewById(R.id.toolbar_avatar)
toolbarBadge = view.findViewById(R.id.toolbar_badge)
toolbarTitle = view.findViewById(R.id.toolbar_title)
toolbarBackground = view.findViewById(R.id.toolbar_background)
@ -164,7 +171,7 @@ class ConversationSettingsFragment : DSLSettingsFragment(
}
override fun getOnScrollAnimationHelper(toolbarShadow: View): OnScrollAnimationHelper {
return ConversationSettingsOnUserScrolledAnimationHelper(toolbarAvatar, toolbarTitle, toolbarBackground, toolbarShadow)
return ConversationSettingsOnUserScrolledAnimationHelper(toolbarAvatarContainer, toolbarTitle, toolbarBackground, toolbarShadow)
}
override fun onOptionsItemSelected(item: MenuItem): Boolean {
@ -208,6 +215,10 @@ class ConversationSettingsFragment : DSLSettingsFragment(
.withFixedSize(ViewUtil.dpToPx(80))
.load(state.recipient)
if (FeatureFlags.displayDonorBadges() && !state.recipient.isSelf) {
toolbarBadge.setBadgeFromRecipient(state.recipient)
}
state.withRecipientSettingsState {
toolbarTitle.text = state.recipient.getDisplayName(requireContext())
}

Wyświetl plik

@ -1359,7 +1359,7 @@ public class ConversationListFragment extends MainFragment implements ActionMode
private class ArchiveListenerCallback extends ItemTouchHelper.SimpleCallback {
private static final float MIN_ICON_SCALE = 0.85f;
private static final float MAX_ICON_SCALE = 1.25f;
private static final float MAX_ICON_SCALE = 1f;
private final int archiveColorStart;
private final int archiveColorEnd;

Wyświetl plik

@ -218,11 +218,17 @@ public final class ConversationListItem extends ConstraintLayout
setStatusIcons(thread);
setBatchMode(batchMode);
badge.setBadgeFromRecipient(recipient.get());
setBadgeFromRecipient(recipient.get());
setUnreadIndicator(thread);
this.contactPhotoImage.setAvatar(glideRequests, recipient.get(), !batchMode);
}
private void setBadgeFromRecipient(Recipient recipient) {
if (!recipient.isSelf()) {
badge.setBadgeFromRecipient(recipient);
}
}
public void bindContact(@NonNull Recipient contact,
@NonNull GlideRequests glideRequests,
@NonNull Locale locale,
@ -246,7 +252,7 @@ public final class ConversationListItem extends ConstraintLayout
alertView.setNone();
setBatchMode(false);
badge.setBadgeFromRecipient(recipient.get());
setBadgeFromRecipient(recipient.get());
contactPhotoImage.setAvatar(glideRequests, recipient.get(), !batchMode);
}
@ -273,7 +279,7 @@ public final class ConversationListItem extends ConstraintLayout
alertView.setNone();
setBatchMode(false);
badge.setBadgeFromRecipient(recipient.get());
setBadgeFromRecipient(recipient.get());
contactPhotoImage.setAvatar(glideRequests, recipient.get(), !batchMode);
}
@ -451,7 +457,7 @@ public final class ConversationListItem extends ConstraintLayout
fromView.setText(recipient, false);
}
contactPhotoImage.setAvatar(glideRequests, recipient, !batchMode);
badge.setBadgeFromRecipient(recipient);
setBadgeFromRecipient(recipient);
}
private static @NonNull LiveData<SpannableString> getThreadDisplayBody(@NonNull Context context,

Wyświetl plik

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<gradient
android:angle="139.59"
android:angle="135"
android:endColor="#4C3EAE"
android:startColor="#439DF1"
android:type="linear" />

Wyświetl plik

@ -27,14 +27,31 @@
app:layout_constraintTop_toTopOf="parent"
app:navigationIcon="@drawable/ic_arrow_left_24">
<org.thoughtcrime.securesms.components.AvatarImageView
android:id="@+id/toolbar_avatar"
android:layout_width="36dp"
android:layout_height="36dp"
<FrameLayout
android:id="@+id/toolbar_avatar_container"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="16dp"
android:alpha="0"
android:translationY="56dp"
app:fallbackImageSize="small" />
tools:alpha="1"
tools:translationY="0dp">
<org.thoughtcrime.securesms.components.AvatarImageView
android:id="@+id/toolbar_avatar"
android:layout_width="36dp"
android:layout_height="36dp"
app:fallbackImageSize="small" />
<org.thoughtcrime.securesms.badges.BadgeImageView
android:id="@+id/toolbar_badge"
android:layout_width="16dp"
android:layout_height="16dp"
android:layout_marginStart="20dp"
android:layout_marginTop="23dp"
app:badge_size="small" />
</FrameLayout>
<org.thoughtcrime.securesms.components.emoji.EmojiTextView
android:id="@+id/toolbar_title"
@ -46,7 +63,9 @@
android:maxLines="1"
android:textAppearance="@style/Signal.Text.Title"
android:translationY="56dp"
tools:text="Miles Morales" />
tools:alpha="1"
tools:text="Miles Morales"
tools:translationY="0dp" />
</org.thoughtcrime.securesms.util.views.DarkOverflowToolbar>