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

Side by Side Diff: cc/scheduler/scheduler_state_machine.h

Issue 1394263004: android webview: allow cc to fail hardware draw (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: damage before hardware to avoid invalidate-draw loop Created 5 years, 2 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/scheduler/scheduler.cc ('k') | cc/scheduler/scheduler_state_machine.cc » ('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 2011 The Chromium Authors. All rights reserved. 1 // Copyright 2011 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 CC_SCHEDULER_SCHEDULER_STATE_MACHINE_H_ 5 #ifndef CC_SCHEDULER_SCHEDULER_STATE_MACHINE_H_
6 #define CC_SCHEDULER_SCHEDULER_STATE_MACHINE_H_ 6 #define CC_SCHEDULER_SCHEDULER_STATE_MACHINE_H_
7 7
8 #include <string> 8 #include <string>
9 9
10 #include "base/basictypes.h" 10 #include "base/basictypes.h"
(...skipping 201 matching lines...) Expand 10 before | Expand all | Expand 10 after
212 // Indicates that all painting is complete. 212 // Indicates that all painting is complete.
213 void NotifyReadyToCommit(); 213 void NotifyReadyToCommit();
214 214
215 // Call this only in response to receiving an ACTION_SEND_BEGIN_MAIN_FRAME 215 // Call this only in response to receiving an ACTION_SEND_BEGIN_MAIN_FRAME
216 // from NextAction if the client rejects the BeginMainFrame message. 216 // from NextAction if the client rejects the BeginMainFrame message.
217 void BeginMainFrameAborted(CommitEarlyOutReason reason); 217 void BeginMainFrameAborted(CommitEarlyOutReason reason);
218 218
219 // Indicates production should be skipped to recover latency. 219 // Indicates production should be skipped to recover latency.
220 void SetSkipNextBeginMainFrameToReduceLatency(); 220 void SetSkipNextBeginMainFrameToReduceLatency();
221 221
222 // Resourceless software draws are allowed even when invisible.
223 void SetResourcelessSoftareDraw(bool resourceless_draw);
224
222 // Indicates whether drawing would, at this time, make sense. 225 // Indicates whether drawing would, at this time, make sense.
223 // CanDraw can be used to suppress flashes or checkerboarding 226 // CanDraw can be used to suppress flashes or checkerboarding
224 // when such behavior would be undesirable. 227 // when such behavior would be undesirable.
225 void SetCanDraw(bool can); 228 void SetCanDraw(bool can);
226 229
227 // Indicates that scheduled BeginMainFrame is started. 230 // Indicates that scheduled BeginMainFrame is started.
228 void NotifyBeginMainFrameStarted(); 231 void NotifyBeginMainFrameStarted();
229 232
230 // Indicates that the pending tree is ready for activation. 233 // Indicates that the pending tree is ready for activation.
231 void NotifyReadyToActivate(); 234 void NotifyReadyToActivate();
(...skipping 80 matching lines...) Expand 10 before | Expand all | Expand 10 after
312 315
313 int consecutive_checkerboard_animations_; 316 int consecutive_checkerboard_animations_;
314 int max_pending_swaps_; 317 int max_pending_swaps_;
315 int pending_swaps_; 318 int pending_swaps_;
316 int swaps_with_current_output_surface_; 319 int swaps_with_current_output_surface_;
317 bool needs_redraw_; 320 bool needs_redraw_;
318 bool needs_animate_; 321 bool needs_animate_;
319 bool needs_prepare_tiles_; 322 bool needs_prepare_tiles_;
320 bool needs_begin_main_frame_; 323 bool needs_begin_main_frame_;
321 bool visible_; 324 bool visible_;
325 bool resourceless_draw_;
322 bool can_draw_; 326 bool can_draw_;
323 bool has_pending_tree_; 327 bool has_pending_tree_;
324 bool pending_tree_is_ready_for_activation_; 328 bool pending_tree_is_ready_for_activation_;
325 bool active_tree_needs_first_draw_; 329 bool active_tree_needs_first_draw_;
326 bool did_create_and_initialize_first_output_surface_; 330 bool did_create_and_initialize_first_output_surface_;
327 bool impl_latency_takes_priority_; 331 bool impl_latency_takes_priority_;
328 bool main_thread_missed_last_deadline_; 332 bool main_thread_missed_last_deadline_;
329 bool skip_next_begin_main_frame_to_reduce_latency_; 333 bool skip_next_begin_main_frame_to_reduce_latency_;
330 bool children_need_begin_frames_; 334 bool children_need_begin_frames_;
331 bool defer_commits_; 335 bool defer_commits_;
332 bool video_needs_begin_frames_; 336 bool video_needs_begin_frames_;
333 bool last_commit_had_no_updates_; 337 bool last_commit_had_no_updates_;
334 bool wait_for_ready_to_draw_; 338 bool wait_for_ready_to_draw_;
335 bool did_request_swap_in_last_frame_; 339 bool did_request_swap_in_last_frame_;
336 bool did_perform_swap_in_last_draw_; 340 bool did_perform_swap_in_last_draw_;
337 341
338 private: 342 private:
339 DISALLOW_COPY_AND_ASSIGN(SchedulerStateMachine); 343 DISALLOW_COPY_AND_ASSIGN(SchedulerStateMachine);
340 }; 344 };
341 345
342 } // namespace cc 346 } // namespace cc
343 347
344 #endif // CC_SCHEDULER_SCHEDULER_STATE_MACHINE_H_ 348 #endif // CC_SCHEDULER_SCHEDULER_STATE_MACHINE_H_
OLDNEW
« no previous file with comments | « cc/scheduler/scheduler.cc ('k') | cc/scheduler/scheduler_state_machine.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698