diff --git a/app/src/main/java/org/schabi/newpipe/info_list/holder/CommentInfoItemHolder.java b/app/src/main/java/org/schabi/newpipe/info_list/holder/CommentInfoItemHolder.java
index 839aa1813f3..ab643735344 100644
--- a/app/src/main/java/org/schabi/newpipe/info_list/holder/CommentInfoItemHolder.java
+++ b/app/src/main/java/org/schabi/newpipe/info_list/holder/CommentInfoItemHolder.java
@@ -3,9 +3,13 @@
import static org.schabi.newpipe.util.ServiceHelper.getServiceById;
import static org.schabi.newpipe.util.text.TouchUtils.getOffsetForHorizontalLine;
+import android.graphics.Typeface;
+import android.text.Spannable;
+import android.text.SpannableString;
import android.text.Spanned;
import android.text.method.LinkMovementMethod;
import android.text.style.ClickableSpan;
+import android.text.style.StyleSpan;
import android.text.style.URLSpan;
import android.view.MotionEvent;
import android.view.View;
@@ -87,7 +91,6 @@ public void updateFromItem(final InfoItem infoItem,
}
final CommentsInfoItem item = (CommentsInfoItem) infoItem;
-
// load the author avatar
PicassoHelper.loadAvatar(item.getUploaderAvatars()).into(itemThumbnailView);
if (ImageStrategy.shouldLoadImages()) {
@@ -101,13 +104,12 @@ public void updateFromItem(final InfoItem infoItem,
}
itemThumbnailView.setOnClickListener(view -> openCommentAuthor(item));
-
// setup the top row, with pinned icon, author name and comment date
itemPinnedView.setVisibility(item.isPinned() ? View.VISIBLE : View.GONE);
- itemTitleView.setText(Localization.concatenateStrings(item.getUploaderName(),
+ final String title = Localization.concatenateStrings(item.getUploaderName(),
Localization.relativeTimeOrTextual(itemBuilder.getContext(), item.getUploadDate(),
- item.getTextualUploadDate())));
-
+ item.getTextualUploadDate()));
+ itemTitleView.setText(setTitleTextSpans(title));
// setup bottom row, with likes, heart and replies button
itemLikesCountView.setText(
@@ -123,7 +125,6 @@ public void updateFromItem(final InfoItem infoItem,
((RelativeLayout.LayoutParams) itemThumbsUpView.getLayoutParams()).topMargin =
hasReplies ? 0 : DeviceUtils.dpToPx(6, itemBuilder.getContext());
-
// setup comment content and click listeners to expand/ellipsize it
textEllipsizer.setStreamingService(getServiceById(item.getServiceId()));
textEllipsizer.setStreamUrl(item.getUrl());
@@ -190,6 +191,13 @@ private void denyLinkFocus() {
itemContentView.setMovementMethod(null);
}
+ private Spannable setTitleTextSpans(final String title) {
+ final Spannable spannable = new SpannableString(title);
+ final int index = title.indexOf(" ");
+ spannable.setSpan(new StyleSpan(Typeface.BOLD), 0, index, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
+ return spannable;
+ }
+
private boolean shouldFocusLinks() {
if (itemView.isInTouchMode()) {
return false;
diff --git a/app/src/main/res/layout/fragment_video_detail.xml b/app/src/main/res/layout/fragment_video_detail.xml
index 1a4711581e2..a75104a8e4a 100644
--- a/app/src/main/res/layout/fragment_video_detail.xml
+++ b/app/src/main/res/layout/fragment_video_detail.xml
@@ -178,6 +178,7 @@
android:paddingBottom="8dp"
android:textAppearance="?android:attr/textAppearanceLarge"
android:textSize="@dimen/video_item_detail_title_text_size"
+ android:textStyle="bold"
tools:text="Lorem ipsum dolor sit amet, consectetur adipiscing elit sed a ultricies ex. Integer sit amet sodales risus. Duis non mi et urna pretium bibendum. Nunc eleifend est quis ipsum porttitor egestas. Sed facilisis, nisl quis eleifend pellentesque, orci metus egestas dolor, at accumsan eros metus quis libero." />
diff --git a/app/src/main/res/layout/list_stream_card_item.xml b/app/src/main/res/layout/list_stream_card_item.xml
index 968dca08267..478c74117b2 100644
--- a/app/src/main/res/layout/list_stream_card_item.xml
+++ b/app/src/main/res/layout/list_stream_card_item.xml
@@ -5,11 +5,11 @@
android:id="@+id/itemRoot"
android:layout_width="match_parent"
android:layout_height="wrap_content"
- android:paddingTop="@dimen/channel_item_grid_padding"
- android:paddingBottom="@dimen/channel_item_grid_padding"
+ android:padding="@dimen/channel_item_grid_padding"
android:background="?attr/selectableItemBackground"
android:clickable="true"
- android:focusable="true">
+ android:focusable="true"
+ android:paddingBottom="@dimen/channel_item_grid_padding">