fix!: Normalize Zelos connection indicators #9565
Open
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.
The basics
The details
Resolves
Proposed Changes
This PR cleans up Zelos' display of proposed connection indicators. Previously, proposed input connections indicators had three possible appearances:
Fuzzy, when an existing block would be replaced
Normal, when a block would be connected to an empty input
Skinny, same circumstances as above but when the highlight ring happened to be z-ordered below the fill for the input slot.
Likewise, next/previous connection indicators could appear normal, or partially obscured by the insertion marker depending on the whims of z-ordering:
Now:
BlockSvg.highlightShapeForInput()has been removed, as it was internal and had no callers.Breaking Changes
REPLACEMENT_GLOW_COLOUR,REPLACEMENT_GLOW_SIZE, andreplacementGlowFilterIdhave been removed fromBlockly.zelos.ConstantProvider. References to these fields should be removed; the appearance of the connection indicator can be styled with CSS targeting.blocklyHighlightedConnectionPath.IPathObject.updateReplacing()has been added; this method is optional and the rootPathObjectdefines it by simply toggling a class, so this should not strictly be breaking, but custom renderers may wish to implement/override it.