fix(graphics-2d): the stage never resizes when no viewport is given

Ouverte Adaptée aux débutants
#503 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Les mainteneurs répondent en général sous 1 jour

Personne n'a encore pris cette issue.

Évaluation

Difficulté
2/5
Temps estimé
1-3 heures
Accessibilité débutants
82/100
Type d'issue
Bug
Clarté
Clairement spécifiée
Activité
Active
Stack technique
typescript
Domaine
frontend

Piste de recherche

Lis modules/graphics-2d/src/graphics-2d.library.ts autour des lignes 37–49 et compare le traitement optionnel du viewport avec le repli ResizeObserver dans graphics-3d (_followContainer). Vérifie __clear pour le nettoyage de l’observer et consulte docs/docs/graphics-2d/index.mdx autour de la ligne 49 pour connaître le comportement documenté. Le travail est terminé lorsque le stage se redimensionne avec son conteneur en l’absence de viewport fourni et que l’observer est déconnecté pendant le nettoyage.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

bug modules:graphics-2d
Which package is this bug report for?

graphics-2d

Issue description

InitContext.viewport is optional. Without it, the stage keeps its first size, although the docs say it follows its size changes. graphics-3d falls back to a ResizeObserver (_followContainer).

Where:

Evidence:

width: ctx.container.offsetWidth,
height: ctx.container.offsetHeight,
...
if (ctx.viewport) { ... }

Suggested fix: Use the same ResizeObserver fallback and disconnect it in __clear.

Found during a code audit of main at be72076.

Code sample

No response

Versions
  • Engine main at be72076
  • pnpm 12.0.0, Node.js 26, Bun 1.3.14
Issue priority

Low (slightly annoying)

I have tested this issue on a development release

be72076

Langage dominant
TypeScript
Étoiles
7
Forks
2
Merge moyen
1 j 17 h
PR mergées (30 j)
17

Préparer son environnement

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de NanoForge-dev/Engine

Toutes les issues de NanoForge-dev/Engine

Issues similaires

Plus d'issues TypeScript

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.