it touches inherited widgets via context, which initState can't.
Optional bool guard so you don't re-precache each time didChangeDependencies re-fires.
In build(), pass that same field into your Image widget, matching URL + scale hits the warm cache, so no pop-in.
[2/3]