From abac49951151809c5a7dd93fcb01d3a1f6125f27 Mon Sep 17 00:00:00 2001 From: Hamza417 Date: Tue, 13 Aug 2024 01:06:16 +0530 Subject: [PATCH 1/6] Optimize card UI --- .../main/res/layout-land/list_stream_card_item.xml | 1 - app/src/main/res/layout/list_stream_card_item.xml | 14 ++++++++------ 2 files changed, 8 insertions(+), 7 deletions(-) delete mode 120000 app/src/main/res/layout-land/list_stream_card_item.xml diff --git a/app/src/main/res/layout-land/list_stream_card_item.xml b/app/src/main/res/layout-land/list_stream_card_item.xml deleted file mode 120000 index 70228ee1d20..00000000000 --- a/app/src/main/res/layout-land/list_stream_card_item.xml +++ /dev/null @@ -1 +0,0 @@ -../layout/list_stream_item.xml \ No newline at end of file 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..5de180633be 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:layout_margin="@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"> Date: Tue, 13 Aug 2024 01:14:10 +0530 Subject: [PATCH 2/6] Optimize list UI --- app/src/main/res/layout/list_stream_item.xml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/app/src/main/res/layout/list_stream_item.xml b/app/src/main/res/layout/list_stream_item.xml index 793942568e4..cdc5a870b61 100644 --- a/app/src/main/res/layout/list_stream_item.xml +++ b/app/src/main/res/layout/list_stream_item.xml @@ -41,11 +41,12 @@ android:id="@+id/itemVideoTitleView" android:layout_width="0dp" android:layout_height="wrap_content" - android:layout_marginStart="@dimen/video_item_search_image_right_margin" + android:layout_marginStart="@dimen/video_item_search_padding" android:ellipsize="end" android:maxLines="2" android:textAppearance="?android:attr/textAppearanceLarge" android:textSize="@dimen/video_item_search_title_text_size" + android:textStyle="bold" app:layout_constraintBottom_toTopOf="@+id/itemUploaderView" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toEndOf="@+id/itemThumbnailView" @@ -60,6 +61,7 @@ android:lines="1" android:textAppearance="?android:attr/textAppearanceSmall" android:textSize="@dimen/video_item_search_uploader_text_size" + android:textStyle="italic" app:layout_constraintBottom_toTopOf="@+id/itemAdditionalDetails" app:layout_constraintEnd_toEndOf="@+id/itemVideoTitleView" app:layout_constraintStart_toStartOf="@+id/itemVideoTitleView" From 75e579f216ac56270748947ceb9e7ed1004e351d Mon Sep 17 00:00:00 2001 From: Hamza417 Date: Tue, 13 Aug 2024 01:25:24 +0530 Subject: [PATCH 3/6] Optimize grid UI - Also fixes the UI padding issue - Why use a constant height that too inside a constraint layout? Use a fixed aspect ratio instead. --- app/src/main/res/layout/list_stream_grid_item.xml | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/app/src/main/res/layout/list_stream_grid_item.xml b/app/src/main/res/layout/list_stream_grid_item.xml index 9d5636f48d2..7aa2d6cc2f1 100644 --- a/app/src/main/res/layout/list_stream_grid_item.xml +++ b/app/src/main/res/layout/list_stream_grid_item.xml @@ -12,9 +12,10 @@ Date: Tue, 13 Aug 2024 01:45:14 +0530 Subject: [PATCH 4/6] Optimize player UI - Bold style for comment author --- .../holder/CommentInfoItemHolder.java | 20 +++++++++++++------ .../main/res/layout/fragment_video_detail.xml | 1 + 2 files changed, 15 insertions(+), 6 deletions(-) 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." /> Date: Tue, 13 Aug 2024 11:30:08 +0530 Subject: [PATCH 5/6] Few UI tweaks --- app/src/main/res/layout/list_comment_item.xml | 2 ++ app/src/main/res/layout/list_stream_card_item.xml | 4 +--- app/src/main/res/layout/list_stream_item.xml | 2 ++ 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/app/src/main/res/layout/list_comment_item.xml b/app/src/main/res/layout/list_comment_item.xml index 631ab204b3f..fa34986e10e 100644 --- a/app/src/main/res/layout/list_comment_item.xml +++ b/app/src/main/res/layout/list_comment_item.xml @@ -63,6 +63,7 @@ android:layout_alignBottom="@+id/replies_button" android:layout_toEndOf="@+id/itemThumbnailView" android:contentDescription="@string/detail_likes_img_view_description" + android:layout_marginStart="2dp" android:src="@drawable/ic_thumb_up" /> 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 5de180633be..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,7 +5,7 @@ android:id="@+id/itemRoot" android:layout_width="match_parent" android:layout_height="wrap_content" - android:layout_margin="@dimen/channel_item_grid_padding" + android:padding="@dimen/channel_item_grid_padding" android:background="?attr/selectableItemBackground" android:clickable="true" android:focusable="true" @@ -46,9 +46,7 @@ android:id="@+id/itemVideoTitleView" android:layout_width="0dp" android:layout_height="wrap_content" - android:layout_marginStart="@dimen/margin_small" android:layout_marginTop="@dimen/margin_small" - android:layout_marginEnd="@dimen/margin_small" android:ellipsize="end" android:maxLines="2" android:textAppearance="?textAppearanceListItem" diff --git a/app/src/main/res/layout/list_stream_item.xml b/app/src/main/res/layout/list_stream_item.xml index cdc5a870b61..35524c39ab7 100644 --- a/app/src/main/res/layout/list_stream_item.xml +++ b/app/src/main/res/layout/list_stream_item.xml @@ -42,6 +42,7 @@ android:layout_width="0dp" android:layout_height="wrap_content" android:layout_marginStart="@dimen/video_item_search_padding" + android:layout_marginTop="4dp" android:ellipsize="end" android:maxLines="2" android:textAppearance="?android:attr/textAppearanceLarge" @@ -72,6 +73,7 @@ android:id="@+id/itemAdditionalDetails" android:layout_width="0dp" android:layout_height="wrap_content" + android:layout_marginBottom="4dp" android:ellipsize="end" android:lines="1" android:textAppearance="?android:attr/textAppearanceSmall" From bfcf3a7b806484c02731b7af905384e01f91c8fc Mon Sep 17 00:00:00 2001 From: Hamza417 Date: Tue, 13 Aug 2024 17:26:57 +0530 Subject: [PATCH 6/6] restore deleted symlink --- app/src/main/res/layout-land/list_stream_card_item.xml | 1 + 1 file changed, 1 insertion(+) create mode 120000 app/src/main/res/layout-land/list_stream_card_item.xml diff --git a/app/src/main/res/layout-land/list_stream_card_item.xml b/app/src/main/res/layout-land/list_stream_card_item.xml new file mode 120000 index 00000000000..70228ee1d20 --- /dev/null +++ b/app/src/main/res/layout-land/list_stream_card_item.xml @@ -0,0 +1 @@ +../layout/list_stream_item.xml \ No newline at end of file