diff options
author | cdu <cdu@codeaurora.org> | 2014-10-22 14:01:15 +0800 |
---|---|---|
committer | Matt Garnes <matt@cyngn.com> | 2014-11-13 17:48:11 -0800 |
commit | 6077381655dad9efdb20ae9e011943be5137ab38 (patch) | |
tree | 339923894609399064514258457b2c104f7e1af8 /src/com/android | |
parent | 42569f1acc126ef234ddb07fdf012131c5c00948 (diff) | |
download | android_packages_apps_Dialer-6077381655dad9efdb20ae9e011943be5137ab38.tar.gz android_packages_apps_Dialer-6077381655dad9efdb20ae9e011943be5137ab38.tar.bz2 android_packages_apps_Dialer-6077381655dad9efdb20ae9e011943be5137ab38.zip |
CSVT: Enable CSVT function.
Add entry in Dialpad/CallLog.
Change-Id: I35a56ca69d2b2aa9fc5661d78bd9c6c71584cc15
Diffstat (limited to 'src/com/android')
7 files changed, 49 insertions, 4 deletions
diff --git a/src/com/android/dialer/CallDetailActivity.java b/src/com/android/dialer/CallDetailActivity.java index b3cb65922..3091780e0 100755 --- a/src/com/android/dialer/CallDetailActivity.java +++ b/src/com/android/dialer/CallDetailActivity.java @@ -737,6 +737,8 @@ public class CallDetailActivity extends AnalyticsActivity implements ProximitySe menu.findItem(R.id.menu_edit_number_before_call).setVisible(mHasEditNumberBeforeCallOption); menu.findItem(R.id.menu_trash).setVisible(mHasTrashOption); + menu.findItem(R.id.menu_video_call).setVisible(CallUtil.isCSVTEnabled()); + menu.findItem(R.id.menu_ip_call_by_slot1).setVisible(mHasSub1IpCallOption); menu.findItem(R.id.menu_ip_call_by_slot2).setVisible(mHasSub2IpCallOption); @@ -754,6 +756,14 @@ public class CallDetailActivity extends AnalyticsActivity implements ProximitySe return super.onPrepareOptionsMenu(menu); } + public void onMenuVideoCall(MenuItem menuItem) { + if (CallUtil.isCSVTEnabled()) { + startActivity(CallUtil.getCSVTCallIntent(mNumber)); + } else if (false) { + //add support for ims video call; + } + } + public void onMenuIpCallBySlot1(MenuItem menuItem) { String prefix = MoreContactUtils.getIPCallPrefix(this, PhoneConstants.SUB1); if (!TextUtils.isEmpty(prefix)) { diff --git a/src/com/android/dialer/DialtactsActivity.java b/src/com/android/dialer/DialtactsActivity.java index 7d24926b6..ad6cc5a9c 100644 --- a/src/com/android/dialer/DialtactsActivity.java +++ b/src/com/android/dialer/DialtactsActivity.java @@ -1202,6 +1202,11 @@ public class DialtactsActivity extends TransactionSafeActivity implements View.O @Override public void onCallNumberDirectly(String phoneNumber, boolean isVideoCall) { + if (isVideoCall && CallUtil.isCSVTEnabled()){ + this.startActivity(CallUtil.getCSVTCallIntent(phoneNumber)); + mClearSearchOnPause = true; + return; + } Intent intent = isVideoCall ? CallUtil.getVideoCallIntent(phoneNumber, getCallOrigin()) : CallUtil.getCallIntent(phoneNumber, getCallOrigin()); diff --git a/src/com/android/dialer/calllog/CallLogAdapter.java b/src/com/android/dialer/calllog/CallLogAdapter.java index 589d80ec2..fcce7736c 100755 --- a/src/com/android/dialer/calllog/CallLogAdapter.java +++ b/src/com/android/dialer/calllog/CallLogAdapter.java @@ -1019,6 +1019,17 @@ public class CallLogAdapter extends GroupingListAdapter views.videoCallButtonView.setVisibility(View.GONE); } + // if csvt is enabled, shoue video call options. + if (CallUtil.isCSVTEnabled() && canPlaceCallToNumber) { + views.videoCallButtonView.setTag( + IntentProvider.getReturnCSVTCallIntentProvider(views.number)); + views.videoCallButtonView.setVisibility(View.VISIBLE); + views.videoCallButtonView.setOnClickListener(mActionListener); + } else { + views.videoCallButtonView.setTag(null); + views.videoCallButtonView.setVisibility(View.GONE); + } + // For voicemail calls, show the "VOICEMAIL" action button; hide otherwise. if (views.callType == Calls.VOICEMAIL_TYPE) { views.voicemailButtonView.setOnClickListener(mActionListener); diff --git a/src/com/android/dialer/calllog/IntentProvider.java b/src/com/android/dialer/calllog/IntentProvider.java index 874d4ca6b..76b458a68 100644 --- a/src/com/android/dialer/calllog/IntentProvider.java +++ b/src/com/android/dialer/calllog/IntentProvider.java @@ -65,6 +65,15 @@ public abstract class IntentProvider { }; } + public static IntentProvider getReturnCSVTCallIntentProvider(final String number) { + return new IntentProvider() { + @Override + public Intent getIntent(Context context) { + return CallUtil.getCSVTCallIntent(number); + } + }; + } + public static IntentProvider getPlayVoicemailIntentProvider(final long rowId, final String voicemailUri) { return new IntentProvider() { diff --git a/src/com/android/dialer/dialpad/DialpadFragment.java b/src/com/android/dialer/dialpad/DialpadFragment.java index 742bce3ef..20a00dd12 100644 --- a/src/com/android/dialer/dialpad/DialpadFragment.java +++ b/src/com/android/dialer/dialpad/DialpadFragment.java @@ -928,6 +928,9 @@ public class DialpadFragment extends AnalyticsFragment ipCallBySlot2.setVisible(false); } + final MenuItem VideoCallOption = menu.findItem(R.id.menu_video_call); + VideoCallOption.setVisible(CallUtil.isCSVTEnabled()); + boolean enable = !isDigitsEmpty(); for (int i = 0; i < menu.size(); i++) { menu.getItem(i).setEnabled(enable); @@ -1664,6 +1667,13 @@ public class DialpadFragment extends AnalyticsFragment case R.id.menu_ip_call_by_slot2: ipCallBySlot(PhoneConstants.SUB2); return true; + case R.id.menu_video_call: + final String number = mDigits.getText().toString(); + if (CallUtil.isCSVTEnabled()) { + getActivity().startActivity(CallUtil.getCSVTCallIntent(number)); + } else if (false) { + //add support for ims video call; + } default: return false; } diff --git a/src/com/android/dialer/list/RegularSearchListAdapter.java b/src/com/android/dialer/list/RegularSearchListAdapter.java index f1f2ae039..7f45a68b7 100644 --- a/src/com/android/dialer/list/RegularSearchListAdapter.java +++ b/src/com/android/dialer/list/RegularSearchListAdapter.java @@ -75,8 +75,8 @@ public class RegularSearchListAdapter extends DialerPhoneNumberListAdapter { // a dialable number, then clicking add to contact should add it as a number. // Otherwise, it should add it to a new contact as a name. changed |= setShortcutEnabled(SHORTCUT_ADD_NUMBER_TO_CONTACTS, showNumberShortcuts); - changed |= setShortcutEnabled(SHORTCUT_MAKE_VIDEO_CALL, - showNumberShortcuts && CallUtil.isVideoEnabled(getContext())); + changed |= setShortcutEnabled(SHORTCUT_MAKE_VIDEO_CALL, showNumberShortcuts + && (CallUtil.isVideoEnabled(getContext()) || CallUtil.isCSVTEnabled())); if (changed) { notifyDataSetChanged(); } diff --git a/src/com/android/dialer/list/SmartDialNumberListAdapter.java b/src/com/android/dialer/list/SmartDialNumberListAdapter.java index d7e58a231..f2cd1a69a 100644 --- a/src/com/android/dialer/list/SmartDialNumberListAdapter.java +++ b/src/com/android/dialer/list/SmartDialNumberListAdapter.java @@ -120,8 +120,8 @@ public class SmartDialNumberListAdapter extends DialerPhoneNumberListAdapter { final boolean showNumberShortcuts = !TextUtils.isEmpty(getFormattedQueryString()); boolean changed = false; changed |= setShortcutEnabled(SHORTCUT_ADD_NUMBER_TO_CONTACTS, showNumberShortcuts); - changed |= setShortcutEnabled(SHORTCUT_MAKE_VIDEO_CALL, - showNumberShortcuts && CallUtil.isVideoEnabled(getContext())); + changed |= setShortcutEnabled(SHORTCUT_MAKE_VIDEO_CALL, showNumberShortcuts + && (CallUtil.isVideoEnabled(getContext()) || CallUtil.isCSVTEnabled())); if (changed) { notifyDataSetChanged(); } |