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

Side by Side Diff: cc/ipc/compositor_frame_metadata_struct_traits.cc

Issue 2965103003: Test
Patch Set: c Created 3 years, 5 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
« no previous file with comments | « cc/ipc/compositor_frame_metadata_struct_traits.h ('k') | cc/output/compositor_frame_metadata.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 "cc/ipc/compositor_frame_metadata_struct_traits.h" 5 #include "cc/ipc/compositor_frame_metadata_struct_traits.h"
6 #include "cc/ipc/begin_frame_args_struct_traits.h" 6 #include "cc/ipc/begin_frame_args_struct_traits.h"
7 #include "cc/ipc/selection_struct_traits.h" 7 #include "cc/ipc/selection_struct_traits.h"
8 #include "cc/ipc/surface_id_struct_traits.h" 8 #include "cc/ipc/surface_id_struct_traits.h"
9 #include "ui/gfx/mojo/selection_bound_struct_traits.h" 9 #include "ui/gfx/mojo/selection_bound_struct_traits.h"
10 #include "ui/latency/mojo/latency_info_struct_traits.h" 10 #include "ui/latency/mojo/latency_info_struct_traits.h"
11 11
12 namespace mojo { 12 namespace mojo {
13 13
14 // static 14 // static
15 bool StructTraits<cc::mojom::CompositorFrameMetadataDataView, 15 bool StructTraits<cc::mojom::CompositorFrameMetadataDataView,
16 cc::CompositorFrameMetadata>:: 16 cc::CompositorFrameMetadata>::
17 Read(cc::mojom::CompositorFrameMetadataDataView data, 17 Read(cc::mojom::CompositorFrameMetadataDataView data,
18 cc::CompositorFrameMetadata* out) { 18 cc::CompositorFrameMetadata* out) {
19 out->device_scale_factor = data.device_scale_factor(); 19 out->device_scale_factor = data.device_scale_factor();
20 if (!data.ReadRootScrollOffset(&out->root_scroll_offset)) 20 if (!data.ReadRootScrollOffset(&out->root_scroll_offset))
21 return false; 21 return false;
22 22
23 out->page_scale_factor = data.page_scale_factor(); 23 out->page_scale_factor = data.page_scale_factor();
24 if (!data.ReadScrollableViewportSize(&out->scrollable_viewport_size) || 24 if (!data.ReadScrollableViewportSize(&out->scrollable_viewport_size) ||
25 !data.ReadRootLayerSize(&out->root_layer_size)) { 25 !data.ReadRootLayerSize(&out->root_layer_size)) {
26 return false; 26 return false;
27 } 27 }
28 28
29 std::vector<cc::mojom::SharedBitmapInfoPtr> shared_bitmaps_to_register;
30 if (!data.ReadSharedBitmapsToRegister(&shared_bitmaps_to_register))
31 return false;
32 for (const auto& entry : shared_bitmaps_to_register) {
33 base::SharedMemoryHandle memory_handle;
34 size_t size;
35 MojoResult result = mojo::UnwrapSharedMemoryHandle(
36 std::move(entry->buffer), &memory_handle, &size, NULL);
37 DCHECK_EQ(result, MOJO_RESULT_OK);
38 out->shared_bitmaps_to_register.push_back({entry->id, memory_handle, size});
39 }
40
29 out->min_page_scale_factor = data.min_page_scale_factor(); 41 out->min_page_scale_factor = data.min_page_scale_factor();
30 out->max_page_scale_factor = data.max_page_scale_factor(); 42 out->max_page_scale_factor = data.max_page_scale_factor();
31 out->root_overflow_x_hidden = data.root_overflow_x_hidden(); 43 out->root_overflow_x_hidden = data.root_overflow_x_hidden();
32 out->root_overflow_y_hidden = data.root_overflow_y_hidden(); 44 out->root_overflow_y_hidden = data.root_overflow_y_hidden();
33 out->may_contain_video = data.may_contain_video(); 45 out->may_contain_video = data.may_contain_video();
34 out->is_resourceless_software_draw_with_scroll_or_animation = 46 out->is_resourceless_software_draw_with_scroll_or_animation =
35 data.is_resourceless_software_draw_with_scroll_or_animation(); 47 data.is_resourceless_software_draw_with_scroll_or_animation();
36 out->top_controls_height = data.top_controls_height(); 48 out->top_controls_height = data.top_controls_height();
37 out->top_controls_shown_ratio = data.top_controls_shown_ratio(); 49 out->top_controls_shown_ratio = data.top_controls_shown_ratio();
38 out->bottom_controls_height = data.bottom_controls_height(); 50 out->bottom_controls_height = data.bottom_controls_height();
39 out->bottom_controls_shown_ratio = data.bottom_controls_shown_ratio(); 51 out->bottom_controls_shown_ratio = data.bottom_controls_shown_ratio();
40 out->content_source_id = data.content_source_id(); 52 out->content_source_id = data.content_source_id();
41 out->frame_token = data.frame_token(); 53 out->frame_token = data.frame_token();
42 out->root_background_color = data.root_background_color(); 54 out->root_background_color = data.root_background_color();
43 out->can_activate_before_dependencies = 55 out->can_activate_before_dependencies =
44 data.can_activate_before_dependencies(); 56 data.can_activate_before_dependencies();
45 return data.ReadSelection(&out->selection) && 57 return data.ReadSelection(&out->selection) &&
46 data.ReadLatencyInfo(&out->latency_info) && 58 data.ReadLatencyInfo(&out->latency_info) &&
47 data.ReadReferencedSurfaces(&out->referenced_surfaces) && 59 data.ReadReferencedSurfaces(&out->referenced_surfaces) &&
48 data.ReadActivationDependencies(&out->activation_dependencies) && 60 data.ReadActivationDependencies(&out->activation_dependencies) &&
49 data.ReadBeginFrameAck(&out->begin_frame_ack); 61 data.ReadBeginFrameAck(&out->begin_frame_ack);
50 } 62 }
51 63
52 } // namespace mojo 64 } // namespace mojo
OLDNEW
« no previous file with comments | « cc/ipc/compositor_frame_metadata_struct_traits.h ('k') | cc/output/compositor_frame_metadata.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698