diff --git a/dev/Model/Message.js b/dev/Model/Message.js index 5e11db4de..84b715c70 100644 --- a/dev/Model/Message.js +++ b/dev/Model/Message.js @@ -496,16 +496,13 @@ export class MessageModel extends AbstractModel { initView() { // init BlockquoteSwitcher - this.body.querySelectorAll('blockquote:not(.rl-bq-switcher)').forEach(node => { + this.body.querySelectorAll('blockquote').forEach(node => { if (node.textContent.trim()) { -// if (node.textContent.trim() && !node.parentNode.closest('blockquote')) { - node.removeAttribute('style') let h = node.clientHeight || getRealHeight(node); if (0 === h || 100 < h) { - const el = Element.fromHTML('•••'); - node.classList.add('rl-bq-switcher','hidden-bq'); - node.before(el); - el.addEventListener('click', () => node.classList.toggle('hidden-bq')); + const el = Element.fromHTML('
•••
'); + node.replaceWith(el); + el.append(node); } } }); @@ -613,7 +610,6 @@ export class MessageModel extends AbstractModel { let attr = 'data-x-src', src, useProxy = !!SettingsGet('UseLocalProxyForExternalImages'); body.querySelectorAll('img[' + attr + ']').forEach(node => { - node.loading = 'lazy'; src = node.getAttribute(attr); node.src = useProxy ? proxy(src) : src; }); @@ -632,11 +628,8 @@ export class MessageModel extends AbstractModel { bodyAsHTML() { if (this.body) { let clone = this.body.cloneNode(true); - clone.querySelectorAll('blockquote.rl-bq-switcher').forEach( - node => node.classList.remove('rl-bq-switcher','hidden-bq') - ); - clone.querySelectorAll('.rlBlockquoteSwitcher').forEach( - node => node.remove() + clone.querySelectorAll('.sm-bq-switcher').forEach( + node => node.replaceWith(node.lastElementChild) ); return clone.innerHTML; } diff --git a/dev/Styles/User/MessageView.less b/dev/Styles/User/MessageView.less index c15b4c03c..3b4f631b4 100644 --- a/dev/Styles/User/MessageView.less +++ b/dev/Styles/User/MessageView.less @@ -331,7 +331,7 @@ html.rl-no-preview-pane { border-bottom: 1px solid #ddd; } - .rlBlockquoteSwitcher { + .sm-bq-switcher > summary { border: 1px solid #999; display: block; width: 3em; @@ -369,10 +369,6 @@ html.rl-no-preview-pane { margin: 0; } - .rl-bq-switcher.hidden-bq { - display: none; - } - &.html { img { diff --git a/dev/View/User/MailBox/MessageView.js b/dev/View/User/MailBox/MessageView.js index 8f930712d..10f3995b8 100644 --- a/dev/View/User/MailBox/MessageView.js +++ b/dev/View/User/MailBox/MessageView.js @@ -394,7 +394,7 @@ export class MailMessageView extends AbstractViewRight { registerShortcut('b', '', [Scope.MessageList, Scope.MessageView], () => { const message = currentMessage(); if (message?.body) { - message.body.querySelectorAll('.rlBlockquoteSwitcher').forEach(node => node.click()); + message.body.querySelectorAll('.sm-bq-switcher > summary').forEach(node => node.click()); return false; } });