diff --git a/image-editor/lib/src/main/java/org/signal/imageeditor/core/renderers/MultiLineTextRenderer.java b/image-editor/lib/src/main/java/org/signal/imageeditor/core/renderers/MultiLineTextRenderer.java index 14999ed30..24bc9dbb5 100644 --- a/image-editor/lib/src/main/java/org/signal/imageeditor/core/renderers/MultiLineTextRenderer.java +++ b/image-editor/lib/src/main/java/org/signal/imageeditor/core/renderers/MultiLineTextRenderer.java @@ -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));