feat(callouts): shared image geometry contract (#1825) #1833
No reviewers
Labels
No labels
accepted
bug
declined
docs
duplicate
enhancement
good first issue
in-progress
needs-info
privacy
security
triage
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
LibreKAT/Ocideck!1833
Loading…
Reference in a new issue
No description provided.
Delete branch "feat/image-geometry-1825"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
De Flutter-vrije
ImageViewportGeometryuit §4.1 vandocs/design/IMAGE_CALLOUTS.md(rev 4):.wideof.tallmoet gebruiken (§4.2: CSS zelf de richting laten kiezen is tot 2144 px fout)Vector table
486 gevallen: 3 afbeeldingsformaten (landscape 800×400, portrait 400×800, square 500×500) × 3 slotbreedtes (20%, 40%, 70% van 1920×1080) × 6 zoom-inputs (0, 100, 140, 400, −50, 5000) × 9 focal-paren (0, 0.5, 1 op beide assen). Elk met 8 punt-targets (alle hoeken + rand-midpoints) en één regio.
De pure Dart-implementatie wordt getest tegen een onafhankelijke berekening van §4.1, plus de twee asymmetrieën die makkelijk fout gaan (cover kan de afbeelding niet voorbij zijn eigen rand duwen; zoom kan wel ruimte overlaten).
Bewaker
Deze wijziging voegt een Flutter-vrije geometrie toe die door de renderer, editor en export zal worden gebruikt. Geen bestandsformaatwijziging, geen nieuwe afhankelijkheid, geen uitgaand verkeer. Het is de contractlaag waar #1826-1829 op bouwen.
Test plan
make checkgroen (10723 tests, 87.2% coverage)make check-secretsgroen (gitleaks + trufflehog)make sastgroen (semgrep, 0 findings)Generated with Devin