Skip to content

Use app-provided tile artwork by default - #69

Merged
LastResolution merged 5 commits into
mainfrom
feat/native-tile-artwork
Nov 7, 2026
Merged

LastResolution merged 5 commits into
mainfrom
feat/native-tile-artwork

Conversation

@LastResolution

@LastResolution LastResolution commented Nov 7, 2026 •

Copy link
Copy Markdown
Owner

Pinned applications currently reuse a small Shell icon even when their installed package includes artwork designed for Start tiles. Add Appearance → Use app-provided tile images, enabled by default for new and existing preferences. The switch supports immediate Settings preview and save/discard in all eight languages.

Read the selected package application's VisualElements/DefaultTile metadata or a desktop executable's adjacent VisualElements manifest. Select declared raster artwork by tile size, physical pixel resolution, language and theme; preserve ordinary icons when metadata or supported images are unavailable. Closed folders use the small artwork without changing saved child sizes. Existing live notification content takes precedence. Explicit tile colors remain authoritative, and high contrast uses the icon fallback.

Loading runs on a cancellable background STA and updates only the image surface. It does not rebuild web tiles, download images, execute app code, change launch targets, read toast messages or enable notification access. XML/entity limits, owning-root and reparse checks, raster signatures, decode limits, a shared pixel budget and stale-result rejection bound the operation. This does not reconnect retired live tile services. Update eight READMEs, the behavior/architecture/testing guides and the static site accordingly.

Validation:

  • Release solution build: no warnings; 1,149 core tests passed.
  • 86 native artwork checks: four sizes, both themes, three scales, folder previews, live-content priority, high contrast, cancellation, malformed images, local-root containment and disabling.
  • 10,401 Tile Studio/web presentation checks passed after updating the miniature-cell assertion to support both presentation containers. The drag-hint fixture verifies its five-second interval and processes queued UI timer callbacks before asserting expiry.
  • 898 Settings preview checks across 32 language/theme/save-discard cases, plus 108 existing icon size/type/scale renders, passed.
  • Actual installed Calculator, Notepad, Paint, Photos and Store packages supplied 36 frozen image frames across both themes.
  • API documentation/self-tests, architecture, all eight README links, whitespace and privacy checks passed; five site pages passed 1,110 checks and all 27 site regression tests.
  • The full local fidelity suite stops at an existing Windows indexed-content availability assertion; an unchanged base build fails at the identical assertion. No assertions were weakened. The new artwork fixture is independently runnable with scripts/test-tile-artwork.ps1 and is also included in the full suite.

Prepare ReStart v2.2.0 and update the release guide. Extracted x64 portable builds now run the dedicated artwork checks before publication. The maintainer manually confirmed the isolated review build and authorized merge and release. No existing release tag is changed.

@LastResolution
LastResolution merged commit 751ae44 into main Nov 7, 2026
14 checks passed
@LastResolution
LastResolution deleted the feat/native-tile-artwork branch November 7, 2026 19:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant