| OLD | NEW |
| 1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "blimp/client/core/contents/blimp_contents_view_android.h" | 5 #include "blimp/client/core/contents/blimp_contents_view_android.h" |
| 6 | 6 |
| 7 #include "base/memory/ptr_util.h" | 7 #include "base/memory/ptr_util.h" |
| 8 #include "blimp/client/core/contents/android/blimp_contents_impl_android.h" | 8 #include "blimp/client/core/contents/android/blimp_contents_impl_android.h" |
| 9 #include "blimp/client/core/contents/android/blimp_view.h" |
| 9 #include "cc/layers/layer.h" | 10 #include "cc/layers/layer.h" |
| 11 #include "ui/android/window_android.h" |
| 10 | 12 |
| 11 namespace blimp { | 13 namespace blimp { |
| 12 namespace client { | 14 namespace client { |
| 13 | 15 |
| 14 // static | 16 // static |
| 15 std::unique_ptr<BlimpContentsView> BlimpContentsView::Create( | 17 std::unique_ptr<BlimpContentsView> BlimpContentsView::Create( |
| 16 BlimpContentsImpl* blimp_contents) { | 18 BlimpContentsImpl* blimp_contents) { |
| 17 return base::MakeUnique<BlimpContentsViewAndroid>( | 19 return base::MakeUnique<BlimpContentsViewAndroid>(blimp_contents); |
| 18 blimp_contents->GetBlimpContentsImplAndroid()); | |
| 19 } | 20 } |
| 20 | 21 |
| 21 BlimpContentsViewAndroid::BlimpContentsViewAndroid( | 22 BlimpContentsViewAndroid::BlimpContentsViewAndroid( |
| 22 BlimpContentsImplAndroid* blimp_contents) { | 23 BlimpContentsImpl* blimp_contents) { |
| 23 // TODO(khushalsagar): Get the ViewAndroidDelegate from java after it has a | |
| 24 // BlimpView. Also get the WindowAndroid so this view can add itself as a | |
| 25 // child to it. | |
| 26 // TODO(dtrainor): Use the layer from the compositor manager here instead when | 24 // TODO(dtrainor): Use the layer from the compositor manager here instead when |
| 27 // it goes in the BlimpContents. | 25 // it goes in the BlimpContents. |
| 28 view_.SetLayer(cc::Layer::Create()); | 26 blimp_view_ = base::MakeUnique<BlimpView>(blimp_contents); |
| 27 view_ = base::MakeUnique<ui::ViewAndroid>( |
| 28 blimp_view_->CreateViewAndroidDelegate()); |
| 29 view_->SetLayer(cc::Layer::Create()); |
| 30 blimp_contents->GetNativeWindow()->AddChild(view_.get()); |
| 29 } | 31 } |
| 30 | 32 |
| 33 BlimpContentsViewAndroid::~BlimpContentsViewAndroid() = default; |
| 34 |
| 31 gfx::NativeView BlimpContentsViewAndroid::GetNativeView() { | 35 gfx::NativeView BlimpContentsViewAndroid::GetNativeView() { |
| 32 return &view_; | 36 return view_.get(); |
| 37 } |
| 38 |
| 39 BlimpView* BlimpContentsViewAndroid::GetBlimpView() { |
| 40 return blimp_view_.get(); |
| 33 } | 41 } |
| 34 | 42 |
| 35 } // namespace client | 43 } // namespace client |
| 36 } // namespace blimp | 44 } // namespace blimp |
| OLD | NEW |