summaryrefslogtreecommitdiffstats
path: root/cc/trees/layer_tree_host_single_thread_client.h
Commit message (Collapse)AuthorAgeFilesLines
* Fix name collisions that will occur with chromium style.danakj2016-03-021-2/+2
| | | | | | | | | | | | | | | | | | This fixes cases where renaming a method from thisStyle to ThisStyle makes it collide with something, usually another method with the same name. For the case in PrintStream.h, the collision function is actually dead code so remove it. TBR=avi,pdr R=pdr BUG=584539 CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel Review URL: https://codereview.chromium.org/1753023002 Cr-Commit-Position: refs/heads/master@{#378868}
* Make SingleThreadProxy a SchedulerClientenne@chromium.org2014-08-221-2/+2
| | | | | | | | | | | | | | | | | | All compositors that use SingleThreadProxy are left calling composite synchronously and now pass a flag to indicate that this is their intention. This patch doesn't remove synchronous composite, but now makes it mutually exclusive with scheduling. Only cc unittests are exercising this code at this point, although it also unifies a lot of the code for CompositeImmediately with the scheduled path. BUG=329552, 287250 Review URL: https://codereview.chromium.org/134623005 Cr-Commit-Position: refs/heads/master@{#291451} git-svn-id: svn://svn.chromium.org/chrome/trunk/src@291451 0039d316-1c4b-4281-b951-d872f2087c98
* Revert "Make SingleThreadProxy a SchedulerClient"enne@chromium.org2014-08-131-2/+2
| | | | | | | | | | | | | | This reverts commit r288866 because of crashes. Old patch: https://codereview.chromium.org/134623005/ NOTRY=true TBR=danakj@chromium.org,boliu@chromium.org,piman@chromium.org,ben@chromium.org BUG=402943,403400 Review URL: https://codereview.chromium.org/475483002 Cr-Commit-Position: refs/heads/master@{#289395} git-svn-id: svn://svn.chromium.org/chrome/trunk/src@289395 0039d316-1c4b-4281-b951-d872f2087c98
* Make SingleThreadProxy a SchedulerClientenne@chromium.org2014-08-121-2/+2
| | | | | | | | | | | | | | | | | This makes ui::Compositor no longer in charge of scheduling commits and draws, deferring it to cc::Scheduler. Other compositors that use SingleThreadProxy are left calling composite synchronously and now pass a flag to indicate that this is their intention. This patch doesn't remove synchronous composite, but now makes it mutually exclusive with scheduling. BUG=329552, 287250 Review URL: https://codereview.chromium.org/134623005 Cr-Commit-Position: refs/heads/master@{#288866} git-svn-id: svn://svn.chromium.org/chrome/trunk/src@288866 0039d316-1c4b-4281-b951-d872f2087c98
* Revert of Make SingleThreadProxy a SchedulerClient ↵tkent@chromium.org2014-08-071-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (https://codereview.chromium.org/134623005/) Reason for revert: Broke some layout tests Original issue's description: > Make SingleThreadProxy a SchedulerClient > > This makes ui::Compositor no longer in charge of > scheduling commits and draws, deferring it to cc::Scheduler. > > Other compositors that use SingleThreadProxy are left calling composite > synchronously and now pass a flag to indicate that this is their > intention. This patch doesn't remove synchronous composite, but now > makes it mutually exclusive with scheduling. > > BUG=329552, 287250 > > Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=287950 NOTRY=true NOTREECHECKS=true TBR=enne@chromium.org Review URL: https://codereview.chromium.org/447133002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@287968 0039d316-1c4b-4281-b951-d872f2087c98
* Make SingleThreadProxy a SchedulerClientenne@chromium.org2014-08-071-2/+2
| | | | | | | | | | | | | | | | This makes ui::Compositor no longer in charge of scheduling commits and draws, deferring it to cc::Scheduler. Other compositors that use SingleThreadProxy are left calling composite synchronously and now pass a flag to indicate that this is their intention. This patch doesn't remove synchronous composite, but now makes it mutually exclusive with scheduling. BUG=329552, 287250 Review URL: https://codereview.chromium.org/134623005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@287950 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 287747 "Make SingleThreadProxy a SchedulerClient"tommi@chromium.org2014-08-061-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | This is a speculative revert to see if issues on Mac bots get resolved. BrowserTest.WindowOpenClose is e.g. failing on this assert: ASSERTION FAILED: !active || m_layerTreeView > Make SingleThreadProxy a SchedulerClient > > This makes ui::Compositor no longer in charge of > scheduling commits and draws, deferring it to cc::Scheduler. > > Other compositors that use SingleThreadProxy are left calling composite > synchronously and now pass a flag to indicate that this is their > intention. This patch doesn't remove synchronous composite, but now > makes it mutually exclusive with scheduling. > > BUG=329552, 287250 > > Review URL: https://codereview.chromium.org/134623005 TBR=enne@chromium.org Review URL: https://codereview.chromium.org/441343002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@287766 0039d316-1c4b-4281-b951-d872f2087c98
* Make SingleThreadProxy a SchedulerClientenne@chromium.org2014-08-061-2/+2
| | | | | | | | | | | | | | | | This makes ui::Compositor no longer in charge of scheduling commits and draws, deferring it to cc::Scheduler. Other compositors that use SingleThreadProxy are left calling composite synchronously and now pass a flag to indicate that this is their intention. This patch doesn't remove synchronous composite, but now makes it mutually exclusive with scheduling. BUG=329552, 287250 Review URL: https://codereview.chromium.org/134623005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@287747 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 280493 "Make SingleThreadProxy a SchedulerClient"nkostylev@chromium.org2014-06-281-2/+2
| | | | | | | | | | | | | | | | | | | | | | | Reason for revert: Check if this CL breaks TouchActionBrowserTest.TouchActionNone test http://goo.gl/pwdNwL Also it was reported that this CL causing a number of crashes on the blink bots, e.g., http://build.chromium.org/p/tryserver.blink/builders/linux_blink_rel > Make SingleThreadProxy a SchedulerClient > > This makes ui::Compositor no longer in charge of > scheduling commits and draws, deferring it to cc::Scheduler. > > BUG=329552, 287250 > > Review URL: https://codereview.chromium.org/134623005 TBR=enne@chromium.org Review URL: https://codereview.chromium.org/359103004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@280521 0039d316-1c4b-4281-b951-d872f2087c98
* Make SingleThreadProxy a SchedulerClientenne@chromium.org2014-06-281-2/+2
| | | | | | | | | | | This makes ui::Compositor no longer in charge of scheduling commits and draws, deferring it to cc::Scheduler. BUG=329552, 287250 Review URL: https://codereview.chromium.org/134623005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@280493 0039d316-1c4b-4281-b951-d872f2087c98
* RenderWidget and RenderWidgetCompositor cleanuptrchen@chromium.org2013-11-221-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch can be considered as two logical changes that are orthogonal. Both of the changes don't affect code behavior. [2/2] Add LayerTreeHostSingleThreadClient::ScheduleAnimation widget_->scheduleAnimation() should be routed through SingleThreadProxy:: SetNeedsAnimate(). This way we can reduce many CC API inconsistencies between single thread and threaded mode. [1/2] Remove ScheduleCompositeImpl The force_redraw parameter of ScheduleCompositeImpl only makes a difference in threaded-compositing mode. The only user of ScheduleCompositeImpl(true) always calls SetNeedsAnimate, so it doesn't harm to call it one more time. --> ScheduleCompositeImpl is fully equivalent to scheduleComposite This patch merges ScheduleCompositeImpl into scheduleComposite. R=jamesr,piman Review URL: https://codereview.chromium.org/80173002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@236718 0039d316-1c4b-4281-b951-d872f2087c98
* Replaces uses of the WGC3DSwapBuffersClient with LTHSingleThreadClientjamesr@chromium.org2013-11-081-3/+4
| | | | | | | | | | | | | | | | | This converts users of the WebGraphicsContext3DSwapBuffersClient mechanism over to using callbacks from cc::LayerTreeHostSingleThreadClient instead. This mechanism is a way to implement flow control when using single threaded compositing by keeping track of the number of pending SwapBuffers calls. WGC3DSwapBuffersClient hooked into the context directly to observer these calls, but intercepted the calls at an awkward place. This instead gets callbacks directly from the compositor when using the single threaded path. R=piman BUG=181120 Review URL: https://codereview.chromium.org/59033012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@233777 0039d316-1c4b-4281-b951-d872f2087c98
* Introduce separate client and init path for single-threaded ccjamesr@chromium.org2013-11-071-0/+29
The chromium compositor can be used in either a single-threaded fashion or multi-threaded. The requirements, APIs and responsibilities of the embedder are different for these two modes. Some users of cc only use one path or the other. This adds a separate client interface and initialization path for code that only uses the single threaded path. Having a dedicated client for the single threaded path will make it possible to get rid of the WebGraphicsContext3DSwapBuffersClient which will then make it easier to break cc's dependency on WGC3D. R=piman BUG=181120 Review URL: https://codereview.chromium.org/61823008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@233483 0039d316-1c4b-4281-b951-d872f2087c98