Show display names for reposts (#2041)

* WIP: Show display names for reposts

* Display emojis on reposts

* Move unicode wrapping

Co-authored-by: Garrit Franke <garrit@slashdev.space>
This commit is contained in:
Garrit Franke 2021-01-15 21:16:32 +01:00 committed by GitHub
commit 4c7d09b1e3
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 27 additions and 8 deletions

View file

@ -27,8 +27,10 @@ import androidx.recyclerview.widget.RecyclerView;
import com.keylesspalace.tusky.R;
import com.keylesspalace.tusky.interfaces.StatusActionListener;
import com.keylesspalace.tusky.util.CustomEmojiHelper;
import com.keylesspalace.tusky.util.SmartLengthInputFilter;
import com.keylesspalace.tusky.util.StatusDisplayOptions;
import com.keylesspalace.tusky.util.StringUtils;
import com.keylesspalace.tusky.viewdata.StatusViewData;
import at.connyduck.sparkbutton.helpers.Utils;
@ -64,7 +66,7 @@ public class StatusViewHolder extends StatusBaseViewHolder {
if (rebloggedByDisplayName == null) {
hideStatusInfo();
} else {
setRebloggedByDisplayName(rebloggedByDisplayName);
setRebloggedByDisplayName(rebloggedByDisplayName, status);
statusInfo.setOnClickListener(v -> listener.onOpenReblog(getAdapterPosition()));
}
@ -73,10 +75,12 @@ public class StatusViewHolder extends StatusBaseViewHolder {
}
private void setRebloggedByDisplayName(final String name) {
private void setRebloggedByDisplayName(final CharSequence name, final StatusViewData.Concrete status) {
Context context = statusInfo.getContext();
String boostedText = context.getString(R.string.status_boosted_format, name);
statusInfo.setText(boostedText);
CharSequence wrappedName = StringUtils.unicodeWrap(name);
CharSequence boostedText = context.getString(R.string.status_boosted_format, wrappedName);
CharSequence emojifiedText = CustomEmojiHelper.emojify(boostedText, status.getRebloggedByAccountEmojis(), statusInfo);
statusInfo.setText(emojifiedText);
statusInfo.setVisibility(View.VISIBLE);
}