Index: android_webview/native/external_video_surface_container_impl.cc |
diff --git a/android_webview/native/external_video_surface_container_impl.cc b/android_webview/native/external_video_surface_container_impl.cc |
index 1a10ab547ac1b062f41778945d848e5e2e2c5df4..393a25d3daac2ab0d72044a803c084bce0fbb357 100644 |
--- a/android_webview/native/external_video_surface_container_impl.cc |
+++ b/android_webview/native/external_video_surface_container_impl.cc |
@@ -43,6 +43,14 @@ void ExternalVideoSurfaceContainerImpl::RequestExternalVideoSurface( |
env, jobject_.obj(), static_cast<jint>(player_id)); |
} |
+int ExternalVideoSurfaceContainerImpl::GetCurrentPlayerId() { |
+ JNIEnv* env = AttachCurrentThread(); |
+ int current_player = static_cast<int>( |
+ Java_ExternalVideoSurfaceContainer_getCurrentPlayerId( |
+ env, jobject_.obj())); |
+ return current_player; |
+} |
+ |
void ExternalVideoSurfaceContainerImpl::ReleaseExternalVideoSurface( |
int player_id) { |
JNIEnv* env = AttachCurrentThread(); |
@@ -53,6 +61,14 @@ void ExternalVideoSurfaceContainerImpl::ReleaseExternalVideoSurface( |
surface_destroyed_cb_.Reset(); |
} |
+void ExternalVideoSurfaceContainerImpl::ReleaseCurrentExternalVideoSurface() { |
+ JNIEnv* env = AttachCurrentThread(); |
+ Java_ExternalVideoSurfaceContainer_destroy(env, jobject_.obj()); |
+ |
+ surface_created_cb_.Reset(); |
+ surface_destroyed_cb_.Reset(); |
+} |
+ |
void ExternalVideoSurfaceContainerImpl::OnFrameInfoUpdated() { |
JNIEnv* env = AttachCurrentThread(); |
Java_ExternalVideoSurfaceContainer_onFrameInfoUpdated(env, jobject_.obj()); |