From a66c13daa029d8c56afdfb0169dab902d3b5f6da Mon Sep 17 00:00:00 2001 From: Adrian Bonpin Date: Mon, 13 Jul 2026 06:41:15 +0800 Subject: [PATCH] =?UTF-8?q?fix(plugin):=20single=20row=20=E2=80=94=20stats?= =?UTF-8?q?=20+=20View=20Details=20inline,=20space-between?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/components/LibraryAppPanel.tsx | 49 +++++++++++-------- 1 file changed, 28 insertions(+), 21 deletions(-) diff --git a/plugins/decky-vault/src/components/LibraryAppPanel.tsx b/plugins/decky-vault/src/components/LibraryAppPanel.tsx index 66e0685..a06d889 100644 --- a/plugins/decky-vault/src/components/LibraryAppPanel.tsx +++ b/plugins/decky-vault/src/components/LibraryAppPanel.tsx @@ -1,5 +1,5 @@ import { useEffect, useState, useRef } from "react" -import { PanelSectionRow, ButtonItem, staticClasses } from "@decky/ui" +import { PanelSectionRow, staticClasses } from "@decky/ui" import { Router } from "@decky/ui" import { fetchPluginGame, @@ -109,12 +109,12 @@ export default function LibraryAppPanel({ appId, title, hardwareSlug, baseUrl }: } return ( - <> - {/* Stats row */} - -
+ +
+ {/* Stats */} + {data.estFps ? ( - + {data.estFps.avg} avg {data.estFps.onePct != null && {data.estFps.onePct} 1% low} {data.estFps.low != null && {data.estFps.low} min} @@ -126,20 +126,27 @@ export default function LibraryAppPanel({ appId, title, hardwareSlug, baseUrl }: No data yet )} {/* Device scope badge */} -
- {detectedSlug ? detectedSlug : ⚠ global (device not detected)} -
-
-
- - {/* Compact View Details button */} - -
- openExternalUrl(gameUrl)} style={{ width: "auto", minWidth: "120px" }}> - View Details - -
-
- + + {detectedSlug ? detectedSlug : ⚠ global} + + + {/* View Details — compact inline button */} + +
+
) } \ No newline at end of file