12fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Cheng/* 22fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Cheng * Copyright (C) 2013 The Android Open Source Project 32fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Cheng * 42fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Cheng * Licensed under the Apache License, Version 2.0 (the "License"); 52fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Cheng * you may not use this file except in compliance with the License. 62fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Cheng * You may obtain a copy of the License at 72fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Cheng * 82fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Cheng * http://www.apache.org/licenses/LICENSE-2.0 92fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Cheng * 102fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Cheng * Unless required by applicable law or agreed to in writing, software 112fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Cheng * distributed under the License is distributed on an "AS IS" BASIS, 122fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Cheng * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 132fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Cheng * See the License for the specific language governing permissions and 142fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Cheng * limitations under the License. 152fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Cheng */ 162fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Cheng 172fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Chengpackage com.android.incallui; 182fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Cheng 192fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Chengimport android.app.AlertDialog; 202fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Chengimport android.app.Dialog; 212fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Chengimport android.app.DialogFragment; 222fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Chengimport android.content.DialogInterface; 232fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Chengimport android.os.Bundle; 242fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Chengimport android.view.WindowManager; 252fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Cheng 262fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Cheng/** 272fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Cheng * Pop up an alert dialog with OK and Cancel buttons to allow user to Accept or Reject the WAIT 282fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Cheng * inserted as part of the Dial string. 292fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Cheng */ 302fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Chengpublic class PostCharDialogFragment extends DialogFragment { 312fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Cheng 326af0c61c32da6cfb400168ae3b0cf9f802abfed4Sailesh Nepal private String mCallId; 332fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Cheng private String mPostDialStr; 342fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Cheng 356af0c61c32da6cfb400168ae3b0cf9f802abfed4Sailesh Nepal public PostCharDialogFragment(String callId, String postDialStr) { 362fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Cheng mCallId = callId; 372fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Cheng mPostDialStr = postDialStr; 382fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Cheng } 392fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Cheng 402fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Cheng @Override 412fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Cheng public Dialog onCreateDialog(Bundle savedInstanceState) { 422fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Cheng super.onCreateDialog(savedInstanceState); 432fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Cheng 442fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Cheng final StringBuilder buf = new StringBuilder(); 452fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Cheng buf.append(getResources().getText(R.string.wait_prompt_str)); 462fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Cheng buf.append(mPostDialStr); 472fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Cheng 482fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Cheng final AlertDialog.Builder builder = new AlertDialog.Builder(getActivity()); 492fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Cheng builder.setMessage(buf.toString()); 502fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Cheng 512fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Cheng builder.setPositiveButton(R.string.pause_prompt_yes, new DialogInterface.OnClickListener() { 522fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Cheng @Override 532fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Cheng public void onClick(DialogInterface dialog, int whichButton) { 546cddf46812634fadc194830774110780f14e9462Tyler Gunn TelecomAdapter.getInstance().postDialContinue(mCallId, true); 552fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Cheng } 562fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Cheng }); 572fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Cheng builder.setNegativeButton(R.string.pause_prompt_no, new DialogInterface.OnClickListener() { 582fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Cheng @Override 592fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Cheng public void onClick(DialogInterface dialog, int whichButton) { 602fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Cheng dialog.cancel(); 612fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Cheng } 622fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Cheng }); 632fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Cheng 642fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Cheng final AlertDialog dialog = builder.create(); 652fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Cheng dialog.getWindow().addFlags(WindowManager.LayoutParams.FLAG_BLUR_BEHIND); 662fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Cheng return dialog; 672fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Cheng } 682fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Cheng 692fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Cheng @Override 702fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Cheng public void onCancel(DialogInterface dialog) { 712fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Cheng super.onCancel(dialog); 722fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Cheng 736cddf46812634fadc194830774110780f14e9462Tyler Gunn TelecomAdapter.getInstance().postDialContinue(mCallId, false); 742fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Cheng } 752fa6baa2e70e26f6c6f3681e804c33677384fbd7Chiao Cheng} 76