Apply v1 ICCery app icon, About icon, and DMG scene #78

Merged
gronod merged 2 commits from feat/77-apply-v1-icon into develop 2026-09-10 11:45:30 +01:00
Owner

Closes #77

Summary

  • Populate the macOS AppIcon asset catalog from the v1 icon.icns.
  • Show the compiled app icon in the About dialog.
  • Vendor the v1 icon/DMG SVG sources and add the 1x/2x DMG scene.
  • Align the dmgbuild window and icon positions to the original scene.

Verification

  • xcodegen generate --spec project.yml
  • xcodebuild build -scheme ICCery -destination 'platform=macOS' ARCHS='arm64 x86_64' ONLY_ACTIVE_ARCH=NO
  • xcodebuild test -scheme ICCery -destination 'platform=macOS' ARCHS='arm64 x86_64' ONLY_ACTIVE_ARCH=NO — 255 core tests and 25 UI tests passed.
  • Built app is universal (x86_64 arm64) and contains AppIcon.icns.
  • dmgbuild successfully generated ICCery-icon-test.dmg using the new scene.
Closes #77 ## Summary - Populate the macOS AppIcon asset catalog from the v1 `icon.icns`. - Show the compiled app icon in the About dialog. - Vendor the v1 icon/DMG SVG sources and add the 1x/2x DMG scene. - Align the dmgbuild window and icon positions to the original scene. ## Verification - `xcodegen generate --spec project.yml` - `xcodebuild build -scheme ICCery -destination 'platform=macOS' ARCHS='arm64 x86_64' ONLY_ACTIVE_ARCH=NO` - `xcodebuild test -scheme ICCery -destination 'platform=macOS' ARCHS='arm64 x86_64' ONLY_ACTIVE_ARCH=NO` — 255 core tests and 25 UI tests passed. - Built app is universal (`x86_64 arm64`) and contains `AppIcon.icns`. - `dmgbuild` successfully generated `ICCery-icon-test.dmg` using the new scene.
gronod added the
Priority
High
2
Project/ICCery-v2Feature/UI
labels 2026-09-10 11:39:58 +01:00
gronod added 2 commits 2026-09-10 11:39:58 +01:00
The Milestone 6 calibration UI test was flaky/consistent in failing because
`generateTarget` / `computeCurves` used `Task { @MainActor [weak self] in`
with an early `guard let self else { return }`. On a loaded host the task
could be dropped before it resumed, leaving the UI stuck on the calibration
dashboard with no error shown.

Changes:
- Capture `self` strongly in `CalibrationViewModel` async tasks so they run
  to completion and update `wizard.go(to:)` / `restoreCalibration()`.
- Split `RootView.stageContent` into `WizardStageContent` with its own
  `@Bindable var model: WizardViewModel` so `model.stage` mutations are
  observed reliably, rather than relying on observation through the parent
  `TargetWorkflowViewModel`.

Fixes the CI failure in
`Milestone6CalibrationUITests.testCalibrationDashboardOpensAndCanGenerate`.

Generated with [Devin](https://devin.ai)

Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
feat: apply v1 ICCery app icon and DMG scene
macOS CI / package (pull_request) Canceled after 0s
macOS CI / build-and-test (pull_request) Canceled after 3m50s
e424eefa5a
Port the original cone icon into the macOS asset catalog, About dialog, and DMG artwork so v2 retains the established ICCery identity.

Issue #77

Generated with [Devin](https://devin.ai)

Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
gronod merged commit e0012dc344 into develop 2026-09-10 11:45:30 +01:00
gronod deleted branch feat/77-apply-v1-icon 2026-09-10 11:45:30 +01:00
Sign in to join this conversation.
No Reviewers
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: gronod/iccery-v2-mac#78