Skip to content

Fix #245 - Addressing new popover values - #247

Closed
theIDinside wants to merge 2 commits into
whatwg:mainfrom
theIDinside:fix-245-changed-popover-algorithm
Closed

theIDinside wants to merge 2 commits into
whatwg:mainfrom
theIDinside:fix-245-changed-popover-algorithm

Conversation

@theIDinside

@theIDinside theIDinside commented Mar 17, 2025 •

Copy link
Copy Markdown

Since the popover attribute got a new value, it's
"find topmost popover ancestor" algorithm changed, and this PR attempts to address this in the Fullscreen API specification.

After discussing with @lukewarlow we came to the conclusion that this is probably the intended change for the Fullscreen API spec.

This addresses #245

  • At least two implementers are interested (and none opposed):
    • Chromium (already implemented like this)
    • …
  • Tests are written and can be reviewed and commented upon at:
    • …
  • Implementation bugs are filed:
    • Chromium: …
    • Gecko: …
    • WebKit: …
  • MDN issue is filed: …
  • The top of this comment includes a clear commit message to use.

(See WHATWG Working Mode: Changes for more details.)


Preview | Diff

Since the popover attribute got a new value, it's
"find topmost popover ancestor" algorithm changed, and this PR
attempts to address this in the Fullscreen API specification.

After discussing with Luke Warlow we came to the conclusion
that this is probably the intended change for the Fullscreen API spec.
Comment thread fullscreen.bs Outdated
Comment thread fullscreen.bs

<pre class=link-defaults>
spec:html
type:dfn; text:allowed to use

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

FYI Reviewers: This is to fix the build as it's currently broken (see #246 for a standalone PR to fix that if that's preferable)

Comment thread fullscreen.bs
spec:html
type:dfn; text:allowed to use
type:dfn; text:showing hint popover list
type:dfn; text:showing auto popover list

@lukewarlow lukewarlow Mar 17, 2025 •

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These aren't currently exported so are manually added here. PR to export them: whatwg/html#11140

@theIDinside theIDinside Mar 17, 2025 •

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Probably just remove these from this PR then, right?

Nvm :P

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Once that gets merged yeah you should be able to remove these, useful to keep them for now so the preview works

@foolip foolip left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This seems to match Chromium's implementation so I'll go ahead and approve it in the interest of progress / matching reality.

I'll comment on whatwg/html#11140 what we could do differently to use a slightly higher level abstraction.

@foolip

foolip commented Dec 18, 2025

Copy link
Copy Markdown
Member

I guess a test is needed for this, testing the interaction of popover=hint and going fullscreen? I think such a test would need to get an element into the "open as hint" state and then fullscreen an ancestor element, and finally check if the popover was closed or not.

@annevk

annevk commented Jan 15, 2026

Copy link
Copy Markdown
Member

A test is needed, but we also can't merge this until the HTML integration situation has an agreed upon solution.

@annevk

annevk commented May 20, 2026

Copy link
Copy Markdown
Member

@jakearchibald's refactor seems to have sorted this out.

@annevk annevk closed this May 20, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

4 participants