Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(23)

Side by Side Diff: content/browser/renderer_host/render_widget_host_view_android.cc

Issue 14254004: Android: Throttle the renderer harder. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « content/browser/renderer_host/render_widget_host_view_android.h ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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/bind.h" 9 #include "base/bind.h"
10 #include "base/logging.h" 10 #include "base/logging.h"
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after
70 } // anonymous namespace 70 } // anonymous namespace
71 71
72 RenderWidgetHostViewAndroid::RenderWidgetHostViewAndroid( 72 RenderWidgetHostViewAndroid::RenderWidgetHostViewAndroid(
73 RenderWidgetHostImpl* widget_host, 73 RenderWidgetHostImpl* widget_host,
74 ContentViewCoreImpl* content_view_core) 74 ContentViewCoreImpl* content_view_core)
75 : host_(widget_host), 75 : host_(widget_host),
76 is_layer_attached_(true), 76 is_layer_attached_(true),
77 content_view_core_(NULL), 77 content_view_core_(NULL),
78 ime_adapter_android_(ALLOW_THIS_IN_INITIALIZER_LIST(this)), 78 ime_adapter_android_(ALLOW_THIS_IN_INITIALIZER_LIST(this)),
79 cached_background_color_(SK_ColorWHITE), 79 cached_background_color_(SK_ColorWHITE),
80 texture_id_in_layer_(0), 80 texture_id_in_layer_(0) {
81 consumed_current_texture_(true) {
82 if (CompositorImpl::UsesDirectGL()) { 81 if (CompositorImpl::UsesDirectGL()) {
83 surface_texture_transport_.reset(new SurfaceTextureTransportClient()); 82 surface_texture_transport_.reset(new SurfaceTextureTransportClient());
84 layer_ = surface_texture_transport_->Initialize(); 83 layer_ = surface_texture_transport_->Initialize();
85 layer_->SetIsDrawable(true); 84 layer_->SetIsDrawable(true);
86 } else { 85 } else {
87 texture_layer_ = cc::TextureLayer::Create(this); 86 texture_layer_ = cc::TextureLayer::Create(this);
88 layer_ = texture_layer_; 87 layer_ = texture_layer_;
89 } 88 }
90 89
91 layer_->SetContentsOpaque(true); 90 layer_->SetContentsOpaque(true);
(...skipping 534 matching lines...) Expand 10 before | Expand all | Expand 10 after
626 // size. 625 // size.
627 gfx::PointF uv_max; 626 gfx::PointF uv_max;
628 if (texture_size.GetArea() > 0) { 627 if (texture_size.GetArea() > 0) {
629 uv_max.SetPoint(content_size.width() / texture_size.width(), 628 uv_max.SetPoint(content_size.width() / texture_size.width(),
630 content_size.height() / texture_size.height()); 629 content_size.height() / texture_size.height());
631 } 630 }
632 texture_layer_->SetUV(gfx::PointF(0, 0), uv_max); 631 texture_layer_->SetUV(gfx::PointF(0, 0), uv_max);
633 texture_size_in_layer_ = texture_size; 632 texture_size_in_layer_ = texture_size;
634 current_mailbox_ = mailbox; 633 current_mailbox_ = mailbox;
635 634
636 if (consumed_current_texture_ || host_->is_hidden()) 635 if (host_->is_hidden())
637 ack_callback.Run(); 636 ack_callback.Run();
638 else 637 else
639 ack_callbacks_.push(ack_callback); 638 ack_callbacks_.push(ack_callback);
640
641 consumed_current_texture_ = false;
642 } 639 }
643 640
644 void RenderWidgetHostViewAndroid::AcceleratedSurfacePostSubBuffer( 641 void RenderWidgetHostViewAndroid::AcceleratedSurfacePostSubBuffer(
645 const GpuHostMsg_AcceleratedSurfacePostSubBuffer_Params& params, 642 const GpuHostMsg_AcceleratedSurfacePostSubBuffer_Params& params,
646 int gpu_host_id) { 643 int gpu_host_id) {
647 NOTREACHED(); 644 NOTREACHED();
648 } 645 }
649 646
650 void RenderWidgetHostViewAndroid::AcceleratedSurfaceSuspend() { 647 void RenderWidgetHostViewAndroid::AcceleratedSurfaceSuspend() {
651 NOTREACHED(); 648 NOTREACHED();
(...skipping 148 matching lines...) Expand 10 before | Expand all | Expand 10 after
800 797
801 void RenderWidgetHostViewAndroid::HasTouchEventHandlers( 798 void RenderWidgetHostViewAndroid::HasTouchEventHandlers(
802 bool need_touch_events) { 799 bool need_touch_events) {
803 if (content_view_core_) 800 if (content_view_core_)
804 content_view_core_->HasTouchEventHandlers(need_touch_events); 801 content_view_core_->HasTouchEventHandlers(need_touch_events);
805 } 802 }
806 803
807 unsigned RenderWidgetHostViewAndroid::PrepareTexture( 804 unsigned RenderWidgetHostViewAndroid::PrepareTexture(
808 cc::ResourceUpdateQueue* queue) { 805 cc::ResourceUpdateQueue* queue) {
809 RunAckCallbacks(); 806 RunAckCallbacks();
810 consumed_current_texture_ = true;
811 return texture_id_in_layer_; 807 return texture_id_in_layer_;
812 } 808 }
813 809
814 WebKit::WebGraphicsContext3D* RenderWidgetHostViewAndroid::Context3d() { 810 WebKit::WebGraphicsContext3D* RenderWidgetHostViewAndroid::Context3d() {
815 return ImageTransportFactoryAndroid::GetInstance()->GetContext3D(); 811 return ImageTransportFactoryAndroid::GetInstance()->GetContext3D();
816 } 812 }
817 813
818 bool RenderWidgetHostViewAndroid::PrepareTextureMailbox( 814 bool RenderWidgetHostViewAndroid::PrepareTextureMailbox(
819 cc::TextureMailbox* mailbox) { 815 cc::TextureMailbox* mailbox) {
820 return false; 816 return false;
(...skipping 18 matching lines...) Expand all
839 // RenderWidgetHostView, public: 835 // RenderWidgetHostView, public:
840 836
841 // static 837 // static
842 RenderWidgetHostView* 838 RenderWidgetHostView*
843 RenderWidgetHostView::CreateViewForWidget(RenderWidgetHost* widget) { 839 RenderWidgetHostView::CreateViewForWidget(RenderWidgetHost* widget) {
844 RenderWidgetHostImpl* rwhi = RenderWidgetHostImpl::From(widget); 840 RenderWidgetHostImpl* rwhi = RenderWidgetHostImpl::From(widget);
845 return new RenderWidgetHostViewAndroid(rwhi, NULL); 841 return new RenderWidgetHostViewAndroid(rwhi, NULL);
846 } 842 }
847 843
848 } // namespace content 844 } // namespace content
OLDNEW
« no previous file with comments | « content/browser/renderer_host/render_widget_host_view_android.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698