- From: CSS Meeting Bot via GitHub <sysbot+gh@w3.org>
- Date: Fri, 31 Jul 2020 15:58:48 +0000
- To: public-houdini-archive@w3.org
The CSS Working Group just discussed `????`, and agreed to the following: * `RESOLVED: Any Houdini JS that needs to run for style / layout calc needs to run for print` <details><summary>The full IRC log of that discussion</summary> <fantasai> Topic: ????<br> <fantasai> s/????/Print Behavior and Test Requirements/<br> <Rossen___> github: https://github.com/w3c/css-houdini-drafts/issues/978<br> <fantasai> github: https://github.com/w3c/css-houdini-drafts/issues/978<br> <fantasai> TabAtkins: gsnedders brought up really good point that historically we don't run JS for print<br> <fantasai> TabAtkins: but how should that interact with layout API and paint API?<br> <AmeliaBR> q+<br> <fantasai> TabAtkins: print style can change sizes of things<br> <fantasai> TabAtkins: have to run custom paint and custom layout<br> <astearns> ack florian<br> <fantasai> TabAtkins: are we doing something with that?<br> <florian> q-<br> <fantasai> TabAtkins: if we're not, do we plan to?<br> <fantasai> TabAtkins: we should document this either way, to make sure it's clear how printing and houdini APIs work together<br> <fantasai> Rossen___: When are we evaluating print?<br> <fantasai> TabAtkins: when you print a web page<br> <fantasai> TabAtkins: switch over to print styles and fragment for printing<br> <sushanth> +q<br> <fantasai> TabAtkins: but aren't running JS<br> <fantasai> iank_: These particular things, we should be running any layout API JS<br> <Rossen___> ack AmeliaBR<br> <fantasai> AmeliaBR: Definitely as part of a style recalc<br> <fantasai> AmeliaBR: Dunno if works correctly, but that should be the expectation<br> <fantasai> sushanth: for printing, I work on canvas so I know how it works for Chavas<br> <fantasai> sushanth: There's a "about to print" event, and you do stuff, and that gets replayed<br> <Rossen___> ack sushanth<br> <fantasai> sushanth: when you print, those recordings are played back<br> <AmeliaBR> s/"about to print"/onBeforePrint/<br> <emilio> q+<br> <fantasai> Rossen___: So takeaway is yes, should be running all of the JS hooks and execute scripts that will do custom paint / layout etc. in all of these cases<br> <fantasai> emilio: One question, for print approach, what happens when user changes stuff?<br> <fantasai> emilio: does print run multiple times?<br> <fantasai> emilio: in Gecko that's not the case<br> <fantasai> emilio: You issue print command, right?<br> <fantasai> emilio: there's a print preview that let's you adjust page size / margins / etc.<br> <fantasai> emilio: we don't dispatch JS events every time that happens<br> <fantasai> emilio: in Gecko, we do a complete separate document just for printing<br> <fantasai> emilio: we fire beforeprint event before doing this<br> <fantasai> emilio: when you change layout, we don't do it over again<br> <fantasai> AmeliaBR: It would be after regular JS event<br> <Rossen___> q?<br> <Rossen___> ack emilio<br> <fantasai> AmeliaBR: Houdini isn't part of event loop, it's triggered by style recalc directly<br> <gsnedders> q+<br> <fantasai> gsnedders: Want to point of last bit of my issue, which was about how we plan on testing the layout API<br> <fantasai> gsnedders: whether we expect there to be different testing for paged media vs scrolling media<br> <fantasai> iank_: There's currently work that is at least planned but maybe not in progress to support better printing in WPT?<br> <fantasai> gsnedders: We have paged reftests, but only currently implemented in Gecko<br> <fantasai> iank_: so on Chromium project to add support reftests of that form<br> <Rossen___> ack gsnedders<br> <fantasai> iank_: Testing strategy should be no different from other printing tests<br> <fantasai> gsnedders: ...<br> <fantasai> gsnedders: JS tests for worklets specifically, do we want them to differ from paged media?<br> <fantasai> iank_: Changing behavior between paged vs non-paged?<br> <fantasai> iank_: Definitely will be a difference<br> <fantasai> iank_: sizes change<br> <fantasai> iank_: definitley change in layout maybe paint<br> <fantasai> iank_: One that's missing is fragmentation support<br> <fantasai> iank_: that's one thing that will definitely be triggered by paged media context<br> <fantasai> emilio: We ported a lot of the Gecko paged reftests to be in WPT<br> <fantasai> iank_: We're undergoing adding more and more capabilities to our new fragmentation engine<br> <fantasai> iank_: adding a lot of those tests as ? tests<br> <fantasai> iank_: first half of next year will be focusing solely on printing, effectively<br> <fantasai> iank_: will add a lot more reftests<br> <AmeliaBR> s/?/ref/<br> <fantasai> iank_: will work on supporting print reftests in chromium at the same time<br> <fantasai> gsnedders: I think that answers my questions<br> <fantasai> Rossen___: smfr pointed out that we should probably specify when Houdini JS is specified in all of these cases for printing<br> <fantasai> AmeliaBR: Are worklets allowed to do anything asyc?<br> <fantasai> TabAtkins: nope. Very intentionally<br> <TabAtkins> ScribeNick: TabAtkins<br> <TabAtkins> fantasai: Layout API hasnt' been published since 2018, and I'm guessing edits ahve happened since then<br> <fantasai> fantasai: Just want to point out that Layout API haven't been published since 2018<br> <TabAtkins> Rossen___: Yes Ian and I botha ttempted to publish this and both failed<br> <TabAtkins> fantasai: If you have mechanics issues, can youg et a staff contact to help?<br> <TabAtkins> Rossen___: Yes.<br> <fantasai> fantasai: If you're getting stuck, ask the staff contacts for help<br> <fantasai> scribeNick: TabAtkins<br> <fantasai> TabAtkins: let's record a resolution<br> <fantasai> TabAtkins: Any houdini JS that needs to rerun for style / layout recalc needs to run<br> <fantasai> RESOLVED: Any Houdini JS that needs to run for style / layout calc needs to run for print<br> </details> -- GitHub Notification of comment by css-meeting-bot Please view or discuss this issue at https://github.com/w3c/css-houdini-drafts/issues/978#issuecomment-667197344 using your GitHub account -- Sent via github-notify-ml as configured in https://github.com/w3c/github-notify-ml-config
Received on Friday, 31 July 2020 15:58:50 UTC