1- ../layout/list_stream_item.xml
1+ <?xml version =" 1.0" encoding =" utf-8" ?>
2+ <androidx .constraintlayout.widget.ConstraintLayout xmlns : android =" http://schemas.android.com/apk/res/android"
3+ xmlns : app =" http://schemas.android.com/apk/res-auto"
4+ xmlns : tools =" http://schemas.android.com/tools"
5+ android : id =" @+id/itemRoot"
6+ android : layout_width =" match_parent"
7+ android : layout_height =" wrap_content"
8+ android : background =" ?attr/selectableItemBackground"
9+ android : clickable =" true"
10+ android : focusable =" true"
11+ android : padding =" @dimen/video_item_search_padding" >
12+
13+ <ImageView
14+ android : id =" @+id/itemThumbnailView"
15+ android : layout_width =" @dimen/video_item_search_thumbnail_image_width"
16+ android : layout_height =" @dimen/video_item_search_thumbnail_image_height"
17+ android : scaleType =" fitCenter"
18+ android : src =" @drawable/placeholder_thumbnail_video"
19+ app : layout_constraintBottom_toTopOf =" @+id/itemProgressView"
20+ app : layout_constraintStart_toStartOf =" parent"
21+ app : layout_constraintTop_toTopOf =" parent" />
22+
23+ <org .schabi.newpipe.views.NewPipeTextView
24+ android : id =" @+id/itemDurationView"
25+ android : layout_width =" wrap_content"
26+ android : layout_height =" wrap_content"
27+ android : layout_marginEnd =" @dimen/video_item_search_duration_margin"
28+ android : layout_marginBottom =" @dimen/video_item_search_duration_margin"
29+ android : background =" @color/duration_background_color"
30+ android : paddingHorizontal =" @dimen/video_item_search_duration_horizontal_padding"
31+ android : paddingVertical =" @dimen/video_item_search_duration_vertical_padding"
32+ android : textAllCaps =" true"
33+ android : textAppearance =" ?android:attr/textAppearanceSmall"
34+ android : textColor =" @color/duration_text_color"
35+ android : textSize =" @dimen/video_item_search_duration_text_size"
36+ app : layout_constraintBottom_toBottomOf =" @id/itemThumbnailView"
37+ app : layout_constraintRight_toRightOf =" @id/itemThumbnailView"
38+ tools : text =" 1:09:10" />
39+
40+ <org .schabi.newpipe.views.NewPipeTextView
41+ android : id =" @+id/itemVideoTitleView"
42+ android : layout_width =" 0dp"
43+ android : layout_height =" wrap_content"
44+ android : layout_marginStart =" @dimen/video_item_search_image_right_margin"
45+ android : ellipsize =" end"
46+ android : maxLines =" 2"
47+ android : textAppearance =" ?android:attr/textAppearanceLarge"
48+ android : textSize =" @dimen/video_item_search_title_text_size"
49+ app : layout_constraintBottom_toTopOf =" @+id/itemUploaderView"
50+ app : layout_constraintEnd_toEndOf =" parent"
51+ app : layout_constraintStart_toEndOf =" @+id/itemThumbnailView"
52+ app : layout_constraintTop_toTopOf =" parent"
53+ tools : text =" Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nunc tristique vitae sem vitae blanditLorem ipsumLorem ipsumLorem ipsumLorem ipsumLorem ipsumLorem ipsumLorem ipsum" />
54+
55+ <org .schabi.newpipe.views.NewPipeTextView
56+ android : id =" @+id/itemUploaderView"
57+ android : layout_width =" 0dp"
58+ android : layout_height =" wrap_content"
59+ android : ellipsize =" end"
60+ android : lines =" 1"
61+ android : textAppearance =" ?android:attr/textAppearanceSmall"
62+ android : textSize =" @dimen/video_item_search_uploader_text_size"
63+ app : layout_constraintBottom_toTopOf =" @+id/itemAdditionalDetails"
64+ app : layout_constraintEnd_toEndOf =" @+id/itemVideoTitleView"
65+ app : layout_constraintStart_toStartOf =" @+id/itemVideoTitleView"
66+ app : layout_constraintTop_toBottomOf =" @+id/itemVideoTitleView"
67+ tools : text =" Uploader" />
68+
69+ <org .schabi.newpipe.views.NewPipeTextView
70+ android : id =" @+id/itemAdditionalDetails"
71+ android : layout_width =" 0dp"
72+ android : layout_height =" wrap_content"
73+ android : ellipsize =" end"
74+ android : lines =" 1"
75+ android : textAppearance =" ?android:attr/textAppearanceSmall"
76+ android : textSize =" @dimen/video_item_search_upload_date_text_size"
77+ app : layout_constraintBottom_toBottomOf =" parent"
78+ app : layout_constraintEnd_toEndOf =" @+id/itemVideoTitleView"
79+ app : layout_constraintStart_toStartOf =" @+id/itemVideoTitleView"
80+ app : layout_constraintTop_toBottomOf =" @+id/itemUploaderView"
81+ tools : text =" 2 years ago • 10M views" />
82+
83+ <org .schabi.newpipe.views.AnimatedProgressBar
84+ android : id =" @+id/itemProgressView"
85+ style =" @style/Widget.AppCompat.ProgressBar.Horizontal"
86+ android : layout_width =" 0dp"
87+ android : layout_height =" 4dp"
88+ android : progressDrawable =" ?progress_horizontal_drawable"
89+ app : layout_constraintBottom_toBottomOf =" parent"
90+ app : layout_constraintEnd_toEndOf =" @+id/itemThumbnailView"
91+ app : layout_constraintStart_toStartOf =" @+id/itemThumbnailView"
92+ app : layout_constraintTop_toBottomOf =" @+id/itemThumbnailView" />
93+
94+ </androidx .constraintlayout.widget.ConstraintLayout>
0 commit comments