feat(shorts): UI/UX — rail d'actions à droite (flèches ↑/↓), panneau d'infos, glissement magnétique
CI / build-and-test (push) Canceled after 8s
CI / build-and-test (push) Canceled after 8s
- Supprime les flèches Préc./Suiv. aux bords gauche/droite (troubles d'affichage récurrents) : la navigation passe au rail vertical ancré au bord DROIT de la vidéo, centré au bureau et ancré au-dessus de la méta sur mobile, avec des flèches ↑/↓ plus grosses (44 px). - Même rail : informations, j'aime, s'abonner (pastille = avatar), commentaires, partager, lecture auto. Toujours monté (comme le FAB), désactivé sans vidéo. - Bouton ⓘ : panneau d'informations (titre, vues, engagement, chaîne, description, commentaires → Watch). Colonne à droite au bureau (la vidéo rétrécit, jamais masquée : --shorts-panel-w retiré du calcul de taille), tiroir plein écran sur mobile. Échap ferme. - Transition de short : le doigt fait glisser le cadre (chrome solidaire), résistance aux extrémités, seuil de bascule 25 % de la hauteur, ressort sous le seuil, éjection + emboîtement au-delà (Web Animations, respecte prefers-reduced-motion). Aucun état de lecture modifié. - Lecture auto : interrupteur réel (rail + menu), persisté, respecté par le minuteur et par la fin de vidéo YouTube. - Tap sur un contrôle du rail = plus de play/pause parasite (garde isChromeTarget dans onTouchStart/onTouchEnd). - FAB menu conservé (haut droit, déplaçable) ; son touchmove ne déplace plus le cadre en même temps.
This commit is contained in:
@@ -26,6 +26,9 @@ import { CommonModule } from '@angular/common';
|
||||
'(wheel)': '$event.stopPropagation()',
|
||||
'(touchstart)': '$event.stopPropagation()',
|
||||
'(touchend)': '$event.stopPropagation()',
|
||||
// /shorts suit aussi le doigt en `touchmove` : sans ça, glisser le FAB
|
||||
// déplacerait AUSSI le cadre (deux drags pour un geste).
|
||||
'(touchmove)': '$event.stopPropagation()',
|
||||
},
|
||||
template: `
|
||||
<button type="button"
|
||||
|
||||
Reference in New Issue
Block a user