[Webkit-unassigned] [Bug 223751] Standardize the condition for opening popup from window.open, and BarProp values
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Wed Aug 10 14:57:57 PDT 2022
https://bugs.webkit.org/show_bug.cgi?id=223751
--- Comment #7 from Tooru Fujisawa [:arai] <arai.unmht at gmail.com> ---
The latest file for the test is here
https://github.com/web-platform-tests/wpt/blob/master/html/browsers/the-window-object/open-close/open-features-is-popup-condition.html
that can be visible here:
https://wpt.fyi/results/html/browsers/the-window-object?label=master&label=experimental&aligned&view=subtest&q=open-features-is-popup-condition
Given the actual UI style is browser dependent, the testcase uses the relation between the `window.open`'s features parameter and `BarProp.visible`, that represents "is popup" of browser context.
https://html.spec.whatwg.org/multipage/browsers.html#is-popup
> A top-level browsing context has an is popup boolean. It is initially false.
>
> NOTE:
> The only mandatory impact in this specification of is popup is on the
> visible getter of the relevant BarProp objects. However, user agents might
> also use it in the following ways:
>
> * Deciding whether or not to provide a minimal web browser user interface
> for the browsing context.
> * Performing the optional steps in set up browsing context features.
>
> In both cases user agents might additionally incorporate user preferences,
> or present a choice as to whether to go down the popup route.
>
> User agents that provides a minimal web browser user interface for such
> popups are encouraged to not hide the browser's location bar.
https://html.spec.whatwg.org/multipage/window-object.html#window-open-steps
> The window open steps, given a string url, a string target, and a string
> features, are as follows:
> ...
> 4. Let tokenizedFeatures be the result of tokenizing features.
> ...
> 11. If windowType is either "new and unrestricted" or "new with no opener",
> then:
> 1. Set the target browsing context's is popup to the result of checking if
> a popup window is requested, given tokenizedFeatures.
https://html.spec.whatwg.org/multipage/window-object.html#popup-window-is-requested
> To check if a popup window is requested, given tokenizedFeatures:
> 1. If tokenizedFeatures is empty, then return false.
> 2. If tokenizedFeatures["popup"] exists, then return the result of parsing
> tokenizedFeatures["popup"] as a boolean feature.
> 3. Let location be the result of checking if a window feature is set,
> given tokenizedFeatures, "location", and false.
> 4. Let toolbar be the result of checking if a window feature is set,
> given tokenizedFeatures, "toolbar", and false.
> 5. If location and toolbar are both false, then return true.
> 6. Let menubar be the result of checking if a window feature is set,
> given tokenizedFeatures, menubar", and false.
> 7. If menubar is false, then return true.
> 8. Let resizable be the result of checking if a window feature is set,
> given tokenizedFeatures, "resizable", and true.
> 9. If resizable is false, then return true.
> 10. Let scrollbars be the result of checking if a window feature is set,
> given tokenizedFeatures, "scrollbars", and false.
> 11. If scrollbars is false, then return true.
> 12. Let status be the result of checking if a window feature is set,
> given tokenizedFeatures, "status", and false.
> 13. If status is false, then return true.
> 14. Return false.
https://html.spec.whatwg.org/multipage/window-object.html#dom-barprop-visible
> The visible getter steps are:
> 1. Let browsingContext be this's relevant global object's browsing context.
> 2. If browsingContext is null, then return true.
> 3. Return the negation of browsingContext's top-level browsing context's
> is popup.
--
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-unassigned/attachments/20220810/69ce6bb8/attachment.htm>
More information about the webkit-unassigned
mailing list