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

Side by Side Diff: content/browser/android/synchronous_compositor_host.h

Issue 1969263004: sync compositor: Remove begin frame source (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: comment Created 4 years, 6 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
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 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 #ifndef CONTENT_BROWSER_ANDROID_SYNCHRONOUS_COMPOSITOR_HOST_H_ 5 #ifndef CONTENT_BROWSER_ANDROID_SYNCHRONOUS_COMPOSITOR_HOST_H_
6 #define CONTENT_BROWSER_ANDROID_SYNCHRONOUS_COMPOSITOR_HOST_H_ 6 #define CONTENT_BROWSER_ANDROID_SYNCHRONOUS_COMPOSITOR_HOST_H_
7 7
8 #include <stddef.h> 8 #include <stddef.h>
9 #include <stdint.h> 9 #include <stdint.h>
10 10
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after
57 const gfx::Rect& clip, 57 const gfx::Rect& clip,
58 const gfx::Rect& viewport_rect_for_tile_priority, 58 const gfx::Rect& viewport_rect_for_tile_priority,
59 const gfx::Transform& transform_for_tile_priority) override; 59 const gfx::Transform& transform_for_tile_priority) override;
60 bool DemandDrawSw(SkCanvas* canvas) override; 60 bool DemandDrawSw(SkCanvas* canvas) override;
61 void ReturnResources(uint32_t output_surface_id, 61 void ReturnResources(uint32_t output_surface_id,
62 const cc::CompositorFrameAck& frame_ack) override; 62 const cc::CompositorFrameAck& frame_ack) override;
63 void SetMemoryPolicy(size_t bytes_limit) override; 63 void SetMemoryPolicy(size_t bytes_limit) override;
64 void DidChangeRootLayerScrollOffset( 64 void DidChangeRootLayerScrollOffset(
65 const gfx::ScrollOffset& root_offset) override; 65 const gfx::ScrollOffset& root_offset) override;
66 void SynchronouslyZoomBy(float zoom_delta, const gfx::Point& anchor) override; 66 void SynchronouslyZoomBy(float zoom_delta, const gfx::Point& anchor) override;
67 void SetIsActive(bool is_active) override;
68 void OnComputeScroll(base::TimeTicks animation_time) override; 67 void OnComputeScroll(base::TimeTicks animation_time) override;
69 68
70 InputEventAckState HandleInputEvent(const blink::WebInputEvent& input_event); 69 InputEventAckState HandleInputEvent(const blink::WebInputEvent& input_event);
71 void DidOverscroll(const DidOverscrollParams& over_scroll_params); 70 void DidOverscroll(const DidOverscrollParams& over_scroll_params);
72 void BeginFrame(const cc::BeginFrameArgs& args); 71 void DidSendBeginFrame();
73 bool OnMessageReceived(const IPC::Message& message); 72 bool OnMessageReceived(const IPC::Message& message);
74 void DidBecomeCurrent(); 73 void DidBecomeCurrent();
75 74
76 private: 75 private:
77 class ScopedSendZeroMemory; 76 class ScopedSendZeroMemory;
78 struct SharedMemoryWithSize; 77 struct SharedMemoryWithSize;
79 friend class ScopedSetZeroMemory; 78 friend class ScopedSetZeroMemory;
80 friend class SynchronousCompositorBase; 79 friend class SynchronousCompositorBase;
81 80
82 SynchronousCompositorHost(RenderWidgetHostViewAndroid* rwhva, 81 SynchronousCompositorHost(RenderWidgetHostViewAndroid* rwhva,
83 SynchronousCompositorClient* client, 82 SynchronousCompositorClient* client,
84 bool async_input, 83 bool async_input,
85 bool use_in_proc_software_draw); 84 bool use_in_proc_software_draw);
86 void PopulateCommonParams(SyncCompositorCommonBrowserParams* params);
87 void ProcessCommonParams(const SyncCompositorCommonRendererParams& params); 85 void ProcessCommonParams(const SyncCompositorCommonRendererParams& params);
88 void UpdateNeedsBeginFrames();
89 void UpdateFrameMetaData(const cc::CompositorFrameMetadata& frame_metadata); 86 void UpdateFrameMetaData(const cc::CompositorFrameMetadata& frame_metadata);
90 void OutputSurfaceCreated(); 87 void OutputSurfaceCreated();
91 void OnOverScroll(const SyncCompositorCommonRendererParams& params, 88 void OnOverScroll(const SyncCompositorCommonRendererParams& params,
92 const DidOverscrollParams& over_scroll_params); 89 const DidOverscrollParams& over_scroll_params);
93 void SendAsyncCompositorStateIfNeeded();
94 void UpdateStateTask();
95 bool DemandDrawSwInProc(SkCanvas* canvas); 90 bool DemandDrawSwInProc(SkCanvas* canvas);
96 void SetSoftwareDrawSharedMemoryIfNeeded(size_t stride, size_t buffer_size); 91 void SetSoftwareDrawSharedMemoryIfNeeded(size_t stride, size_t buffer_size);
97 void SendZeroMemory(); 92 void SendZeroMemory();
98 93
99 RenderWidgetHostViewAndroid* const rwhva_; 94 RenderWidgetHostViewAndroid* const rwhva_;
100 SynchronousCompositorClient* const client_; 95 SynchronousCompositorClient* const client_;
101 const scoped_refptr<base::SingleThreadTaskRunner> ui_task_runner_; 96 const scoped_refptr<base::SingleThreadTaskRunner> ui_task_runner_;
102 const int routing_id_; 97 const int routing_id_;
103 IPC::Sender* const sender_; 98 IPC::Sender* const sender_;
104 const bool async_input_; 99 const bool async_input_;
105 const bool use_in_process_zero_copy_software_draw_; 100 const bool use_in_process_zero_copy_software_draw_;
106 101
107 bool is_active_;
108 size_t bytes_limit_; 102 size_t bytes_limit_;
109 std::unique_ptr<SharedMemoryWithSize> software_draw_shm_; 103 std::unique_ptr<SharedMemoryWithSize> software_draw_shm_;
110 104
111 // Updated by both renderer and browser. 105 // Updated by both renderer and browser.
112 gfx::ScrollOffset root_scroll_offset_; 106 gfx::ScrollOffset root_scroll_offset_;
113 107
114 // From renderer. 108 // From renderer.
115 uint32_t renderer_param_version_; 109 uint32_t renderer_param_version_;
116 bool need_animate_scroll_; 110 bool need_animate_scroll_;
117 uint32_t need_invalidate_count_; 111 uint32_t need_invalidate_count_;
118 bool need_begin_frame_;
119 uint32_t did_activate_pending_tree_count_; 112 uint32_t did_activate_pending_tree_count_;
120 113
121 base::WeakPtrFactory<SynchronousCompositorHost> weak_ptr_factory_;
122 DISALLOW_COPY_AND_ASSIGN(SynchronousCompositorHost); 114 DISALLOW_COPY_AND_ASSIGN(SynchronousCompositorHost);
123 }; 115 };
124 116
125 } // namespace content 117 } // namespace content
126 118
127 #endif // CONTENT_BROWSER_ANDROID_SYNCHRONOUS_COMPOSITOR_HOST_H_ 119 #endif // CONTENT_BROWSER_ANDROID_SYNCHRONOUS_COMPOSITOR_HOST_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698