Index: content/browser/frame_host/render_frame_host_impl.cc |
diff --git a/content/browser/frame_host/render_frame_host_impl.cc b/content/browser/frame_host/render_frame_host_impl.cc |
index 05bf13973d4ea29511853be2075fda1b88a4e29c..79793431453d802bf5d15ef44bcc98d00b375d7d 100644 |
--- a/content/browser/frame_host/render_frame_host_impl.cc |
+++ b/content/browser/frame_host/render_frame_host_impl.cc |
@@ -114,8 +114,9 @@ |
#if defined(OS_ANDROID) |
#include "content/browser/android/app_web_message_port_message_filter.h" |
-#include "content/public/browser/android/java_interfaces.h" |
+#include "content/browser/frame_host/render_frame_host_android.h" |
#include "content/browser/media/android/media_player_renderer.h" |
+#include "content/public/browser/android/java_interfaces.h" |
#include "media/base/audio_renderer_sink.h" |
#include "media/base/video_renderer_sink.h" |
#include "media/mojo/services/mojo_renderer_service.h" // nogncheck |
@@ -131,6 +132,10 @@ |
#include "device/vr/vr_service.mojom.h" // nogncheck |
#endif |
+#if defined(OS_ANDROID) |
+const char kRenderFrameHostAndroidKey[] = "render_frame_host_android"; |
+#endif // OS_ANDROID |
+ |
using base::TimeDelta; |
namespace content { |
@@ -3512,4 +3517,18 @@ RenderFrameHostImpl::TakeNavigationHandleForCommit( |
entry_id_for_data_nav, false); // started_from_context_menu |
} |
+#if defined(OS_ANDROID) |
+base::android::ScopedJavaLocalRef<jobject> |
+RenderFrameHostImpl::GetJavaRenderFrameHost() { |
+ RenderFrameHostAndroid* render_frame_host_android = |
+ static_cast<RenderFrameHostAndroid*>( |
+ GetUserData(kRenderFrameHostAndroidKey)); |
+ if (!render_frame_host_android) { |
+ render_frame_host_android = new RenderFrameHostAndroid(this); |
+ SetUserData(kRenderFrameHostAndroidKey, render_frame_host_android); |
+ } |
+ return render_frame_host_android->GetJavaObject(); |
+} |
+#endif |
+ |
} // namespace content |