Hi, Thx for your replies!
We also had the solution based on plugin. But we prefer to not use plugins if possible. *Some details about our hole element implementation: We have created a dedicated TextureMapperHoleBackingStore (which actually could be integrated into TextureMapperSurfaceBackingStore). So we call this GraphicsLayer::setContentsToPlatformLayer function from RenderLayerBacking.cpp. I.e, we have put a new case: “if render().isHole()” at the beginning of the existing black: “if render().isEmbeddedObject () else if render(). isVideo() else if render().isAcceleratedCanvas()” in “RenderLayerBacking::updateGraphicsLayerConfiguration()”. Note that the canvas case happens only if WEB_GL or ACCELERATED_2D_CANVAS is enabled so moving the hole to video element is probably a better option. We have validated it on upstream WebKitGtk and WebKitEfl, and the code we put in WebKit is the same for both platforms. * It makes sense to move this work to <video>. So instead of having a new tag, we suggest a new style value: <video style=”background=-webkit-hole;”> It will also simplify the diff a lot. Comments are welcome. On 19 September 2014 21:43, José Dapena Paz <jdap...@igalia.com> wrote: > El jue, 18-09-2014 a las 12:07 -0700, Simon Fraser escribió: > > > I don’t think it’s appropriate to add <hole> to WebKit. > > > > <hole> is really just adapting to a limitation of the platform’s > > compositing architecture. More powerful hardware like computers and > > smartphones are able to composite video above and below web content, > > which is achieved in WebCore via the accelerated compositing code > > path. I don’t think it’s appropriate to burden the platform with an > > element that only applies on power-limited hardware. > > > > The right solution for a WebKit implementation would be to solve this > > via the accelerated composting code. Just use a <video> or <object> in > > your markup, then implement the hole-punching via the GraphicsLayer > > subsystem. > > +1. Implementing punching hole with the integration of GraphicsLayer and > MediaPlayer works well for the videos. Same for plugins. > > I see the punching hole is platform specific. No need for a new HTML > tag. > > > _______________________________________________ > webkit-dev mailing list > webkit-dev@lists.webkit.org > https://lists.webkit.org/mailman/listinfo/webkit-dev >
_______________________________________________ webkit-dev mailing list webkit-dev@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-dev