[w3c/manifest] Add normative algorithm for when to call "fetch a manifest image resource" (Issue #1216)

marcoscaceres created an issue (w3c/manifest#1216)

## Problem

PR #1171 introduces a "fetch a manifest image resource" algorithm but leaves it with no normative call site. Issue #910 is about clarifying how manifest image resources are fetched — the algorithm alone doesn't fully address this without specifying *when* it should be called.

## Browser behaviour (verified in source)

A browser impl check against Chrome and Firefox shows:

- **Chrome** (`ManifestToWebAppInstallInfoJob`): icons are fetched after manifest parsing/validation, via `WebContents::DownloadImageInFrame()` with `initiator_frame_routing_id`, tied to the originating renderer frame. Called during the install flow before showing the install dialog.
- **Firefox** (`Manifest.sys.mjs:prefetch()`): icons are fetched just before the install UI is presented, then cached. `aWindow.fetch()` with `mode: "cors"` goes through the content window.

Neither browser fetches icons during regular page loads. Both require a live document/window context.

## Proposed fix

Add a normative "obtaining manifest icons" step (or similar) within the manifest application/installation flow that calls "fetch a manifest image resource" for each icon. This likely requires first adding a normative installation algorithm to the spec, which is a larger undertaking.

As an interim, PR #1171 adds an informative note on the algorithm explaining when it is intended to be called.

## Related
- PR #1171
- Closes #910 (partially — PR #1171 handles the "how", this handles the "when")
- w3c/image-resource#50 (fetch mode should be `cors`)

-- 
Reply to this email directly or view it on GitHub:
https://github.com/w3c/manifest/issues/1216
You are receiving this because you are subscribed to this thread.

Message ID: <w3c/manifest/issues/1216@github.com>

Received on Monday, 13 April 2026 06:21:51 UTC