Skip to content

Window name targeting: tie-breaking for same-named top-level traversables is not interoperable #10850

Open
@domenic

Description

@domenic

What is the issue with the HTML Standard?

After #10818 merges, we will have an implementation-defined step which iterates over top-level traversables to find one with a matching name, in "find a navigable by target name". The effect is that if you have multiple such tabs with the same name, which one wins the tie is implementation-defined.

@kjmcnee states:

I can't remember the details, but I think Chromium and Firefox are based on creation order, or maybe reverse creation order. WebKit's ordering is arbitrary as it iterates over a hash set.

Chromium and Firefox's behavior seems better, at least, assuming they're both doing the same order. We should double-check the details, standardize on it, and write web platform tests.

For inspiration on how to write such tests, you can see Kevin's web-platform-tests/wpt#49631 .

Tests here that consistently fail on WebKit may be difficult to create, depending on how their hash works. Maybe something like creating 20 same-named top-level windows would work.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions