Hi guys,
From me poking around in the frontend code, this is not a theme issue, it stems back to an incomplete implementation of the img sizes attribute in woocommerce blocks.
The extent that we experience this depends on what the thumbnail size is set as in our theme relative to the size we try to display the product block. That’s probably the reason it was so quickly classified as a theme issue.
In my case, the thumbs are defined as being 397px wide, but I am putting the featured product block (with just one product) in a two column layout, so it displays at 609px in the browser.
The srcset attribute on the image is properly defined, and in my case, actually includes a 610w version of the image!
But when we take a look at the sizes attribute in the rendered block, it looks like this:
sizes=”(max-width: 397px) 100vw, 397px”
This seriously cripples the srcset functionality and displays the thumbnail file no matter the size of the container, thereby producing a blurry image in many use cases.
I have not delved into the plugin code to find this, but it is easy to remedy by changing the attribute to:
(max-width: 397px) 100vw, (min-width: 397px) 610px
or even just
(max-width: 397px) 100vw, (min-width: 397px) 610px
Or you could do a full fledged, proper sizes implementation.
programatically, 397px is the value returned for thumbnail and 610px for full image (as set for single product display in theme).
Let me know if I need to post this a new ticket to have it remedied in a future release. I see this project has a pretty rapid dev cycle, so I am hopeful that something as easily improved, but with huge implications for users, will get a high priority.
Also let me know if I can help in any way.
LJ