| Index: blimp/client/core/blimp_contents_impl.cc
|
| diff --git a/blimp/client/core/blimp_contents_impl.cc b/blimp/client/core/blimp_contents_impl.cc
|
| index ac4e264ed2bde580bc0d853dde7ec5c681e261ea..d3c16350908022bd82067bbd1417d88d72a8bc34 100644
|
| --- a/blimp/client/core/blimp_contents_impl.cc
|
| +++ b/blimp/client/core/blimp_contents_impl.cc
|
| @@ -5,15 +5,47 @@
|
| #include "blimp/client/core/blimp_contents_impl.h"
|
|
|
| #include "base/memory/ptr_util.h"
|
| +#include "base/supports_user_data.h"
|
| #include "blimp/client/core/public/blimp_contents_observer.h"
|
|
|
| +#if defined(OS_ANDROID)
|
| +#include "blimp/client/core/android/blimp_contents_impl_android.h"
|
| +#endif // OS_ANDROID
|
| +
|
| namespace blimp {
|
| namespace client {
|
|
|
| +namespace {
|
| +
|
| +#if defined(OS_ANDROID)
|
| +const char kBlimpContentsImplAndroidKey[] = "blimp_contents_impl_android";
|
| +#endif // OS_ANDROID
|
| +}
|
| +
|
| BlimpContentsImpl::BlimpContentsImpl() : navigation_controller_(this) {}
|
|
|
| BlimpContentsImpl::~BlimpContentsImpl() {}
|
|
|
| +#if defined(OS_ANDROID)
|
| +
|
| +base::android::ScopedJavaLocalRef<jobject>
|
| +BlimpContentsImpl::GetJavaBlimpContentsImpl() {
|
| + return GetBlimpContentsImplAndroid()->GetJavaObject();
|
| +}
|
| +
|
| +BlimpContentsImplAndroid* BlimpContentsImpl::GetBlimpContentsImplAndroid() {
|
| + BlimpContentsImplAndroid* blimp_contents_impl_android =
|
| + static_cast<BlimpContentsImplAndroid*>(
|
| + GetUserData(kBlimpContentsImplAndroidKey));
|
| + if (!blimp_contents_impl_android) {
|
| + blimp_contents_impl_android = new BlimpContentsImplAndroid(this);
|
| + SetUserData(kBlimpContentsImplAndroidKey, blimp_contents_impl_android);
|
| + }
|
| + return blimp_contents_impl_android;
|
| +}
|
| +
|
| +#endif // defined(OS_ANDROID)
|
| +
|
| BlimpNavigationControllerImpl& BlimpContentsImpl::GetNavigationController() {
|
| return navigation_controller_;
|
| }
|
|
|