Maintenir un site web, ça demande du boulot. Et ce boulot est souvent invisible ! Alors pour notre petit plaisir je vais détailler les mises à jour de prout sur cette page. Bref, un changelog quoi. Et, ouais, je sais, c'est un truc de nerd.
Si ça vous intéresse de faire des suggestions pour ce site ou bien de reporter des bugs, c'est ici que ça se passe: ouvrir un ticket sur gitlab
-
Mardi 16 septembre 2025 à 19:19
Mise à jour du mardi 16 septembre 2025
Bon cette fois-ci la feature qui permet de déplacer les strips en plein écran devrait fonctionner sur téléphone ???
J'ai méga galéré parce que d'après caniuse.com, l'API
TouchEvent—dont je me sers pour détecter le toucher sur un écran tactile— ne serait pas supportée par Safari. Donc je me suis cassée le cul à aller regarder l'API propriétaireGestureEventpour au final me rendre compte qu'askip, si si Safari balance bien des événementsTouchEventmais c'est juste un peu mal implémenté.Donc je fais une mise en ligne en espérant que ça marche aussi sur Safari iOS mais franchement vu où j'en suis ça me casse les couilles donc yolo
-
Lundi 15 septembre 2025 à 20:36
Mise à jour du lundi 15 septembre 2025
Regardez putain, on peut enfin bouger les images en plein écran et zoomer ! Y'a même des pôtits boutons pour le zoom
Ça a l'air con comme ça mais en vrai c'était un véritable lutte avec la Drag And Drop API, qui a sa manière bien à elle de se comporter et surtout qui se comporte pas tout à fait pareil d'un navigateur à l'autre. J'ai pas encore pu tester sur téléphone, j'ai aucune idée de ce que ça va donner. Si ça se trouve rien ne marche, j'en sais rien j'ai pas d'environnement de test pour les mobiles.
À défaut de marcher sur tel, ça marche au moins sur PC. Les détails techniques :
- Nouvelle classe
DragMoveAndZoomImgManagerqui gère la nouvelle feature en question- Se sert de l'API Drag And Drop pour gérer le déplacement de la souris
- A une propriété statique pour désactiver la feature en cas de merde
- Attribue dynamiquement des listeners sur des éléments du DOM
- Parce que j'avais la flemme de me taper deux API d'événement différentes pour gérer le toucher - pincer sur téléphone (typiquement, action de zoomer sur écran tactile), j'ai géré le zoom avec des boutons. Au moins c'est turbo compatible et Safari casse pas les couilles à pas faire comme les autres. Et puis, c'est visible et low-effort.
- Nouvelle classe utilitaire
Position2Dparce que je suis influencée par Godot Engine - Nouvelle route pour tester des trucs en prod à la crado : /le-bakasable
- La mise en plein écran ne paraît plus saccadée comme avant : on
awaitla fin de la mise en plein écran ou la sortie de celle-ci avant de changer le style de l'élément (en d'autres termes c mieux tkt) - Nouvelle classe CSS
icon-buttonpour les boutons icônes pour avoir un padding égalisé et plus élégant sans trahir le côté "brut / truc par défaut" - on rajoute une petite barre horizontale en dessous de chaque changelog parce que c joli
- Nouvelle classe
-
Dimanche 31 août 2025 à 17:07
Mise à jour du dimanche 31 août 2025
- La mise en plein écran sur les strips se fait désormais via la fullscreenAPI sur les navigateurs compatibles.
- CSS responsive sur les boutons précédent, “choizir 1 strip” et suivant sur les pages des strips
- Nettoyage de code mort
- Mon script à la con
removeWhiteSpace.jsa été retiré pour une meilleure performance au chargement de la page (bah ouais, moins de js, plus de vitesse) - Création de la page changelog
Aussi, j'en ai profité pour rendre le repo publique, comme ça les gens peuvent commencer à envoyer des tickets si besoin. Ça se passe sur https://gitlab.com/rose-thorndyke/prout/-/issues/new