Get dialpad fragment hint text sooner and hold onto it.
Bug: 77908301
Test: opened dialpad, didn't crash
PiperOrigin-RevId: 192654487
Change-Id: If5bf9b6df7f15364358fb601d154d4bb99dd5b55
diff --git a/java/com/android/dialer/dialpadview/DialpadFragment.java b/java/com/android/dialer/dialpadview/DialpadFragment.java
index 9d88d8e..2745a71 100644
--- a/java/com/android/dialer/dialpadview/DialpadFragment.java
+++ b/java/com/android/dialer/dialpadview/DialpadFragment.java
@@ -166,6 +166,7 @@
private OnDialpadQueryChangedListener dialpadQueryListener;
private DialpadView dialpadView;
private EditText digits;
+ private TextView digitsHint;
private int dialpadSlideInDuration;
/** Remembers if we need to clear digits field when the screen is completely gone. */
private boolean clearDigitsOnStop;
@@ -402,6 +403,7 @@
dialpadView = fragmentView.findViewById(R.id.dialpad_view);
dialpadView.setCanDigitsBeEdited(true);
digits = dialpadView.getDigits();
+ digitsHint = dialpadView.getDigitsHint();
digits.setKeyListener(UnicodeDialerKeyListener.INSTANCE);
digits.setOnClickListener(this);
digits.setOnKeyListener(this);
@@ -462,18 +464,18 @@
* difficult.
*/
private void updateDialpadHint() {
- TextView hint = dialpadView.getDigitsHint();
if (!TextUtils.isEmpty(digits.getText())) {
- hint.setVisibility(View.GONE);
+ digitsHint.setVisibility(View.GONE);
return;
}
if (shouldShowEmergencyCallWarning(getContext())) {
- hint.setText(getContext().getString(R.string.dialpad_hint_emergency_calling_not_available));
- hint.setVisibility(View.VISIBLE);
+ digitsHint.setText(
+ getContext().getString(R.string.dialpad_hint_emergency_calling_not_available));
+ digitsHint.setVisibility(View.VISIBLE);
return;
}
- hint.setVisibility(View.GONE);
+ digitsHint.setVisibility(View.GONE);
}
/**