iOS issue :: product recommendations extends code with Breeze integration #306
Replies: 7 comments 22 replies
-
Looks like a a tricky race condition bug. Please test if this patch will help. --- a/Block/Js.php
+++ b/Block/Js.php
@@ -411,7 +411,14
continue;
}
- $this->allBundles[$info['bundle']]['items'][$info['itemName']]['import'][] = $itemName;
+ if (!isset($this->allBundles[$info['bundle']]['items'][$info['itemName']]['import'])) {
+ $this->allBundles[$info['bundle']]['items'][$info['itemName']]['import'] = [];
+ }
+
+ array_unshift(
+ $this->allBundles[$info['bundle']]['items'][$info['itemName']]['import'],
+ $itemName
+ );
if (isset($this->allBundles[$info['bundle']]['items'][$info['itemName']]['load'])) {
$this->allBundles[$bundleName]['items'][$itemName]['load']['onRequire'] = true; |
Beta Was this translation helpful? Give feedback.
-
Hi @vovayatsyuk I have applied patch, however, it seems it did not fix but it also affected the same in the chrome browser as well. Please check the URL - https://master-7rqtwti-vcte4ksdazidy.eu-4.magentosite.cloud/breeze/ Thanks |
Beta Was this translation helpful? Give feedback.
-
Hi @vovayatsyuk We found an issue further, Adobe Live Search and Product recommendations are not working in the Safari private window with Breeze, these work fine in Browserstack if we check, so the issue appears in real devices in the Safari private window, working fine with Luma. Search: When searching anything the results do not appear on the search drop, but getting results on the page if we submit the search. We have verified the issue is appearing in multiple projects and sandbox also https://master-7rqtwti-vcte4ksdazidy.eu-4.magentosite.cloud/breeze/ Would be great if you check this as it has been critical for us. Thanks, |
Beta Was this translation helpful? Give feedback.
-
Hi @vovayatsyuk I agree it, may be a privacy protection issue but this is only with Breeze, working fine with Luma, so I think there is something insecure with Breeze which is blocked by Safari. Thanks, |
Beta Was this translation helpful? Give feedback.
-
Hi @vovayatsyuk |
Beta Was this translation helpful? Give feedback.
-
Beta Was this translation helpful? Give feedback.
-
Thanks @vovayatsyuk
But product recommendations have the same issue so can you please check them as well? Thanks, |
Beta Was this translation helpful? Give feedback.
-
Hi @vovayatsyuk
We are using "magento/product-recommendations" and "swissup/module-breeze-magento-enterprise".
Now, we have extended the product recommendations features like displaying product reviews. For that I have created some JavaScript mixins and they are working fine with Luma and with Breeze (in browser) as expected with your help.
However, it is not working with iOS devices, I have checked it in iPhone 13, iPad, Macbook and browserstack as well. I have tried to debug this and found that some of the mixins are not working in iOS devices only.
breeze_default.xml
(as you had suggested)<item name="default" xsi:type="array"> <item name="items" xsi:type="array"> <item name="abstractRendererMixin" xsi:type="array"> <item name="path" xsi:type="string">WilliamsCommerce_MagentoProductRecommendationsExtend/js/breeze/abstractRendererMixin</item> <item name="mixins" xsi:type="array"> <item name="abstractRenderer" xsi:type="string">Magento_ProductRecommendationsLayout/js/abstractRenderer</item> </item> </item> <item name="layoutRendererMixin" xsi:type="array"> <item name="path" xsi:type="string">WilliamsCommerce_MagentoProductRecommendationsExtend/js/breeze/layoutRendererMixin</item> <item name="mixins" xsi:type="array"> <item name="layoutRenderer" xsi:type="string">Magento_ProductRecommendationsLayout/js/layoutRenderer</item> </item> </item> <item name="pageBuilderRendererMixin" xsi:type="array"> <item name="path" xsi:type="string">WilliamsCommerce_MagentoProductRecommendationsExtend/js/breeze/pageBuilderRendererMixin</item> <item name="mixins" xsi:type="array"> <item name="pageBuilderRenderer" xsi:type="string">Magento_PageBuilderProductRecommendations/js/pageBuilderRenderer</item> </item> </item> </item> </item>
Breeze URL - https://master-7rqtwti-vcte4ksdazidy.eu-4.magentosite.cloud/breeze/
Luma URL - https://master-7rqtwti-vcte4ksdazidy.eu-4.magentosite.cloud/default/
I have added console.log in all the 3 JavaScript mixins.
layoutRendererMixin Breeze
pageBuilderRendererMixin Breeze
abstractRendererMixin Breeze
The functionality is working for Breeze in desktop browser and also the log for each mixins are being logged.
But, the same breeze URL is not working for iOS devices -
The
layoutRendererMixin Breeze
andpageBuilderRendererMixin Breeze
mixin is not being called beforeabstractRendererMixin Breeze
mixin in case of iOS. The core file is being called instead.Please check the below screenshot.
However, the Luma URL is working in iOS devices as well.

Could you please have a look and suggest accordingly.
As always your guidance will be very helpful I believe and we appreciate it very much.
Thanks
Sandipan
Beta Was this translation helpful? Give feedback.
All reactions