diff --git a/addons/web_editor/static/src/js/editor/snippets.options.js b/addons/web_editor/static/src/js/editor/snippets.options.js index ad1dc2ab9a7..df7539ef04d 100644 --- a/addons/web_editor/static/src/js/editor/snippets.options.js +++ b/addons/web_editor/static/src/js/editor/snippets.options.js @@ -6244,11 +6244,15 @@ const ImageHandlerOption = SnippetOptionWidget.extend({ } }, /** - * Returns a list of valid formats for a given image. + * Returns a list of valid formats for a given image or an empty list if + * there is no mimetypeBeforeConversion data attribute on the image. * * @private */ async _computeAvailableFormats() { + if (!this.mimetypeBeforeConversion) { + return []; + } const img = this._getImg(); const original = await loadImage(this.originalSrc); const maxWidth = img.dataset.width ? img.naturalWidth : original.naturalWidth; @@ -6324,6 +6328,7 @@ const ImageHandlerOption = SnippetOptionWidget.extend({ } this.originalId = img.dataset.originalId; this.originalSrc = img.dataset.originalSrc; + this.mimetypeBeforeConversion = img.dataset.mimetypeBeforeConversion; }, /** * Sets the image's width to its suggested size. @@ -6396,6 +6401,9 @@ const ImageHandlerOption = SnippetOptionWidget.extend({ * @override */ _computeWidgetVisibility(widgetName, params) { + if (widgetName === "format_select_opt" && !this.mimetypeBeforeConversion) { + return false; + } if (this._isImageProcessingWidget(widgetName, params)) { const img = this._getImg(); return this._isImageSupportedForProcessing(img, true);