diff --git a/addons/web/static/src/js/fields/field_registry.js b/addons/web/static/src/js/fields/field_registry.js
index 1de315eda30..942e6fc094a 100644
--- a/addons/web/static/src/js/fields/field_registry.js
+++ b/addons/web/static/src/js/fields/field_registry.js
@@ -74,6 +74,7 @@ registry
.add('many2many', relational_fields.FieldMany2Many)
.add('many2many_binary', relational_fields.FieldMany2ManyBinaryMultiFiles)
.add('many2many_tags', relational_fields.FieldMany2ManyTags)
+ .add('many2many_tags_avatar', relational_fields.FieldMany2ManyTagsAvatar)
.add('form.many2many_tags', relational_fields.FormFieldMany2ManyTags)
.add('kanban.many2many_tags', relational_fields.KanbanFieldMany2ManyTags)
.add('many2many_checkboxes', relational_fields.FieldMany2ManyCheckBoxes)
diff --git a/addons/web/static/src/js/fields/relational_fields.js b/addons/web/static/src/js/fields/relational_fields.js
index fed94598046..d486838d3f5 100644
--- a/addons/web/static/src/js/fields/relational_fields.js
+++ b/addons/web/static/src/js/fields/relational_fields.js
@@ -2209,6 +2209,26 @@ var FieldMany2ManyTags = AbstractField.extend({
},
});
+var FieldMany2ManyTagsAvatar = FieldMany2ManyTags.extend({
+ tag_template: 'FieldMany2ManyTagAvatar',
+ className: 'o_field_many2manytags avatar',
+
+ //--------------------------------------------------------------------------
+ // Private
+ //--------------------------------------------------------------------------
+
+ /**
+ * @override
+ * @private
+ */
+ _getRenderTagsContext: function () {
+ var result = this._super.apply(this, arguments);
+ result.avatarModel = this.nodeOptions.avatarModel || this.field.relation;
+ result.avatarField = this.nodeOptions.avatarField || 'image';
+ return result;
+ },
+});
+
var FormFieldMany2ManyTags = FieldMany2ManyTags.extend({
events: _.extend({}, FieldMany2ManyTags.prototype.events, {
'click .dropdown-toggle': '_onOpenColorPicker',
@@ -2972,6 +2992,7 @@ return {
FieldMany2ManyBinaryMultiFiles: FieldMany2ManyBinaryMultiFiles,
FieldMany2ManyCheckBoxes: FieldMany2ManyCheckBoxes,
FieldMany2ManyTags: FieldMany2ManyTags,
+ FieldMany2ManyTagsAvatar: FieldMany2ManyTagsAvatar,
FormFieldMany2ManyTags: FormFieldMany2ManyTags,
KanbanFieldMany2ManyTags: KanbanFieldMany2ManyTags,
diff --git a/addons/web/static/src/scss/fields.scss b/addons/web/static/src/scss/fields.scss
index d7c332d5369..242e17cc9ae 100644
--- a/addons/web/static/src/scss/fields.scss
+++ b/addons/web/static/src/scss/fields.scss
@@ -190,6 +190,24 @@
color: #FF0000;
}
}
+ // Many2many tags avatar
+ &.avatar {
+ .badge {
+ padding-left: 4px;
+ img {
+ height: 18px;
+ width: 18px;
+ }
+ &.o_tag_color_0 {
+ background-color: #F1F1F1;
+ box-shadow: none;
+ border: 1px solid gray('300');
+ }
+ .o_delete {
+ margin-top: 3px;
+ }
+ }
+ }
}
// Stars
diff --git a/addons/web/static/src/xml/base.xml b/addons/web/static/src/xml/base.xml
index c075c912784..c342c24441f 100644
--- a/addons/web/static/src/xml/base.xml
+++ b/addons/web/static/src/xml/base.xml
@@ -741,6 +741,11 @@
+
+
+
+
+