| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 "content/browser/renderer_host/render_widget_host_view_android.h" | 5 #include "content/browser/renderer_host/render_widget_host_view_android.h" |
| 6 | 6 |
| 7 #include <android/bitmap.h> | 7 #include <android/bitmap.h> |
| 8 | 8 |
| 9 #include "base/basictypes.h" | 9 #include "base/basictypes.h" |
| 10 #include "base/bind.h" | 10 #include "base/bind.h" |
| (...skipping 181 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 192 RenderWidgetHostView* reference_host_view) { | 192 RenderWidgetHostView* reference_host_view) { |
| 193 NOTIMPLEMENTED(); | 193 NOTIMPLEMENTED(); |
| 194 } | 194 } |
| 195 | 195 |
| 196 RenderWidgetHost* | 196 RenderWidgetHost* |
| 197 RenderWidgetHostViewAndroid::GetRenderWidgetHost() const { | 197 RenderWidgetHostViewAndroid::GetRenderWidgetHost() const { |
| 198 return host_; | 198 return host_; |
| 199 } | 199 } |
| 200 | 200 |
| 201 void RenderWidgetHostViewAndroid::WasShown() { | 201 void RenderWidgetHostViewAndroid::WasShown() { |
| 202 if (!host_->is_hidden()) | 202 if (!host_ || !host_->is_hidden()) |
| 203 return; | 203 return; |
| 204 | 204 |
| 205 host_->WasShown(); | 205 host_->WasShown(); |
| 206 } | 206 } |
| 207 | 207 |
| 208 void RenderWidgetHostViewAndroid::WasHidden() { | 208 void RenderWidgetHostViewAndroid::WasHidden() { |
| 209 RunAckCallbacks(); | 209 RunAckCallbacks(); |
| 210 | 210 |
| 211 if (host_->is_hidden()) | 211 if (!host_ || host_->is_hidden()) |
| 212 return; | 212 return; |
| 213 | 213 |
| 214 // Inform the renderer that we are being hidden so it can reduce its resource | 214 // Inform the renderer that we are being hidden so it can reduce its resource |
| 215 // utilization. | 215 // utilization. |
| 216 host_->WasHidden(); | 216 host_->WasHidden(); |
| 217 } | 217 } |
| 218 | 218 |
| 219 void RenderWidgetHostViewAndroid::WasResized() { | 219 void RenderWidgetHostViewAndroid::WasResized() { |
| 220 if (surface_texture_transport_.get() && content_view_core_) | 220 if (surface_texture_transport_.get() && content_view_core_) |
| 221 surface_texture_transport_->SetSize( | 221 surface_texture_transport_->SetSize( |
| (...skipping 127 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 349 bool RenderWidgetHostViewAndroid::IsSurfaceAvailableForCopy() const { | 349 bool RenderWidgetHostViewAndroid::IsSurfaceAvailableForCopy() const { |
| 350 return HasValidFrame(); | 350 return HasValidFrame(); |
| 351 } | 351 } |
| 352 | 352 |
| 353 void RenderWidgetHostViewAndroid::Show() { | 353 void RenderWidgetHostViewAndroid::Show() { |
| 354 if (are_layers_attached_) | 354 if (are_layers_attached_) |
| 355 return; | 355 return; |
| 356 | 356 |
| 357 are_layers_attached_ = true; | 357 are_layers_attached_ = true; |
| 358 AttachLayers(); | 358 AttachLayers(); |
| 359 |
| 360 WasShown(); |
| 359 } | 361 } |
| 360 | 362 |
| 361 void RenderWidgetHostViewAndroid::Hide() { | 363 void RenderWidgetHostViewAndroid::Hide() { |
| 362 if (!are_layers_attached_) | 364 if (!are_layers_attached_) |
| 363 return; | 365 return; |
| 364 | 366 |
| 365 are_layers_attached_ = false; | 367 are_layers_attached_ = false; |
| 366 RemoveLayers(); | 368 RemoveLayers(); |
| 369 |
| 370 WasHidden(); |
| 367 } | 371 } |
| 368 | 372 |
| 369 bool RenderWidgetHostViewAndroid::IsShowing() { | 373 bool RenderWidgetHostViewAndroid::IsShowing() { |
| 370 // ContentViewCoreImpl represents the native side of the Java | 374 // ContentViewCoreImpl represents the native side of the Java |
| 371 // ContentViewCore. It being NULL means that it is not attached | 375 // ContentViewCore. It being NULL means that it is not attached |
| 372 // to the View system yet, so we treat this RWHVA as hidden. | 376 // to the View system yet, so we treat this RWHVA as hidden. |
| 373 return are_layers_attached_ && content_view_core_; | 377 return are_layers_attached_ && content_view_core_; |
| 374 } | 378 } |
| 375 | 379 |
| 376 gfx::Rect RenderWidgetHostViewAndroid::GetViewBounds() const { | 380 gfx::Rect RenderWidgetHostViewAndroid::GetViewBounds() const { |
| (...skipping 930 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1307 // RenderWidgetHostView, public: | 1311 // RenderWidgetHostView, public: |
| 1308 | 1312 |
| 1309 // static | 1313 // static |
| 1310 RenderWidgetHostView* | 1314 RenderWidgetHostView* |
| 1311 RenderWidgetHostView::CreateViewForWidget(RenderWidgetHost* widget) { | 1315 RenderWidgetHostView::CreateViewForWidget(RenderWidgetHost* widget) { |
| 1312 RenderWidgetHostImpl* rwhi = RenderWidgetHostImpl::From(widget); | 1316 RenderWidgetHostImpl* rwhi = RenderWidgetHostImpl::From(widget); |
| 1313 return new RenderWidgetHostViewAndroid(rwhi, NULL); | 1317 return new RenderWidgetHostViewAndroid(rwhi, NULL); |
| 1314 } | 1318 } |
| 1315 | 1319 |
| 1316 } // namespace content | 1320 } // namespace content |
| OLD | NEW |