diff --git a/TMessagesProj/src/main/java/org/telegram/objects/MessageObject.java b/TMessagesProj/src/main/java/org/telegram/objects/MessageObject.java index ce1a11370..f18a7ae84 100644 --- a/TMessagesProj/src/main/java/org/telegram/objects/MessageObject.java +++ b/TMessagesProj/src/main/java/org/telegram/objects/MessageObject.java @@ -425,6 +425,7 @@ public class MessageObject { int blocksCount = (int)Math.ceil((float)linesCount / LINES_PER_BLOCK); int linesOffset = 0; + float prevOffset = 0; for (int a = 0; a < blocksCount; a++) { @@ -449,6 +450,9 @@ public class MessageObject { block.textYOffset = textLayout.getLineTop(linesOffset); if (a != blocksCount - 1) { blockHeight = Math.min(blockHeight, block.textLayout.getHeight()); + prevOffset = block.textYOffset; + } else { + blockHeight = Math.min(blockHeight, (int)(block.textYOffset - prevOffset)); } } catch (Exception e) { FileLog.e("tmessages", e); diff --git a/TMessagesProj/src/main/java/org/telegram/ui/Cells/ChatMessageCell.java b/TMessagesProj/src/main/java/org/telegram/ui/Cells/ChatMessageCell.java index e56d0db0c..9396d1aba 100644 --- a/TMessagesProj/src/main/java/org/telegram/ui/Cells/ChatMessageCell.java +++ b/TMessagesProj/src/main/java/org/telegram/ui/Cells/ChatMessageCell.java @@ -40,8 +40,8 @@ public class ChatMessageCell extends ChatBaseCell { int x = (int)event.getX(); int y = (int)event.getY(); if (x >= textX && y >= textY && x <= textX + currentMessageObject.textWidth && y <= textY + currentMessageObject.textHeight) { - int blockNum = Math.max(0, y / currentMessageObject.blockHeight); y -= textY; + int blockNum = Math.max(0, y / currentMessageObject.blockHeight); if (blockNum < currentMessageObject.textLayoutBlocks.size()) { MessageObject.TextLayoutBlock block = currentMessageObject.textLayoutBlocks.get(blockNum); x -= textX - (int)Math.ceil(block.textXOffset);