From 105496d24312ad7992ee29d8cd538ef67cb66101 Mon Sep 17 00:00:00 2001 From: Michael Date: Mon, 9 Mar 2026 22:40:58 +0100 Subject: [PATCH] feat(player): improve Safari/iOS compatibility with manual play overlay and robust loading --- web/player_mobile.html | 143 ++++++++++++++++++++++++++++++++--------- 1 file changed, 113 insertions(+), 30 deletions(-) diff --git a/web/player_mobile.html b/web/player_mobile.html index 1eb9d28..26f8f99 100644 --- a/web/player_mobile.html +++ b/web/player_mobile.html @@ -51,13 +51,45 @@ z-index: 10; } + #play-overlay { + position: absolute; + top: 50%; + left: 50%; + transform: translate(-50%, -50%); + width: 80px; + height: 80px; + background: rgba(0, 0, 0, 0.6); + border-radius: 50%; + display: none; + justify-content: center; + align-items: center; + pointer-events: auto; + border: 2px solid rgba(255, 255, 255, 0.3); + backdrop-filter: blur(8px); + -webkit-backdrop-filter: blur(8px); + z-index: 25; + transition: transform 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275); + } + + #play-overlay:active { + transform: translate(-50%, -50%) scale(0.9); + } + + #play-overlay svg { + width: 40px; + height: 40px; + fill: white; + margin-left: 4px; + /* Adjust for play icon alignment */ + } + .fs-button { position: absolute; bottom: 20px; right: 20px; width: 44px; height: 44px; - background: rgba(0, 0, 0, 0.5); + background: rgba(0, 0, 0, 0.6); border-radius: 50%; display: flex; justify-content: center; @@ -81,16 +113,17 @@ align-items: center; color: white; z-index: 20; + text-shadow: 0 2px 4px rgba(0, 0, 0, 0.5); } .spinner { width: 40px; height: 40px; - border: 3px solid rgba(255, 255, 255, 0.3); + border: 3px solid rgba(255, 255, 255, 0.2); border-top-color: #fff; border-radius: 50%; - animation: spin 0.8s linear infinite; - margin-bottom: 10px; + animation: spin 0.8s cubic-bezier(0.4, 0, 0.2, 1) infinite; + margin-bottom: 12px; } @keyframes spin { @@ -104,19 +137,29 @@ position: absolute; color: white; text-align: center; - padding: 20px; - background: rgba(0, 0, 0, 0.8); - border-radius: 12px; + padding: 24px; + background: rgba(0, 0, 0, 0.85); + border-radius: 16px; z-index: 30; + max-width: 80%; + border: 1px solid rgba(255, 255, 255, 0.1); }
- + +
+ +
+ + + +
+
@@ -126,18 +169,21 @@
-
Chargement...
+
Chargement...
-
⚠️
-
Erreur de lecture
+
⚠️
+
Erreur de lecture
+
Format non supporté ou lien + expiré