Chromium Code Reviews| 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_impl.h" | 5 #include "content/browser/renderer_host/render_widget_host_impl.h" |
| 6 | 6 |
| 7 #include <math.h> | 7 #include <math.h> |
| 8 #include <set> | 8 #include <set> |
| 9 #include <utility> | 9 #include <utility> |
| 10 | 10 |
| (...skipping 445 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 456 OnQueueSyntheticGesture) | 456 OnQueueSyntheticGesture) |
| 457 IPC_MESSAGE_HANDLER(ViewHostMsg_RenderViewReady, OnRenderViewReady) | 457 IPC_MESSAGE_HANDLER(ViewHostMsg_RenderViewReady, OnRenderViewReady) |
| 458 IPC_MESSAGE_HANDLER(ViewHostMsg_RenderProcessGone, OnRenderProcessGone) | 458 IPC_MESSAGE_HANDLER(ViewHostMsg_RenderProcessGone, OnRenderProcessGone) |
| 459 IPC_MESSAGE_HANDLER(ViewHostMsg_Close, OnClose) | 459 IPC_MESSAGE_HANDLER(ViewHostMsg_Close, OnClose) |
| 460 IPC_MESSAGE_HANDLER(ViewHostMsg_UpdateScreenRects_ACK, | 460 IPC_MESSAGE_HANDLER(ViewHostMsg_UpdateScreenRects_ACK, |
| 461 OnUpdateScreenRectsAck) | 461 OnUpdateScreenRectsAck) |
| 462 IPC_MESSAGE_HANDLER(ViewHostMsg_RequestMove, OnRequestMove) | 462 IPC_MESSAGE_HANDLER(ViewHostMsg_RequestMove, OnRequestMove) |
| 463 IPC_MESSAGE_HANDLER(ViewHostMsg_SetTooltipText, OnSetTooltipText) | 463 IPC_MESSAGE_HANDLER(ViewHostMsg_SetTooltipText, OnSetTooltipText) |
| 464 IPC_MESSAGE_HANDLER_GENERIC(ViewHostMsg_SwapCompositorFrame, | 464 IPC_MESSAGE_HANDLER_GENERIC(ViewHostMsg_SwapCompositorFrame, |
| 465 msg_is_ok = OnSwapCompositorFrame(msg)) | 465 msg_is_ok = OnSwapCompositorFrame(msg)) |
| 466 IPC_MESSAGE_HANDLER(ViewHostMsg_DeliverPayload, OnDeliverPayload) | |
| 466 IPC_MESSAGE_HANDLER(ViewHostMsg_DidStopFlinging, OnFlingingStopped) | 467 IPC_MESSAGE_HANDLER(ViewHostMsg_DidStopFlinging, OnFlingingStopped) |
| 467 IPC_MESSAGE_HANDLER(ViewHostMsg_UpdateRect, OnUpdateRect) | 468 IPC_MESSAGE_HANDLER(ViewHostMsg_UpdateRect, OnUpdateRect) |
| 468 IPC_MESSAGE_HANDLER(ViewHostMsg_UpdateIsDelayed, OnUpdateIsDelayed) | 469 IPC_MESSAGE_HANDLER(ViewHostMsg_UpdateIsDelayed, OnUpdateIsDelayed) |
| 469 IPC_MESSAGE_HANDLER(ViewHostMsg_Focus, OnFocus) | 470 IPC_MESSAGE_HANDLER(ViewHostMsg_Focus, OnFocus) |
| 470 IPC_MESSAGE_HANDLER(ViewHostMsg_Blur, OnBlur) | 471 IPC_MESSAGE_HANDLER(ViewHostMsg_Blur, OnBlur) |
| 471 IPC_MESSAGE_HANDLER(ViewHostMsg_SetCursor, OnSetCursor) | 472 IPC_MESSAGE_HANDLER(ViewHostMsg_SetCursor, OnSetCursor) |
| 472 IPC_MESSAGE_HANDLER(ViewHostMsg_SetTouchEventEmulationEnabled, | 473 IPC_MESSAGE_HANDLER(ViewHostMsg_SetTouchEventEmulationEnabled, |
| 473 OnSetTouchEventEmulationEnabled) | 474 OnSetTouchEventEmulationEnabled) |
| 474 IPC_MESSAGE_HANDLER(ViewHostMsg_TextInputTypeChanged, | 475 IPC_MESSAGE_HANDLER(ViewHostMsg_TextInputTypeChanged, |
| 475 OnTextInputTypeChanged) | 476 OnTextInputTypeChanged) |
| (...skipping 1003 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1479 // chrome/browser/extensions/api/cast_streaming/performance_test.cc | 1480 // chrome/browser/extensions/api/cast_streaming/performance_test.cc |
| 1480 UNSHIPPED_TRACE_EVENT0("test_fps", | 1481 UNSHIPPED_TRACE_EVENT0("test_fps", |
| 1481 TRACE_DISABLED_BY_DEFAULT("OnSwapCompositorFrame")); | 1482 TRACE_DISABLED_BY_DEFAULT("OnSwapCompositorFrame")); |
| 1482 ViewHostMsg_SwapCompositorFrame::Param param; | 1483 ViewHostMsg_SwapCompositorFrame::Param param; |
| 1483 if (!ViewHostMsg_SwapCompositorFrame::Read(&message, ¶m)) | 1484 if (!ViewHostMsg_SwapCompositorFrame::Read(&message, ¶m)) |
| 1484 return false; | 1485 return false; |
| 1485 scoped_ptr<cc::CompositorFrame> frame(new cc::CompositorFrame); | 1486 scoped_ptr<cc::CompositorFrame> frame(new cc::CompositorFrame); |
| 1486 uint32 output_surface_id = param.a; | 1487 uint32 output_surface_id = param.a; |
| 1487 param.b.AssignTo(frame.get()); | 1488 param.b.AssignTo(frame.get()); |
| 1488 | 1489 |
| 1490 for (int i = 0; i < frame->metadata.payload.size(); ++i) { | |
| 1491 OnDeliverPayload(frame->metadata.payload[i]); | |
|
mkosiba (inactive)
2014/05/06 22:30:33
the receiving end on browser side
| |
| 1492 } | |
| 1493 frame->metadata.payload.clear(); | |
| 1494 | |
| 1489 for (size_t i = 0; i < frame->metadata.latency_info.size(); i++) | 1495 for (size_t i = 0; i < frame->metadata.latency_info.size(); i++) |
| 1490 AddLatencyInfoComponentIds(&frame->metadata.latency_info[i]); | 1496 AddLatencyInfoComponentIds(&frame->metadata.latency_info[i]); |
| 1491 | 1497 |
| 1492 input_router_->OnViewUpdated( | 1498 input_router_->OnViewUpdated( |
| 1493 GetInputRouterViewFlagsFromCompositorFrameMetadata(frame->metadata)); | 1499 GetInputRouterViewFlagsFromCompositorFrameMetadata(frame->metadata)); |
| 1494 | 1500 |
| 1495 if (view_) { | 1501 if (view_) { |
| 1496 view_->OnSwapCompositorFrame(output_surface_id, frame.Pass()); | 1502 view_->OnSwapCompositorFrame(output_surface_id, frame.Pass()); |
| 1497 view_->DidReceiveRendererFrame(); | 1503 view_->DidReceiveRendererFrame(); |
| 1498 } else { | 1504 } else { |
| 1499 cc::CompositorFrameAck ack; | 1505 cc::CompositorFrameAck ack; |
| 1500 if (frame->gl_frame_data) { | 1506 if (frame->gl_frame_data) { |
| 1501 ack.gl_frame_data = frame->gl_frame_data.Pass(); | 1507 ack.gl_frame_data = frame->gl_frame_data.Pass(); |
| 1502 ack.gl_frame_data->sync_point = 0; | 1508 ack.gl_frame_data->sync_point = 0; |
| 1503 } else if (frame->delegated_frame_data) { | 1509 } else if (frame->delegated_frame_data) { |
| 1504 cc::TransferableResource::ReturnResources( | 1510 cc::TransferableResource::ReturnResources( |
| 1505 frame->delegated_frame_data->resource_list, | 1511 frame->delegated_frame_data->resource_list, |
| 1506 &ack.resources); | 1512 &ack.resources); |
| 1507 } else if (frame->software_frame_data) { | 1513 } else if (frame->software_frame_data) { |
| 1508 ack.last_software_frame_id = frame->software_frame_data->id; | 1514 ack.last_software_frame_id = frame->software_frame_data->id; |
| 1509 } | 1515 } |
| 1510 SendSwapCompositorFrameAck(routing_id_, output_surface_id, | 1516 SendSwapCompositorFrameAck(routing_id_, output_surface_id, |
| 1511 process_->GetID(), ack); | 1517 process_->GetID(), ack); |
| 1512 } | 1518 } |
| 1513 return true; | 1519 return true; |
| 1514 } | 1520 } |
| 1515 | 1521 |
| 1522 void RenderWidgetHostImpl::OnDeliverPayload(const IPC::Message& payload) { | |
| 1523 // Filter any RenderWidgetHostImpl-specific messages here. | |
| 1524 if (delegate_) | |
| 1525 delegate_->DispatchMessageWithSwapFrame(payload); | |
| 1526 } | |
| 1527 | |
| 1516 void RenderWidgetHostImpl::OnFlingingStopped() { | 1528 void RenderWidgetHostImpl::OnFlingingStopped() { |
| 1517 if (view_) | 1529 if (view_) |
| 1518 view_->DidStopFlinging(); | 1530 view_->DidStopFlinging(); |
| 1519 } | 1531 } |
| 1520 | 1532 |
| 1521 void RenderWidgetHostImpl::OnUpdateRect( | 1533 void RenderWidgetHostImpl::OnUpdateRect( |
| 1522 const ViewHostMsg_UpdateRect_Params& params) { | 1534 const ViewHostMsg_UpdateRect_Params& params) { |
| 1523 TRACE_EVENT0("renderer_host", "RenderWidgetHostImpl::OnUpdateRect"); | 1535 TRACE_EVENT0("renderer_host", "RenderWidgetHostImpl::OnUpdateRect"); |
| 1524 TimeTicks paint_start = TimeTicks::Now(); | 1536 TimeTicks paint_start = TimeTicks::Now(); |
| 1525 | 1537 |
| (...skipping 816 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 2342 } | 2354 } |
| 2343 } | 2355 } |
| 2344 | 2356 |
| 2345 SkBitmap::Config RenderWidgetHostImpl::PreferredReadbackFormat() { | 2357 SkBitmap::Config RenderWidgetHostImpl::PreferredReadbackFormat() { |
| 2346 if (view_) | 2358 if (view_) |
| 2347 return view_->PreferredReadbackFormat(); | 2359 return view_->PreferredReadbackFormat(); |
| 2348 return SkBitmap::kARGB_8888_Config; | 2360 return SkBitmap::kARGB_8888_Config; |
| 2349 } | 2361 } |
| 2350 | 2362 |
| 2351 } // namespace content | 2363 } // namespace content |
| OLD | NEW |