From 6b32ede302892b7f95694b44e8ad2041b27a962f Mon Sep 17 00:00:00 2001 From: Bruno Charest Date: Fri, 2 Oct 2026 12:34:13 -0400 Subject: [PATCH] =?UTF-8?q?fix(shorts):=20fl=C3=A8ches=20aux=20bords=20gau?= =?UTF-8?q?che/droite,=20toujours=20mont=C3=A9es,=20visibles?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Retour utilisateur : les flèches Préc./Suiv. n'étaient toujours pas visibles et la position attendue est précisée — une à GAUCHE et une à DROITE de la vidéo, centrées verticalement. - Flèches remises aux bords gauche/droite du cadre (top-1/2, -translate-y-1/2) avec contraste renforcé : ring-2 white/50, fond black/55 — lisibles sur toute image. - Sorties de @if (current()) comme le menu : TOUJOURS montées, donc présentes même sur l'état de flux mort (désactivées) — on ne cherche plus où naviguer. - Chaque changement de vidéo réveille les contrôles 2,5 s (poke sous matchMedia hover : sur tactile le chrome reste visible en permanence, un poke y aurait armé le minuteur et masqué le chrome — régression détectée par la recette mobile puis corrigée). - Recette Playwright desktop+mobile : 17/17 (bords à 6 px, centrage vertical ±1 px, fondu repos 0.18, plein au mouvement, mobile plein, pas de chevauchement 2D avec la flèche retour, flèches + menu présents sur feed mort). Build + test:section + test:shorts-catalog verts avant commit. --- .../shorts/watch-short.component.html | 32 +++++++++---------- .../shorts/watch-short.component.ts | 5 +++ 2 files changed, 20 insertions(+), 17 deletions(-) diff --git a/src/components/shorts/watch-short.component.html b/src/components/shorts/watch-short.component.html index 4a58635..a3c799b 100644 --- a/src/components/shorts/watch-short.component.html +++ b/src/components/shorts/watch-short.component.html @@ -146,6 +146,21 @@ Passer (vidéo illisible) + + + @if (current(); as v) { -
- - -
} @if (shareCopied()) { diff --git a/src/components/shorts/watch-short.component.ts b/src/components/shorts/watch-short.component.ts index 803f428..9497ad5 100644 --- a/src/components/shorts/watch-short.component.ts +++ b/src/components/shorts/watch-short.component.ts @@ -684,6 +684,11 @@ export class WatchShortComponent implements OnDestroy { if (!v) return; const nx = (i >= 0 && i + 1 < list.length) ? list[i + 1] : null; this.queueRumbleResolves([v, nx]); + // Chaque nouvelle vidéo réveille les contrôles (flèches + menu) pendant + // 2,5 s : après un swipe, on doit voir où naviguer sans chercher. + // Desktop seulement (hover) : sur tactile le chrome reste visible en + // permanence, un poke y armerait le minuteur et masquerait le chrome. + try { if (matchMedia('(hover: hover)').matches) this.pokeChrome(); } catch {} // Avatar paresseux via le catalogue (`channelMeta`) : le flux n'affiche // plus une image cassée quand la recherche ne fournit pas d'avatar. this.ensureAvatar(v);