-
Notifications
You must be signed in to change notification settings - Fork 1
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
Is it important for capture control to keep captured tab from knowing it is captured? #42
Comments
FWIW, if a captured tab visibility is hidden and it receives user gesture, then it would know that it is being captured. |
That's a great question. At the moment, Meet is using |
Yes, I think it's important to keep the captured tab unaware. This keeps users in charge. |
Without real-world experience, it's hard to weigh the benefits and disadvantages.
I see no great urgency to specify this behavior one way or the other. We can let user agents experiment here and report back their findings. |
I had a quick try and AIUI, Chrome is making sure that a tab thinks it is visible (which is sort of true) when captured. This might be good input for the screen share main spec. |
We appear to have consensus about what is likely preferable. Can we also have consensus that the spec should not yet actively mandate this behavior at this point, given our relative ignorance on real-world conditions? |
Thanks for testing! I like Chrome's behavior, and agree it seems worth capturing. Opened w3c/mediacapture-screen-share#307. As to this issue, unless the proposal leaks today, I see no reason to keep it open. If you're asking would I oppose a proposal that leaked this information? Probably, unless it's a really good one. But right now I don't see anything here requiring consensus. |
@youennf, are you also in favor of closing this issue? |
In w3c/mediacapture-screen-share#307 (comment) I show how this API might leak tab capture. I think we should add restrictions in this spec to ignore zoom and scroll inputs whenever the captured page's Note that this doesn't appear to be an issue in Chrome which keeps the captured page |
This is redundant. We have resolved to mandate that the captured tab should be "visible" anyway. For
Similarly, the forward wheel event algorithm reads:
|
Only if it's capturing frames at the moment. There might be implementations in the future that don't capture frames if the window is minimized for instance. There might also be implementations that try to implement this API to work with both tab and window capture of a browser window. If your implementation never does this then it would easily satisfy this requirement, and this shouldn't be an imposition. nevertheless, I think it would be good to have in the spec to cover potential other implementations.
Thanks for this link. Maybe we can make this change there to check the docment's visibility state, which it doesn't do currently. |
I don't think that'd make a difference. The way I see it:
The combination of (1) and (2) produces "no action from CSC can take place on anything other than a tab whose main document is "visible". What am I missing?
Captured windows don't have If we extend this API to support window-capture in the future, and if we then choose to give special treatment to captured browser windows (as opposed to treating them as any native window), then we will have to introduce a few new concepts and connections, including the "window's active tab's main page's visibility state", at which point we can indeed add this requirement. But it does not seem helpful now. Or what am I missing? |
Let's pick this up once w3c/mediacapture-screen-share#307 has been closed with final language. When capturing a browser window, the webpage that is visible in that window is also captured. To support #55 we would need to handle e.g. Chrome not generating frames when the window is minimized. In that case, |
I believe Chrome does keep producing frames when capturing one of its own windows, even if that window is minimized. But I don't think that matters either way. |
getDisplayMedia is trying to ensure that a captured surface does not know it is captured, at least for tab capture.
The question is whether this API should keep this contract or whether we do not care about this constraint.
The text was updated successfully, but these errors were encountered: