Primary eng (and PM) emails
Summary
Remove darker composite operator
Motivation
1. Compositing spec [1] doesn't contain "darker" composite operator. [1] http://dev.w3.org/fxtf/compositing-1
2. "darker" is a quirk that is exclusive to WebKit.
3. "darker" composite operator is implemented in the same way to "darken" blend mode. So web developers can use "darken" instead of "darker".
Compatibility Risk
Only WebKit and Chromium support "darker", non-standard API.
Alternative implementation suggestion for web developers
Web developers can use "darken" blend mode for exactly same effect to current "darker" in chromium.
One thing worth to note is that chromium "darker" implementation has been wrong since "darker" was introduced. WebKit "darker" shows similar but different composition effect from chromium.
Usage information from UseCounter
Currently, 0.0002% of sites use "darker".
https://www.chromestatus.com/metrics/feature/timeline/popularity/577
Entry on chromestatus.com, crbug.com, or MDN
Requesting approval to remove too?
“Yes”
This is an intent to deprecate and remove - does that mean it is deprecated for some time (how much? based on what?) and then removed?
Justin suggested outright removing it and I think I support this. If this is outright removed, though, can this be merged to Chrome 40?
Unless I am mistaken, Chrome 40 ships "mix-blend-mode" which lets the developer specify "darker" as the mode. This should not be enabled in the first place and removed after one release.I know "background-blend-mode" also uses this, so, obviously, the preferred way forward would be to either deprecate it there and not support it at all in "mix-blend-mode", or remove it from both of them.Anyway, it should not be a supported value in "mix-blend-mode".
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+...@chromium.org.
Oh, sorry. That is much clearer.Please, make sure this kind of information is mentioned in future intents so we know where these values are actually used.
Update: We intend to backtrack on the removal of the "darker" compositing mode for 2d canvas in Chrome 42. The related "plus-darker" CSS mode will stay removed. If all goes as planned, Chrome 42 stable will support "darker", as an alias for "darken", with a deprecation warning printed to the dev console.
On Thu, Apr 2, 2015 at 12:11 PM, Justin Novosad <ju...@chromium.org> wrote:Update: We intend to backtrack on the removal of the "darker" compositing mode for 2d canvas in Chrome 42. The related "plus-darker" CSS mode will stay removed. If all goes as planned, Chrome 42 stable will support "darker", as an alias for "darken", with a deprecation warning printed to the dev console.'darken' and 'darker' are not the same operator so they might produce different results.
On Thu, Apr 2, 2015 at 4:14 PM, Rik Cabanier <caba...@gmail.com> wrote:On Thu, Apr 2, 2015 at 12:11 PM, Justin Novosad <ju...@chromium.org> wrote:Update: We intend to backtrack on the removal of the "darker" compositing mode for 2d canvas in Chrome 42. The related "plus-darker" CSS mode will stay removed. If all goes as planned, Chrome 42 stable will support "darker", as an alias for "darken", with a deprecation warning printed to the dev console.'darken' and 'darker' are not the same operator so they might produce different results.'darker' is not implemented in skia. Perhaps older versions of Chrome on Mac that used the CoreGraphics port of WebKit may have had an implementation of 'darker' that varied from 'darken'.
On Thu, Apr 2, 2015 at 1:36 PM, Justin Novosad <ju...@chromium.org> wrote:On Thu, Apr 2, 2015 at 4:14 PM, Rik Cabanier <caba...@gmail.com> wrote:On Thu, Apr 2, 2015 at 12:11 PM, Justin Novosad <ju...@chromium.org> wrote:Update: We intend to backtrack on the removal of the "darker" compositing mode for 2d canvas in Chrome 42. The related "plus-darker" CSS mode will stay removed. If all goes as planned, Chrome 42 stable will support "darker", as an alias for "darken", with a deprecation warning printed to the dev console.'darken' and 'darker' are not the same operator so they might produce different results.'darker' is not implemented in skia. Perhaps older versions of Chrome on Mac that used the CoreGraphics port of WebKit may have had an implementation of 'darker' that varied from 'darken'.It seems they did do something different, but also that it uses the private CAFilter which has no documentation for what the difference between kCAFilterPlusD and kCAFilterDarkenBlendMode is.
R = MAX(0, 1 - ((1 - D) + (1 - S)))
αs x (1 - αb) x Cs + αs x αb x min(Cb, Cs) + (1 - αs) x αb x Cbbut can be simplified (See the skia impl [3])
On Thu, Apr 2, 2015 at 3:38 PM, Elliott Sprehn <esp...@chromium.org> wrote:On Thu, Apr 2, 2015 at 1:36 PM, Justin Novosad <ju...@chromium.org> wrote:On Thu, Apr 2, 2015 at 4:14 PM, Rik Cabanier <caba...@gmail.com> wrote:On Thu, Apr 2, 2015 at 12:11 PM, Justin Novosad <ju...@chromium.org> wrote:Update: We intend to backtrack on the removal of the "darker" compositing mode for 2d canvas in Chrome 42. The related "plus-darker" CSS mode will stay removed. If all goes as planned, Chrome 42 stable will support "darker", as an alias for "darken", with a deprecation warning printed to the dev console.'darken' and 'darker' are not the same operator so they might produce different results.'darker' is not implemented in skia. Perhaps older versions of Chrome on Mac that used the CoreGraphics port of WebKit may have had an implementation of 'darker' that varied from 'darken'.It seems they did do something different, but also that it uses the private CAFilter which has no documentation for what the difference between kCAFilterPlusD and kCAFilterDarkenBlendMode is.The CG darker blend mode is defined in the Apple documentation [1]:R = MAX(0, 1 - ((1 - D) + (1 - S)))The CA Filter is supposed to match so it's likely the same.The 'Darken' blend mode is defined in CSS compositing [2] and the full formula is quite complex:αs x (1 - αb) x Cs + αs x αb x min(Cb, Cs) + (1 - αs) x αb x Cbbut can be simplified (See the skia impl [3])