Skip to content
All fingerprint checks
Screen & display

A frameless window covering its screen is in fullscreen display mode

Pim· Clearcote Research 2 min readCheck id frameless-covering-is-fullscreen

A frameless window that covers its screen matches (display-mode: fullscreen). N/A for windows with a frame, installed web apps, mobile claims, Brave and non-Chromium engines (severity: warn).

What a detector infers

A desktop browser window has a frame — tab strip, toolbar, borders — so its outer size is larger than its viewport. The one state without a frame is fullscreen, and frameless-window-vs-fullscreen accepts a frameless window as long as it covers its screen from the origin, on the reasoning that such a window must be fullscreen. This row checks that reasoning instead of assuming it.

A window that really is fullscreen says so: F11 and element fullscreen set the window's fullscreen state, and the display-mode media query follows it to 'fullscreen'. Viewport emulation produces the same geometry without the state. Measured: Playwright's viewport emulation (1280×720 at a device scale factor of 2) and chrome-headless-shell both report a frameless window exactly covering its screen while display-mode says 'browser'.

Genuine windowed browsers never take that shape, and genuinely fullscreen ones report 'fullscreen'. Installed web apps report 'standalone' and are N/A, and so are mobile claims, non-Chromium engines and Brave, which varies window geometry as a privacy feature.

How to resolve it

Let the viewport be the real window instead of emulating one — in Playwright, viewport: null (no_viewport=True in Python) — and run headed, or give the window a size that leaves room for the browser's own frame.

What is screen fingerprinting?

Nearby checks in Screen & display

See all 24 checks in Screen & display
Who builds this test

Clearcote is a browser built for fingerprint coherence

It is a Chromium fork, maintained by the same people who wrote this reference. It ships as a compiled browser rather than as a stealth script injected into someone else's — which is a description of how it is built, and is not an argument about how it behaves on this check.

This audit takes no position on how Clearcote scores on Screen & display checks, on this one, or anywhere else. It has no baseline corpus of other people's fingerprints to rank you against and no vendor scoreboard — nearly every check is self-referential, asking one browser the same question through two independent APIs and reporting whether both answers can be true at once. It runs identically on any browser, including ours. Run it on yours and read the result yourself.

See the other checks in Screen & display — the family frameless-covering-is-fullscreen belongs to.