12:17 | <sfarre> | While implementing the Fullscreen API for Ladybird I came across an issue with the fullscreen spec with respect to how it says to run "find the topmost popover ancestor" algorithm: https://fullscreen.spec.whatwg.org/#fullscreen-an-element It says: "To find the topmost popover ancestor, given a Node newPopoverOrTopLayerElement (1), a list popoverList(2), an HTML(3) element or null invoker(3), and a boolean isPopover(4), perform the following steps. They return an HTML element or null." Is |
12:20 | <sfarre> | And the topmost popover ancestor algo: https://html.spec.whatwg.org/multipage/popover.html#topmost-popover-ancestor |
12:21 | <sfarre> | I can't find any other places in the standard that refers to this algorithm, in the wording that the Fullscreen API does, namely "given element, null, false", i've only found "given foo, bar, baz, quux" |
12:32 | <jmdyck> | If popoverList were optional, then it would be introduced as an optional list popoverList , and it would either be given a default value, or the algorithm would have to deal with the possibility that it's not supplied. And optional positional parameters are supposed to come at the end of the parameter list. None of that's true in this case, so you can be pretty confident that popoverList isn't optional. |
12:35 | <sfarre> | Right, that was my conclusion as well. So that would also make it safe to assume that the Fullscreen API is worded incorrectly? Judging by how Firefox has implemented this, they populate the |
12:42 | <jmdyck> | topmost popover ancestor used to have only 3 params, and then popoverList was added. So probably Fullscreen's invocation used to be correct, but then wasn't updated when it should have been. |
12:42 | <sfarre> | yeah, that was my speculation as well |
12:43 | <sfarre> | Should I file an issue with the Fullscreen spec? |
12:43 | <jmdyck> | That happened only two months ago, in commit 7a307cd |
12:43 | <sfarre> | Oh wow |
12:44 | <sfarre> | sorry, but where can I look at that commit? |
12:44 | <jmdyck> | just a minute... |
12:45 | <sfarre> | found it, this one right? https://github.com/whatwg/html/commit/7a307cdfdee23d28e9c043afd70fe46e27e40d45 |
12:46 | <jmdyck> | yup, in particular line 86219 |
12:52 | <jmdyck> | https://github.com/whatwg/html/pull/9778 is the PR that added it. I don't think it mentions the need to update downstream specs (but I only skimmed the discussion). I don't know how that's supposed to happen. |
12:53 | <sfarre> | right, so with my understanding, the new hints should just be dismissed upon fullscreen |
12:56 | <sfarre> | but, I would need to understand popovers better. who, what, where do I file issues? |
12:57 | <sfarre> | because it seems like filing an issue with the Fullscreen spec don't make all that much sense, since we'd need some understanding that the authors & reviewers of that PR can only provide, right? |
12:58 | <jmdyck> | I think it makes sense to file an issue with the Fullscreen spec even if you don't know how to resolve it. |
12:58 | <sfarre> | right, ok |
12:59 | <sfarre> | I'll file an issue, reference the PR and some of this discussion. |
13:01 | <jmdyck> | Your issue can maybe 'at' josepharhar (author of 9778) to ask for advice. |
13:02 | <sfarre> | ok |
13:02 | <jmdyck> | oh, first check if such an issue already exists on fullscreen. |
13:02 | <sfarre> | yeah it struck me too :) but there was none |
13:08 | <sfarre> | i'm guessing they missed it because when clicking the cross references, the fullscreen api does not show up |
13:12 | <jmdyck> | clicking the algorithm name in the HTML spec? Does that ever bring up external references? |
13:13 | <jmdyck> | That's maybe a bikeshed feature. HTML spec isn't built with bikeshed. |
13:15 | <sfarre> | right |
13:16 | <Luke Warlow> | Idk that bikeshed even has that feature (it would be amazing if it did and html could get it though). For exactly this kind of purpose. Makes finding your consumers much easier. |
13:38 | <Nazim Shopen> | nazimshopen |
17:18 | <akaster> | for cross-references, there's always https://dontcallmedom.github.io/webdex/ |
17:18 | <akaster> | though it would definitely be nice if such metadata was available inline |