Thanks for weighing in, everyone. Glad to see these approvals coming in!

Ben

On Wednesday, February 23, 2022 at 8:57:57 AM UTC-5 mk...@chromium.org 
wrote:

> LGTM3. Thanks for the work y'all have done with the security and privacy 
> teams to get this in the right place. I believe permissions folks want to 
> follow up about the shape of the final implementation from a UX 
> perspective, so please ensure that you chat with +Illia Klimov and/or +Balazs 
> Engedy before flipping the flags, but I think you're good to go from a 
> web platform perspective.
>
> Thanks!
>
> -mike
>
>
> On Wed, Feb 23, 2022 at 2:07 PM Yoav Weiss <yoav...@chromium.org> wrote:
>
>> LGTM2
>>
>> This seems like an important use-case to tackle!
>>
>> On Tue, Feb 22, 2022 at 9:37 PM 'Ajay Rahatekar' via blink-dev <
>> blin...@chromium.org> wrote:
>>
>>> Hello Blink APi owners,
>>>
>>> Please let us know if you need more details. The team is targeting 
>>> shipping the API in M100 and would be very appreciative of early 
>>> feedback/approval to meet the milestone timeline requirements.
>>>
>>> Thanks in advance.
>>>
>>> Ajay
>>>
>>> On Friday, February 18, 2022 at 7:28:50 AM UTC-8 mike...@chromium.org 
>>> wrote:
>>>
>>>> Hi Michael,
>>>>
>>>> I think you and team have done a great job incorporating TAG and API 
>>>> ergonomics feedback (hi Jake!) as well as privacy concerns. Nice work.
>>>>
>>>> LGTM1.
>>>>
>>>> On 2/14/22 8:28 PM, Michael Wasserman wrote:
>>>>
>>>> Contact emails 
>>>>
>>>> m...@chromium.org
>>>>
>>>>
>>>> Explainer 
>>>>
>>>> https://github.com/webscreens/window-placement
>>>>
>>>>
>> Great explainer! Thanks for that!! 
>>
>>>
>>>> Specification 
>>>>
>>>> https://webscreens.github.io/window-placement/
>>>>
>>>> Design docs  https://web.dev/multi-screen-window-placement/ 
>>>> Summary 
>>>>
>>>> Adds new screen information APIs and makes incremental improvements to 
>>>> existing window placement APIs, allowing web applications to offer 
>>>> compelling multi-screen experiences.
>>>>
>>>> The existing singular window.screen offers a limited view of available 
>>>> screen space, and window placement functions generally clamp bounds to the 
>>>> current screen. This feature unlocks modern multi-screen workspaces for 
>>>> web 
>>>> applications.
>>>>
>>>> Blink component 
>>>>
>>>> UI>Browser>WebAppInstalls>Desktop 
>>>> <https://bugs.chromium.org/p/chromium/issues/list?q=component:UI%3EBrowser%3EWebAppInstalls%3EDesktop>
>>>>
>>>> Search tags 
>>>>
>>>> window placement 
>>>> <https://chromestatus.com/features#tags:window%20placement>, screen 
>>>> enumeration 
>>>> <https://chromestatus.com/features#tags:screen%20enumeration>, window 
>>>> <https://chromestatus.com/features#tags:window>, open 
>>>> <https://chromestatus.com/features#tags:open>, moveTo 
>>>> <https://chromestatus.com/features#tags:moveTo>, moveBy 
>>>> <https://chromestatus.com/features#tags:moveBy>, requestFullscreen 
>>>> <https://chromestatus.com/features#tags:requestFullscreen>, screen 
>>>> <https://chromestatus.com/features#tags:screen>, display 
>>>> <https://chromestatus.com/features#tags:display>, monitor 
>>>> <https://chromestatus.com/features#tags:monitor>, multi-screen 
>>>> <https://chromestatus.com/features#tags:multi-screen>, multi-display 
>>>> <https://chromestatus.com/features#tags:multi-display>, multi-monitor 
>>>> <https://chromestatus.com/features#tags:multi-monitor>, cross-screen 
>>>> <https://chromestatus.com/features#tags:cross-screen>, cross-display 
>>>> <https://chromestatus.com/features#tags:cross-display>, cross-monitor 
>>>> <https://chromestatus.com/features#tags:cross-monitor>
>>>>
>>>> TAG review 
>>>>
>>>> https://github.com/w3ctag/design-reviews/issues/413 
>>>> https://github.com/w3ctag/design-reviews/issues/522 
>>>> https://github.com/w3ctag/design-reviews/issues/602
>>>>
>>>> TAG review status 
>>>>
>>>> Issues addressed
>>>>
>>>> Risks 
>>>> Interoperability and Compatibility 
>>>>
>>>> Feature detection of new screen information APIs and Permission API 
>>>> integration allows sites to handle different levels of feature support. 
>>>> The 
>>>> Screen IDL interface duplicates EventTarget members for RuntimeEnabled 
>>>> experimentation without changing the stable JS API; this will be rectified 
>>>> after launch approval.
>>>>
>>>> Existing window placement APIs generally use compatible multi-screen 
>>>> coordinates, but implementations often restrict bounds to the current 
>>>> screen. We expect low levels of risk in supporting permitted cross-screen 
>>>> placement requests, and falling back on legacy same-screen behavior 
>>>> otherwise.
>>>>
>>>> A detailed assessment of API design risks, including Wayland 
>>>> compatibility, multiple virtual workspaces/desktops, and more, can be 
>>>> found 
>>>> at: <
>>>> https://docs.google.com/document/d/19u5fRKs8iWlpecKBSlfQ6JKrcP4emwK0M_6TNhfz0gs
>>>> >
>>>>
>>>> API surface changes made during the second origin trial are limited to 
>>>> some minor renames, the removal of two unimplemented screen properties, 
>>>> and 
>>>> support for permission policy. An exploratory permission-gated capability 
>>>> to swap the screen of fullscreen windows without a user gesture was 
>>>> reverted to enhance usable security. See <
>>>> https://github.com/webscreens/window-placement/blob/main/CHANGES.md>
>>>>
>>>> The spec is being incubated in the W3C Second Screen CG <
>>>> https://webscreens.github.io/cg-charter> and is pending adoption by 
>>>> the W3C Second Screen WG <https://w3c.github.io/secondscreen-charter>
>>>>
>>>> Gecko: No signal (
>>>> https://github.com/mozilla/standards-positions/issues/542) We 
>>>> requested a position and are waiting for feedback. Firefox supports 
>>>> cross-screen window.open/move*() requests. This work partly pursues 
>>>> compatibility with that behavior.
>>>>
>>>> WebKit: No signal (
>>>> https://lists.webkit.org/pipermail/webkit-dev/2021-June/031903.html) 
>>>> We requested a position and are waiting for feedback.
>>>>
>>>> Web developers: Positive (
>>>> https://github.com/webscreens/window-placement/issues/67)
>>>>
>>>> - Discourse: <
>>>> https://discourse.wicg.io/t/proposal-supporting-window-placement-on-multi-screen-devices
>>>> >
>>>>
>>>> - Twitter: <
>>>> https://twitter.com/search?q=url%3Amulti-screen-window-placement&src=typed_query&f=live
>>>> >
>>>>
>>>> - Announcement: <
>>>> https://twitter.com/ChromiumDev/status/1305406689466814464>
>>>>
>>>> - HackerNews (was front page): <
>>>> https://news.ycombinator.com/item?id=24489234>
>>>>
>>>> (I was intrigued to see Positive feedback coming from HackerNews, but 
>>>> we should probably consider that to be Negative.)
>>>>
>>>> - Citrix: <
>>>> https://github.com/webscreens/window-placement/issues/67#issuecomment-945859384
>>>> >
>>>>
>>>> - This work is also of interest to Google Slides
>>>>
>>>> Ergonomics 
>>>>
>>>> The minor improvements to window.open/move*() API behaviors have no 
>>>> effect on their poor ergonomics (synchronous, features string shape, 
>>>> etc.). 
>>>> This API does not preclude future work from improving the ergonomics of 
>>>> those existing APIs. Extending the requestFullscreen dictionary with 
>>>> an optional screen should pose no ergonomic risks. The new multi-screen 
>>>> information APIs incorporated OT feedback to improve naming, object 
>>>> comparison, and event handling ergonomics.
>>>>
>>>> Activation 
>>>>
>>>> This feature incrementally extends existing screen information and 
>>>> window placement interfaces with basic multi-screen support. This 
>>>> immediately enables new compelling experiences through progressive 
>>>> enhancement of existing applications.
>>>>
>>>> Security 
>>>>
>>>> Security and Privacy risks are explored in the specification 
>>>> repository’s W3C Questionnaire <
>>>> https://github.com/webscreens/window-placement/blob/main/security_and_privacy.md>,
>>>>  
>>>> and in the respective sections of the draft specification <
>>>> https://webscreens.github.io/window-placement/#security> and <
>>>> https://webscreens.github.io/window-placement/#privacy>. That analysis 
>>>> and review uncovered minimal risks.
>>>>
>>>> Privacy concerns center around fingerprinting screen information, while 
>>>> security risks center around deceptive, surreptitious, or annoying window 
>>>> placements, such as clickjacking. Gating new functionality with a 
>>>> permission helps mitigate these concerns, and may aid or inspire similar 
>>>> protections for legacy API behavior with similar abuse vectors. The 
>>>> overall 
>>>> added risks are low and further mitigated by limiting to secure contexts, 
>>>> supporting a permissions policy, being selective about display information 
>>>> to expose, and continuing to prevent off-screen window placement.
>>>>
>>>> Origin trial feedback 
>>>>    
>>>>    - 
>>>>    
>>>>    First origin trial: Developer feedback 
>>>>    
>>>> <https://docs.google.com/spreadsheets/d/1S66d7izby2_QNu1FqLY_tEpQA9xkAsruvam7nbsq2TI/edit?resourcekey=0-kfJ0PdgNU5wgmjGWJc8AGg#gid=727492058>
>>>>  
>>>>    (Google-internal doc) was generally straightforward: the API is useful, 
>>>> and 
>>>>    it would be difficult or impossible to accomplish anything similar 
>>>> without 
>>>>    it. The most common request was that it be made broadly available as 
>>>> soon 
>>>>    as possible. There were two feature requests; and while neither is 
>>>> provided 
>>>>    with this initial launch, the API shape does not preclude adding 
>>>> support:
>>>>    - 
>>>>       
>>>>       to hide the location bar on popup windows
>>>>       - 
>>>>       
>>>>       for getScreens() to return information about mirrored displays
>>>>       
>>>>
>>>>    - 
>>>>    
>>>>    Feedback on Github: After the OT, @jakearchibald, @kenchris, and 
>>>>    others gave feedback on the API shape <
>>>>    https://github.com/webscreens/window-placement/issues/30>. Changes 
>>>>    were made accordingly <
>>>>    https://github.com/webscreens/window-placement/blob/main/CHANGES.md
>>>>    >.
>>>>    
>>>>
>>>>    - 
>>>>    
>>>>    Second origin trial: Once again, developer feedback 
>>>>    
>>>> <https://docs.google.com/spreadsheets/d/1S66d7izby2_QNu1FqLY_tEpQA9xkAsruvam7nbsq2TI/edit?resourcekey=0-kfJ0PdgNU5wgmjGWJc8AGg#gid=1625618615>
>>>>  
>>>>    (Google-internal doc) was broadly positive. One feature was requested 
>>>> three 
>>>>    times: the ability to open a new window and immediately make it 
>>>>    fullscreen. This feature is on our roadmap. Demand for this API is 
>>>>    high, and we want to give developers the chance to start using it as 
>>>> soon 
>>>>    as possible. Thus it makes sense to launch an MVP, then add additional 
>>>>    features like this one.
>>>>    
>>>>
>>>> Debuggability 
>>>>
>>>> New and existing screen and window APIs are readily debuggable using 
>>>> the developer tools console.
>>>>
>>>> Is this feature fully tested by web-platform-tests 
>>>> <https://chromium.googlesource.com/chromium/src/+/master/docs/testing/web_platform_tests.md>
>>>> ? 
>>>>
>>>> WPTs cover the presence of new JS APIs and some basic API 
>>>> functionality: <https://wpt.fyi/results/screen-details>, <
>>>> https://wpt.live/window-placement>, and <
>>>> https://wpt.fyi/results/fullscreen/api/element-request-fullscreen-options.tentative.html>.
>>>>  
>>>> We aim to extend test coverage and support for multi-screen mocking <
>>>> https://crbug.com/1252062> and cross-screen window placement tests <
>>>> https://crbug.com/1022988> soon.
>>>>
>>>> Flag name 
>>>>
>>>> chrome://flags#enable-experimental-web-platform-features enables the 
>>>> WindowPlacement RuntimeEnabled feature flag (
>>>> --enable-blink-features=WindowPlacement)
>>>>
>>>> Requires code in //chrome? 
>>>>
>>>> Not really - Some relevant test, permission, and pre-existing windowing 
>>>> code lives in //chrome.
>>>>
>>>> Tracking bug 
>>>>
>>>> https://bugs.chromium.org/p/chromium/issues/detail?id=897300
>>>>
>>>> Launch bug 
>>>>
>>>> https://bugs.chromium.org/p/chromium/issues/detail?id=1255960
>>>>
>>>> Measurement 
>>>>
>>>>
>>>> https://chromestatus.com/metrics/feature/popularity#V8Window_GetScreenDetails_Method
>>>>
>>>> Sample links 
>>>>
>>>> https://michaelwasserman.github.io/window-placement-demo/
>>>>
>>>> https://web.dev/multi-screen-window-placement/#demo
>>>>
>>>> Estimated milestones 
>>>>
>>>> OriginTrial desktop last
>>>>
>>>> 96
>>>>
>>>> OriginTrial desktop first
>>>>
>>>> 93
>>>>
>>>> DevTrial on desktop
>>>>
>>>> 93
>>>>
>>>> Link to entry on the Chrome Platform Status 
>>>>
>>>> https://chromestatus.com/feature/5252960583942144
>>>>
>>>> Links to previous Intent discussions 
>>>>
>>>> Intent to Prototype: <
>>>> https://groups.google.com/a/chromium.org/g/blink-dev/c/X6rEbWvU7cI>
>>>>
>>>> Intent to Experiment: (OT1) <
>>>> https://groups.google.com/a/chromium.org/g/blink-dev/c/C6xw8i1ZIdE>
>>>>
>>>> Intent to Experiment: (OT2) <
>>>> https://groups.google.com/a/chromium.org/g/blink-dev/c/jznxQK1U8ZQ>
>>>>
>>>>
>>>> This intent message was generated by Chrome Platform Status 
>>>> <https://chromestatus.com/>.
>>>>
>>>> -- 
>>>>
>>>> You received this message because you are subscribed to the Google 
>>>> Groups "blink-dev" group.
>>>> To unsubscribe from this group and stop receiving emails from it, send 
>>>> an email to blink-dev+...@chromium.org.
>>>> To view this discussion on the web visit 
>>>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAEsbcpUThcD2OSgoebUZuXSevjwBGV0r8Kw3SDrCXGjtB6kx-w%40mail.gmail.com
>>>>  
>>>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAEsbcpUThcD2OSgoebUZuXSevjwBGV0r8Kw3SDrCXGjtB6kx-w%40mail.gmail.com?utm_medium=email&utm_source=footer>
>>>> .
>>>>
>>>> -- 
>>> You received this message because you are subscribed to the Google 
>>> Groups "blink-dev" group.
>>> To unsubscribe from this group and stop receiving emails from it, send 
>>> an email to blink-dev+...@chromium.org.
>>> To view this discussion on the web visit 
>>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/c9f9bfc3-863c-487b-9cfb-b7fd3b0aa6ecn%40chromium.org
>>>  
>>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/c9f9bfc3-863c-487b-9cfb-b7fd3b0aa6ecn%40chromium.org?utm_medium=email&utm_source=footer>
>>> .
>>>
>> -- 
>> You received this message because you are subscribed to the Google Groups 
>> "blink-dev" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to blink-dev+...@chromium.org.
>>
> To view this discussion on the web visit 
>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAL5BFfWYap_kr1OYWoLVm81Mxf2nDYOux6dKd3_5RqVTuMfnMQ%40mail.gmail.com
>>  
>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAL5BFfWYap_kr1OYWoLVm81Mxf2nDYOux6dKd3_5RqVTuMfnMQ%40mail.gmail.com?utm_medium=email&utm_source=footer>
>> .
>>
>

-- 
You received this message because you are subscribed to the Google Groups 
"blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to blink-dev+unsubscr...@chromium.org.
To view this discussion on the web visit 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/d5c6e2ad-cb13-42e7-9a8a-ab436e53f980n%40chromium.org.

Reply via email to