NekoX/TMessagesProj/src/main/java/org/telegram/ui/Components/AvatarsImageView.java

78 lines
1.9 KiB
Java
Raw Normal View History

2020-12-23 08:48:30 +01:00
package org.telegram.ui.Components;
import android.content.Context;
import android.graphics.Canvas;
2021-12-30 11:52:40 +01:00
import android.view.View;
2020-12-23 08:48:30 +01:00
2021-12-30 11:52:40 +01:00
import androidx.annotation.NonNull;
2020-12-23 08:48:30 +01:00
import org.telegram.tgnet.TLObject;
2021-12-30 11:52:40 +01:00
public class AvatarsImageView extends View {
2020-12-23 08:48:30 +01:00
2021-12-30 11:52:40 +01:00
public final AvatarsDarawable avatarsDarawable;
2020-12-23 08:48:30 +01:00
2021-12-30 11:52:40 +01:00
public AvatarsImageView(@NonNull Context context, boolean inCall) {
super(context);
avatarsDarawable = new AvatarsDarawable(this, inCall);
2020-12-23 08:48:30 +01:00
}
2021-12-30 11:52:40 +01:00
@Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
super.onMeasure(widthMeasureSpec, heightMeasureSpec);
avatarsDarawable.width = getMeasuredWidth();
avatarsDarawable.height = getMeasuredHeight();
2020-12-23 08:48:30 +01:00
}
2021-12-30 11:52:40 +01:00
@Override
protected void onAttachedToWindow() {
super.onAttachedToWindow();
avatarsDarawable.onAttachedToWindow();
2020-12-23 08:48:30 +01:00
}
2021-12-30 11:52:40 +01:00
@Override
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
avatarsDarawable.onDraw(canvas);
2020-12-23 08:48:30 +01:00
}
2021-12-30 11:52:40 +01:00
@Override
protected void onDetachedFromWindow() {
super.onDetachedFromWindow();
avatarsDarawable.onDetachedFromWindow();
2020-12-23 08:48:30 +01:00
}
2021-12-30 11:52:40 +01:00
public void setStyle(int style) {
avatarsDarawable.setStyle(style);
2020-12-23 08:48:30 +01:00
}
2021-12-30 11:52:40 +01:00
public void setDelegate(Runnable delegate) {
avatarsDarawable.setDelegate(delegate);
2020-12-23 08:48:30 +01:00
}
2021-12-30 11:52:40 +01:00
public void setObject(int a, int currentAccount, TLObject object) {
avatarsDarawable.setObject(a, currentAccount, object);
2020-12-23 08:48:30 +01:00
}
2021-12-30 11:52:40 +01:00
public void reset() {
avatarsDarawable.reset();
2020-12-23 08:48:30 +01:00
}
2021-12-30 11:52:40 +01:00
public void setCount(int usersCount) {
avatarsDarawable.setCount(usersCount);
2020-12-23 08:48:30 +01:00
}
2021-12-30 11:52:40 +01:00
public void commitTransition(boolean animated) {
avatarsDarawable.commitTransition(animated);
2020-12-23 08:48:30 +01:00
}
2021-11-05 11:06:49 +01:00
2021-12-30 11:52:40 +01:00
public void updateAfterTransitionEnd() {
avatarsDarawable.updateAfterTransitionEnd();
2021-11-05 11:06:49 +01:00
}
2021-12-30 11:52:40 +01:00
public void setCentered(boolean centered) {
avatarsDarawable.setCentered(centered);
2021-11-05 11:06:49 +01:00
}
2020-12-23 08:48:30 +01:00
}