Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 98a3a5bf authored by pengfeix's avatar pengfeix Committed by Linux Build Service Account
Browse files

IMS-VT: For incoming VT calls with one-way video direction

-If modem populates VT-RX to the UI, the UI shall only allow the
user to have the following options: Video-Receive/Voice/Reject (i.e. no
Video-Transmit nor Video-TwoWays)
-If modem populates VT-TX to the UI, the UI shall only allow the
user to have the following options: Video-Transmit/Voice/Reject (i.e. no
Video-Receive nor Video-TwoWays)
Change-Id: I1e945ce9784901eadae34d7dd546c412c35c62d1
CRs-Fixed: 1019380
parent 89e9d328
Loading
Loading
Loading
Loading
+94 −0
Original line number Diff line number Diff line
@@ -59,6 +59,52 @@
        <item>@string/description_direction_down</item>
    </array>

    <!-- For video transmit(Tx), if respond via SMS is disabled:
         - Answer as video transmit(Tx) (drag right)
         - Decline (drag left)
         - Answer as audio call (drag down) -->
    <array name="qti_incoming_call_widget_tx_video_without_sms_targets">
        <item>@drawable/qti_ic_lockscreen_answer_tx_video</item>
        <item>@null</item>
        <item>@drawable/ic_lockscreen_decline</item>
        <item>@drawable/ic_lockscreen_answer</item>>
    </array>
    <array name="qti_incoming_call_widget_tx_video_without_sms_target_descriptions">
        <item>@string/description_target_answer_video_call</item>
        <item>@null</item>
        <item>@string/description_target_decline</item>
        <item>@string/description_target_answer_audio_call</item>
    </array>
    <array name="qti_incoming_call_widget_tx_video_without_sms_direction_descriptions">
        <item>@string/description_direction_right</item>
        <item>@null</item>
        <item>@string/description_direction_left</item>
        <item>@string/description_direction_down</item>
    </array>

    <!-- For video receive(Rx), if respond via SMS is disabled:
         - Answer as video receive(Rx) (drag right)
         - Decline (drag left)
         - Answer as audio call (drag down) -->
    <array name="qti_incoming_call_widget_rx_video_without_sms_targets">
        <item>@drawable/qti_ic_lockscreen_answer_rx_video</item>
        <item>@null</item>
        <item>@drawable/ic_lockscreen_decline</item>
        <item>@drawable/ic_lockscreen_answer</item>>
    </array>
    <array name="qti_incoming_call_widget_rx_video_without_sms_target_descriptions">
        <item>@string/description_target_answer_video_call</item>
        <item>@null</item>
        <item>@string/description_target_decline</item>
        <item>@string/description_target_answer_audio_call</item>
    </array>
    <array name="qti_incoming_call_widget_rx_video_without_sms_direction_descriptions">
        <item>@string/description_direction_right</item>
        <item>@null</item>
        <item>@string/description_direction_left</item>
        <item>@string/description_direction_down</item>
    </array>

    <!-- For video calls, if respond via SMS is enabled:
         - Answer as video call (drag right)
         - Respond via SMS (drag up)
@@ -85,6 +131,54 @@
        <item>@string/description_direction_down</item>
    </array>

    <!-- For video transmit(Tx) calls, if respond via SMS is enabled:
         - Answer as video transmit(Tx) call (drag right)
         - Respond via SMS (drag up)
         - Decline (drag left)
         - Answer as audio call (drag down) -->
    <array name="qti_incoming_call_widget_tx_video_with_sms_targets">
        <item>@drawable/qti_ic_lockscreen_answer_tx_video</item>
        <item>@drawable/ic_lockscreen_text</item>
        <item>@drawable/ic_lockscreen_decline</item>
        <item>@drawable/ic_lockscreen_answer</item>
    </array>
    <array name="qti_incoming_call_widget_tx_video_with_sms_target_descriptions">
        <item>@string/description_target_answer_video_call</item>
        <item>@string/description_target_send_sms</item>
        <item>@string/description_target_decline</item>
        <item>@string/description_target_answer_audio_call</item>
    </array>
    <array name="qti_incoming_call_widget_tx_video_with_sms_direction_descriptions">
        <item>@string/description_direction_right</item>
        <item>@string/description_direction_up</item>
        <item>@string/description_direction_left</item>
        <item>@string/description_direction_down</item>
    </array>

    <!-- For video receive(Rx) calls, if respond via SMS is enabled:
         - Answer as video receive call (drag right)
         - Respond via SMS (drag up)
         - Decline (drag left)
         - Answer as audio call (drag down) -->
    <array name="qti_incoming_call_widget_rx_video_with_sms_targets">
        <item>@drawable/qti_ic_lockscreen_answer_rx_video</item>
        <item>@drawable/ic_lockscreen_text</item>
        <item>@drawable/ic_lockscreen_decline</item>
        <item>@drawable/ic_lockscreen_answer</item>
    </array>
    <array name="qti_incoming_call_widget_rx_video_with_sms_target_descriptions">
        <item>@string/description_target_answer_video_call</item>
        <item>@string/description_target_send_sms</item>
        <item>@string/description_target_decline</item>
        <item>@string/description_target_answer_audio_call</item>
    </array>
    <array name="qti_incoming_call_widget_rx_video_with_sms_direction_descriptions">
        <item>@string/description_direction_right</item>
        <item>@string/description_direction_up</item>
        <item>@string/description_direction_left</item>
        <item>@string/description_direction_down</item>
    </array>

    <!-- For accept/reject upgrade to video in active video call
         - Accept upgrade to video request (drag right)
         - Decline upgrade to video request (drag left)-->
