feat: replace all system popups with 60fps in-game modals
- Create core/modal.js — GPU-composited confirm/alert system with
spring animations (scale + opacity on transform layer only)
- Replace all 7 native confirm() calls across chess resign, ludo exit,
domino resign, block user, remove friend, remove group member, leave group
- Each modal has contextual icon, Arabic text, danger styling for destructive actions
- Add will-change + backface-visibility GPU hints to all interactive elements
- Add ease-in, ease-in-out timing tokens for complete animation coverage
- All animations use transform + opacity only (never layout-triggering properties)
ensuring consistent 60fps on mobile Safari and Chrome
Co-Authored-By:
Claude Opus 4.6 <noreply@anthropic.com>
Showing
public/js/core/modal.js
0 → 100644
Please register or sign in to comment