diff --git a/app/spell_check.main.ts b/app/spell_check.main.ts index db897f7162..c939e35e9e 100644 --- a/app/spell_check.main.ts +++ b/app/spell_check.main.ts @@ -201,7 +201,15 @@ export const setup = ( template.push({ label: i18n('icu:editMenuPaste'), role: 'paste' }); } - if (editFlags.canPaste && !isImage) { + // It seems like `canEditRichly` is unreliable for `contenteditable` + // But `formControlType` will tell us if the element is some native + // input/button/etc, and any `contenteditable` should be "none" + const isLikelyRichTextEditor = params.formControlType === 'none'; + if ( + editFlags.canPaste && + (editFlags.canEditRichly || isLikelyRichTextEditor) && + !isImage + ) { template.push({ label: i18n('icu:editMenuPasteAndMatchStyle'), role: 'pasteAndMatchStyle',