+4 −0
Original line number Diff line number Diff line
@@ -59,6 +59,10 @@ public abstract class AnswerFragment extends BaseFragment<AnswerPresenter, Answe
    public static final int TARGET_SET_FOR_QTI_VIDEO_RECEIVE_ACCEPT_REJECT_REQUEST = 1006;
    public static final int TARGET_SET_FOR_QTI_AUDIO_WITHOUT_SMS = 1007;
    public static final int TARGET_SET_FOR_QTI_AUDIO_WITH_SMS = 1008;
    public static final int TARGET_SET_FOR_QTI_VIDEO_TRANSMIT_ACCEPT_REJECT_WITHOUT_SMS = 1009;
    public static final int TARGET_SET_FOR_QTI_VIDEO_TRANSMIT_ACCEPT_REJECT_WITH_SMS = 1010;
    public static final int TARGET_SET_FOR_QTI_VIDEO_RECEIVE_ACCEPT_REJECT_WITHOUT_SMS = 1011;
    public static final int TARGET_SET_FOR_QTI_VIDEO_RECEIVE_ACCEPT_REJECT_WITH_SMS = 1012;

    /**
     * This fragment implement no UI at all. Derived class should do it.
+2 −2
Original line number Diff line number Diff line
@@ -411,11 +411,11 @@ public class AnswerPresenter extends Presenter<AnswerPresenter.AnswerUi>
        if (VideoUtils.isVideoCall(call)) {
            if (withSms) {
                getUi().showTargets(QtiCallUtils.getIncomingCallAnswerOptions(
                        getUi().getContext(), withSms));
                        getUi().getContext(), call.getVideoState(), withSms));
                getUi().configureMessageDialog(textMsgs);
            } else {
                getUi().showTargets(QtiCallUtils.getIncomingCallAnswerOptions(
                        getUi().getContext(), withSms));
                        getUi().getContext(), call.getVideoState(), withSms));
            }
        } else if (isCallDeflectSupported()) {
            /**
+36 −0
Original line number Diff line number Diff line
@@ -142,6 +142,42 @@ public class GlowPadAnswerFragment extends AnswerFragment {
                        R.array.qti_incoming_call_widget_video_with_sms_direction_descriptions;
                handleDrawableResourceId = R.drawable.ic_incall_video_handle;
                break;
            case TARGET_SET_FOR_QTI_VIDEO_TRANSMIT_ACCEPT_REJECT_WITHOUT_SMS:
                targetResourceId =
                    R.array.qti_incoming_call_widget_tx_video_without_sms_targets;
                targetDescriptionsResourceId =
                    R.array.qti_incoming_call_widget_tx_video_without_sms_target_descriptions;
                directionDescriptionsResourceId =
                    R.array.qti_incoming_call_widget_tx_video_without_sms_direction_descriptions;
                handleDrawableResourceId = R.drawable.ic_incall_video_handle;
                break;
            case TARGET_SET_FOR_QTI_VIDEO_TRANSMIT_ACCEPT_REJECT_WITH_SMS:
                targetResourceId =
                    R.array.qti_incoming_call_widget_tx_video_with_sms_targets;
                targetDescriptionsResourceId =
                    R.array.qti_incoming_call_widget_tx_video_with_sms_target_descriptions;
                directionDescriptionsResourceId =
                    R.array.qti_incoming_call_widget_tx_video_with_sms_direction_descriptions;
                handleDrawableResourceId = R.drawable.ic_incall_video_handle;
                break;
            case TARGET_SET_FOR_QTI_VIDEO_RECEIVE_ACCEPT_REJECT_WITHOUT_SMS:
                targetResourceId =
                    R.array.qti_incoming_call_widget_rx_video_without_sms_targets;
                targetDescriptionsResourceId =
                    R.array.qti_incoming_call_widget_rx_video_without_sms_target_descriptions;
                directionDescriptionsResourceId =
                    R.array.qti_incoming_call_widget_rx_video_without_sms_direction_descriptions;
                handleDrawableResourceId = R.drawable.ic_incall_video_handle;
                break;
            case TARGET_SET_FOR_QTI_VIDEO_RECEIVE_ACCEPT_REJECT_WITH_SMS:
                targetResourceId =
                    R.array.qti_incoming_call_widget_rx_video_with_sms_targets;
                targetDescriptionsResourceId =
                    R.array.qti_incoming_call_widget_rx_video_with_sms_target_descriptions;
                directionDescriptionsResourceId =
                    R.array.qti_incoming_call_widget_rx_video_with_sms_direction_descriptions;
                handleDrawableResourceId = R.drawable.ic_incall_video_handle;
                break;
            case TARGET_SET_FOR_QTI_VIDEO_ACCEPT_REJECT_REQUEST:
                targetResourceId = R.array.qti_incoming_call_widget_video_request_targets;
                targetDescriptionsResourceId =
+15 −0
Original line number Diff line number Diff line
@@ -916,6 +916,21 @@ public class InCallPresenter implements CallList.Listener,
        }
    }

    /**
     * Answers any incoming call.
     */
    public void answerIncomingCall(Context context) {
        // By the time we receive this intent, we could be shut down and call list
        // could be null.  Bail in those cases.
        if (mCallList == null) {
            StatusBarNotifier.clearAllCallNotifications(context);
            return;
        }

        Call call = mCallList.getIncomingCall();
        answerIncomingCall(context, call.getVideoState());
    }

    /**
     * Answers any incoming call.
     */
Loading