diff --git a/addons/web_editor/static/src/js/editor/rte.summernote.js b/addons/web_editor/static/src/js/editor/rte.summernote.js index f0f2225b998..8503c02f431 100644 --- a/addons/web_editor/static/src/js/editor/rte.summernote.js +++ b/addons/web_editor/static/src/js/editor/rte.summernote.js @@ -1210,11 +1210,15 @@ var SummernoteManager = Class.extend(mixins.EventDispatcherMixin, ServicesMixin, } data.__alreadyDone = true; + const model = data.$editable.data('oe-model'); + const field = data.$editable.data('oe-field'); + const type = data.$editable.data('oe-type'); var mediaDialog = new weWidgets.MediaDialog(this, _.extend({ - res_model: data.$editable.data('oe-model'), + res_model: model, res_id: data.$editable.data('oe-id'), domain: data.$editable.data('oe-media-domain'), + useMediaLibrary: field && (model === 'ir.ui.view' && field === 'arch' || type === 'html'), }, data.options), data.media ); diff --git a/addons/web_editor/static/src/js/wysiwyg/widgets/media.js b/addons/web_editor/static/src/js/wysiwyg/widgets/media.js index bac952a3cad..a76a3af9d8e 100644 --- a/addons/web_editor/static/src/js/wysiwyg/widgets/media.js +++ b/addons/web_editor/static/src/js/wysiwyg/widgets/media.js @@ -143,6 +143,7 @@ var FileWidget = SearchableMediaWidget.extend({ this.options = _.extend({ mediaWidth: media && media.parentElement && $(media.parentElement).width(), + useMediaLibrary: true, }, options || {}); this.attachments = []; @@ -301,6 +302,9 @@ var FileWidget = SearchableMediaWidget.extend({ if (needle && needle.length) { domain.push(['name', 'ilike', needle]); } + if (!this.options.useMediaLibrary) { + domain.push('!', ['url', '=ilike', '/web_editor/shape/%']); + } domain.push('!', ['name', '=like', '%.crop']); domain.push('|', ['type', '=', 'binary'], '!', ['url', '=like', '/%/static/%']); return domain; @@ -772,7 +776,7 @@ var ImageWidget = FileWidget.extend({ attachment.thumbnail_src = newURL.pathname + newURL.search; } }); - if (this.needle) { + if (this.needle && this.options.useMediaLibrary) { try { const response = await this._rpc({ route: '/web_editor/media_library_search', diff --git a/addons/web_editor/static/src/xml/wysiwyg.xml b/addons/web_editor/static/src/xml/wysiwyg.xml index c05a50787a3..8d7e2070809 100644 --- a/addons/web_editor/static/src/xml/wysiwyg.xml +++ b/addons/web_editor/static/src/xml/wysiwyg.xml @@ -179,7 +179,7 @@