sim...@google.com, swetha...@google.com
https://github.com/screen-share/capture-all-screens/blob/main/README.md
https://screen-share.github.io/capture-all-screens
https://screen-share.github.io/capture-all-screens
https://github.com/screen-share/capture-all-screens/blob/main/README.md
https://docs.google.com/document/d/1XB8rQRnY5N8G2PeEcNJpVO0q22CutvwW8GGKCZ1z_vc/edit?usp=sharing
Capture all the screens currently connected to the device using getAllScreensMedia().
Calling getDisplayMedia() multiple times requires multiple user gestures, with the user manually selecting the next screen each time, and without a guarantee to the app that all screens were selected. getAllScreensMedia() improves on all of these fronts.
(As this feature has extreme privacy ramifications, it is only exposed behind an enterprise policy, and users are warned before recording even starts, that recording *could* start at some point.)
Blink>Media>GetAllScreensMedia
https://github.com/w3ctag/design-reviews/issues/856
TAG has expressed concerns about exposing such a powerful capability on the web. We mitigate their concerns by moving the API to Isolated Web Apps and only exposing it to apps that are explicitly allowlisted by the device owner.
GetAllScreensMedia
https://github.com/screen-share/capture-all-screens/issues
https://github.com/screen-share/capture-all-screens
This API is only available to origins allowlisted by administrators through a policy. The policy itself is non-standard, limiting even theoretical interoperability. This API rejects requests from pages that are not allowlisted by an administrator. The likelihood of this API being adopted by a browser that does not provide administrators mechanisms to manage clients is low.
Gecko: N/A - given that the API is limited to managed configurations, it's not clear that requesting a position is needed
WebKit: N/A - given that the API is limited to managed configurations, it's not clear that requesting a position is needed
Web developers: Positive (https://github.com/screen-share/capture-all-screens/issues/9)
Other signals:
No
The challenge for developers is the limitation of the API to origins allowlisted by an enterprise policy.
Risk of malicious sites exploiting the API and gaining access to sensitive information on users' devices. This risk is mitigated by the API only being accessible to origins allowlisted by an enterprise policy.
Risk of an allowlisted site being compromised to gain access to sensitive information on users’ devices. This risk it mitigated by the API only being accessible to Isolated Web Apps.
Risk of users loading private information that gets recorded and made available to apps affiliated with their device's admin. This risk is mitigated by informing users that recording might start at any moment before the API becomes accessible. (In CrOS, this warning is delivered in the log-in screen, and when users log-in despite the warning, this is tantamount to assent.)
Risk of users forgetting that their screens are being recorded. This risk is mitigated through a persistent notification.
N/A (No change in behavior for existing APIs).
Reason this experiment is being extended
This is needed to provide developers with enough time to pivot their drive-by web solutions to isolated web app solutions.
We have made significant progress on the launch of `getAllScreensMedia` for isolated web apps and as discussed here, this is a requirement to extend the origin trial.
No
This API is initially implemented on CrOS, where demand for it is greatest, and where we have the most flexibility in offering users early warning that their screens may be recorded if they proceed past the log-in screen. Lessons learned from shipping this API on CrOS will be used when deciding how to correctly implement such warnings on other platforms.
No, as WPTs don’t support setting of managed policies. The API is tested by a number of unit- and browser- tests (Test files).
https://github.com/screen-share/capture-all-screens/blob/main/HOWTO.md
chrome://flags#enable-get-all-screens-media
GetAllScreensMedia
This feature is only available through active enabling by admin policy and can be disabled the same way at any time.
True
https://issues.chromium.org/issues/40216442
https://launch.corp.google.com/launch/4276771
As this is a managed feature, monthly active users can be measured and are displayed at go/contact-center-dashboard (Googlers only).
Feature is available only on ChromeOS for the foreseeable future.
We anticipate this feature being used by partners in the contact center space (or other areas that have to comply with regulation or established usage patterns that require screen capture).
There is already a significant number of developers that are working on integrating this feature in their products (beyond the developers that expressed public interest here).
At this time, this feature is only enabled through the Chrome admin panel.
https://github.com/screen-share/capture-all-screens/blob/main/HOWTO.md
https://github.com/screen-share/capture-all-screens/blob/main/README.md
Note that we already have Blink owners approval to launch the API in M137 (intent to ship). As discussed in the first intent to extend experiment, we request this extension to (including) M136 in order to give developers sufficient time to move from their drive-by web solutions to isolated web app solutions.
No open issues and no anticipated changes.
https://chromestatus.com/feature/6284029979525120?gate=5610053803966464
Intent to Prototype: https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAEdDZo9N354i6eST0x19TXwpeBtgs5_gJUYVF%2BTKLpiJySDADg%40mail.gmail.com
Intent to Experiment: https://groups.google.com/a/chromium.org/g/blink-dev/c/6TRT0XsVOE4/m/NOm-YEQCAgAJ
Intent to Extend Experiment 1: https://groups.google.com/a/chromium.org/g/blink-dev/c/HErdlr3e_V0