diff --git a/web_widget_one2many_product_picker/__init__.py b/web_widget_one2many_product_picker/__init__.py
index f0e48908c..28345b82a 100644
--- a/web_widget_one2many_product_picker/__init__.py
+++ b/web_widget_one2many_product_picker/__init__.py
@@ -1,2 +1,3 @@
# Copyright 2020 Tecnativa - Alexandre Díaz
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
+from . import models
diff --git a/web_widget_one2many_product_picker/models/__init__.py b/web_widget_one2many_product_picker/models/__init__.py
new file mode 100644
index 000000000..3d1f7c9ef
--- /dev/null
+++ b/web_widget_one2many_product_picker/models/__init__.py
@@ -0,0 +1,2 @@
+# License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl).
+from . import product_product
diff --git a/web_widget_one2many_product_picker/models/product_product.py b/web_widget_one2many_product_picker/models/product_product.py
new file mode 100644
index 000000000..6beab967a
--- /dev/null
+++ b/web_widget_one2many_product_picker/models/product_product.py
@@ -0,0 +1,36 @@
+# Copyright 2020 Tecnativa - Alexandre D. Díaz
+# License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl).
+from odoo import api, fields, models, tools
+
+
+class ProductProduct(models.Model):
+ _inherit = 'product.product'
+
+ image_variant_medium = fields.Binary(
+ "Variant Image Medium (Computed)",
+ compute='_compute_variant_image',
+ help="This field holds the image used as image for the product variant"
+ "or product image medium, limited to 512x512px.",
+ )
+
+ image_variant_big = fields.Binary(
+ "Variant Image Big (Computed)",
+ compute='_compute_variant_image',
+ help="This field holds the image used as image for the product variant"
+ "or product image, limited to 1024x1024px.",
+ )
+
+ @api.depends('image_variant', 'product_tmpl_id.image')
+ def _compute_variant_image(self):
+ for record in self:
+ if record.image_variant:
+ resized_images = tools.image_get_resized_images(
+ record.image_variant,
+ return_big=False,
+ return_small=False,
+ avoid_resize_medium=True)
+ record.image_variant_medium = resized_images['image_medium']
+ record.image_variant_big = record.image_variant
+ else:
+ record.image_variant_medium = record.product_tmpl_id.image_medium
+ record.image_variant_big = record.product_tmpl_id.image
diff --git a/web_widget_one2many_product_picker/static/src/xml/one2many_product_picker.xml b/web_widget_one2many_product_picker/static/src/xml/one2many_product_picker.xml
index 78078dba4..700e7fe4f 100644
--- a/web_widget_one2many_product_picker/static/src/xml/one2many_product_picker.xml
+++ b/web_widget_one2many_product_picker/static/src/xml/one2many_product_picker.xml
@@ -90,11 +90,11 @@
-
+
+