Closed Bug 1697487 Opened 3 years ago Closed 3 years ago

Show the gray camera/mic indicator during permission grace periods

Categories

(Firefox :: Site Permissions, enhancement, P2)

Desktop
All
enhancement

Tracking

()

VERIFIED FIXED
89 Branch
Tracking Status
firefox89 --- verified

People

(Reporter: jib, Assigned: jib)

References

(Blocks 1 open bug)

Details

(Whiteboard: [proton-door-hangers][priority:2c])

Attachments

(4 files)

Attached image image.png

+++ This bug was initially created as a clone of Bug #1693677 +++

Regardless of the length of grace period in bug 1697284, it sounds from bug 1697284 comment 3 and subsequent comments that we should plan to do this tweak for grace periods (but not persistent permission).

Tracked as cosmetic follow-up to not delay landing bug 1693677.

A benefit of this API is that users who notice the icon and click it find out how to remove it.

One subtle difference: unlike with disabled tracks, the user would not get the desktop cam/mic indicator during grace periods. Are you ok with that?

Flags: needinfo?(mt)

Not sure that I'm following. Are you saying that we don't have the overlay controls? I set privacy.webrtc.globalMuteToggles to true (a great feature), which puts controls in a little floating window with mute controls. I'm not completely sure what I think about that not showing, though I'm leaning toward it being OK. The distinction between strong red and grey for the indicator is good.

Flags: needinfo?(mt)
Depends on: 1698000

Oh I hadn't even thought about those, good point! — No, even without privacy.webrtc.globalMuteToggles, there's the desktop menubar icons with dropdowns to consider (shown above, because I hit ENTER too soon, and bugzilla won't let me edit comment 4 for some reason)

Here are the shades of exposure to convey to users without confusing them. With this issue fixed, we'll have (circle = camera icon):

Camera Site access URL icon dropdown OS bar (tab-locator dropdown) Overlay (global mute override toggles)
Safe cold no permission no no
Hot track 🔴 Temporarily Allowed yes yes
Unsafe cold site-disabled track Temporarily Allowed yes yes
Unsafe cold grace period Temporarily Allowed no no
Unsafe cold persistent permission Allowed no no
Hot persistent permission 🔴 Allowed yes yes
Unsafe cold persistent + disabled Allowed yes yes

Without this issue fixed, grace periods would feel like 60 minutes of persistent permission. So I think we're wise to add ⚫ to warn this population.

However, this would presumably mean the ⚫ needs to survive navigation. If we were to decide the OS bar and Overlay must come along on this navigation journey, then that might upset a lot of code assumptions.

then that might upset a lot of code assumptions.

Not to mention user assumptions. With site-disabled tracks, we can infer the user is still in an activity of some sort (e.g. a call). Not so with a 60 minute grace period where the user may even visit other sites in the meantime.

Also, one thing we've missed in this analysis to get rid of reprompts, is we now leave sites no way to get rid of the (gray) camera icon if they want to be responsible and not have this power. This used to be what track.stop() did. 🤷🏼‍♂️

https://stackoverflow.com/questions/65970350/how-to-remove-camera-icon-from-the-browser-address-bar-even-after-closing-the-vi

Marking as P2. Per experience review we agreed to mark as P1 bugs only bugs that will block MR1.

Priority: P1 → P2
Whiteboard: [proton-door-hangers] → [proton-door-hangers][priority:2c]
Assignee: nobody → jib
Attachment #9213915 - Attachment description: WIP: Bug 1697487 - Show gray cam/mic indicator during permission grace periods. → Bug 1697487 - Show gray cam/mic indicator during permission grace periods.
Depends on: 1703674
Attachment #9215642 - Attachment description: Bug 1697487 - Test that gray cam/mic indicator is shown during permission grace periods. WIP → Bug 1697487 - Test that gray cam/mic indicator is shown during permission grace periods.
Pushed by jbruaroey@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/bb5d30e2b6c8
Show gray cam/mic indicator during permission grace periods. r=pbz
https://hg.mozilla.org/integration/autoland/rev/53662a96f338
Test that gray cam/mic indicator is shown during permission grace periods. r=pbz
Flags: qe-verify+
Status: NEW → RESOLVED
Closed: 3 years ago
Resolution: --- → FIXED
Target Milestone: --- → 89 Branch

NI? myself for QA verification.

Flags: needinfo?(timea.babos)

Verified-fixed on latest Nightly 89.0a1 (2021-04-18) (64-bit) on Windows 10 and MacOS 10.15.
The grey cam/mic icon will be displayed as long as the grace period is ongoing.

I have only one observation that would need an answer:
If both the camera and mic are in the grace period, only the webcam grey icon will be displayed. Is this expected or we should have the mic grey icon displayed as well? Please note that opening the permission panel will indeed show both camera and mic permissions correctly.

Flags: needinfo?(timea.babos) → needinfo?(jib)

We use the same rule for showing cam vs mic vs both as we do for when the indicator is red (live): mic=mic, cam=cam, both=cam.¹ This is a preexisting design decision based on the idea that camera capture is typically thought to be more severe than microphone.


  1. Except for the red/live there's actually four levels: mic < cam < cam+mic < screen-sharing (but we don't have grace periods for screen-sharing)
Flags: needinfo?(jib)

Thanks!
Marking this as verified-fixed as per Comment 15 and Comment 16.

Status: RESOLVED → VERIFIED
Flags: qe-verify+
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: