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

Commit 14c3e88a authored by Tyler Gunn's avatar Tyler Gunn
Browse files

IMS-VT: Clear progress spinner when primary call changes

This is a cherry-pick of partner CL in mm-wireless-dev.

In use-cases wherein UE receives waiting call or user tries to add call
soon after initiating a modify request, progress spinner is not hidden.
Fix this by clearing the progress spinner when primary call changes.

Change-Id: I3a5b28e36af3c73e797924cdf1b3cb87815296f1
parent 5e545d75
Loading
Loading
Loading
Loading
+6 −0
Original line number Original line Diff line number Diff line
@@ -267,6 +267,9 @@ public class CallCardPresenter extends Presenter<CallCardPresenter.CallCardUi>
                ui.isCallSubjectVisible() != shouldShowCallSubject) {
                ui.isCallSubjectVisible() != shouldShowCallSubject) {
            // primary call has changed
            // primary call has changed
            if (previousPrimary != null) {
            if (previousPrimary != null) {
                //clear progess spinner (if any) related to previous primary call
                maybeShowProgressSpinner(previousPrimary.getState(),
                        Call.SessionModificationState.NO_REQUEST);
                CallList.getInstance().removeCallUpdateListener(previousPrimary.getId(), this);
                CallList.getInstance().removeCallUpdateListener(previousPrimary.getId(), this);
            }
            }
            CallList.getInstance().addCallUpdateListener(mPrimary.getId(), this);
            CallList.getInstance().addCallUpdateListener(mPrimary.getId(), this);
@@ -279,6 +282,9 @@ public class CallCardPresenter extends Presenter<CallCardPresenter.CallCardUi>
        }
        }


        if (previousPrimary != null && mPrimary == null) {
        if (previousPrimary != null && mPrimary == null) {
            //clear progess spinner (if any) related to previous primary call
            maybeShowProgressSpinner(previousPrimary.getState(),
                    Call.SessionModificationState.NO_REQUEST);
            CallList.getInstance().removeCallUpdateListener(previousPrimary.getId(), this);
            CallList.getInstance().removeCallUpdateListener(previousPrimary.getId(), this);
        }
        }