Skip to content
  • rockot's avatar
    Adds associated interface support between RenderFrameHost and RenderFrame. · f62002a0
    rockot authored
    Introduces a new content::AssociatedInterfaceRegistry and
    content::AssociatedInterfaceProvider to serve as Channel-associated
    interface counterparts to their shell namesakes.
    
    RenderFrameHost and RenderFrame each have both of these things on them,
    and they're routed to the other side using a new RouteProvider interface
    buried in RenderProcessHostImpl / ChildThreadImpl on either end.
    
    Also adds a WebContentsInterfaceRegistry to every WebContents,
    and a helper WebContentsFrameBindingSet<T> to allow consumers to
    very easily manage the lifetime of associated interface bindings
    for each frame in a WebContents.
    
    See the follow-up patch for example usage.
    
    Part a series of CLs to enable and demonstrate WebContents associated
    interfaces:
    
      1. https://codereview.chromium.org/2309513002
      2. https://codereview.chromium.org/2316963005
      3. This CL
      4. https://codereview.chromium.org/2310583002
    
    BUG=612500
    CQ_INCLUDE_TRYBOTS=master.tryserver...
    f62002a0