diff --git a/components/home/HomeRows.bs b/components/home/HomeRows.bs
index b41c7ed1c..2497e3f77 100644
--- a/components/home/HomeRows.bs
+++ b/components/home/HomeRows.bs
@@ -51,20 +51,30 @@ sub loadLibraries()
end sub
sub updateSize()
- m.top.translation = [111, 180]
- itemHeight = 330
-
- 'Set width of Rows to cut off at edge of Safe Zone
- m.top.itemSize = [1703, itemHeight]
+ uiRowLayout = m.global.session.user.settings["ui.row.layout"]
+
+ if isValid(uiRowLayout)
+ if uiRowLayout = "fullwidth"
+ m.top.translation = [0, 180]
+ ' rows take up full width of the screen
+ m.top.itemSize = [1920, 330]
+ ' align with edge of "action" safe zone
+ m.top.focusXOffset = [96]
+ m.top.rowLabelOffset = [96, 20]
+ else
+ ' original layout
+ m.top.translation = [111, 180]
+ m.top.itemSize = [1703, 330]
+ ' reset to defaults
+ m.top.focusXOffset = []
+ m.top.rowLabelOffset = [0, 20]
+ end if
+ end if
' spacing between rows
m.top.itemSpacing = [0, 105]
-
' spacing between items in a row
- m.top.rowItemSpacing = [20, 0]
-
- ' Default size to wide poster, the most used size
- m.top.rowItemSize = homeRowItemSizes.WIDE_POSTER
+ m.top.rowItemSpacing = [21, 0]
m.top.visible = true
end sub
@@ -455,6 +465,8 @@ end sub
sub updateHomeRows()
' Hide the row counter to prevent flicker. We'll show it once loading timer fires
m.top.showRowCounter = [false]
+ m.top.visible = false
+ updateSize()
processUserSections()
end sub
diff --git a/locale/en_US/translations.ts b/locale/en_US/translations.ts
index 2bfc46dc0..d4d06dec0 100644
--- a/locale/en_US/translations.ts
+++ b/locale/en_US/translations.ts
@@ -1321,6 +1321,26 @@
Use Show ImageUser Setting - Setting option title
+
+
+ Row Layout
+ User Setting - Setting title
+
+
+
+ Choose how rows are displayed on the home screen.
+ User Setting - Setting description
+
+
+
+ Original
+ User Setting - Setting option title
+
+
+
+ Full Width
+ User Setting - Setting option title
+ Episode Next Up Behavior
diff --git a/settings/settings.json b/settings/settings.json
index 836a59bb2..828a329ae 100644
--- a/settings/settings.json
+++ b/settings/settings.json
@@ -321,6 +321,23 @@
"type": "bool",
"default": "false"
},
+ {
+ "title": "Row Layout",
+ "description": "Choose how rows are displayed on the home screen.",
+ "settingName": "ui.row.layout",
+ "type": "radio",
+ "default": "fullwidth",
+ "options": [
+ {
+ "title": "Original",
+ "id": "original"
+ },
+ {
+ "title": "Full Width",
+ "id": "fullwidth"
+ }
+ ]
+ },
{
"title": "Show What's New Popup",
"description": "Show What's New popup when Jellyfin is updated to a new version.",