summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--api/current.txt30
-rw-r--r--api/system-current.txt30
-rw-r--r--telecomm/java/android/telecom/RemoteConnection.java47
3 files changed, 81 insertions, 26 deletions
diff --git a/api/current.txt b/api/current.txt
index 774374ef6018..de75e03fd48c 100644
--- a/api/current.txt
+++ b/api/current.txt
@@ -30418,6 +30418,8 @@ package android.telecom {
method public final android.os.Bundle getExtras();
method public int getState();
method public android.telecom.StatusHints getStatusHints();
+ method public final android.telecom.RemoteConnection.VideoProvider getVideoProvider();
+ method public int getVideoState();
method public void hold();
method public boolean isRingbackRequested();
method public boolean isVoipAudioMode();
@@ -30447,9 +30449,37 @@ package android.telecom {
method public void onRingbackRequested(android.telecom.RemoteConnection, boolean);
method public void onStateChanged(android.telecom.RemoteConnection, int);
method public void onStatusHintsChanged(android.telecom.RemoteConnection, android.telecom.StatusHints);
+ method public void onVideoProviderChanged(android.telecom.RemoteConnection, android.telecom.RemoteConnection.VideoProvider);
+ method public void onVideoStateChanged(android.telecom.RemoteConnection, int);
method public void onVoipAudioChanged(android.telecom.RemoteConnection, boolean);
}
+ public static class RemoteConnection.VideoProvider {
+ method public void registerCallback(android.telecom.RemoteConnection.VideoProvider.Callback);
+ method public void requestCallDataUsage();
+ method public void requestCameraCapabilities();
+ method public void sendSessionModifyRequest(android.telecom.VideoProfile, android.telecom.VideoProfile);
+ method public void sendSessionModifyResponse(android.telecom.VideoProfile);
+ method public void setCamera(java.lang.String);
+ method public void setDeviceOrientation(int);
+ method public void setDisplaySurface(android.view.Surface);
+ method public void setPauseImage(android.net.Uri);
+ method public void setPreviewSurface(android.view.Surface);
+ method public void setZoom(float);
+ method public void unregisterCallback(android.telecom.RemoteConnection.VideoProvider.Callback);
+ }
+
+ public static abstract class RemoteConnection.VideoProvider.Callback {
+ ctor public RemoteConnection.VideoProvider.Callback();
+ method public void onCallDataUsageChanged(android.telecom.RemoteConnection.VideoProvider, long);
+ method public void onCallSessionEvent(android.telecom.RemoteConnection.VideoProvider, int);
+ method public void onCameraCapabilitiesChanged(android.telecom.RemoteConnection.VideoProvider, android.telecom.VideoProfile.CameraCapabilities);
+ method public void onPeerDimensionsChanged(android.telecom.RemoteConnection.VideoProvider, int, int);
+ method public void onSessionModifyRequestReceived(android.telecom.RemoteConnection.VideoProvider, android.telecom.VideoProfile);
+ method public void onSessionModifyResponseReceived(android.telecom.RemoteConnection.VideoProvider, int, android.telecom.VideoProfile, android.telecom.VideoProfile);
+ method public void onVideoQualityChanged(android.telecom.RemoteConnection.VideoProvider, int);
+ }
+
public final class StatusHints implements android.os.Parcelable {
ctor public StatusHints(java.lang.CharSequence, android.graphics.drawable.Icon, android.os.Bundle);
method public int describeContents();
diff --git a/api/system-current.txt b/api/system-current.txt
index d75a9a08069d..e6a57df7fdc6 100644
--- a/api/system-current.txt
+++ b/api/system-current.txt
@@ -32602,6 +32602,8 @@ package android.telecom {
method public final android.os.Bundle getExtras();
method public int getState();
method public android.telecom.StatusHints getStatusHints();
+ method public final android.telecom.RemoteConnection.VideoProvider getVideoProvider();
+ method public int getVideoState();
method public void hold();
method public boolean isRingbackRequested();
method public boolean isVoipAudioMode();
@@ -32632,9 +32634,37 @@ package android.telecom {
method public void onRingbackRequested(android.telecom.RemoteConnection, boolean);
method public void onStateChanged(android.telecom.RemoteConnection, int);
method public void onStatusHintsChanged(android.telecom.RemoteConnection, android.telecom.StatusHints);
+ method public void onVideoProviderChanged(android.telecom.RemoteConnection, android.telecom.RemoteConnection.VideoProvider);
+ method public void onVideoStateChanged(android.telecom.RemoteConnection, int);
method public void onVoipAudioChanged(android.telecom.RemoteConnection, boolean);
}
+ public static class RemoteConnection.VideoProvider {
+ method public void registerCallback(android.telecom.RemoteConnection.VideoProvider.Callback);
+ method public void requestCallDataUsage();
+ method public void requestCameraCapabilities();
+ method public void sendSessionModifyRequest(android.telecom.VideoProfile, android.telecom.VideoProfile);
+ method public void sendSessionModifyResponse(android.telecom.VideoProfile);
+ method public void setCamera(java.lang.String);
+ method public void setDeviceOrientation(int);
+ method public void setDisplaySurface(android.view.Surface);
+ method public void setPauseImage(android.net.Uri);
+ method public void setPreviewSurface(android.view.Surface);
+ method public void setZoom(float);
+ method public void unregisterCallback(android.telecom.RemoteConnection.VideoProvider.Callback);
+ }
+
+ public static abstract class RemoteConnection.VideoProvider.Callback {
+ ctor public RemoteConnection.VideoProvider.Callback();
+ method public void onCallDataUsageChanged(android.telecom.RemoteConnection.VideoProvider, long);
+ method public void onCallSessionEvent(android.telecom.RemoteConnection.VideoProvider, int);
+ method public void onCameraCapabilitiesChanged(android.telecom.RemoteConnection.VideoProvider, android.telecom.VideoProfile.CameraCapabilities);
+ method public void onPeerDimensionsChanged(android.telecom.RemoteConnection.VideoProvider, int, int);
+ method public void onSessionModifyRequestReceived(android.telecom.RemoteConnection.VideoProvider, android.telecom.VideoProfile);
+ method public void onSessionModifyResponseReceived(android.telecom.RemoteConnection.VideoProvider, int, android.telecom.VideoProfile, android.telecom.VideoProfile);
+ method public void onVideoQualityChanged(android.telecom.RemoteConnection.VideoProvider, int);
+ }
+
public final class StatusHints implements android.os.Parcelable {
ctor public deprecated StatusHints(android.content.ComponentName, java.lang.CharSequence, int, android.os.Bundle);
ctor public StatusHints(java.lang.CharSequence, android.graphics.drawable.Icon, android.os.Bundle);
diff --git a/telecomm/java/android/telecom/RemoteConnection.java b/telecomm/java/android/telecom/RemoteConnection.java
index 9003ed173d54..2feb3804ecaf 100644
--- a/telecomm/java/android/telecom/RemoteConnection.java
+++ b/telecomm/java/android/telecom/RemoteConnection.java
@@ -152,7 +152,6 @@ public final class RemoteConnection {
*
* @param connection The {@code RemoteConnection} invoking this method.
* @param videoState The new video state of the {@code RemoteConnection}.
- * @hide
*/
public void onVideoStateChanged(RemoteConnection connection, int videoState) {}
@@ -183,7 +182,6 @@ public final class RemoteConnection {
* @param connection The {@code RemoteConnection} invoking this method.
* @param videoProvider The new {@code VideoProvider} associated with this
* {@code RemoteConnection}.
- * @hide
*/
public void onVideoProviderChanged(
RemoteConnection connection, VideoProvider videoProvider) {}
@@ -209,21 +207,20 @@ public final class RemoteConnection {
public void onExtrasChanged(RemoteConnection connection, @Nullable Bundle extras) {}
}
- /** @hide */
public static class VideoProvider {
- public abstract static class Listener {
- public void onReceiveSessionModifyRequest(
+ public abstract static class Callback {
+ public void onSessionModifyRequestReceived(
VideoProvider videoProvider,
VideoProfile videoProfile) {}
- public void onReceiveSessionModifyResponse(
+ public void onSessionModifyResponseReceived(
VideoProvider videoProvider,
int status,
VideoProfile requestedProfile,
VideoProfile responseProfile) {}
- public void onHandleCallSessionEvent(VideoProvider videoProvider, int event) {}
+ public void onCallSessionEvent(VideoProvider videoProvider, int event) {}
public void onPeerDimensionsChanged(VideoProvider videoProvider, int width, int height) {}
@@ -239,16 +236,16 @@ public final class RemoteConnection {
private final IVideoCallback mVideoCallbackDelegate = new IVideoCallback() {
@Override
public void receiveSessionModifyRequest(VideoProfile videoProfile) {
- for (Listener l : mListeners) {
- l.onReceiveSessionModifyRequest(VideoProvider.this, videoProfile);
+ for (Callback l : mCallbacks) {
+ l.onSessionModifyRequestReceived(VideoProvider.this, videoProfile);
}
}
@Override
public void receiveSessionModifyResponse(int status, VideoProfile requestedProfile,
VideoProfile responseProfile) {
- for (Listener l : mListeners) {
- l.onReceiveSessionModifyResponse(
+ for (Callback l : mCallbacks) {
+ l.onSessionModifyResponseReceived(
VideoProvider.this,
status,
requestedProfile,
@@ -258,21 +255,21 @@ public final class RemoteConnection {
@Override
public void handleCallSessionEvent(int event) {
- for (Listener l : mListeners) {
- l.onHandleCallSessionEvent(VideoProvider.this, event);
+ for (Callback l : mCallbacks) {
+ l.onCallSessionEvent(VideoProvider.this, event);
}
}
@Override
public void changePeerDimensions(int width, int height) {
- for (Listener l : mListeners) {
+ for (Callback l : mCallbacks) {
l.onPeerDimensionsChanged(VideoProvider.this, width, height);
}
}
@Override
public void changeCallDataUsage(long dataUsage) {
- for (Listener l : mListeners) {
+ for (Callback l : mCallbacks) {
l.onCallDataUsageChanged(VideoProvider.this, dataUsage);
}
}
@@ -280,14 +277,14 @@ public final class RemoteConnection {
@Override
public void changeCameraCapabilities(
VideoProfile.CameraCapabilities cameraCapabilities) {
- for (Listener l : mListeners) {
+ for (Callback l : mCallbacks) {
l.onCameraCapabilitiesChanged(VideoProvider.this, cameraCapabilities);
}
}
@Override
public void changeVideoQuality(int videoQuality) {
- for (Listener l : mListeners) {
+ for (Callback l : mCallbacks) {
l.onVideoQualityChanged(VideoProvider.this, videoQuality);
}
}
@@ -308,10 +305,10 @@ public final class RemoteConnection {
* load factor before resizing, 1 means we only expect a single thread to
* access the map so make only a single shard
*/
- private final Set<Listener> mListeners = Collections.newSetFromMap(
- new ConcurrentHashMap<Listener, Boolean>(8, 0.9f, 1));
+ private final Set<Callback> mCallbacks = Collections.newSetFromMap(
+ new ConcurrentHashMap<Callback, Boolean>(8, 0.9f, 1));
- public VideoProvider(IVideoProvider videoProviderBinder) {
+ VideoProvider(IVideoProvider videoProviderBinder) {
mVideoProviderBinder = videoProviderBinder;
try {
mVideoProviderBinder.addVideoCallback(mVideoCallbackServant.getStub().asBinder());
@@ -319,12 +316,12 @@ public final class RemoteConnection {
}
}
- public void addListener(Listener l) {
- mListeners.add(l);
+ public void registerCallback(Callback l) {
+ mCallbacks.add(l);
}
- public void removeListener(Listener l) {
- mListeners.remove(l);
+ public void unregisterCallback(Callback l) {
+ mCallbacks.remove(l);
}
public void setCamera(String cameraId) {
@@ -609,7 +606,6 @@ public final class RemoteConnection {
* Obtains the video state of this {@code RemoteConnection}.
*
* @return The video state of the {@code RemoteConnection}. See {@link VideoProfile.VideoState}.
- * @hide
*/
public int getVideoState() {
return mVideoState;
@@ -618,7 +614,6 @@ public final class RemoteConnection {
/**
* Obtains the video provider of this {@code RemoteConnection}.
* @return The video provider associated with this {@code RemoteConnection}.
- * @hide
*/
public final VideoProvider getVideoProvider() {
return mVideoProvider;