Signal-Android/app/src/main/java/org/thoughtcrime/securesms/components/AccessibleToggleButton.java

48 lines
1.1 KiB
Java
Raw Normal View History

package org.thoughtcrime.securesms.components;
import android.content.Context;
import android.util.AttributeSet;
2020-05-01 20:20:35 +02:00
import androidx.appcompat.widget.AppCompatToggleButton;
2020-05-01 20:20:35 +02:00
public class AccessibleToggleButton extends AppCompatToggleButton {
2020-05-01 20:20:35 +02:00
private OnCheckedChangeListener listener;
public AccessibleToggleButton(Context context, AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
}
public AccessibleToggleButton(Context context, AttributeSet attrs) {
super(context, attrs);
}
public AccessibleToggleButton(Context context) {
super(context);
}
@Override
public void setOnCheckedChangeListener(OnCheckedChangeListener listener) {
super.setOnCheckedChangeListener(listener);
this.listener = listener;
}
public void setChecked(boolean checked, boolean notifyListener) {
if (!notifyListener) {
super.setOnCheckedChangeListener(null);
}
super.setChecked(checked);
if (!notifyListener) {
super.setOnCheckedChangeListener(listener);
}
}
public OnCheckedChangeListener getOnCheckedChangeListener() {
return this.listener;
}
}