manga_info_header.xml 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <androidx.constraintlayout.motion.widget.MotionLayout 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:layout_width="match_parent"
  6. android:layout_height="wrap_content"
  7. android:orientation="vertical"
  8. app:layoutDescription="@xml/manga_info_header_scene"
  9. tools:context=".ui.browse.source.browse.BrowseSourceController">
  10. <ImageView
  11. android:id="@+id/backdrop"
  12. android:layout_width="0dp"
  13. android:layout_height="0dp"
  14. android:layout_marginBottom="-8dp"
  15. android:alpha="0.2"
  16. android:scaleType="centerCrop"
  17. app:layout_constraintBottom_toBottomOf="@+id/manga_cover"
  18. app:layout_constraintEnd_toEndOf="parent"
  19. app:layout_constraintStart_toStartOf="parent"
  20. app:layout_constraintTop_toTopOf="parent"
  21. tools:background="@mipmap/ic_launcher" />
  22. <View
  23. android:id="@+id/backdrop_overlay"
  24. android:layout_width="match_parent"
  25. android:layout_height="160dp"
  26. android:background="@drawable/manga_info_gradient"
  27. android:backgroundTint="?android:attr/colorBackground"
  28. app:layout_constraintBottom_toBottomOf="@+id/backdrop" />
  29. <ImageView
  30. android:id="@+id/manga_cover"
  31. android:layout_width="100dp"
  32. android:layout_height="0dp"
  33. android:layout_marginStart="16dp"
  34. android:layout_marginTop="48dp"
  35. android:background="@drawable/rounded_rectangle"
  36. android:contentDescription="@string/description_cover"
  37. android:maxWidth="100dp"
  38. android:scaleType="centerCrop"
  39. app:layout_constraintDimensionRatio="w,3:2"
  40. app:layout_constraintStart_toStartOf="parent"
  41. app:layout_constraintTop_toTopOf="parent"
  42. tools:layout_height="133dp"
  43. tools:src="@mipmap/ic_launcher" />
  44. <LinearLayout
  45. android:id="@+id/manga_detail"
  46. android:layout_width="0dp"
  47. android:layout_height="wrap_content"
  48. android:layout_marginStart="16dp"
  49. android:layout_marginEnd="16dp"
  50. android:orientation="vertical"
  51. app:layout_constraintBottom_toBottomOf="@+id/manga_cover"
  52. app:layout_constraintEnd_toEndOf="parent"
  53. app:layout_constraintStart_toEndOf="@+id/manga_cover">
  54. <TextView
  55. android:id="@+id/manga_full_title"
  56. style="@style/TextAppearance.Medium.Title"
  57. android:layout_width="match_parent"
  58. android:layout_height="60sp"
  59. android:layout_marginBottom="4dp"
  60. android:gravity="bottom"
  61. android:text="@string/manga_info_full_title_label"
  62. android:textIsSelectable="false"
  63. app:autoSizeMaxTextSize="20sp"
  64. app:autoSizeMinTextSize="12sp"
  65. app:autoSizeStepGranularity="2sp"
  66. app:autoSizeTextType="uniform" />
  67. <TextView
  68. android:id="@+id/manga_author"
  69. style="@style/TextAppearance.Regular.Body1.Secondary"
  70. android:layout_width="wrap_content"
  71. android:layout_height="wrap_content"
  72. android:textIsSelectable="false"
  73. tools:text="Author" />
  74. <TextView
  75. android:id="@+id/manga_artist"
  76. style="@style/TextAppearance.Regular.Body1.Secondary"
  77. android:layout_width="wrap_content"
  78. android:layout_height="wrap_content"
  79. android:textIsSelectable="false"
  80. tools:text="Artist" />
  81. <LinearLayout
  82. android:id="@+id/manga_status_row"
  83. android:layout_width="wrap_content"
  84. android:layout_height="wrap_content"
  85. android:layout_marginTop="4dp">
  86. <TextView
  87. android:id="@+id/manga_status"
  88. style="@style/TextAppearance.Regular.Body1.Secondary"
  89. android:layout_width="wrap_content"
  90. android:layout_height="match_parent"
  91. android:ellipsize="end"
  92. android:maxLines="1"
  93. android:textIsSelectable="false"
  94. tools:text="Status" />
  95. <TextView
  96. style="@style/TextAppearance.Regular.Body1.Secondary"
  97. android:layout_width="wrap_content"
  98. android:layout_height="wrap_content"
  99. android:layout_marginStart="4dp"
  100. android:layout_marginEnd="4dp"
  101. android:text="•"
  102. android:textIsSelectable="false"
  103. tools:ignore="HardcodedText" />
  104. <TextView
  105. android:id="@+id/manga_source"
  106. style="@style/TextAppearance.Regular.Body1.Secondary"
  107. android:layout_width="wrap_content"
  108. android:layout_height="wrap_content"
  109. android:ellipsize="end"
  110. android:maxLines="1"
  111. android:textIsSelectable="false"
  112. tools:text="Source" />
  113. </LinearLayout>
  114. </LinearLayout>
  115. <com.google.android.material.button.MaterialButton
  116. android:id="@+id/btn_favorite"
  117. style="@style/Theme.Widget.Button.Action"
  118. android:layout_width="0dp"
  119. android:layout_height="wrap_content"
  120. android:text="@string/add_to_library"
  121. app:icon="@drawable/ic_favorite_border_24dp"
  122. app:layout_constraintEnd_toStartOf="@+id/btn_tracking"
  123. app:layout_constraintHorizontal_bias="0.5"
  124. app:layout_constraintStart_toStartOf="parent"
  125. app:layout_constraintTop_toBottomOf="@+id/backdrop" />
  126. <com.google.android.material.button.MaterialButton
  127. android:id="@+id/btn_tracking"
  128. style="@style/Theme.Widget.Button.Action"
  129. android:layout_width="0dp"
  130. android:layout_height="wrap_content"
  131. android:text="@string/manga_tracking_tab"
  132. android:visibility="gone"
  133. app:icon="@drawable/ic_sync_24dp"
  134. app:layout_constraintEnd_toStartOf="@+id/btn_webview"
  135. app:layout_constraintHorizontal_bias="0.5"
  136. app:layout_constraintStart_toEndOf="@+id/btn_favorite"
  137. app:layout_constraintTop_toTopOf="@+id/btn_favorite"
  138. tools:visibility="visible" />
  139. <com.google.android.material.button.MaterialButton
  140. android:id="@+id/btn_webview"
  141. style="@style/Theme.Widget.Button.Action"
  142. android:layout_width="0dp"
  143. android:layout_height="wrap_content"
  144. android:text="@string/action_web_view"
  145. android:visibility="gone"
  146. app:icon="@drawable/ic_public_24dp"
  147. app:layout_constraintEnd_toEndOf="parent"
  148. app:layout_constraintHorizontal_bias="0.5"
  149. app:layout_constraintStart_toEndOf="@+id/btn_tracking"
  150. app:layout_constraintTop_toTopOf="@+id/btn_favorite"
  151. tools:visibility="visible" />
  152. <androidx.constraintlayout.motion.widget.MotionLayout
  153. android:id="@+id/manga_summary_section"
  154. android:layout_width="match_parent"
  155. android:layout_height="wrap_content"
  156. android:layout_marginTop="8dp"
  157. app:layoutDescription="@xml/manga_summary_section_scene"
  158. app:layout_constraintEnd_toEndOf="parent"
  159. app:layout_constraintStart_toStartOf="parent"
  160. app:layout_constraintTop_toBottomOf="@+id/btn_favorite">
  161. <TextView
  162. android:id="@+id/manga_summary_text"
  163. style="@style/TextAppearance.Regular.Body1.Secondary"
  164. android:layout_width="0dp"
  165. android:layout_height="wrap_content"
  166. android:layout_marginStart="16dp"
  167. android:layout_marginTop="8dp"
  168. android:layout_marginEnd="16dp"
  169. android:clickable="true"
  170. android:focusable="true"
  171. android:maxLines="2"
  172. android:textIsSelectable="false"
  173. app:layout_constraintEnd_toEndOf="parent"
  174. app:layout_constraintStart_toStartOf="parent"
  175. app:layout_constraintTop_toBottomOf="@+id/manga_cover"
  176. tools:text="Collapsed summary content Collapsed summary content Collapsed summary content Collapsed summary content Collapsed summary content Collapsed summary content" />
  177. <View
  178. android:id="@+id/manga_info_toggle_more_scrim"
  179. android:layout_width="20dp"
  180. android:layout_height="0dp"
  181. android:background="@drawable/manga_info_more_gradient"
  182. android:backgroundTint="?android:attr/colorBackground"
  183. app:layout_constraintBottom_toBottomOf="@+id/manga_info_toggle_more"
  184. app:layout_constraintEnd_toStartOf="@+id/manga_info_toggle_more"
  185. app:layout_constraintTop_toTopOf="@+id/manga_info_toggle_more" />
  186. <com.google.android.material.button.MaterialButton
  187. android:id="@+id/manga_info_toggle_more"
  188. style="@style/Theme.Widget.Button.TextButton"
  189. android:layout_width="wrap_content"
  190. android:layout_height="wrap_content"
  191. android:paddingStart="8dp"
  192. android:paddingEnd="16dp"
  193. android:text="@string/manga_info_expand"
  194. android:textAlignment="viewEnd"
  195. app:layout_constraintBottom_toBottomOf="@+id/manga_summary_text"
  196. app:layout_constraintEnd_toEndOf="parent" />
  197. <com.google.android.material.button.MaterialButton
  198. android:id="@+id/manga_info_toggle_less"
  199. style="@style/Theme.Widget.Button.TextButton"
  200. android:layout_width="wrap_content"
  201. android:layout_height="wrap_content"
  202. android:paddingStart="8dp"
  203. android:paddingEnd="16dp"
  204. android:text="@string/manga_info_collapse"
  205. android:textAlignment="viewEnd"
  206. android:visibility="gone"
  207. app:layout_constraintEnd_toEndOf="parent"
  208. app:layout_constraintTop_toBottomOf="@+id/manga_summary_text"
  209. tools:visibility="gone" />
  210. <HorizontalScrollView
  211. android:id="@+id/manga_genres_tags_compact"
  212. android:layout_width="match_parent"
  213. android:layout_height="wrap_content"
  214. android:requiresFadingEdge="horizontal"
  215. android:scrollbars="none"
  216. app:layout_constraintEnd_toEndOf="parent"
  217. app:layout_constraintStart_toStartOf="parent"
  218. app:layout_constraintTop_toBottomOf="@+id/manga_summary_text">
  219. <com.google.android.material.chip.ChipGroup
  220. android:id="@+id/manga_genres_tags_compact_chips"
  221. android:layout_width="wrap_content"
  222. android:layout_height="wrap_content"
  223. android:paddingStart="16dp"
  224. android:paddingTop="8dp"
  225. android:paddingEnd="16dp"
  226. android:paddingBottom="8dp"
  227. app:chipSpacingHorizontal="4dp"
  228. app:singleLine="true" />
  229. </HorizontalScrollView>
  230. <com.google.android.material.chip.ChipGroup
  231. android:id="@+id/manga_genres_tags_full_chips"
  232. android:layout_width="match_parent"
  233. android:layout_height="wrap_content"
  234. android:layout_marginStart="16dp"
  235. android:layout_marginEnd="16dp"
  236. android:paddingTop="8dp"
  237. android:paddingBottom="8dp"
  238. android:visibility="gone"
  239. app:chipSpacingHorizontal="4dp"
  240. app:layout_constraintEnd_toEndOf="parent"
  241. app:layout_constraintStart_toStartOf="parent"
  242. app:layout_constraintTop_toBottomOf="@+id/manga_info_toggle_less"
  243. tools:visibility="gone" />
  244. </androidx.constraintlayout.motion.widget.MotionLayout>
  245. </androidx.constraintlayout.motion.widget.MotionLayout>