Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
What is the purpose of this pull request?
Overview of changes:
Refactored logic to insert buttons only if pre element contains the code element. Scoped CSS rules (specifically, for
<pre/>
element to minimize side effects. Modularized CSS rules to be included only if plugin is enabled.Refer to #1043 #1668 to check CSS rules that were added for the code block buttons.
Fixes #2624
Anything you'd like to highlight/discuss:
Testing instructions:
See #2624
Enable relevant plugins, and put some sample code into index.md:
Buttons should not show up beside the cat. It should only show up for the code block above it.
Proposed commit message: (wrap lines at 72 characters)
Refactor codeBlockButton Plugins
Refactored logic to insert plugin buttons only if
pre element contains the code element as per CommonMark
spec for fenced code blocks. Scoped CSS rules for pre element
to minimize side effects. Modularized previously global button
CSS rules to be included only if plugin is enabled.
Checklist: ☑️
Reviewer checklist:
Indicate the SEMVER impact of the PR:
At the end of the review, please label the PR with the appropriate label:
r.Major
,r.Minor
,r.Patch
.Breaking change release note preparation (if applicable):