• ccameron@chromium.org's avatar
    Separate ResizeHelper from RenderWidgetHelper · f4675d46
    ccameron@chromium.org authored
    Create a separate RenderWidgetResizeHelper to handle intercepting 
    and early-processing of IPCs that need to be run during an active 
    resize. This functionality was previously handled in 
    RenderWidgetHelper. 
    
    The only functional changes made to RenderWidgetResizeHelper during 
    its excision is that it is a single global structure, as compared with
    the per-RenderProcessImpl RenderWidgetHelper. It will execute any IPCs
    from any renderer or the GPU processes that are forwarded to it. This is
    preferable, as that makes it so that live resize in one window does 
    not destroy performance in other windows. 
    
    Because RenderWidgetResizeHelper can handle GPU process IPCs, we can 
    tear out the bizarre behavior where we'd translate GPU IPCs to synthetic 
    renderer IPCs get them to channel through RenderWidgetHelper (this is 
    all of the deleted ViewHostMsg_CompositorSurfaceBuffersSwapped code). 
    
    Mark this entire structure as Mac-only, and put it in Mac-only files,
    since it doesn't get used on other platforms.
    
    Future changes will make RenderWidgetResizeHelper have a TaskRunner, 
    which we will pass to the compositor, so that we can pump new frames 
    while inside -[RenderWidgetHostViewMac setFrameSize:].
    
    BUG=392031
    
    Review URL: https://codereview.chromium.org/396483003
    
    git-svn-id: svn://svn.chromium.org/chrome/trunk/src@283726 0039d316-1c4b-4281-b951-d872f2087c98
    f4675d46
render_widget_helper.h 7.39 KB