From eccf13f5fd04ccf61849e98f553052addc76110d Mon Sep 17 00:00:00 2001 From: Jacob Date: Mon, 29 Dec 2025 12:45:35 +0800 Subject: [PATCH] feat(OneClient-SkinManager): Scroll bar on skins and capes Closes: https://github.com/Polyfrost/OneLauncher/issues/438 --- .../frontend/src/routes/app/account/skins.tsx | 106 +++++++++--------- 1 file changed, 56 insertions(+), 50 deletions(-) diff --git a/apps/oneclient/frontend/src/routes/app/account/skins.tsx b/apps/oneclient/frontend/src/routes/app/account/skins.tsx index 42213ddf..4f193015 100644 --- a/apps/oneclient/frontend/src/routes/app/account/skins.tsx +++ b/apps/oneclient/frontend/src/routes/app/account/skins.tsx @@ -9,6 +9,7 @@ import { dataDir, downloadDir, join } from '@tauri-apps/api/path'; import { save } from '@tauri-apps/plugin-dialog'; import { exists, mkdir, readTextFile, writeFile, writeTextFile } from '@tauri-apps/plugin-fs'; import { Download01Icon, PlusIcon, Trash01Icon } from '@untitled-theme/icons-react'; +import { OverlayScrollbarsComponent } from 'overlayscrollbars-react'; import { useEffect, useState } from 'react'; import { CrouchAnimation, FlyingAnimation, HitAnimation, IdleAnimation, WalkingAnimation } from 'skinview3d'; @@ -238,7 +239,7 @@ function RouteComponent() {
-
+
void; skins: Array; setSkins: (updater: (prev: Array) => Array) => void; importFromURL: (url: string) => void; importFromUsername: (username: string) => void; capeURL: string; shouldShowElytra: boolean }) { return ( -
+

Skin History

-
- - - - - - - {skins.map(skinData => ( - - ))} -
+ +
+ + + + + + + {skins.map(skinData => ( + + ))} +
+
+
); } @@ -355,16 +359,16 @@ function RenderSkin({ skin, selected, animation, setSelectedSkin, setSkins, cape {selected.skin_url === skin.skin_url ? <> : ( - - + + - - setSkins(prev => prev.filter(skinData => skinData.skin_url !== skin.skin_url))} /> - - - )} + + setSkins(prev => prev.filter(skinData => skinData.skin_url !== skin.skin_url))} /> + + + )}