OLD | NEW |
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2013 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 ANDROID_WEBVIEW_BROWSER_BROWSER_VIEW_RENDERER_H_ | 5 #ifndef ANDROID_WEBVIEW_BROWSER_BROWSER_VIEW_RENDERER_H_ |
6 #define ANDROID_WEBVIEW_BROWSER_BROWSER_VIEW_RENDERER_H_ | 6 #define ANDROID_WEBVIEW_BROWSER_BROWSER_VIEW_RENDERER_H_ |
7 | 7 |
8 #include <stddef.h> | 8 #include <stddef.h> |
9 | 9 |
10 #include <map> | 10 #include <map> |
(...skipping 112 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
123 const gfx::Vector2dF& max_scroll_offset_dip, | 123 const gfx::Vector2dF& max_scroll_offset_dip, |
124 const gfx::SizeF& scrollable_size_dip, | 124 const gfx::SizeF& scrollable_size_dip, |
125 float page_scale_factor, | 125 float page_scale_factor, |
126 float min_page_scale_factor, | 126 float min_page_scale_factor, |
127 float max_page_scale_factor) override; | 127 float max_page_scale_factor) override; |
128 void DidOverscroll(content::SynchronousCompositor* compositor, | 128 void DidOverscroll(content::SynchronousCompositor* compositor, |
129 const gfx::Vector2dF& accumulated_overscroll, | 129 const gfx::Vector2dF& accumulated_overscroll, |
130 const gfx::Vector2dF& latest_overscroll_delta, | 130 const gfx::Vector2dF& latest_overscroll_delta, |
131 const gfx::Vector2dF& current_fling_velocity) override; | 131 const gfx::Vector2dF& current_fling_velocity) override; |
132 ui::TouchHandleDrawable* CreateDrawable() override; | 132 ui::TouchHandleDrawable* CreateDrawable() override; |
133 void OnDrawHardwareProcessFrameFuture( | |
134 const scoped_refptr<content::SynchronousCompositor::FrameFuture>& | |
135 frame_future) override; | |
136 | 133 |
137 // CompositorFrameProducer overrides | 134 // CompositorFrameProducer overrides |
138 void OnParentDrawConstraintsUpdated( | 135 void OnParentDrawConstraintsUpdated( |
139 CompositorFrameConsumer* compositor_frame_consumer) override; | 136 CompositorFrameConsumer* compositor_frame_consumer) override; |
140 void RemoveCompositorFrameConsumer( | 137 void RemoveCompositorFrameConsumer( |
141 CompositorFrameConsumer* compositor_frame_consumer) override; | 138 CompositorFrameConsumer* compositor_frame_consumer) override; |
142 | 139 |
143 void SetActiveCompositorID(const CompositorID& compositor_id); | 140 void SetActiveCompositorID(const CompositorID& compositor_id); |
144 | 141 |
145 // Visible for testing. | 142 // Visible for testing. |
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
197 bool hardware_enabled_; | 194 bool hardware_enabled_; |
198 float dip_scale_; | 195 float dip_scale_; |
199 float page_scale_factor_; | 196 float page_scale_factor_; |
200 float min_page_scale_factor_; | 197 float min_page_scale_factor_; |
201 float max_page_scale_factor_; | 198 float max_page_scale_factor_; |
202 bool on_new_picture_enable_; | 199 bool on_new_picture_enable_; |
203 bool clear_view_; | 200 bool clear_view_; |
204 | 201 |
205 bool offscreen_pre_raster_; | 202 bool offscreen_pre_raster_; |
206 | 203 |
| 204 // TODO(boliu): Wait on render thread and remove this. |
| 205 bool first_sync_frame_; |
| 206 |
207 gfx::Vector2d last_on_draw_scroll_offset_; | 207 gfx::Vector2d last_on_draw_scroll_offset_; |
208 gfx::Rect last_on_draw_global_visible_rect_; | 208 gfx::Rect last_on_draw_global_visible_rect_; |
209 | 209 |
210 gfx::Size size_; | 210 gfx::Size size_; |
211 | 211 |
212 gfx::SizeF scrollable_size_dip_; | 212 gfx::SizeF scrollable_size_dip_; |
213 | 213 |
214 // Current scroll offset in CSS pixels. | 214 // Current scroll offset in CSS pixels. |
215 // TODO(miletus): Make scroll_offset_dip_ a gfx::ScrollOffset. | 215 // TODO(miletus): Make scroll_offset_dip_ a gfx::ScrollOffset. |
216 gfx::Vector2dF scroll_offset_dip_; | 216 gfx::Vector2dF scroll_offset_dip_; |
217 | 217 |
218 // Max scroll offset in CSS pixels. | 218 // Max scroll offset in CSS pixels. |
219 // TODO(miletus): Make max_scroll_offset_dip_ a gfx::ScrollOffset. | 219 // TODO(miletus): Make max_scroll_offset_dip_ a gfx::ScrollOffset. |
220 gfx::Vector2dF max_scroll_offset_dip_; | 220 gfx::Vector2dF max_scroll_offset_dip_; |
221 | 221 |
222 // Used to prevent rounding errors from accumulating enough to generate | 222 // Used to prevent rounding errors from accumulating enough to generate |
223 // visible skew (especially noticeable when scrolling up and down in the same | 223 // visible skew (especially noticeable when scrolling up and down in the same |
224 // spot over a period of time). | 224 // spot over a period of time). |
225 // TODO(miletus): Make overscroll_rounding_error_ a gfx::ScrollOffset. | 225 // TODO(miletus): Make overscroll_rounding_error_ a gfx::ScrollOffset. |
226 gfx::Vector2dF overscroll_rounding_error_; | 226 gfx::Vector2dF overscroll_rounding_error_; |
227 | 227 |
228 ParentCompositorDrawConstraints external_draw_constraints_; | 228 ParentCompositorDrawConstraints external_draw_constraints_; |
229 | 229 |
230 DISALLOW_COPY_AND_ASSIGN(BrowserViewRenderer); | 230 DISALLOW_COPY_AND_ASSIGN(BrowserViewRenderer); |
231 }; | 231 }; |
232 | 232 |
233 } // namespace android_webview | 233 } // namespace android_webview |
234 | 234 |
235 #endif // ANDROID_WEBVIEW_BROWSER_BROWSER_VIEW_RENDERER_H_ | 235 #endif // ANDROID_WEBVIEW_BROWSER_BROWSER_VIEW_RENDERER_H_ |
OLD | NEW |