From 1e999e389ed3c5e61ad404c8379ac87b56b5ae30 Mon Sep 17 00:00:00 2001 From: "Davide P. Cervone" Date: Tue, 14 Jun 2016 15:32:53 -0400 Subject: [PATCH] Don't have preprocessors make a preview if there already is one. Resolves issue #1445. --- unpacked/extensions/asciimath2jax.js | 4 +++- unpacked/extensions/jsMath2jax.js | 5 ++++- unpacked/extensions/mml2jax.js | 6 ++++-- unpacked/extensions/tex2jax.js | 4 +++- 4 files changed, 14 insertions(+), 5 deletions(-) diff --git a/unpacked/extensions/asciimath2jax.js b/unpacked/extensions/asciimath2jax.js index f6fae5206..2ca0ffbcc 100644 --- a/unpacked/extensions/asciimath2jax.js +++ b/unpacked/extensions/asciimath2jax.js @@ -207,11 +207,13 @@ MathJax.Extension.asciimath2jax = { }, createPreview: function (mode,asciimath) { + var previewClass = MathJax.Hub.config.preRemoveClass; var preview = this.config.preview; if (preview === "none") return; + if ((this.search.close.previousSibling||{}).className === previewClass) return; if (preview === "AsciiMath") {preview = [this.filterPreview(asciimath)]} if (preview) { - preview = MathJax.HTML.Element("span",{className:MathJax.Hub.config.preRemoveClass},preview); + preview = MathJax.HTML.Element("span",{className:previewClass},preview); this.insertNode(preview); } }, diff --git a/unpacked/extensions/jsMath2jax.js b/unpacked/extensions/jsMath2jax.js index 03b8ff3ee..188119711 100644 --- a/unpacked/extensions/jsMath2jax.js +++ b/unpacked/extensions/jsMath2jax.js @@ -73,10 +73,13 @@ MathJax.Extension.jsMath2jax = { }, createPreview: function (node) { + var previewClass = MathJax.Hub.config.preRemoveClass; var preview = this.config.preview; + if (preview === "none") return; + if ((node.previousSibling||{}).className === previewClass) return; if (preview === "TeX") {preview = [this.filterPreview(node.innerHTML)]} if (preview) { - preview = MathJax.HTML.Element("span",{className: MathJax.Hub.config.preRemoveClass},preview); + preview = MathJax.HTML.Element("span",{className:previewClass},preview); node.parentNode.insertBefore(preview,node); } }, diff --git a/unpacked/extensions/mml2jax.js b/unpacked/extensions/mml2jax.js index 6b3ce1531..995ba94c1 100644 --- a/unpacked/extensions/mml2jax.js +++ b/unpacked/extensions/mml2jax.js @@ -203,6 +203,8 @@ MathJax.Extension.mml2jax = { var preview = this.config.preview; if (preview === "none") return; var isNodePreview = false; + var previewClass = MathJax.Hub.config.preRemoveClass; + if ((script.previousSibling||{}).className === previewClass) return; if (preview === "mathml") { isNodePreview = true; // mathml preview does not work with IE < 9, so fallback to alttext. @@ -225,10 +227,10 @@ MathJax.Extension.mml2jax = { if (preview) { var span; if (isNodePreview) { - span = MathJax.HTML.Element("span",{className:MathJax.Hub.config.preRemoveClass}); + span = MathJax.HTML.Element("span",{className:previewClass}); span.appendChild(preview); } else { - span = MathJax.HTML.Element("span",{className:MathJax.Hub.config.preRemoveClass},preview); + span = MathJax.HTML.Element("span",{className:previewClass},preview); } script.parentNode.insertBefore(span,script); } diff --git a/unpacked/extensions/tex2jax.js b/unpacked/extensions/tex2jax.js index 26238818b..393dd96ca 100644 --- a/unpacked/extensions/tex2jax.js +++ b/unpacked/extensions/tex2jax.js @@ -277,11 +277,13 @@ MathJax.Extension.tex2jax = { }, createPreview: function (mode,tex) { + var previewClass = MathJax.Hub.config.preRemoveClass; var preview = this.config.preview; if (preview === "none") return; + if ((this.search.close.previousSibling||{}).className === previewClass) return; if (preview === "TeX") {preview = [this.filterPreview(tex)]} if (preview) { - preview = MathJax.HTML.Element("span",{className:MathJax.Hub.config.preRemoveClass},preview); + preview = MathJax.HTML.Element("span",{className:previewClass},preview); this.insertNode(preview); } },