12 Commits

Author SHA1 Message Date
lscambo13
b2d7441551 RELEASE: ElegantFin v25.10.27 2025-10-26 22:46:14 +05:30
lscambo13
8b6f499b91 Fix: Disabled scale on TVs to prevent overlaps and to improve some performance 2025-10-26 21:07:34 +05:30
lscambo13
5209cbb8f1 Fix: Prevented the foreign title from overlapping the clear logo on larger screens 2025-10-26 20:51:56 +05:30
lscambo13
4fee1b3a44 Merge branch 'main' of https://github.com/lscambo13/ElegantFin 2025-10-25 13:16:17 -07:00
lscambo13
44be2db862 Fix: Updated the TV layout to look consistent across different JF versions 2025-10-25 13:15:19 -07:00
lscambo13
855cbfa901 Fix: Improved consistency and reduced side paddings on mobile layout 2025-10-25 13:12:11 -07:00
lscambo13
e674310187 Fix: Thumbnails were not centered anymore on JF 10.11.0
Fix: Rewrote some code to ensure that the secondary pages look consistent on different JF versions
2025-10-25 13:06:26 -07:00
lscambo13
2ea0f55e6c New: Refined the layout of horizontal scrollers
Aligned the horizontal lists with their container heading, and reduced the margin between the list and title for a tighter, more cohesive layout.
2025-10-25 12:58:12 -07:00
lscambo13
a1f2360f34 dev: Updated issue template 2025-10-25 06:51:24 +05:30
lscambo13
5ab39dd7e2 New: Updated README.md for clarity 2025-10-24 09:58:07 -07:00
lscambo13
5350c7836e New: Placed the 'next up' episode and 'all seasons' in one row on JF 10.11.0 on desktop 2025-10-24 09:44:15 -07:00
lscambo13
5988cee24c New: Added initial support for JF Server 10.11.0 2025-10-24 09:39:20 -07:00
5 changed files with 3972 additions and 42 deletions

View File

@@ -1,3 +1,12 @@
---
name: Bug report
about: Create a report to help us improve
title: ''
labels: ''
assignees: ''
---
**Describe the bug** **Describe the bug**
A clear and concise description of what the bug is. A clear and concise description of what the bug is.

View File

@@ -220,8 +220,11 @@ https://github.com/user-attachments/assets/ac22440d-39d7-48d6-a8da-3b7777372ffd
### 🆗 Tested on ### 🆗 Tested on
- Jellyfin Server v10.10.7 - Jellyfin Server v10.10.7
- Microsoft Edge (Chromium)
- Jellyfin Android App v2.6.3 - Jellyfin Android App v2.6.3
Note: Support for v10.11.0 is a work in progress
<hr> <hr>
### 🛠️ Troubleshooting ### 🛠️ Troubleshooting

File diff suppressed because one or more lines are too long

View File

