Fix incorrect underlines rendering for empty lines in image editor.
Fixes #12807 Closes #12808
This commit is contained in:
parent
b437cb0344
commit
5634e9834d
1 changed files with 12 additions and 8 deletions
|
@ -320,9 +320,9 @@ public final class MultiLineTextRenderer extends InvalidateableRenderer implemen
|
|||
rendererContext.canvasMatrix.concat(projectionMatrix);
|
||||
|
||||
if (mode == Mode.HIGHLIGHT) {
|
||||
if(text.isEmpty()){
|
||||
if (text.isEmpty()) {
|
||||
modeBounds.setEmpty();
|
||||
}else{
|
||||
} else {
|
||||
modeBounds.set(textBounds.left - HIGHLIGHT_HORIZONTAL_PADDING,
|
||||
selectionBounds.top - HIGHLIGHT_TOP_PADDING,
|
||||
textBounds.right + HIGHLIGHT_HORIZONTAL_PADDING,
|
||||
|
@ -333,13 +333,17 @@ public final class MultiLineTextRenderer extends InvalidateableRenderer implemen
|
|||
rendererContext.canvas.drawRoundRect(modeBounds, HIGHLIGHT_CORNER_RADIUS, HIGHLIGHT_CORNER_RADIUS, modePaint);
|
||||
modePaint.setAlpha(alpha);
|
||||
} else if (mode == Mode.UNDERLINE) {
|
||||
modeBounds.set(textBounds.left, selectionBounds.top, textBounds.right, selectionBounds.bottom);
|
||||
modeBounds.inset(-DimensionUnit.DP.toPixels(2), -DimensionUnit.DP.toPixels(2));
|
||||
if (text.isEmpty()) {
|
||||
modeBounds.setEmpty();
|
||||
} else {
|
||||
modeBounds.set(textBounds.left, selectionBounds.top, textBounds.right, selectionBounds.bottom);
|
||||
modeBounds.inset(-DimensionUnit.DP.toPixels(2), -DimensionUnit.DP.toPixels(2));
|
||||
|
||||
modeBounds.set(modeBounds.left,
|
||||
Math.max(modeBounds.top, modeBounds.bottom - DimensionUnit.DP.toPixels(6)),
|
||||
modeBounds.right,
|
||||
modeBounds.bottom - DimensionUnit.DP.toPixels(2));
|
||||
modeBounds.set(modeBounds.left,
|
||||
Math.max(modeBounds.top, modeBounds.bottom - DimensionUnit.DP.toPixels(6)),
|
||||
modeBounds.right,
|
||||
modeBounds.bottom - DimensionUnit.DP.toPixels(2));
|
||||
}
|
||||
|
||||
int alpha = modePaint.getAlpha();
|
||||
modePaint.setAlpha(rendererContext.getAlpha(alpha));
|
||||
|
|
Loading…
Add table
Reference in a new issue