From 64a30bfa64d17eae0184351bd49755c5c938c6be Mon Sep 17 00:00:00 2001 From: seer Date: Fri, 10 Jul 2026 14:01:49 +0200 Subject: [PATCH] Move in-player entry point into the player settings cog menu Replaces the floating SyncPlus pill with two items injected into the cog action sheet: "Sync me to group" (immediate one-shot sync, result shown as a transient toast) and "SyncPlay stats" (toggles the floating drift panel, now with its own close button). A MutationObserver appends the items when the sheet appears within 1.5s of a .btnVideoOsdSettings click; markup mirrors the native actionSheetMenuItem structure verified in the bundled 10.11.6 client, and the sheet's own delegated handler auto-closes it on our items like any native entry. Worst-case failure on a future jellyfin-web rename is the items silently not appearing. Co-Authored-By: Claude Fable 5 --- .../SyncPlay/SyncPlusStatsController.cs | 131 +++++++++++++----- 1 file changed, 93 insertions(+), 38 deletions(-) diff --git a/src/JellyfinSyncPlus/SyncPlay/SyncPlusStatsController.cs b/src/JellyfinSyncPlus/SyncPlay/SyncPlusStatsController.cs index c6207db..00e2b70 100644 --- a/src/JellyfinSyncPlus/SyncPlay/SyncPlusStatsController.cs +++ b/src/JellyfinSyncPlus/SyncPlay/SyncPlusStatsController.cs @@ -434,10 +434,15 @@ public class SyncPlusStatsController : ControllerBase """; - // The in-player overlay. Deliberately does NOT depend on jellyfin-web's OSD button - // DOM (class names in the minified bundle change between releases); it only checks - // for the presence of a