[ChromeCart] Use product image from ShoppingService for AddToCart Currently we don't try to detect product image when AddToCart happens due to technical limitations. Therefore, when an AddToCart is detected, we show a fallback cart icon in ChromeCart, and the product images won't be available until user visits the cart page which is a suboptimal user experience. This CL improves the situation by taking advantage of the product images from ShoppingService. When an AddToCart is detected, we use the PDP where AddToCart happens to query ShoppingService to see if there are product image available. Two things worth mentioning about this approach: * This improvement depends on ShoppingService, so it won't be available for users who have ChromeCart but don't satisfy the requirement in ShoppingService. * This CL only uses the cached product images in ShoppingService (i.e. using GetAvailableProductInfoForUrl API) instead of initiating backend fetch. This should be good enough because in most cases, the user needs to visit the PDP first before adding the product to cart, and the navigation should already bring the product image into cache. Bug: 1407248 Change-Id: I1bf1ae566d7a3da5b99c31f6ad7df520baaca9ce Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4166473 Reviewed-by: Wei-Yin Chen <wychen@chromium.org> Reviewed-by: Matthew Jones <mdjones@chromium.org> Commit-Queue: Yue Zhang <yuezhanggg@chromium.org> Cr-Commit-Position: refs/heads/main@{#1093921}
Chromium is an open-source browser project that aims to build a safer, faster, and more stable way for all users to experience the web.
The project's web site is https://www.chromium.org.
To check out the source code locally, don't use git clone! Instead, follow the instructions on how to get the code.
Documentation in the source is rooted in docs/README.md.
Learn how to Get Around the Chromium Source Code Directory Structure .
For historical reasons, there are some small top level directories. Now the guidance is that new top level directories are for product (e.g. Chrome, Android WebView, Ash). Even if these products have multiple executables, the code should be in subdirectories of the product.
If you found a bug, please file it at https://crbug.com/new.