Co-authored-by: Mahtis Michel <mathis.michel@outlook.de> Refs #7497
This commit is contained in:
committed by
GitHub
parent
fc7cdb8bad
commit
24aaa53712
@@ -39,6 +39,16 @@ export default class HighlightCode extends Component {
|
||||
}
|
||||
}
|
||||
|
||||
componentDidMount() {
|
||||
[this.syntaxHighlighter, this.pre]
|
||||
.map(element => element?.addEventListener("mousewheel", this.preventYScrollingBeyondElement, { passive: false }))
|
||||
}
|
||||
|
||||
componentWillUnmount() {
|
||||
[this.syntaxHighlighter, this.pre]
|
||||
.map(element => element?.removeEventListener("mousewheel", this.preventYScrollingBeyondElement))
|
||||
}
|
||||
|
||||
render () {
|
||||
let { value, className, downloadable, getConfigs, canCopy, language } = this.props
|
||||
|
||||
@@ -48,14 +58,14 @@ export default class HighlightCode extends Component {
|
||||
|
||||
const codeBlock = get(config, "syntaxHighlight.activated")
|
||||
? <SyntaxHighlighter
|
||||
ref={elem => this.syntaxHighlighter = elem}
|
||||
language={language}
|
||||
className={className + " microlight"}
|
||||
onWheel={this.preventYScrollingBeyondElement}
|
||||
style={getStyle(get(config, "syntaxHighlight.theme"))}
|
||||
>
|
||||
{value}
|
||||
</SyntaxHighlighter>
|
||||
: <pre onWheel={this.preventYScrollingBeyondElement} className={className + " microlight"}>{value}</pre>
|
||||
: <pre ref={elem => this.pre = elem} className={className + " microlight"}>{value}</pre>
|
||||
|
||||
return (
|
||||
<div className="highlight-code">
|
||||
|
||||
Reference in New Issue
Block a user