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

Commit ff77ca6b authored by Mengjun Leng's avatar Mengjun Leng Committed by android-build-merger
Browse files

Telecom: Reset the duration after the CDMA call is accepted am: 79fe82a8 am: 2586a209

am: e157dae9

Change-Id: I0164f0b24b89236220fc1f512ac992681bf2e494
parents b15287b0 e157dae9
Loading
Loading
Loading
Loading
+4 −0
Original line number Original line Diff line number Diff line
@@ -1407,6 +1407,10 @@ public class Call implements CreateConnectionResponse, EventManager.Loggable,
        return mConnectTimeMillis;
        return mConnectTimeMillis;
    }
    }


    public void setConnectTimeMillis(long connectTimeMillis) {
        mConnectTimeMillis = connectTimeMillis;
    }

    int getConnectionCapabilities() {
    int getConnectionCapabilities() {
        return mConnectionCapabilities;
        return mConnectionCapabilities;
    }
    }
+10 −0
Original line number Original line Diff line number Diff line
@@ -130,6 +130,7 @@ public class CallsManager extends Call.ListenerBase
        void onHoldToneRequested(Call call);
        void onHoldToneRequested(Call call);
        void onExternalCallChanged(Call call, boolean isExternalCall);
        void onExternalCallChanged(Call call, boolean isExternalCall);
        void onDisconnectedTonePlaying(boolean isTonePlaying);
        void onDisconnectedTonePlaying(boolean isTonePlaying);
        void onConnectionTimeChanged(Call call);
    }
    }


    /** Interface used to define the action which is executed delay under some condition. */
    /** Interface used to define the action which is executed delay under some condition. */
@@ -3954,4 +3955,13 @@ public class CallsManager extends Call.ListenerBase
            }
            }
        }
        }
    }
    }

    public void resetConnectionTime(Call call) {
        call.setConnectTimeMillis(System.currentTimeMillis());
        if (mCalls.contains(call)) {
            for (CallsManagerListener listener : mListeners) {
                listener.onConnectionTimeChanged(call);
            }
        }
    }
}
}
+4 −0
Original line number Original line Diff line number Diff line
@@ -92,4 +92,8 @@ public class CallsManagerListenerBase implements CallsManager.CallsManagerListen
    @Override
    @Override
    public void onDisconnectedTonePlaying(boolean isTonePlaying) {
    public void onDisconnectedTonePlaying(boolean isTonePlaying) {
    }
    }

    @Override
    public void onConnectionTimeChanged(Call call) {
    }
}
}
+20 −0
Original line number Original line Diff line number Diff line
@@ -144,6 +144,26 @@ public class ConnectionServiceWrapper extends ServiceBinder implements
            }
            }
        }
        }


        @Override
        public void resetConnectionTime(String callId, Session.Info sessionInfo) {
            Log.startSession(sessionInfo, "CSW.rCCT");
            long token = Binder.clearCallingIdentity();
            try {
                synchronized (mLock) {
                    logIncoming("resetConnectionTime %s", callId);
                    Call call = mCallIdMapper.getCall(callId);
                    if (call != null) {
                        mCallsManager.resetConnectionTime(call);
                    } else {
                        // Log.w(this, "resetConnectionTime, unknown call id: %s", msg.obj);
                    }
                }
            } finally {
                Binder.restoreCallingIdentity(token);
                Log.endSession();
            }
        }

        @Override
        @Override
        public void setVideoProvider(String callId, IVideoProvider videoProvider,
        public void setVideoProvider(String callId, IVideoProvider videoProvider,
                Session.Info sessionInfo) {
                Session.Info sessionInfo) {
+6 −0
Original line number Original line Diff line number Diff line
@@ -960,6 +960,12 @@ public class InCallController extends CallsManagerListenerBase {
        updateCall(call);
        updateCall(call);
    }
    }


    @Override
    public void onConnectionTimeChanged(Call call) {
        Log.d(this, "onConnectionTimeChanged %s", call);
        updateCall(call);
    }

    void bringToForeground(boolean showDialpad) {
    void bringToForeground(boolean showDialpad) {
        if (!mInCallServices.isEmpty()) {
        if (!mInCallServices.isEmpty()) {
            for (IInCallService inCallService : mInCallServices.values()) {
            for (IInCallService inCallService : mInCallServices.values()) {