- From: Rik Cabanier <cabanier@gmail.com>
- Date: Thu, 13 Aug 2015 14:29:19 -0700
- To: "Tab Atkins Jr." <jackalmage@gmail.com>
- Cc: "public-fx@w3.org" <public-fx@w3.org>
- Message-ID: <CAGN7qDBX8n6axKa4gZezAJF1nV2i82SQm87-6wxJ8WbSM5TNEg@mail.gmail.com>
On Thu, Aug 13, 2015 at 2:20 PM, Rik Cabanier <cabanier@gmail.com> wrote: > > > On Thu, Aug 13, 2015 at 1:44 PM, Tab Atkins Jr. <jackalmage@gmail.com> > wrote: > >> In our recent Intent To Implement for backdrop-filter, Enne brought up >> a case that is seemingly circular: >> >> <body> >> AAA >> <div style="opacity: .5"> >> BBB >> <div style="backdrop-filter: blur(5px)">foo</div> >> </div> >> </body> >> >> What does BBB look like blur filter? Is it half-opaque, as if you'd >> already done all compositing of its ancestors? If that's the case, >> then when you composite the page for real, it'll get double-opacity'd, >> right? >> >> Or is it fully opaque, like you'd pretended the opacity effect doesn't >> yet apply for the purpose of calculating the backdrop? Presumably >> this would mean recursively unwrapping any effects up to the root? >> >> Or is there something else going on? The spec isn't written clearly >> enough for me to figure this out, but *maybe* the backdrop only goes >> to the nearest isolation context, so the backdrop in this case would >> just be BBB? >> > > You execute an extra pass where you render everything upto your nearest > sibling, but you ignore any opacity, filters and compositiing. > Then you use this as input to the backdrop filter. > http://www.w3.org/TR/SVG/filters.html#EnableBackgroundProperty describes > the algorithm in more details. > > This is the same problem that we faced when we planning on introducing > non-isolated blending. https://codereview.chromium.org/23455060/#msg33 > describes the notes from enne on how to implement this. > The actual location of the solution is here: https://codereview.chromium.org/23455060/#msg37
Received on Thursday, 13 August 2015 21:29:46 UTC