From 8c2c740efed3f5fda59edd3cdb5f78061c99425a Mon Sep 17 00:00:00 2001 From: IliesAllali Date: Tue, 27 Oct 2026 19:20:41 +0100 Subject: [PATCH] =?UTF-8?q?Ouverture=20:=20arriv=C3=A9e=20lisible,=20?= =?UTF-8?q?=C3=A0=200,95,=20et=20centr=C3=A9e=20=C3=A0=20c=C3=B4t=C3=A9=20?= =?UTF-8?q?de=20la=20r=C3=A9glette=20sur=20t=C3=A9l=C3=A9phone?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit #181 faisait arriver le recul à 0,5 : les prénoms y restent dessinés mais font 6,5 px, et un arbre de 35 personnes s'ouvrait en entier, illisible. Retour à 0,95 (prénoms à 12 px), le recul s'arrête là. Sous 768 px, la réglette de zoom reste ouverte en bas à gauche : la personne de départ se centre dans la largeur qu'elle laisse libre au lieu du milieu de l'écran. Co-Authored-By: Claude Opus 5.5 --- frontend/src/components/Galaxy.jsx | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/frontend/src/components/Galaxy.jsx b/frontend/src/components/Galaxy.jsx index 86e9ab8..cb3ec02 100644 --- a/frontend/src/components/Galaxy.jsx +++ b/frontend/src/components/Galaxy.jsx @@ -32,8 +32,11 @@ const MAX_SCALE = 3.2 // Carte des familles : l'arbre s'efface entre ces deux échelles, les tuiles de familles apparaissent // Ouverture sur la personne de départ quand l'arbre entier serait illisible const FOCUS_MIN_READABLE_SCALE = 0.5 -// Assez loin pour voir la famille autour, assez près pour lire les prénoms (LOD_LABEL_FADE_IN) -const FOCUS_SCALE = 0.5 +// Prénoms à 12 px (13 px à l'échelle 1) : en dessous, ils restent dessinés mais ne se lisent plus +const FOCUS_SCALE = 0.95 +// Sous 768 px, la réglette de zoom reste ouverte en bas à gauche (ZoomControl.css) : la personne de départ se +// centre dans la largeur qu'elle laisse libre +const PHONE_SLIDER_BAND = 64 // Réordonner une fratrie : seuil avant de soulever à la souris, appui long au doigt const REORDER_MOUSE_THRESHOLD = 4 @@ -675,7 +678,7 @@ const Galaxy = ({ onPersonSelect, onMediaSelect, selectedPersonId, searchHighlig } if (focusNode && fitScale < FOCUS_MIN_READABLE_SCALE) { scale = FOCUS_SCALE - offsetX = cssW / 2 - (focusNode.x + focusNode.width / 2) * scale + offsetX = (cssW < 768 ? (PHONE_SLIDER_BAND + cssW) / 2 : cssW / 2) - (focusNode.x + focusNode.width / 2) * scale // Sur un écran étroit, la barre des familles couvre le haut : la personne de départ un peu plus bas offsetY = cssH * (cssW < 768 ? 0.56 : 0.42) - (focusNode.y + focusNode.height / 2) * scale }