Two compilers that walk a graph the same way walk it through one emitter (#85)
Refactoring round two: the particle and shader compilers share emitGraph.ts (cycle detection, duplicate names, emit order) and keep only their rules. FontLibrary and TextureLibrary sit on FileLibrary (base URL, loading/failed bookkeeping, listeners); SoundLibrary keeps its own contract. The three Create*Command share ImportFileCommand, the three renames share RenameCommand - class names stay. bandBounds() in framing.ts and portNameField() in portSection.ts replace in-file clones, and three comments that told history now state the rule. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
1 parent
bf0be66c9d
commit
d3563897d8
16 files changed
+376
-379
No files matched your search
@@ -28,8 +28,8 @@ export function screenMargin(screenHeight: number): number {
|
||||
/**
|
||||
* Where a popup of `height` ends up when it was asked to open at `wanted`. The margin has to be
|
||||
* enforced here, not only in `roomFor`: a popup anchored low is *shifted* up to fit, and shifting
|
||||
* it against the raw canvas height parks it on the bottom edge – which is why the gap used to be
|
||||
* visible above and missing below.
|
||||
* it against the raw canvas height would park it on the bottom edge, with the gap above it and none
|
||||
* below.
|
||||
*
|
||||
* Downwards only, though. Above the popup the margin is what the height cap spends, not a distance
|
||||
* to keep: a menu hanging off a button near the top of the screen belongs under its button, and
|
||||
|
||||
Reference in new issue
Block a user