Re: [css-houdini-drafts] [css-paint-api] Consider making Path2D the only way to render paths with PaintRenderingContext2D.

The CSS Working Group just discussed https://github.com/w3c/css-houdini-drafts/issues/348.

<details><summary>The full IRC log of that discussion</summary>

```
<TabAtkins> Topic: https://github.com/w3c/css-houdini-drafts/issues/348
<TabAtkins> GitHub Topic: https://github.com/w3c/css-houdini-drafts/issues/348
<fantasai> iank_: This was about subsetting paint rendering context2d even more and remove canvas part APIs
<fantasai> iank_: This came from someone at Firefox
<fantasai> iank_: Removing this would force devs to remove new createPath API on the canvas and then stash these paths between frames
<fantasai> iank_: This provdes some optimizations for rendering engines
<fantasai> iank_: M sense is that we don't want to do this
<fantasai> iank_: For the big one api
<fantasai> iank_: and instead have a displayList like context, which we've talked about previously, for a V2
<astearns> s/big/v/
<fantasai> dbaron: My understnading of v1 was that you could implement it on top of a displayList-like context
<fantasai> dbaron: i.e. a canvas that is backe d by a display list instead of backed by a bitmap
<fantasai> iank_: What this allows you to do is cache display lists of 2d path elements
<fantasai> dino: What' he's saying is that if everyone use dthe canvasPath interface, then a GPU renderer could cache the tesselated vertexes and store them on the GPU and would not have to recreate them every time
<fantasai> ChrisL: Another advantage of displayList is that it's much easier ot make an a11y tree
<fantasai> dino: Eithe rway there's still a displayList
<fantasai> dino: If we restrict the API, it could make certain drawing implementations faster
<fantasai> iank_: v1 is still impleementable using a display list, this is how our impl works
<fantasai> iank_: the other main thing is that we're trying to make this thing reusable by canvas AIs, and the ones I looked at heavily make use of the path apis
<fantasai> iank_: If we want a more optimized display list rendering context, that should separate API
<fantasai> smfr: so proposal is that we allow both the old style path rendering to context and the new path 2d stuff?
<fantasai> iank_: Currently that's what we have
<fantasai> iank_: This proposal wants to rmeove the context stuff
<fantasai> smfr: We're going to keep old style and new style path drawing functions on context.
<fantasai> jack: Are ppl going to use 3rd party libraries that are already using these ,and this is why we're keeping them?
<fantasai> jack: And we're assuming they aren't goint to break due to missing APIs?
<fantasai> iank_: ...
<fantasai> iank_: It's pretty reasonable to amke it wor
<fantasai> k
<fantasai> iank_: Could re-discuss with nical in Paris, but should rsolve to keep for now
<fantasai> dino: End result should be able to do it with canvas and paint workers
<fantasai> ...
<fantasai> dino: New version isn't very useful, path objects sit by themselves, don't know their live time
<dbaron> s/live time/lifetime/
<fantasai> dino: Best way is SVG where you explicitly say you're going to reuse that object
<fantasai> jack: I can ping relevant webrender ppl on this bug
<fantasai> jack: Saw yo umentioned some workarounds
<fantasai> jack: Seemed reasonable to me
<dbaron> (Paris meeting plan being https://wiki.csswg.org/planning/paris-2017 )
<fantasai> jack: He also said no reason to cut this API, but no reason to wait until august, could ping ppl now
<fantasai> Rossen: So we don't need a resolution now, can just put on agenda for Paris and keep working in github
<fantasai> Rossen: Doens't require any changes to current spec anyway
<dbaron> (The argument that there are a lot of libraries that will just work out of the box with the old path syntax seems pretty reasonable.)
```
</details>


-- 
GitHub Notification of comment by css-meeting-bot
Please view or discuss this issue at https://github.com/w3c/css-houdini-drafts/issues/348#issuecomment-294696367 using your GitHub account

Received on Tuesday, 18 April 2017 06:07:24 UTC