manga_info_controller.xml 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <androidx.swiperefreshlayout.widget.SwipeRefreshLayout 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/swipe_refresh"
  6. android:layout_width="match_parent"
  7. android:layout_height="match_parent"
  8. tools:context="eu.kanade.tachiyomi.ui.catalogue.browse.BrowseCatalogueController">
  9. <androidx.constraintlayout.widget.ConstraintLayout
  10. android:layout_width="match_parent"
  11. android:layout_height="match_parent">
  12. <View
  13. android:id="@+id/guideline"
  14. android:layout_width="0dp"
  15. android:layout_height="0dp"
  16. android:layout_marginTop="16dp"
  17. app:layout_constraintTop_toBottomOf="@+id/manga_cover" />
  18. <androidx.constraintlayout.widget.Guideline
  19. android:id="@+id/guideline2"
  20. android:layout_width="wrap_content"
  21. android:layout_height="wrap_content"
  22. android:orientation="vertical"
  23. app:layout_constraintGuide_percent="0.38" />
  24. <ImageView
  25. android:id="@+id/backdrop"
  26. android:layout_width="0dp"
  27. android:layout_height="0dp"
  28. android:alpha="0.2"
  29. app:layout_constraintBottom_toTopOf="@+id/guideline"
  30. app:layout_constraintEnd_toEndOf="parent"
  31. app:layout_constraintStart_toStartOf="parent"
  32. app:layout_constraintTop_toTopOf="parent"
  33. tools:background="@color/material_grey_700" />
  34. <ImageView
  35. android:id="@+id/manga_cover"
  36. android:layout_width="0dp"
  37. android:layout_height="0dp"
  38. android:layout_marginStart="16dp"
  39. android:layout_marginTop="16dp"
  40. android:layout_marginEnd="16dp"
  41. android:layout_marginBottom="16dp"
  42. android:contentDescription="@string/description_cover"
  43. app:layout_constraintDimensionRatio="h,2:3"
  44. app:layout_constraintEnd_toStartOf="@+id/guideline2"
  45. app:layout_constraintStart_toStartOf="parent"
  46. app:layout_constraintTop_toTopOf="parent"
  47. tools:background="@color/material_grey_700" />
  48. <com.google.android.material.floatingactionbutton.FloatingActionButton
  49. android:id="@+id/fab_favorite"
  50. style="@style/Theme.Widget.FAB"
  51. android:layout_marginTop="0dp"
  52. android:layout_marginEnd="8dp"
  53. android:layout_marginBottom="0dp"
  54. app:layout_constraintBottom_toTopOf="@+id/guideline"
  55. app:layout_constraintEnd_toEndOf="parent"
  56. app:layout_constraintTop_toBottomOf="@+id/guideline"
  57. app:srcCompat="@drawable/ic_add_to_library_24dp" />
  58. <androidx.core.widget.NestedScrollView
  59. android:id="@+id/info_scrollview"
  60. android:layout_width="0dp"
  61. android:layout_height="0dp"
  62. android:layout_marginStart="0dp"
  63. android:layout_marginTop="16dp"
  64. android:layout_marginEnd="16dp"
  65. android:layout_marginBottom="16dp"
  66. app:layout_constraintBottom_toTopOf="@+id/guideline"
  67. app:layout_constraintEnd_toEndOf="parent"
  68. app:layout_constraintStart_toStartOf="@+id/guideline2"
  69. app:layout_constraintTop_toTopOf="parent">
  70. <androidx.constraintlayout.widget.ConstraintLayout
  71. android:layout_width="match_parent"
  72. android:layout_height="match_parent">
  73. <TextView
  74. android:id="@+id/manga_full_title"
  75. style="@style/TextAppearance.Medium.Title"
  76. android:layout_width="wrap_content"
  77. android:layout_height="wrap_content"
  78. android:maxLines="2"
  79. android:text="@string/manga_info_full_title_label"
  80. android:textIsSelectable="false"
  81. app:autoSizeMaxTextSize="20sp"
  82. app:autoSizeMinTextSize="12sp"
  83. app:autoSizeStepGranularity="2sp"
  84. app:autoSizeTextType="uniform"
  85. app:layout_constraintStart_toStartOf="parent"
  86. app:layout_constraintTop_toTopOf="parent" />
  87. <TextView
  88. android:id="@+id/manga_author_label"
  89. style="@style/TextAppearance.Medium.Body2"
  90. android:layout_width="wrap_content"
  91. android:layout_height="wrap_content"
  92. android:text="@string/manga_info_author_label"
  93. android:textIsSelectable="false"
  94. app:layout_constraintStart_toStartOf="parent"
  95. app:layout_constraintTop_toBottomOf="@+id/manga_full_title" />
  96. <TextView
  97. android:id="@+id/manga_author"
  98. style="@style/TextAppearance.Regular.Body1.Secondary"
  99. android:layout_width="0dp"
  100. android:layout_height="wrap_content"
  101. android:layout_marginStart="8dp"
  102. android:ellipsize="end"
  103. android:maxLines="1"
  104. android:textIsSelectable="false"
  105. app:layout_constraintBaseline_toBaselineOf="@+id/manga_author_label"
  106. app:layout_constraintEnd_toEndOf="parent"
  107. app:layout_constraintStart_toEndOf="@+id/manga_author_label" />
  108. <TextView
  109. android:id="@+id/manga_artist_label"
  110. style="@style/TextAppearance.Medium.Body2"
  111. android:layout_width="wrap_content"
  112. android:layout_height="wrap_content"
  113. android:text="@string/manga_info_artist_label"
  114. android:textIsSelectable="false"
  115. app:layout_constraintStart_toStartOf="parent"
  116. app:layout_constraintTop_toBottomOf="@+id/manga_author_label" />
  117. <TextView
  118. android:id="@+id/manga_artist"
  119. style="@style/TextAppearance.Regular.Body1.Secondary"
  120. android:layout_width="0dp"
  121. android:layout_height="wrap_content"
  122. android:layout_marginStart="8dp"
  123. android:ellipsize="end"
  124. android:maxLines="1"
  125. android:textIsSelectable="false"
  126. app:layout_constraintBaseline_toBaselineOf="@+id/manga_artist_label"
  127. app:layout_constraintEnd_toEndOf="parent"
  128. app:layout_constraintStart_toEndOf="@+id/manga_artist_label" />
  129. <TextView
  130. android:id="@+id/manga_chapters_label"
  131. style="@style/TextAppearance.Medium.Body2"
  132. android:layout_width="wrap_content"
  133. android:layout_height="wrap_content"
  134. android:text="@string/manga_info_last_chapter_label"
  135. android:textIsSelectable="false"
  136. app:layout_constraintStart_toStartOf="parent"
  137. app:layout_constraintTop_toBottomOf="@+id/manga_artist_label" />
  138. <TextView
  139. android:id="@+id/manga_chapters"
  140. style="@style/TextAppearance.Regular.Body1.Secondary"
  141. android:layout_width="0dp"
  142. android:layout_height="wrap_content"
  143. android:layout_marginStart="8dp"
  144. android:ellipsize="end"
  145. android:maxLines="1"
  146. android:textIsSelectable="false"
  147. app:layout_constraintBaseline_toBaselineOf="@+id/manga_chapters_label"
  148. app:layout_constraintEnd_toEndOf="parent"
  149. app:layout_constraintStart_toEndOf="@+id/manga_chapters_label" />
  150. <TextView
  151. android:id="@+id/manga_last_update_label"
  152. style="@style/TextAppearance.Medium.Body2"
  153. android:layout_width="wrap_content"
  154. android:layout_height="wrap_content"
  155. android:text="@string/manga_info_latest_data_label"
  156. android:textIsSelectable="false"
  157. app:layout_constraintStart_toStartOf="parent"
  158. app:layout_constraintTop_toBottomOf="@+id/manga_chapters_label" />
  159. <TextView
  160. android:id="@+id/manga_last_update"
  161. style="@style/TextAppearance.Regular.Body1.Secondary"
  162. android:layout_width="0dp"
  163. android:layout_height="wrap_content"
  164. android:layout_marginStart="8dp"
  165. android:ellipsize="end"
  166. android:maxLines="1"
  167. android:textIsSelectable="false"
  168. app:layout_constraintBaseline_toBaselineOf="@+id/manga_last_update_label"
  169. app:layout_constraintEnd_toEndOf="parent"
  170. app:layout_constraintStart_toEndOf="@+id/manga_last_update_label" />
  171. <TextView
  172. android:id="@+id/manga_status_label"
  173. style="@style/TextAppearance.Medium.Body2"
  174. android:layout_width="wrap_content"
  175. android:layout_height="wrap_content"
  176. android:text="@string/manga_info_status_label"
  177. android:textIsSelectable="false"
  178. app:layout_constraintStart_toStartOf="parent"
  179. app:layout_constraintTop_toBottomOf="@+id/manga_last_update_label" />
  180. <TextView
  181. android:id="@+id/manga_status"
  182. style="@style/TextAppearance.Regular.Body1.Secondary"
  183. android:layout_width="0dp"
  184. android:layout_height="wrap_content"
  185. android:layout_marginStart="8dp"
  186. android:ellipsize="end"
  187. android:maxLines="1"
  188. android:textIsSelectable="false"
  189. app:layout_constraintBaseline_toBaselineOf="@+id/manga_status_label"
  190. app:layout_constraintEnd_toEndOf="parent"
  191. app:layout_constraintStart_toEndOf="@+id/manga_status_label" />
  192. <TextView
  193. android:id="@+id/manga_source_label"
  194. style="@style/TextAppearance.Medium.Body2"
  195. android:layout_width="wrap_content"
  196. android:layout_height="wrap_content"
  197. android:text="@string/manga_info_source_label"
  198. android:textIsSelectable="false"
  199. app:layout_constraintStart_toStartOf="parent"
  200. app:layout_constraintTop_toBottomOf="@+id/manga_status_label" />
  201. <TextView
  202. android:id="@+id/manga_source"
  203. style="@style/TextAppearance.Regular.Body1.Secondary"
  204. android:layout_width="0dp"
  205. android:layout_height="wrap_content"
  206. android:layout_marginStart="8dp"
  207. android:ellipsize="end"
  208. android:maxLines="1"
  209. android:textIsSelectable="false"
  210. app:layout_constraintBaseline_toBaselineOf="@+id/manga_source_label"
  211. app:layout_constraintEnd_toEndOf="parent"
  212. app:layout_constraintStart_toEndOf="@+id/manga_source_label" />
  213. </androidx.constraintlayout.widget.ConstraintLayout>
  214. </androidx.core.widget.NestedScrollView>
  215. <TextView
  216. android:id="@+id/manga_summary_label"
  217. style="@style/TextAppearance.Medium.Body2"
  218. android:layout_width="match_parent"
  219. android:layout_height="wrap_content"
  220. android:layout_marginStart="16dp"
  221. android:layout_marginTop="8dp"
  222. android:layout_marginEnd="16dp"
  223. android:text="@string/description"
  224. android:textIsSelectable="false"
  225. app:layout_constraintEnd_toEndOf="parent"
  226. app:layout_constraintStart_toStartOf="parent"
  227. app:layout_constraintTop_toBottomOf="@+id/guideline" />
  228. <androidx.core.widget.NestedScrollView
  229. android:id="@+id/description_scrollview"
  230. android:layout_width="0dp"
  231. android:layout_height="wrap_content"
  232. app:layout_constrainedHeight="true"
  233. app:layout_constraintBottom_toTopOf="@id/manga_genres_tags"
  234. app:layout_constraintEnd_toEndOf="parent"
  235. app:layout_constraintStart_toStartOf="parent"
  236. app:layout_constraintTop_toBottomOf="@id/manga_summary_label"
  237. app:layout_constraintVertical_bias="0.0"
  238. app:layout_constraintVertical_chainStyle="packed">
  239. <TextView
  240. android:id="@+id/manga_summary"
  241. style="@style/TextAppearance.Regular.Body1.Secondary"
  242. android:layout_width="match_parent"
  243. android:layout_height="wrap_content"
  244. android:layout_marginStart="16dp"
  245. android:layout_marginEnd="16dp"
  246. android:textIsSelectable="false" />
  247. </androidx.core.widget.NestedScrollView>
  248. <me.gujun.android.taggroup.TagGroup
  249. android:id="@+id/manga_genres_tags"
  250. style="@style/TagGroup"
  251. android:layout_width="0dp"
  252. android:layout_height="wrap_content"
  253. android:layout_marginStart="8dp"
  254. android:layout_marginTop="8dp"
  255. android:layout_marginEnd="8dp"
  256. android:layout_marginBottom="8dp"
  257. app:atg_backgroundColor="@android:color/transparent"
  258. app:atg_borderColor="@color/md_blue_A400"
  259. app:atg_borderStrokeWidth="1dp"
  260. app:atg_textColor="@color/md_blue_A400"
  261. app:layout_constrainedHeight="true"
  262. app:layout_constraintBottom_toBottomOf="parent"
  263. app:layout_constraintEnd_toEndOf="parent"
  264. app:layout_constraintStart_toStartOf="parent"
  265. app:layout_constraintTop_toBottomOf="@id/description_scrollview" />
  266. </androidx.constraintlayout.widget.ConstraintLayout>
  267. </androidx.swiperefreshlayout.widget.SwipeRefreshLayout>