diff --git a/src/main/java/eu/siacs/conversations/ui/widget/DialpadView.java b/src/main/java/eu/siacs/conversations/ui/widget/DialpadView.java
index fa4d46ec5781fc499cad2da56e9eb77908c858d9..ccf91cad4bfc76b7a533a2ded7a29041b84f29bc 100644
--- a/src/main/java/eu/siacs/conversations/ui/widget/DialpadView.java
+++ b/src/main/java/eu/siacs/conversations/ui/widget/DialpadView.java
@@ -19,9 +19,12 @@ package eu.siacs.conversations.ui.widget;
import android.content.Context;
import android.util.AttributeSet;
+import android.view.LayoutInflater;
import android.view.View;
import androidx.constraintlayout.widget.ConstraintLayout;
+import androidx.databinding.DataBindingUtil;
+import eu.siacs.conversations.databinding.DialpadBinding;
import eu.siacs.conversations.R;
public class DialpadView extends ConstraintLayout implements View.OnClickListener {
@@ -48,23 +51,13 @@ public class DialpadView extends ConstraintLayout implements View.OnClickListene
}
private void init() {
- inflate(getContext(), R.layout.dialpad, this);
- initViews();
- }
-
- private void initViews() {
- findViewById(R.id.dialpad_1_holder).setOnClickListener(this);
- findViewById(R.id.dialpad_2_holder).setOnClickListener(this);
- findViewById(R.id.dialpad_3_holder).setOnClickListener(this);
- findViewById(R.id.dialpad_4_holder).setOnClickListener(this);
- findViewById(R.id.dialpad_5_holder).setOnClickListener(this);
- findViewById(R.id.dialpad_6_holder).setOnClickListener(this);
- findViewById(R.id.dialpad_7_holder).setOnClickListener(this);
- findViewById(R.id.dialpad_8_holder).setOnClickListener(this);
- findViewById(R.id.dialpad_9_holder).setOnClickListener(this);
- findViewById(R.id.dialpad_0_holder).setOnClickListener(this);
- findViewById(R.id.dialpad_asterisk_holder).setOnClickListener(this);
- findViewById(R.id.dialpad_pound_holder).setOnClickListener(this);
+ DialpadBinding binding = DataBindingUtil.inflate(
+ LayoutInflater.from(getContext()),
+ R.layout.dialpad,
+ this,
+ true
+ );
+ binding.setDialpadView(this);
}
@Override
diff --git a/src/main/res/layout/dialpad.xml b/src/main/res/layout/dialpad.xml
index 2a2208c945ed3b3febe4b4ae03e8dd743d990c12..4a18363fe67aa16381b38bfbac7b56856bf4c356 100644
--- a/src/main/res/layout/dialpad.xml
+++ b/src/main/res/layout/dialpad.xml
@@ -1,368 +1,385 @@
-
-
-
-
-
-
-
-
+
+
+
+
+
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
+ android:background="?attr/selectableItemBackgroundBorderless"
+ app:layout_constraintBottom_toBottomOf="@+id/dialpad_0_holder"
+ app:layout_constraintEnd_toEndOf="parent"
+ app:layout_constraintStart_toEndOf="@+id/dialpad_0_holder"
+ app:layout_constraintTop_toTopOf="@+id/dialpad_0_holder">
+
+
+
+
+