@@ -78,7 +78,7 @@
--sidePadding: 3.3%; --sidePadding: 3.3%;
--itemColumnGap: 1em; --itemColumnGap: 1em;
--primaryItemPageNegativeSpace: 15vh; --primaryItemPageNegativeSpace: 12vh;
--secondaryItemPageNegativeSpace: 35vh; --secondaryItemPageNegativeSpace: 35vh;
--blurSmallest: blur(2px); --blurSmallest: blur(2px);
@@ -140,7 +140,6 @@ html {
.layout-mobile { .layout-mobile {
--itemColumnGap: 0; --itemColumnGap: 0;
--sidePadding: 5%;
--headerColorGradient: var(--headerColorGradientAlt); --headerColorGradient: var(--headerColorGradientAlt);
--blurLargest: blur(12px); --blurLargest: blur(12px);
--headerBlurMask: linear-gradient(180deg, white 60%, 90%, transparent); --headerBlurMask: linear-gradient(180deg, white 60%, 90%, transparent);
@@ -844,6 +843,10 @@ html {
} }
} }
.layout-mobile .card {
--sidePadding: 5%;
}
.card { .card {
--effectiveWidth: calc((99vw - (var(--sidePadding) * 2))); --effectiveWidth: calc((99vw - (var(--sidePadding) * 2)));
--cardWidth: calc(var(--effectiveWidth) / var(--cardCount) - var(--itemColumnGap)); --cardWidth: calc(var(--effectiveWidth) / var(--cardCount) - var(--itemColumnGap));
@@ -896,17 +899,22 @@ html {
flex-direction: column; flex-direction: column;
/* center content on desktop */ /* center content on desktop */
align-items: center; align-items: center;
text-align: center; /* this aligns the plot to left on 10.11.0 */
margin-bottom: -1.5em; text-align: left;
/* temporarily disabled for 10.11.0 */
/* margin-bottom: -1.5em; */
} }
.layout-mobile .detailPagePrimaryContainer { /* this disables block padding on pre-10.11.0 */
padding: .5em var(--sidePadding); .layout-mobile .detailPagePrimaryContainer.detailRibbon,
/* this disables block padding on 10.11.0 */
.layout-mobile .detailPagePrimaryContainer>.detailRibbon {
padding: 0 var(--sidePadding);
} }
[dir=ltr] .detailPagePrimaryContent { /* [dir=ltr] .detailPagePrimaryContent {
padding-right: 0; padding-right: 0;
} } */
.layout-desktop .detailPagePrimaryContainer { .layout-desktop .detailPagePrimaryContainer {
background: transparent; background: transparent;
@@ -916,10 +924,34 @@ html {
background-color: transparent; background-color: transparent;
} }
.detailPageSecondaryContainer { /* this removes the extra large left paading on 10.11.0 */
.detailPagePrimaryContainer>.detailPagePrimaryContent,
[dir=ltr] .detailPagePrimaryContainer>.detailRibbon,
/* this removes the extra large left paading on pre-10.11.0 */
[dir=ltr] .detailPagePrimaryContainer.detailRibbon {
padding-left: var(--sidePadding);
}
.layout-mobile .detailPagePrimaryContent {
padding-left: var(--sidePadding) !important;
padding-right: var(--sidePadding) !important;
}
/* this places main media buttons below the title on 10.11.0 */
.layout-desktop [dir=ltr] .detailRibbon,
.layout-tv [dir=ltr] .detailRibbon {
flex-direction: column;
}
.detailPagePrimaryContainer>.detailPagePrimaryContent {
padding-top: 0; padding-top: 0;
} }
.detailPageSecondaryContainer {
/* use !important for pre-10.11.0 compatibility */
padding-top: 0 !important;
}
/* this hides the header home button everywhere except the main media page */ /* this hides the header home button everywhere except the main media page */
.skinHeader-withBackground:not(.semiTransparent) .headerHomeButton { .skinHeader-withBackground:not(.semiTransparent) .headerHomeButton {
display: none; display: none;
@@ -947,6 +979,7 @@ html {
.verticalSection.emby-scroller-container>h2.sectionTitle.sectionTitle-cards { .verticalSection.emby-scroller-container>h2.sectionTitle.sectionTitle-cards {
padding-top: 1.25em !important; padding-top: 1.25em !important;
margin: 0 0 -.5em 0;
} }
#itemDetailPage .emby-scroller-container, #itemDetailPage .emby-scroller-container,
@@ -954,6 +987,7 @@ html {
#itemDetailPage .scrollX { #itemDetailPage .scrollX {
margin: 0 calc(-1 * var(--sidePadding)); margin: 0 calc(-1 * var(--sidePadding));
padding: 0 var(--sidePadding); padding: 0 var(--sidePadding);
padding-left: calc(var(--sidePadding) - .375em);
} }
.layout-desktop .emby-scroller-container, .layout-desktop .emby-scroller-container,
@@ -962,6 +996,11 @@ html {
--itemColumnGap: 0.5em; --itemColumnGap: 0.5em;
} }
.emby-scroller,
.hiddenScrollX.scrollX {
padding-left: calc(var(--sidePadding) - .375em);
}
.itemsContainer:not(.editorsChoiceItemsContainer) { .itemsContainer:not(.editorsChoiceItemsContainer) {
column-gap: var(--itemColumnGap); column-gap: var(--itemColumnGap);
} }
@@ -973,14 +1012,16 @@ html {
.sectionTitleContainer-cards { .sectionTitleContainer-cards {
padding-top: 0; padding-top: 0;
} margin: .75em 0 -.75em 0;
.sectionTitleContainer+.emby-scrollbuttons {
padding-top: 0;
} }
.layout-mobile :not(.sectionTitleContainer-cards)>.sectionTitle-cards { .layout-mobile :not(.sectionTitleContainer-cards)>.sectionTitle-cards {
text-align: left; text-align: left;
margin: .75em 0 -.75em 0;
}
.sectionTitleContainer+.emby-scrollbuttons {
padding-top: 0;
} }
.emby-scrollbuttons-button.paper-icon-button-light>.material-icons { .emby-scrollbuttons-button.paper-icon-button-light>.material-icons {
@@ -1031,14 +1072,15 @@ html {
} }
.layout-desktop .detailRibbon { .layout-desktop .detailRibbon {
height: 32vh !important; height: 28vh;
margin-top: unset !important; margin-top: unset;
} }
.layout-desktop [dir=ltr] .detailPagePrimaryContainer, /* test disabled for 10.11.0 */
/* .layout-desktop [dir=ltr] .detailPagePrimaryContainer,
.layout-tv [dir=ltr] .detailPagePrimaryContainer { .layout-tv [dir=ltr] .detailPagePrimaryContainer {
padding-left: var(--sidePadding); padding-left: var(--sidePadding);
} } */
@keyframes animMoveDown { @keyframes animMoveDown {
from { from {
@@ -1078,7 +1120,7 @@ html {
.detailLogo { .detailLogo {
display: block; display: block;
top: calc(100vh - 10em - var(--primaryItemPageNegativeSpace)); top: calc(100vh - 11em - var(--primaryItemPageNegativeSpace));
left: 0; left: 0;
width: 40%; width: 40%;
transform: translateY(-100%); transform: translateY(-100%);
@@ -1152,25 +1194,37 @@ html {
height: 33vh; height: 33vh;
} }
.detailImageContainer.padded-left { /* .detailImageContainer.padded-left {
padding-left: 0; padding-left: 0;
} } */
/* .layout-tv .detailImageContainer .card {
padding-left: var(--sidePadding);
.layout-tv .detailImageContainer.padded-left {
padding-left: 0;
height: 0;
position: fixed; position: fixed;
} } */
.layout-desktop .detailImageContainer .card { .layout-desktop .detailImageContainer .card {
top: unset !important; position: absolute !important;
width: 22vh !important; width: 22vh !important;
float: none;
left: 0 !important;
top: 0;
right: 0;
margin: auto;
margin-bottom: 0;
place-self: center;
transform: translateY(-80%);
}
.layout-desktop .detailImageContainer .backdropCard,
.layout-desktop .detailImageContainer .squareCard {
transform: translateY(-100%);
} }
.detailImageContainer .card.backdropCard { .detailImageContainer .card.backdropCard {
width: 40vh !important; width: 40vh !important;
max-width: 50vw; max-width: 50vw;
margin-bottom: 1em;
} }
.detailImageContainer .card { .detailImageContainer .card {
@@ -1178,8 +1232,15 @@ html {
} }
.layout-tv .detailImageContainer .card { .layout-tv .detailImageContainer .card {
width: 23vw !important; width: 25vw !important;
display: block !important; display: grid !important;
position: fixed !important;
top: 0;
bottom: 0;
margin: auto;
left: var(--sidePadding);
align-content: center;
transform: none;
} }
.layout-mobile .detailImageContainer .card { .layout-mobile .detailImageContainer .card {
@@ -1197,6 +1258,8 @@ html {
align-content: end; align-content: end;
place-items: center; place-items: center;
display: grid; display: grid;
/* this centers the title and other text on 10.11.0 */
text-align: center;
} }
/* Both the blocks below position the poster in main media page in the center */ /* Both the blocks below position the poster in main media page in the center */
@@ -2269,7 +2332,7 @@ div[data-type="PhotoAlbum"] .play_arrow:before {
.mainDetailButtons { .mainDetailButtons {
justify-content: center; justify-content: center;
margin: 0 0 1em 0; margin: 0;
} }
.layout-mobile [dir=ltr] .mainDetailButtons { .layout-mobile [dir=ltr] .mainDetailButtons {
@@ -2280,7 +2343,7 @@ div[data-type="PhotoAlbum"] .play_arrow:before {
@media (min-width: 100em) { @media (min-width: 100em) {
.mainDetailButtons { .mainDetailButtons {
font-size: unset; font-size: unset;
margin: 0 0 1em 0; margin: 0;
} }
} }
@@ -2537,7 +2600,7 @@ div[data-role=controlgroup] a.ui-btn-active {
row-gap: 1em; row-gap: 1em;
column-gap: 3em; column-gap: 3em;
max-width: unset !important; max-width: unset !important;
grid-template-columns: 1fr 1fr; grid-template-columns: 1fr 1fr 1fr 1fr;
} }
.layout-mobile .detailSection { .layout-mobile .detailSection {
@@ -2548,10 +2611,6 @@ div[data-role=controlgroup] a.ui-btn-active {
gap: 1em; gap: 1em;
} }
.detailImageContainer .card {
position: inherit !important;
}
.trackSelections { .trackSelections {
order: 3; order: 3;
max-width: unset !important; max-width: unset !important;
@@ -2559,7 +2618,7 @@ div[data-role=controlgroup] a.ui-btn-active {
border: var(--defaultBorder); border: var(--defaultBorder);
border-radius: var(--smallRadius); border-radius: var(--smallRadius);
padding: 1em; padding: 1em;
grid-column: 2; grid-column: 3 / 5;
background-color: var(--lighterGradientPointAlpha); background-color: var(--lighterGradientPointAlpha);
} }
@@ -2625,7 +2684,7 @@ div[data-role=controlgroup] a.ui-btn-active {
.itemDetailsGroup { .itemDetailsGroup {
order: 2; order: 2;
grid-column: 1; grid-column: 1 / 3;
} }
.layout-tv .itemDetailsGroup { .layout-tv .itemDetailsGroup {
@@ -2636,12 +2695,30 @@ div[data-role=controlgroup] a.ui-btn-active {
grid-column: 1 / -1; grid-column: 1 / -1;
} }
.detailSection>.nextUpSection {
order: 5;
grid-column: 1;
}
.detailSection>#listChildrenCollapsible {
order: 6;
grid-column: 2 / -1;
}
.nextUpSection.hide~#listChildrenCollapsible {
grid-column: 1 / -1;
}
.layout-mobile .trackSelections, .layout-mobile .trackSelections,
.layout-mobile .detailSectionContent, .layout-mobile .detailSectionContent,
.layout-mobile .itemDetailsGroup, .layout-mobile .itemDetailsGroup,
.layout-mobile .nextUpSection,
.layout-mobile .detailSection>#listChildrenCollapsible,
.layout-tv .trackSelections, .layout-tv .trackSelections,
.layout-tv .detailSectionContent, .layout-tv .detailSectionContent,
.layout-tv .itemDetailsGroup { .layout-tv .itemDetailsGroup,
.layout-tv .nextUpSection,
.layout-tv .detailSection>#listChildrenCollapsible {
grid-column: 1 / -1; grid-column: 1 / -1;
} }
@@ -2692,9 +2769,10 @@ div[data-role=controlgroup] a.ui-btn-active {
padding-right: 6.5%; padding-right: 6.5%;
} }
.detailPagePrimaryContent.padded-right { /* test disabled for 10.11.0 */
/* .detailPagePrimaryContent.padded-right {
padding-right: 0 !important; padding-right: 0 !important;
} } */
[dir=ltr] .detailPageContent, [dir=ltr] .detailPageContent,
.content-primary { .content-primary {
@@ -2702,6 +2780,12 @@ div[data-role=controlgroup] a.ui-btn-active {
padding-right: var(--sidePadding) !important; padding-right: var(--sidePadding) !important;
} }
/* this prevents double padding on Jellyfin pre-10.11.0 */
[dir=ltr] .detailPageContent>.detailPagePrimaryContent {
padding-left: 0 !important;
padding-right: 0 !important;
}
/* this removes right padding from cast page sections to place cards evenly*/ /* this removes right padding from cast page sections to place cards evenly*/
#itemDetailPage .verticalSection .itemsContainer.padded-right { #itemDetailPage .verticalSection .itemsContainer.padded-right {
padding-right: 0 !important; padding-right: 0 !important;
@@ -3695,4 +3779,30 @@ ul.MuiList-root.MuiMenu-list.MuiList-dense>div:first-child {
.remoteControlContent { .remoteControlContent {
padding: 0 var(--sidePadding) !important; padding: 0 var(--sidePadding) !important;
}
/* .layout-tv *,
.layout-tv *::before,
.layout-tv *::after {
transition-duration: .1s;
backdrop-filter: none !important;
-webkit-backdrop-filter: none !important;
box-shadow: none;
text-shadow: none;
filter: none !important;
-webkit-filter: none !important;
} */
/* .layout-tv .show-focus:not(.card):focus,
.layout-tv .show-animation:not(.card):focus {
transform: none !important;
} */
/* .layout-tv .blurhash-canvas {
display: none !important;
} */
.layout-tv .show-focus:focus,
.layout-tv .show-animation:focus {
transform: none !important;
} }

File diff suppressed because it is too large Load Diff