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

Side by Side Diff: content/browser/renderer_host/render_widget_host_impl.h

Issue 11833009: Provide a vsync notification to the renderer (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Rebased. Created 7 years, 10 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 | Annotate | Revision Log
« no previous file with comments | « cc/thread_proxy.cc ('k') | content/browser/renderer_host/render_widget_host_impl.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 (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 #ifndef CONTENT_BROWSER_RENDERER_HOST_RENDER_WIDGET_HOST_IMPL_H_ 5 #ifndef CONTENT_BROWSER_RENDERER_HOST_RENDER_WIDGET_HOST_IMPL_H_
6 #define CONTENT_BROWSER_RENDERER_HOST_RENDER_WIDGET_HOST_IMPL_H_ 6 #define CONTENT_BROWSER_RENDERER_HOST_RENDER_WIDGET_HOST_IMPL_H_
7 7
8 #include <deque> 8 #include <deque>
9 #include <list> 9 #include <list>
10 #include <map> 10 #include <map>
(...skipping 364 matching lines...) Expand 10 before | Expand all | Expand 10 after
375 // locked. 375 // locked.
376 bool GotResponseToLockMouseRequest(bool allowed); 376 bool GotResponseToLockMouseRequest(bool allowed);
377 377
378 // Tells the RenderWidget about the latest vsync parameters. 378 // Tells the RenderWidget about the latest vsync parameters.
379 // Note: Make sure the timebase was obtained using 379 // Note: Make sure the timebase was obtained using
380 // base::TimeTicks::HighResNow. Using the non-high res timer will result in 380 // base::TimeTicks::HighResNow. Using the non-high res timer will result in
381 // incorrect synchronization across processes. 381 // incorrect synchronization across processes.
382 virtual void UpdateVSyncParameters(base::TimeTicks timebase, 382 virtual void UpdateVSyncParameters(base::TimeTicks timebase,
383 base::TimeDelta interval); 383 base::TimeDelta interval);
384 384
385 // Notifies the RenderWidget that the display vsync signal was triggered and
386 // now is a good time to render a new frame.
387 virtual void SendVSync(base::TimeTicks frame_time);
388
385 // Called by the view in response to AcceleratedSurfaceBuffersSwapped or 389 // Called by the view in response to AcceleratedSurfaceBuffersSwapped or
386 // AcceleratedSurfacePostSubBuffer. 390 // AcceleratedSurfacePostSubBuffer.
387 static void AcknowledgeBufferPresent( 391 static void AcknowledgeBufferPresent(
388 int32 route_id, 392 int32 route_id,
389 int gpu_host_id, 393 int gpu_host_id,
390 const AcceleratedSurfaceMsg_BufferPresented_Params& params); 394 const AcceleratedSurfaceMsg_BufferPresented_Params& params);
391 395
392 // Called by the view in response to AcceleratedSurfaceBuffersSwapped for 396 // Called by the view in response to AcceleratedSurfaceBuffersSwapped for
393 // platforms that support deferred GPU process descheduling. This does 397 // platforms that support deferred GPU process descheduling. This does
394 // nothing if the compositor thread is enabled. 398 // nothing if the compositor thread is enabled.
(...skipping 153 matching lines...) Expand 10 before | Expand all | Expand 10 after
548 void OnRequestMove(const gfx::Rect& pos); 552 void OnRequestMove(const gfx::Rect& pos);
549 void OnSetTooltipText(const string16& tooltip_text, 553 void OnSetTooltipText(const string16& tooltip_text,
550 WebKit::WebTextDirection text_direction_hint); 554 WebKit::WebTextDirection text_direction_hint);
551 void OnPaintAtSizeAck(int tag, const gfx::Size& size); 555 void OnPaintAtSizeAck(int tag, const gfx::Size& size);
552 void OnCompositorSurfaceBuffersSwapped(int32 surface_id, 556 void OnCompositorSurfaceBuffersSwapped(int32 surface_id,
553 uint64 surface_handle, 557 uint64 surface_handle,
554 int32 route_id, 558 int32 route_id,
555 const gfx::Size& size, 559 const gfx::Size& size,
556 int32 gpu_process_host_id); 560 int32 gpu_process_host_id);
557 void OnSwapCompositorFrame(const cc::CompositorFrame& frame); 561 void OnSwapCompositorFrame(const cc::CompositorFrame& frame);
562 void OnEnableVSyncNotification(bool enable);
558 void OnUpdateRect(const ViewHostMsg_UpdateRect_Params& params); 563 void OnUpdateRect(const ViewHostMsg_UpdateRect_Params& params);
559 void OnUpdateIsDelayed(); 564 void OnUpdateIsDelayed();
560 void OnInputEventAck(WebKit::WebInputEvent::Type event_type, 565 void OnInputEventAck(WebKit::WebInputEvent::Type event_type,
561 InputEventAckState ack_result); 566 InputEventAckState ack_result);
562 void OnBeginSmoothScroll( 567 void OnBeginSmoothScroll(
563 int gesture_id, 568 int gesture_id,
564 const ViewHostMsg_BeginSmoothScroll_Params &params); 569 const ViewHostMsg_BeginSmoothScroll_Params &params);
565 void OnSelectRangeAck(); 570 void OnSelectRangeAck();
566 void OnMsgMoveCaretAck(); 571 void OnMsgMoveCaretAck();
567 virtual void OnFocus(); 572 virtual void OnFocus();
(...skipping 310 matching lines...) Expand 10 before | Expand all | Expand 10 after
878 #if defined(OS_WIN) 883 #if defined(OS_WIN)
879 std::list<HWND> dummy_windows_for_activation_; 884 std::list<HWND> dummy_windows_for_activation_;
880 #endif 885 #endif
881 886
882 DISALLOW_COPY_AND_ASSIGN(RenderWidgetHostImpl); 887 DISALLOW_COPY_AND_ASSIGN(RenderWidgetHostImpl);
883 }; 888 };
884 889
885 } // namespace content 890 } // namespace content
886 891
887 #endif // CONTENT_BROWSER_RENDERER_HOST_RENDER_WIDGET_HOST_IMPL_H_ 892 #endif // CONTENT_BROWSER_RENDERER_HOST_RENDER_WIDGET_HOST_IMPL_H_
OLDNEW
« no previous file with comments | « cc/thread_proxy.cc ('k') | content/browser/renderer_host/render_widget_host_impl.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698