Appearance
talkcontrol / plugins/input/touch-pointer/zoom / ZOOM_SCALE
Variable: ZOOM_SCALE
constZOOM_SCALE:2=2
Defined in: src/plugins/input/touch-pointer/zoom.ts:19
Géométrie du zoom du plugin touch-pointer, isolée du DOM pour être testable sans layout (jsdom n'en calcule pas).
Le zoom applique translate(t) scale(s) sur #slideViewFrame, dont le transform-origin est le centre (valeur par défaut). Un point p exprimé dans le repère LOCAL du frame (origine = coin haut-gauche du frame) se retrouve donc en c + s·(p − c) + t, avec c le centre du frame.
Pour amener le point cliqué au centre, on résout c = c + s·(p − c) + t, d'où t = s·(c − p).
⚠️ Le repère est celui du FRAME, pas celui de la fenêtre : c'était la cause du bug #41. En vue presenter, le frame n'occupe que 3/5 de la largeur, et calculer t à partir de window.innerWidth projetait la slide entièrement hors de l'écran.