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

Commit 3e909052 authored by Sailesh Nepal's avatar Sailesh Nepal Committed by Android (Google) Code Review
Browse files

Merge "Add Connection.setCallCapabilities"

parents 4f6c2050 1a7061ba
Loading
Loading
Loading
Loading
+4 −2
Original line number Diff line number Diff line
@@ -27634,13 +27634,13 @@ package android.telecomm {
    ctor protected Connection();
    method public final boolean getAudioModeIsVoip();
    method public final android.telecomm.CallAudioState getCallAudioState();
    method public final int getCallCapabilities();
    method public final java.util.List<android.telecomm.Connection> getChildConnections();
    method public final int getFeatures();
    method public final android.net.Uri getHandle();
    method public final android.telecomm.Connection getParentConnection();
    method public final int getState();
    method public final android.telecomm.StatusHints getStatusHints();
    method public final boolean isConferenceCapable();
    method public final boolean isConferenceConnection();
    method public final boolean isRequestingRingback();
    method protected void onAbort();
@@ -27659,13 +27659,13 @@ package android.telecomm {
    method protected void onUnhold();
    method public final void setActive();
    method public final void setAudioModeIsVoip(boolean);
    method public final void setCallCapabilities(int);
    method public final void setCallVideoProvider(android.telecomm.CallVideoProvider);
    method public final void setDestroyed();
    method public final void setDialing();
    method public final void setDisconnected(int, java.lang.String);
    method public final void setFeatures(int);
    method public final void setHandle(android.net.Uri);
    method public final void setIsConferenceCapable(boolean);
    method public final void setOnHold();
    method public final void setParentConnection(android.telecomm.Connection);
    method public final void setPostDialWait(java.lang.String);
@@ -27822,6 +27822,7 @@ package android.telecomm {
    method public void answer();
    method public void disconnect();
    method public boolean getAudioModeIsVoip();
    method public int getCallCapabilities();
    method public int getDisconnectCause();
    method public java.lang.String getDisconnectMessage();
    method public int getFeatures();
@@ -27838,6 +27839,7 @@ package android.telecomm {
  }
  public static abstract interface RemoteConnection.Listener {
    method public abstract void onCallCapabilitiesChanged(android.telecomm.RemoteConnection, int);
    method public abstract void onDestroyed(android.telecomm.RemoteConnection);
    method public abstract void onDisconnected(android.telecomm.RemoteConnection, int, java.lang.String);
    method public abstract void onFeaturesChanged(android.telecomm.RemoteConnection, int);
+13 −11
Original line number Diff line number Diff line
@@ -41,7 +41,7 @@ public abstract class Connection {
        void onPostDialWait(Connection c, String remaining);
        void onRequestingRingback(Connection c, boolean ringback);
        void onDestroyed(Connection c);
        void onConferenceCapableChanged(Connection c, boolean isConferenceCapable);
        void onCallCapabilitiesChanged(Connection c, int callCapabilities);
        void onParentConnectionChanged(Connection c, Connection parent);
        void onSetCallVideoProvider(Connection c, CallVideoProvider callVideoProvider);
        void onSetAudioModeIsVoip(Connection c, boolean isVoip);
@@ -76,7 +76,7 @@ public abstract class Connection {
        public void onRequestingRingback(Connection c, boolean ringback) {}

        @Override
        public void onConferenceCapableChanged(Connection c, boolean isConferenceCapable) {}
        public void onCallCapabilitiesChanged(Connection c, int callCapabilities) {}

        @Override
        public void onParentConnectionChanged(Connection c, Connection parent) {}
@@ -110,7 +110,7 @@ public abstract class Connection {
    private CallAudioState mCallAudioState;
    private Uri mHandle;
    private boolean mRequestingRingback = false;
    private boolean mIsConferenceCapable = false;
    private int mCallCapabilities;
    private Connection mParentConnection;
    private boolean mAudioModeIsVoip;
    private StatusHints mStatusHints;
@@ -279,10 +279,10 @@ public abstract class Connection {
    }

    /**
     * Returns whether this connection is capable of being conferenced.
     * Returns the connection's {@link CallCapabilities}
     */
    public final boolean isConferenceCapable() {
        return mIsConferenceCapable;
    public final int getCallCapabilities() {
        return mCallCapabilities;
    }

    /**
@@ -394,13 +394,15 @@ public abstract class Connection {
    }

    /**
     * TODO(santoscordon): Needs documentation.
     * Sets the connection's {@link CallCapabilities}.
     *
     * @param callCapabilities The new call capabilities.
     */
    public final void setIsConferenceCapable(boolean isConferenceCapable) {
        if (mIsConferenceCapable != isConferenceCapable) {
            mIsConferenceCapable = isConferenceCapable;
    public final void setCallCapabilities(int callCapabilities) {
        if (mCallCapabilities != callCapabilities) {
            mCallCapabilities = callCapabilities;
            for (Listener l : mListeners) {
                l.onConferenceCapableChanged(this, mIsConferenceCapable);
                l.onCallCapabilitiesChanged(this, mCallCapabilities);
            }
        }
    }
+2 −2
Original line number Diff line number Diff line
@@ -346,9 +346,9 @@ public abstract class ConnectionService extends Service {
        }

        @Override
        public void onConferenceCapableChanged(Connection c, boolean isConferenceCapable) {
        public void onCallCapabilitiesChanged(Connection c, int callCapabilities) {
            String id = mIdByConnection.get(c);
            mAdapter.setCanConference(id, isConferenceCapable);
            mAdapter.setCallCapabilities(id, callCapabilities);
        }

        /** ${inheritDoc} */
+2 −8
Original line number Diff line number Diff line
@@ -221,16 +221,10 @@ final class ConnectionServiceAdapter implements DeathRecipient {
        }
    }

    /**
     * Indicates that the specified call can conference with any of the specified list of calls.
     *
     * @param callId The unique ID of the call.
     * @param canConference Specified whether or not the call can be conferenced.
     */
    void setCanConference(String callId, boolean canConference) {
    void setCallCapabilities(String callId, int capabilities) {
        for (IConnectionServiceAdapter adapter : mAdapters) {
            try {
                adapter.setCanConference(callId, canConference);
                adapter.setCallCapabilities(callId, capabilities);
            } catch (RemoteException ignored) {
            }
        }
+16 −0
Original line number Diff line number Diff line
@@ -35,6 +35,7 @@ public final class RemoteConnection {
        void onStateChanged(RemoteConnection connection, int state);
        void onDisconnected(RemoteConnection connection, int cause, String message);
        void onRequestingRingback(RemoteConnection connection, boolean ringback);
        void onCallCapabilitiesChanged(RemoteConnection connection, int callCapabilities);
        void onPostDialWait(RemoteConnection connection, String remainingDigits);
        void onFeaturesChanged(RemoteConnection connection, int features);
        void onSetAudioModeIsVoip(RemoteConnection connection, boolean isVoip);
@@ -51,6 +52,7 @@ public final class RemoteConnection {
    private String mDisconnectMessage;
    private boolean mRequestingRingback;
    private boolean mConnected;
    private int mCallCapabilities;
    private int mFeatures;
    private boolean mAudioModeIsVoip;
    private StatusHints mStatusHints;
@@ -85,6 +87,10 @@ public final class RemoteConnection {
        return mDisconnectMessage;
    }

    public int getCallCapabilities() {
        return mCallCapabilities;
    }

    public int getFeatures() {
        return mFeatures;
    }
@@ -226,6 +232,16 @@ public final class RemoteConnection {
        }
    }

    /**
     * @hide
     */
    void setCallCapabilities(int callCapabilities) {
        mCallCapabilities = callCapabilities;
        for (Listener l : mListeners) {
            l.onCallCapabilitiesChanged(this, callCapabilities);
        }
    }

    /**
     * @hide
     */
Loading