summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorroldenburg <roldenburg@google.com>2017-07-11 15:41:00 -0700
committerEric Erfanian <erfanian@google.com>2017-07-12 09:42:17 -0700
commit5e685035897403343fc6a005ebf869894c344e13 (patch)
treec7593cdd45ef87d3b5a18265194601761f8e0480
parenta33fbaf4077f712253e8ba62f491d095c8cbc82c (diff)
downloadandroid_packages_apps_Dialer-5e685035897403343fc6a005ebf869894c344e13.tar.gz
android_packages_apps_Dialer-5e685035897403343fc6a005ebf869894c344e13.tar.bz2
android_packages_apps_Dialer-5e685035897403343fc6a005ebf869894c344e13.zip
Move VideoShareSession to third_party to remove bad cast in VideoShareManager
It was odd that we were casting and was causing some crashes. This CL makes things work more as is typical in Dialer. We previously did not do this because there are some parts of the VideoShareSession which are not open-sourceable. Turns out we can simplify those parts out of the interface. Bug: 63523694 Test: existing tests PiperOrigin-RevId: 161593028 Change-Id: I8f1379fc46f4e9d41413b731787dbf37e0901da9
-rw-r--r--java/com/android/dialer/enrichedcall/EnrichedCallManager.java9
-rw-r--r--java/com/android/dialer/enrichedcall/stub/EnrichedCallManagerStub.java9
-rw-r--r--java/com/android/dialer/enrichedcall/videoshare/VideoShareListener.java1
-rw-r--r--java/com/android/dialer/enrichedcall/videoshare/VideoShareSession.java39
4 files changed, 58 insertions, 0 deletions
diff --git a/java/com/android/dialer/enrichedcall/EnrichedCallManager.java b/java/com/android/dialer/enrichedcall/EnrichedCallManager.java
index f1057be1d..4d00854ef 100644
--- a/java/com/android/dialer/enrichedcall/EnrichedCallManager.java
+++ b/java/com/android/dialer/enrichedcall/EnrichedCallManager.java
@@ -23,6 +23,7 @@ import com.android.dialer.calldetails.CallDetailsEntries;
import com.android.dialer.calldetails.CallDetailsEntries.CallDetailsEntry;
import com.android.dialer.enrichedcall.historyquery.proto.HistoryResult;
import com.android.dialer.enrichedcall.videoshare.VideoShareListener;
+import com.android.dialer.enrichedcall.videoshare.VideoShareSession;
import com.android.dialer.multimedia.MultimediaData;
import java.util.List;
import java.util.Map;
@@ -299,6 +300,14 @@ public interface EnrichedCallManager {
long getVideoShareInviteSessionId(@NonNull String number);
/**
+ * Returns the {@link VideoShareSession} for the given sessionId, or {@code null} if no session
+ * exists.
+ */
+ @MainThread
+ @Nullable
+ VideoShareSession getVideoShareSession(long sessionId);
+
+ /**
* Ends the given video share session.
*
* @param sessionId the id of the session to end
diff --git a/java/com/android/dialer/enrichedcall/stub/EnrichedCallManagerStub.java b/java/com/android/dialer/enrichedcall/stub/EnrichedCallManagerStub.java
index 1f2b00514..de95e0725 100644
--- a/java/com/android/dialer/enrichedcall/stub/EnrichedCallManagerStub.java
+++ b/java/com/android/dialer/enrichedcall/stub/EnrichedCallManagerStub.java
@@ -27,6 +27,7 @@ import com.android.dialer.enrichedcall.EnrichedCallManager;
import com.android.dialer.enrichedcall.Session;
import com.android.dialer.enrichedcall.historyquery.proto.HistoryResult;
import com.android.dialer.enrichedcall.videoshare.VideoShareListener;
+import com.android.dialer.enrichedcall.videoshare.VideoShareSession;
import com.android.dialer.multimedia.MultimediaData;
import java.util.Collections;
import java.util.List;
@@ -169,6 +170,14 @@ public final class EnrichedCallManagerStub implements EnrichedCallManager {
return Session.NO_SESSION_ID;
}
+ @MainThread
+ @Nullable
+ @Override
+ public VideoShareSession getVideoShareSession(long sessionId) {
+ Assert.isMainThread();
+ return null;
+ }
+
@Override
public void endVideoShareSession(long sessionId) {}
}
diff --git a/java/com/android/dialer/enrichedcall/videoshare/VideoShareListener.java b/java/com/android/dialer/enrichedcall/videoshare/VideoShareListener.java
index f24724afd..0e5f79f2b 100644
--- a/java/com/android/dialer/enrichedcall/videoshare/VideoShareListener.java
+++ b/java/com/android/dialer/enrichedcall/videoshare/VideoShareListener.java
@@ -13,6 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
+
package com.android.dialer.enrichedcall.videoshare;
import android.support.annotation.MainThread;
diff --git a/java/com/android/dialer/enrichedcall/videoshare/VideoShareSession.java b/java/com/android/dialer/enrichedcall/videoshare/VideoShareSession.java
new file mode 100644
index 000000000..b0f24ff28
--- /dev/null
+++ b/java/com/android/dialer/enrichedcall/videoshare/VideoShareSession.java
@@ -0,0 +1,39 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License
+ */
+
+package com.android.dialer.enrichedcall.videoshare;
+
+import android.support.annotation.NonNull;
+import android.view.SurfaceView;
+
+/** Holds state information and data about video share sessions. */
+public interface VideoShareSession {
+ void setSessionId(long sessionId);
+
+ long getSessionId();
+
+ int getState();
+
+ void pause();
+
+ void unpause();
+
+ void dispose();
+
+ void setSurfaceView(@NonNull SurfaceView surfaceView);
+
+ void setCamera(String cameraId);
+}