@Override protected void onDraw(Canvas canvas) { super.onDraw(canvas); if (currentMessageObject == null) { return; } avatarImage.draw(canvas); if (nameLayout != null) { canvas.save(); canvas.translate( avatarImage.getImageX() + avatarImage.getImageWidth() + AndroidUtilities.dp(9), AndroidUtilities.dp(10) + namesOffset); namePaint.setColor( AvatarDrawable.getColorForId(currentMessageObject.messageOwner.media.user_id)); nameLayout.draw(canvas); canvas.restore(); } if (phoneLayout != null) { canvas.save(); canvas.translate( avatarImage.getImageX() + avatarImage.getImageWidth() + AndroidUtilities.dp(9), AndroidUtilities.dp(31) + namesOffset); phoneLayout.draw(canvas); canvas.restore(); } if (drawAddButton) { Drawable addContactDrawable; if (currentMessageObject.isOutOwner()) { addContactDrawable = addContactDrawableOut; } else { addContactDrawable = addContactDrawableIn; } setDrawableBounds( addContactDrawable, avatarImage.getImageX() + namesWidth + AndroidUtilities.dp(78), AndroidUtilities.dp(13) + namesOffset); addContactDrawable.draw(canvas); } }