Spaces:
Running
Running
Update interface.js
Browse files- interface.js +32 -23
interface.js
CHANGED
|
@@ -342,28 +342,37 @@ const currentScriptTag = document.currentScript;
|
|
| 342 |
}
|
| 343 |
});
|
| 344 |
|
| 345 |
-
// Bloqueurs d'input camΓ©ra
|
| 346 |
-
//
|
| 347 |
-
//
|
| 348 |
-
|
| 349 |
-
|
| 350 |
-
|
| 351 |
-
|
| 352 |
-
|
| 353 |
-
|
| 354 |
-
|
| 355 |
-
|
| 356 |
-
|
| 357 |
-
|
| 358 |
-
|
| 359 |
-
|
| 360 |
-
|
| 361 |
-
|
| 362 |
-
|
| 363 |
-
|
| 364 |
-
|
| 365 |
-
|
| 366 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 367 |
|
| 368 |
// βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
|
| 369 |
// 14) Fullscreen
|
|
@@ -558,4 +567,4 @@ const currentScriptTag = document.currentScript;
|
|
| 558 |
);
|
| 559 |
setMenuContentMaxSize();
|
| 560 |
}, 200);
|
| 561 |
-
})();
|
|
|
|
| 342 |
}
|
| 343 |
});
|
| 344 |
|
| 345 |
+
// ββ Bloqueurs d'input camΓ©ra ββββββββββββββββββββββββββββββββββββββββββββββ
|
| 346 |
+
// L'overlay (position:absolute; inset:0) couvre le canvas β PlayCanvas ne
|
| 347 |
+
// reΓ§oit pas les Γ©vΓ©nements touch/mouse qui atterrissent dessus.
|
| 348 |
+
// On bloque seulement :
|
| 349 |
+
// β’ wheel : peut remonter jusqu'Γ PlayCanvas mΓͺme si l'overlay est au-dessus
|
| 350 |
+
// β’ touchmove : empΓͺche le drag camΓ©ra sur les navigateurs qui propagent quand mΓͺme
|
| 351 |
+
//
|
| 352 |
+
// touchstart/touchend/mousedown NE SONT PAS bloquΓ©s : sur iOS, appeler
|
| 353 |
+
// stopImmediatePropagation() sur touchstart en phase capture supprime la
|
| 354 |
+
// synthΓ¨se du click β le bouton Γ, la lightbox et le lien cessent de fonctionner.
|
| 355 |
+
|
| 356 |
+
widgetContainer.addEventListener('wheel', (e) => {
|
| 357 |
+
if (!annIsOpen) return;
|
| 358 |
+
if (annTooltip.contains(e.target) || annLightbox.contains(e.target)) {
|
| 359 |
+
e.stopImmediatePropagation();
|
| 360 |
+
// Autoriser le scroll molette dans ann-scroll
|
| 361 |
+
if (!annScroll.contains(e.target)) e.preventDefault();
|
| 362 |
+
}
|
| 363 |
+
}, { capture: true, passive: false });
|
| 364 |
+
|
| 365 |
+
widgetContainer.addEventListener('touchmove', (e) => {
|
| 366 |
+
if (!annIsOpen) return;
|
| 367 |
+
const inTooltip = annTooltip.contains(e.target);
|
| 368 |
+
const lbOpen = annLightbox.classList.contains('ann-lb-open');
|
| 369 |
+
const inLightbox = lbOpen && annLightbox.contains(e.target);
|
| 370 |
+
if (inTooltip || inLightbox) {
|
| 371 |
+
e.stopImmediatePropagation();
|
| 372 |
+
// Sur ann-scroll : ne pas appeler preventDefault β scroll natif iOS prΓ©servΓ©
|
| 373 |
+
if (!annScroll.contains(e.target)) e.preventDefault();
|
| 374 |
+
}
|
| 375 |
+
}, { capture: true, passive: false });
|
| 376 |
|
| 377 |
// βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
|
| 378 |
// 14) Fullscreen
|
|
|
|
| 567 |
);
|
| 568 |
setMenuContentMaxSize();
|
| 569 |
}, 200);
|
| 570 |
+
})();
|