-
Notifications
You must be signed in to change notification settings - Fork 61
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
Mitigate getUserMedia/enumerateDevices fingerprinting issues based on device info permission #574
Mitigate getUserMedia/enumerateDevices fingerprinting issues based on device info permission #574
Conversation
checks previously defined to fire the devicechange event. Use that routine for devicechange event. Use that routine to postpone getUserMedia and enumerateDevices steps until this routine returns true.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This works for us. Great improvement!
I should clarify "us" there was Firefox. We should hear from others before merging. |
@guidou can you check if this (waiting with resolution until tab is foreground) is reasonable to implement in Chrome? |
Yes, this is reasonable to implement in Chrome. |
@guidou, are you saying that Chrome could always wait to reject/resolve until tab is foreground? I am asking this as currently, if device permission is granted (which is I believe the case in Chrome if user granted once camera/mic permission for the origin), the PR does not require to wait. I believe Safari (and probably Firefox) will probably wait no matter the device permission state. |
@youennf I meant that Chrome can be modified to wait until the tab is in the foreground. If we implement this in Chrome, it will probably also always wait until the tab is in the foreground. Thus, the PR can be simplified further. |
Updated PR based on @guidou response. |
Travis error is: Given this PR is not changing anything near this line, I think this is a pre-existing issue. |
… a discarded document does not resolve w3c/mediacapture-main#574 Depends on D127044 Differential Revision: https://phabricator.services.mozilla.com/D127045 bugzilla-url: https://bugzilla.mozilla.org/show_bug.cgi?id=1732410 gecko-commit: 1a2b9b3d7f594cc87c6da168fcdaaed659b6e80e gecko-reviewers: jib
…Promise from a discarded document does not resolve r=jib w3c/mediacapture-main#574 Depends on D127044 Differential Revision: https://phabricator.services.mozilla.com/D127045
…romises r=jib,nika w3c/mediacapture-main#574 Focus on browser chrome widgets is accepted provided the tab is fully active and foreground. w3c/mediacapture-main#752 (comment) Differential Revision: https://phabricator.services.mozilla.com/D127051
…Promise from a discarded document does not resolve r=jib w3c/mediacapture-main#574 Depends on D127044 Differential Revision: https://phabricator.services.mozilla.com/D127045
…romises r=jib,nika w3c/mediacapture-main#574 Focus on browser chrome widgets is accepted provided the tab is fully active and foreground. w3c/mediacapture-main#752 (comment) Differential Revision: https://phabricator.services.mozilla.com/D127051
… a discarded document does not resolve w3c/mediacapture-main#574 Depends on D127044 Differential Revision: https://phabricator.services.mozilla.com/D127045 bugzilla-url: https://bugzilla.mozilla.org/show_bug.cgi?id=1732410 gecko-commit: 1a2b9b3d7f594cc87c6da168fcdaaed659b6e80e gecko-reviewers: jib
… a discarded document does not resolve w3c/mediacapture-main#574 Depends on D127044 Differential Revision: https://phabricator.services.mozilla.com/D127045 bugzilla-url: https://bugzilla.mozilla.org/show_bug.cgi?id=1732410 gecko-commit: 1a2b9b3d7f594cc87c6da168fcdaaed659b6e80e gecko-reviewers: jib
Introduce a device information exposure check routine that does the checks previously defined to fire the devicechange event.
Use that routine for devicechange event.
Use that routine to postpone getUserMedia and enumerateDevices steps until this routine returns true.
Sanitize constraint error if device info permission is granted.