Don't call finish when calling from the dialpad
Change-Id: Ib5c98b51c4f3113e434208b83310754b825a197f
diff --git a/src/com/android/dialer/DialtactsActivity.java b/src/com/android/dialer/DialtactsActivity.java
index 05c9e2c..572a4f1 100644
--- a/src/com/android/dialer/DialtactsActivity.java
+++ b/src/com/android/dialer/DialtactsActivity.java
@@ -482,7 +482,7 @@
ft.commit();
}
- private void hideDialpadFragment(boolean animate, boolean clearDialpad) {
+ public void hideDialpadFragment(boolean animate, boolean clearDialpad) {
if (mDialpadFragment == null) return;
if (clearDialpad) {
mDialpadFragment.clearDialpad();
diff --git a/src/com/android/dialer/dialpad/DialpadFragment.java b/src/com/android/dialer/dialpad/DialpadFragment.java
index 4066122..e46a8d3 100644
--- a/src/com/android/dialer/dialpad/DialpadFragment.java
+++ b/src/com/android/dialer/dialpad/DialpadFragment.java
@@ -1082,8 +1082,11 @@
public void callVoicemail() {
startActivity(getVoicemailIntent());
- mClearDigitsOnStop = true;
- getActivity().finish();
+ hideAndClearDialpad();
+ }
+
+ private void hideAndClearDialpad() {
+ ((DialtactsActivity) getActivity()).hideDialpadFragment(false, true);
}
public static class ErrorDialogFragment extends DialogFragment {
@@ -1179,8 +1182,7 @@
(getActivity() instanceof DialtactsActivity ?
((DialtactsActivity) getActivity()).getCallOrigin() : null));
startActivity(intent);
- mClearDigitsOnStop = true;
- getActivity().finish();
+ hideAndClearDialpad();
}
}
}