diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/manga/chapter/MangaCoverImageView.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/manga/chapter/MangaCoverImageView.kt
new file mode 100644
index 000000000..988a98e8f
--- /dev/null
+++ b/app/src/main/java/eu/kanade/tachiyomi/ui/manga/chapter/MangaCoverImageView.kt
@@ -0,0 +1,24 @@
+package eu.kanade.tachiyomi.ui.manga.chapter
+
+import android.content.Context
+import android.util.AttributeSet
+import androidx.appcompat.widget.AppCompatImageView
+import kotlin.math.min
+
+/**
+ * A custom ImageView for holding a manga cover with:
+ * - width: min(maxWidth attr, 33% of parent width)
+ * - height: 2:3 width:height ratio
+ *
+ * Should be defined with a width of match_parent.
+ */
+class MangaCoverImageView(context: Context, attrs: AttributeSet?) : AppCompatImageView(context, attrs) {
+
+ override fun onMeasure(widthMeasureSpec: Int, heightMeasureSpec: Int) {
+ super.onMeasure(widthMeasureSpec, heightMeasureSpec)
+
+ val width = min(maxWidth, measuredWidth / 3)
+ val height = width / 2 * 3
+ setMeasuredDimension(width, height)
+ }
+}
diff --git a/app/src/main/res/layout/manga_info_header.xml b/app/src/main/res/layout/manga_info_header.xml
index 35590e01d..5f118a241 100644
--- a/app/src/main/res/layout/manga_info_header.xml
+++ b/app/src/main/res/layout/manga_info_header.xml
@@ -28,44 +28,31 @@
android:background="@drawable/manga_info_gradient"
app:layout_constraintBottom_toBottomOf="parent" />
-
-
-
-
-
+