From c778464c42ac2a39bd175b4adae86fdf68047260 Mon Sep 17 00:00:00 2001 From: Jordan Eldredge Date: Fri, 7 Nov 2025 19:58:30 -0800 Subject: [PATCH] Avoid url takeover and loading glitch --- packages/skin-database/app/(modern)/scroll/SkinPage.tsx | 1 + .../skin-database/app/(modern)/scroll/skin/[md5]/page.tsx | 3 +++ packages/skin-database/legacy-client/src/redux/epics.js | 5 ++++- packages/skin-database/legacy-client/src/redux/selectors.js | 6 ------ 4 files changed, 8 insertions(+), 7 deletions(-) diff --git a/packages/skin-database/app/(modern)/scroll/SkinPage.tsx b/packages/skin-database/app/(modern)/scroll/SkinPage.tsx index f444eb24..a5267b74 100644 --- a/packages/skin-database/app/(modern)/scroll/SkinPage.tsx +++ b/packages/skin-database/app/(modern)/scroll/SkinPage.tsx @@ -36,6 +36,7 @@ export default function SkinPage({ skin, index, sessionId }: Props) { alt={skin.fileName} style={{ width: "100%", + aspectRatio: "275 / 348", imageRendering: "pixelated", }} /> diff --git a/packages/skin-database/app/(modern)/scroll/skin/[md5]/page.tsx b/packages/skin-database/app/(modern)/scroll/skin/[md5]/page.tsx index f04e6092..89b8ac16 100644 --- a/packages/skin-database/app/(modern)/scroll/skin/[md5]/page.tsx +++ b/packages/skin-database/app/(modern)/scroll/skin/[md5]/page.tsx @@ -3,6 +3,9 @@ import UserContext from "../../../../../data/UserContext"; import { getClientSkins, getSkinForSession } from "../../getClientSkins"; import SkinScroller from "../../SkinScroller"; +// Ensure each page load gets a new session +export const dynamic = "force-dynamic"; + export default async function Skin({ params }) { const { md5 } = await params; diff --git a/packages/skin-database/legacy-client/src/redux/epics.js b/packages/skin-database/legacy-client/src/redux/epics.js index 65e8b952..b3e9f803 100644 --- a/packages/skin-database/legacy-client/src/redux/epics.js +++ b/packages/skin-database/legacy-client/src/redux/epics.js @@ -462,7 +462,10 @@ const urlEpic = (actions, state) => { const newUrl = proposedUrl.toString(); - window.history.replaceState({}, Selectors.getPageTitle(state), newUrl); + // Avoid clobbering URL for beta site + if (!window.location.href.includes("/scroll")) { + window.history.replaceState({}, Selectors.getPageTitle(state), newUrl); + } }), ignoreElements() ); diff --git a/packages/skin-database/legacy-client/src/redux/selectors.js b/packages/skin-database/legacy-client/src/redux/selectors.js index 83b8ff6c..33bdfdd1 100644 --- a/packages/skin-database/legacy-client/src/redux/selectors.js +++ b/packages/skin-database/legacy-client/src/redux/selectors.js @@ -165,12 +165,6 @@ export const getRouteData = createSelector( getPermalinkUrlFromHash, skinData ) => { - const currentUrl = window.location.href; - // Hard code ignore "modern" paths for now. - if (currentUrl.includes("/scroll")) { - return { url: "/scroll/", title: "Scroll" }; - } - if (activeContentPage === REVIEW_PAGE) { return { url: "/review/", title: "Review" }; }