Skip to content

[cssom-view] Define what "client window" means #430

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
cvrebert opened this issue Aug 28, 2016 · 2 comments
Open

[cssom-view] Define what "client window" means #430

cvrebert opened this issue Aug 28, 2016 · 2 comments

Comments

@cvrebert
Copy link
Member

https://drafts.csswg.org/cssom-view/#dom-window-screenx

window.screenX, window.screenY, window.outerWidth, and window.outerHeight use the term "client window" in their definitions, but this term doesn't seem to be defined anywhere.

@hexalys
Copy link

hexalys commented Oct 6, 2016

Ditto. I am concerned as well by not having a definition. On Mobile, those values are completely out of whack with desktop like expectations, or just put to 0 for no good reasons.

Also Safari on iOS presumably refuses to have window.outerHeight/Width reported despite having multiple bugs reported on it. They mention bug duplicates from years ago. Suggesting they deliberately take no action on it, which is really annoying exceptions to deal with, for cross-device measurements.

Given iPad or Samsung split-screen considerations, mobile devices technically have a 'client window'. In contrast, a headless browser is probably an example where you would have no client window.

So perhaps the definition should revolve around the headless browser definition:

A headless browser is a web browser without a graphical user interface.

Which would define client window along something like:
A "client window" is defined by the outer edges of the web-exposed graphical user interface of the user agent, is any, excluding any external operating system interfaces represented on screen.

@gsnedders
Copy link
Member

Based on what I did at w3c/webdriver#1162:

WebDriver as of that PR when getting the client window dimensions now does so by reference to outerWidth and outerHeight (because realistically the intention is to match them, and whether they're under-defined is a separate issue).

However, on the setting side we have phrases like:

Set the width, in CSS reference pixels, of the operating system window containing the current top-level browsing context, including any browser chrome and externally drawn window decorations to a value that is as close as possible to width.

Ideally, WebDriver could just say, "Set the width, in CSS pixels, of the client window to a value as close as possible to to width". That requires some citable definition of "client window", however.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants