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

Commit ea7f228c authored by Linux Build Service Account's avatar Linux Build Service Account Committed by Gerrit - the friendly Code Review server
Browse files

Merge "Conference timer alignment"

parents 375a886b 96b1aa42
Loading
Loading
Loading
Loading
+10 −1
Original line number Diff line number Diff line
@@ -34,6 +34,7 @@ import java.util.concurrent.CopyOnWriteArraySet;
@SystemApi
public abstract class Conference implements IConferenceable {

    public static final long NO_CONNECTTIME = 0;
    /** @hide */
    public abstract static class Listener {
        public void onStateChanged(Conference conference, int oldState, int newState) {}
@@ -62,7 +63,7 @@ public abstract class Conference implements IConferenceable {
    private DisconnectCause mDisconnectCause;
    private int mCapabilities;
    private String mDisconnectMessage;

    private long mConnectTimeMillis = NO_CONNECTTIME;
    private final Connection.Listener mConnectionDeathListener = new Connection.Listener() {
        @Override
        public void onDestroyed(Connection c) {
@@ -410,6 +411,14 @@ public abstract class Conference implements IConferenceable {
        return mUnmodifiableChildConnections.get(0);
    }

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

    public long getConnectTimeMillis() {
        return mConnectTimeMillis;
    }

    /**
     * Inform this Conference that the state of its audio output has been changed externally.
     *
+2 −1
Original line number Diff line number Diff line
@@ -1003,7 +1003,8 @@ public abstract class ConnectionService extends Service {
                    connectionIds,
                    conference.getVideoProvider() == null ?
                            null : conference.getVideoProvider().getInterface(),
                    conference.getVideoState()
                    conference.getVideoState(),
                    conference.getConnectTimeMillis()
                    );
            mAdapter.addConferenceCall(id, parcelableConference);
            mAdapter.setVideoProvider(id, conference.getVideoProvider());
+23 −2
Original line number Diff line number Diff line
@@ -36,7 +36,7 @@ public final class ParcelableConference implements Parcelable {
    private List<String> mConnectionIds;
    private final IVideoProvider mVideoProvider;
    private final int mVideoState;

    private long mConnectTimeMillis;

    public ParcelableConference(
            PhoneAccountHandle phoneAccount,
@@ -45,12 +45,25 @@ public final class ParcelableConference implements Parcelable {
            List<String> connectionIds,
            IVideoProvider videoProvider,
            int videoState) {
       this(phoneAccount, state, capabilities, connectionIds, videoProvider, videoState,
               Conference.NO_CONNECTTIME);
    }

    public ParcelableConference(
            PhoneAccountHandle phoneAccount,
            int state,
            int capabilities,
            List<String> connectionIds,
            IVideoProvider videoProvider,
            int videoState,
            long oldConnectTimeMillis) {
        mPhoneAccount = phoneAccount;
        mState = state;
        mCapabilities = capabilities;
        mConnectionIds = connectionIds;
        mVideoProvider = videoProvider;
        mVideoState = videoState;
        mConnectTimeMillis = oldConnectTimeMillis;
    }

    @Override
@@ -62,6 +75,8 @@ public final class ParcelableConference implements Parcelable {
                .append(Connection.stateToString(mState))
                .append(", capabilities: ")
                .append(PhoneCapabilities.toString(mCapabilities))
                .append(", connectTime: ")
                .append(mConnectTimeMillis)
                .append(", children: ")
                .append(mConnectionIds)
                .append(", VideoState: ")
@@ -95,6 +110,10 @@ public final class ParcelableConference implements Parcelable {
        return mVideoState;
    }

    public long getConnectTimeMillis() {
        return mConnectTimeMillis;
    }

    public static final Parcelable.Creator<ParcelableConference> CREATOR =
            new Parcelable.Creator<ParcelableConference> () {
        @Override
@@ -108,9 +127,10 @@ public final class ParcelableConference implements Parcelable {
            IVideoProvider videoCallProvider =
                    IVideoProvider.Stub.asInterface(source.readStrongBinder());
            int videoState = source.readInt();
            long oldConnectTimeMillis = source.readLong();

            return new ParcelableConference(phoneAccount, state, capabilities, connectionIds,
                    videoCallProvider, videoState);
                    videoCallProvider, videoState, oldConnectTimeMillis);
        }

        @Override
@@ -135,5 +155,6 @@ public final class ParcelableConference implements Parcelable {
        destination.writeStrongBinder(
                mVideoProvider != null ? mVideoProvider.asBinder() : null);
        destination.writeInt(mVideoState);
        destination.writeLong(mConnectTimeMillis);
    }
}