diff options
author | Tyler Gunn <tgunn@google.com> | 2016-01-12 17:23:00 +0000 |
---|---|---|
committer | Gerrit Code Review <noreply-gerritcodereview@google.com> | 2016-01-12 17:23:00 +0000 |
commit | 86a8382274b955670f920324cba697360677a3b8 (patch) | |
tree | c55462657072b1d4fadf2ab852cfc9260ca33e8b | |
parent | 2b0a16a9b89af3fdb54e3e8046a2e647a149a58c (diff) | |
parent | 28f45e6e2b3080b30782854e8273cef5df7880f2 (diff) | |
download | InCallUI-86a8382274b955670f920324cba697360677a3b8.tar.gz |
Merge "Fix InCallUI crash when post char dialog is shown"android-n-preview-1
-rw-r--r-- | src/com/android/incallui/PostCharDialogFragment.java | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/src/com/android/incallui/PostCharDialogFragment.java b/src/com/android/incallui/PostCharDialogFragment.java index 09b626a9..400e8d76 100644 --- a/src/com/android/incallui/PostCharDialogFragment.java +++ b/src/com/android/incallui/PostCharDialogFragment.java @@ -29,9 +29,15 @@ import android.view.WindowManager; */ public class PostCharDialogFragment extends DialogFragment { + private static final String STATE_CALL_ID = "CALL_ID"; + private static final String STATE_POST_CHARS = "POST_CHARS"; + private String mCallId; private String mPostDialStr; + public PostCharDialogFragment() { + } + public PostCharDialogFragment(String callId, String postDialStr) { mCallId = callId; mPostDialStr = postDialStr; @@ -41,6 +47,11 @@ public class PostCharDialogFragment extends DialogFragment { public Dialog onCreateDialog(Bundle savedInstanceState) { super.onCreateDialog(savedInstanceState); + if (mPostDialStr == null && savedInstanceState != null) { + mCallId = savedInstanceState.getString(STATE_CALL_ID); + mPostDialStr = savedInstanceState.getString(STATE_POST_CHARS); + } + final StringBuilder buf = new StringBuilder(); buf.append(getResources().getText(R.string.wait_prompt_str)); buf.append(mPostDialStr); @@ -71,4 +82,12 @@ public class PostCharDialogFragment extends DialogFragment { TelecomAdapter.getInstance().postDialContinue(mCallId, false); } + + @Override + public void onSaveInstanceState(Bundle outState) { + super.onSaveInstanceState(outState); + + outState.putString(STATE_CALL_ID, mCallId); + outState.putString(STATE_POST_CHARS, mPostDialStr); + } } |