| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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/frame_host/render_widget_host_view_child_frame.h" | 5 #include "content/browser/frame_host/render_widget_host_view_child_frame.h" |
| 6 | 6 |
| 7 #include "base/basictypes.h" | 7 #include <stdint.h> |
| 8 |
| 9 #include "base/macros.h" |
| 8 #include "base/message_loop/message_loop.h" | 10 #include "base/message_loop/message_loop.h" |
| 11 #include "build/build_config.h" |
| 9 #include "cc/surfaces/surface.h" | 12 #include "cc/surfaces/surface.h" |
| 10 #include "cc/surfaces/surface_factory.h" | 13 #include "cc/surfaces/surface_factory.h" |
| 11 #include "cc/surfaces/surface_manager.h" | 14 #include "cc/surfaces/surface_manager.h" |
| 12 #include "cc/surfaces/surface_sequence.h" | 15 #include "cc/surfaces/surface_sequence.h" |
| 13 #include "content/browser/compositor/test/no_transport_image_transport_factory.h
" | 16 #include "content/browser/compositor/test/no_transport_image_transport_factory.h
" |
| 14 #include "content/browser/frame_host/cross_process_frame_connector.h" | 17 #include "content/browser/frame_host/cross_process_frame_connector.h" |
| 15 #include "content/browser/gpu/compositor_util.h" | 18 #include "content/browser/gpu/compositor_util.h" |
| 16 #include "content/browser/renderer_host/render_widget_host_delegate.h" | 19 #include "content/browser/renderer_host/render_widget_host_delegate.h" |
| 17 #include "content/browser/renderer_host/render_widget_host_impl.h" | 20 #include "content/browser/renderer_host/render_widget_host_impl.h" |
| 18 #include "content/common/view_messages.h" | 21 #include "content/common/view_messages.h" |
| (...skipping 18 matching lines...) Expand all Loading... |
| 37 | 40 |
| 38 class MockCrossProcessFrameConnector : public CrossProcessFrameConnector { | 41 class MockCrossProcessFrameConnector : public CrossProcessFrameConnector { |
| 39 public: | 42 public: |
| 40 MockCrossProcessFrameConnector() | 43 MockCrossProcessFrameConnector() |
| 41 : CrossProcessFrameConnector(nullptr), | 44 : CrossProcessFrameConnector(nullptr), |
| 42 last_scale_factor_received_(0.f), | 45 last_scale_factor_received_(0.f), |
| 43 received_delegated_frame_(false) {} | 46 received_delegated_frame_(false) {} |
| 44 ~MockCrossProcessFrameConnector() override {} | 47 ~MockCrossProcessFrameConnector() override {} |
| 45 | 48 |
| 46 void ChildFrameCompositorFrameSwapped( | 49 void ChildFrameCompositorFrameSwapped( |
| 47 uint32 output_surface_id, | 50 uint32_t output_surface_id, |
| 48 int host_id, | 51 int host_id, |
| 49 int route_id, | 52 int route_id, |
| 50 scoped_ptr<cc::CompositorFrame> frame) override { | 53 scoped_ptr<cc::CompositorFrame> frame) override { |
| 51 received_delegated_frame_ = true; | 54 received_delegated_frame_ = true; |
| 52 last_frame_size_received_ = | 55 last_frame_size_received_ = |
| 53 frame->delegated_frame_data->render_pass_list.back() | 56 frame->delegated_frame_data->render_pass_list.back() |
| 54 ->output_rect.size(); | 57 ->output_rect.size(); |
| 55 last_scale_factor_received_ = frame->metadata.device_scale_factor; | 58 last_scale_factor_received_ = frame->metadata.device_scale_factor; |
| 56 } | 59 } |
| 57 | 60 |
| (...skipping 23 matching lines...) Expand all Loading... |
| 81 browser_context_.reset(new TestBrowserContext); | 84 browser_context_.reset(new TestBrowserContext); |
| 82 | 85 |
| 83 // ImageTransportFactory doesn't exist on Android. | 86 // ImageTransportFactory doesn't exist on Android. |
| 84 #if !defined(OS_ANDROID) | 87 #if !defined(OS_ANDROID) |
| 85 ImageTransportFactory::InitializeForUnitTests( | 88 ImageTransportFactory::InitializeForUnitTests( |
| 86 make_scoped_ptr(new NoTransportImageTransportFactory)); | 89 make_scoped_ptr(new NoTransportImageTransportFactory)); |
| 87 #endif | 90 #endif |
| 88 | 91 |
| 89 MockRenderProcessHost* process_host = | 92 MockRenderProcessHost* process_host = |
| 90 new MockRenderProcessHost(browser_context_.get()); | 93 new MockRenderProcessHost(browser_context_.get()); |
| 91 int32 routing_id = process_host->GetNextRoutingID(); | 94 int32_t routing_id = process_host->GetNextRoutingID(); |
| 92 widget_host_ = | 95 widget_host_ = |
| 93 new RenderWidgetHostImpl(&delegate_, process_host, routing_id, false); | 96 new RenderWidgetHostImpl(&delegate_, process_host, routing_id, false); |
| 94 view_ = new RenderWidgetHostViewChildFrame(widget_host_); | 97 view_ = new RenderWidgetHostViewChildFrame(widget_host_); |
| 95 | 98 |
| 96 test_frame_connector_ = new MockCrossProcessFrameConnector(); | 99 test_frame_connector_ = new MockCrossProcessFrameConnector(); |
| 97 view_->set_cross_process_frame_connector(test_frame_connector_); | 100 view_->set_cross_process_frame_connector(test_frame_connector_); |
| 98 } | 101 } |
| 99 | 102 |
| 100 void TearDown() override { | 103 void TearDown() override { |
| 101 if (view_) | 104 if (view_) |
| (...skipping 82 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 184 test_frame_connector_->last_scale_factor_received_); | 187 test_frame_connector_->last_scale_factor_received_); |
| 185 } | 188 } |
| 186 } else { | 189 } else { |
| 187 EXPECT_TRUE(test_frame_connector_->received_delegated_frame_); | 190 EXPECT_TRUE(test_frame_connector_->received_delegated_frame_); |
| 188 EXPECT_EQ(view_size, test_frame_connector_->last_frame_size_received_); | 191 EXPECT_EQ(view_size, test_frame_connector_->last_frame_size_received_); |
| 189 EXPECT_EQ(scale_factor, test_frame_connector_->last_scale_factor_received_); | 192 EXPECT_EQ(scale_factor, test_frame_connector_->last_scale_factor_received_); |
| 190 } | 193 } |
| 191 } | 194 } |
| 192 | 195 |
| 193 } // namespace content | 196 } // namespace content |
| OLD | NEW |