[Wayland] Sharing indicator window is not frameless

Bug #1925837 reported by Heather Ellsworth
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Mozilla Firefox
Fix Released
Unknown
firefox (Ubuntu)
Fix Released
Medium
Olivier Tilloy
Impish
Fix Released
Medium
Olivier Tilloy

Bug Description

I'm running updated hirsute with the firefox 87.0+build3-0ubuntu4 deb, just as it comes. This system was a fresh install of 20.10 that was then upgraded to 21.04.

When I have a tab that will start using my webcam/mic, there is a new ff window that is created with these icons. The window is (more or less) minimized to fit the size of the icons (see screenshot). I can close the window by clicking the normal x, and closing this window does not interrupt my webcam/mic usage.

What I normally expect is that when my webcam/mic is being used by some ff tab, the ff/webcam/mic icons are displayed constantly in the top middle of my display.
---
ProblemType: Bug
AddonCompatCheckDisabled: False
ApportVersion: 2.20.11-0ubuntu65
Architecture: amd64
BuildID: 20210318103112
CasperMD5CheckResult: unknown
Channel: Unavailable
CurrentDesktop: ubuntu:GNOME
DefaultProfileExtensions: extensions.sqlite corrupt or missing
DefaultProfileIncompatibleExtensions: Unavailable (corrupt or non-existant compatibility.ini or extensions.sqlite)
DefaultProfileLocales: extensions.sqlite corrupt or missing
DefaultProfilePrefErrors: Unexpected character ',' before close parenthesis @ /usr/lib/firefox/omni.ja:greprefs.js:352
DefaultProfileThemes: extensions.sqlite corrupt or missing
DistroRelease: Ubuntu 21.04
ForcedLayersAccel: False
InstallationDate: Installed on 2021-01-04 (108 days ago)
InstallationMedia: Ubuntu 20.10 "Groovy Gorilla" - Release amd64 (20201022)
IpRoute:
 default via 192.168.0.1 dev enp3s0 proto dhcp metric 100
 10.0.3.0/24 dev lxcbr0 proto kernel scope link src 10.0.3.1 linkdown
 169.254.0.0/16 dev virbr0 scope link metric 1000 linkdown
 192.168.0.0/24 dev enp3s0 proto kernel scope link src 192.168.0.6 metric 100
 192.168.122.0/24 dev virbr0 proto kernel scope link src 192.168.122.1 linkdown
Package: firefox 87.0+build3-0ubuntu4
PackageArchitecture: amd64
ProcEnviron:
 TERM=screen
 PATH=(custom, no user)
 XDG_RUNTIME_DIR=<set>
 LANG=en_US.UTF-8
 SHELL=/bin/bash
ProcVersionSignature: Ubuntu 5.11.0-16.17-generic 5.11.12
Profile0Extensions: extensions.sqlite corrupt or missing
Profile0IncompatibleExtensions: Unavailable (corrupt or non-existant compatibility.ini or extensions.sqlite)
Profile0Locales: extensions.sqlite corrupt or missing
Profile0PrefErrors: Unexpected character ',' before close parenthesis @ /usr/lib/firefox/omni.ja:greprefs.js:352
Profile0PrefSources: prefs.js
Profile0Themes: extensions.sqlite corrupt or missing
Profiles:
 Profile1 (Default) - LastVersion=None/None (Out of date)
 Profile0 - LastVersion=87.0/20210318103112 (In use)
RunningIncompatibleAddons: False
Tags: wayland-session hirsute
Uname: Linux 5.11.0-16-generic x86_64
UpgradeStatus: No upgrade log present (probably fresh install)
UserGroups: adm cdrom dip kvm libvirt lpadmin lxd plugdev sambashare sudo
_MarkForUpload: True
dmi.bios.date: 03/21/2014
dmi.bios.release: 4.6
dmi.bios.vendor: American Megatrends Inc.
dmi.bios.version: 1402
dmi.board.asset.tag: To be filled by O.E.M.
dmi.board.name: P8Z77-V LK
dmi.board.vendor: ASUSTeK COMPUTER INC.
dmi.board.version: Rev X.0x
dmi.chassis.asset.tag: Asset-1234567890
dmi.chassis.type: 3
dmi.chassis.vendor: Chassis Manufacture
dmi.chassis.version: Chassis Version
dmi.modalias: dmi:bvnAmericanMegatrendsInc.:bvr1402:bd03/21/2014:br4.6:svnSystemmanufacturer:pnSystemProductName:pvrSystemVersion:rvnASUSTeKCOMPUTERINC.:rnP8Z77-VLK:rvrRevX.0x:cvnChassisManufacture:ct3:cvrChassisVersion:
dmi.product.family: To be filled by O.E.M.
dmi.product.name: System Product Name
dmi.product.sku: SKU
dmi.product.version: System Version
dmi.sys.vendor: System manufacturer

Revision history for this message
In , Jan Vlug (jan-vlug) wrote :

User Agent: Mozilla/5.0 (X11; Fedora; Linux x86_64; rv:87.0) Gecko/20100101 Firefox/87.0

Steps to reproduce:

1. On a system with microphone and webcam attached on a GNOME Wayland session go to https://meet.jit.si and open a meeting.
2. Firefox asks for permission to use the microphone and webcam.
3. Grant permission

Actual results:

A small new Firefox windows appears with the title Firefox - Sharing Indicator. This small window shows that the camera and microphone are in use.

Expected results:

The sharing indicator should appear on top of the desktop (or somewhere else) but preferably not in a new window that sometimes get out if sight behind other windows. In Xorg the indicator is visible at the top of the window or desktop.

Revision history for this message
In , Jan Vlug (jan-vlug) wrote :

See also bug 1628431.

Revision history for this message
In , Jan Vlug (jan-vlug) wrote :

Created attachment 9215735
Screenshot of the small Sharing Indicator window

I attached a screenshot of the small Sharing Indicator window. Note that it is also partially transparent. When this window is resized the transparency disappears.

Revision history for this message
In , Release-mgmt-account-bot (release-mgmt-account-bot) wrote :

The [Bugbug](https://github.com/mozilla/bugbug/) bot thinks this bug should belong to the 'Core::Widget: Gtk' component, and is moving the bug to that component. Please revert this change in case you think the bot is wrong.

Revision history for this message
In , Dennis Schridde (devurandom) wrote :

I believe this could be a duplicate of bug #1628431.

Revision history for this message
Heather Ellsworth (hellsworth) wrote :
description: updated
Revision history for this message
Heather Ellsworth (hellsworth) wrote :

Also, there are no journalctl logs generated when this happens.

And you can leave the new window with the icons there, or close it. Either way it doesn't seem to make a difference. If you leave it around, and then your webcam/mic usage is over (the meeting ended), then the icons window goes away. So the presence of the icons do indicate whether the webcam/mic are being used or not. If you close the window, you can still use your devices but there is no indication that they are in use.

Revision history for this message
Heather Ellsworth (hellsworth) wrote : AlsaInfo.txt

apport information

tags: added: apport-collected hirsute wayland-session
description: updated
Revision history for this message
Heather Ellsworth (hellsworth) wrote : AudioDevicesInUse.txt

apport information

Revision history for this message
Heather Ellsworth (hellsworth) wrote : CurrentDmesg.txt

apport information

Revision history for this message
Heather Ellsworth (hellsworth) wrote : Dependencies.txt

apport information

Revision history for this message
Heather Ellsworth (hellsworth) wrote : IpAddr.txt

apport information

Revision history for this message
Heather Ellsworth (hellsworth) wrote : Lspci.txt

apport information

Revision history for this message
Heather Ellsworth (hellsworth) wrote : PaInfo.txt

apport information

Revision history for this message
Heather Ellsworth (hellsworth) wrote : PciNetwork.txt

apport information

Revision history for this message
Heather Ellsworth (hellsworth) wrote : ProcCpuinfoMinimal.txt

apport information

Revision history for this message
Heather Ellsworth (hellsworth) wrote : Profile0Prefs.txt

apport information

Revision history for this message
Heather Ellsworth (hellsworth) wrote : PulseList.txt

apport information

Revision history for this message
Heather Ellsworth (hellsworth) wrote : Re: New window pops up with webcam/mic icons

It happens in a fresh hirsute vm as well.

tags: added: rls-hh-incoming
Revision history for this message
Olivier Tilloy (osomon) wrote :

I can confirm the problem, and this is Wayland-specific (tested in a Xorg session in the same VM and the window with media controls is frameless, as expected).

Revision history for this message
Olivier Tilloy (osomon) wrote :

Upstream builds are similarly affected, when launched with MOZ_ENABLE_WAYLAND=1.

Revision history for this message
Olivier Tilloy (osomon) wrote :
Changed in firefox (Ubuntu):
status: New → Confirmed
importance: Undecided → Medium
summary: - New window pops up with webcam/mic icons
+ [Wayland] Sharing indicator window is not frameless
Revision history for this message
In , Olivier Tilloy (osomon) wrote :

Also reported downstream in Ubuntu (Ubuntu 21.04, released last week, ships with a Wayland session by default): https://bugs.launchpad.net/firefox/+bug/1925837

Changed in firefox:
status: Unknown → New
Revision history for this message
In , Stransky (stransky) wrote :

Created attachment 9220111
Bug 1705048 [Wayland] Emulate X11 popup parentless window as a toplevel on Wayland, r?jhorak

Revision history for this message
In , Pulsebot (pulsebot) wrote :

Pushed by <email address hidden>:
https://hg.mozilla.org/integration/autoland/rev/1f8208b4e636
[Wayland] Emulate X11 popup parentless window as a toplevel on Wayland, r=jhorak

Revision history for this message
In , Smolnar (smolnar) wrote :
Revision history for this message
Olivier Tilloy (osomon) wrote :

This is fixed upstream (https://hg.mozilla.org/mozilla-central/rev/1f8208b4e636), and targetted at firefox 90.

Revision history for this message
In , Dennis Schridde (devurandom) wrote :

(In reply to Pulsebot from comment #7)
> Pushed by <email address hidden>:
> https://hg.mozilla.org/integration/autoland/rev/1f8208b4e636
> [Wayland] Emulate X11 popup parentless window as a toplevel on Wayland,
> r=jhorak

Thanks, Martin! Does this mean bug #1628431 is also fixed?

Revision history for this message
In , Stransky (stransky) wrote :

(In reply to devurandom from comment #9)
> (In reply to Pulsebot from comment #7)
> > Pushed by <email address hidden>:
> > https://hg.mozilla.org/integration/autoland/rev/1f8208b4e636
> > [Wayland] Emulate X11 popup parentless window as a toplevel on Wayland,
> > r=jhorak
>
> Thanks, Martin! Does this mean bug #1628431 is also fixed?

Please try that. The windows is still created as toplevel but it has disabled decorations. We can't create it as popup as it does not have a parent window. Bug 1703073 will have huge popup redesign and we should apply correct popup roles when it's fixed.

Changed in firefox:
status: New → Fix Released
Revision history for this message
In , Catalin-sasca-z (catalin-sasca-z) wrote :

I was able to reproduce the window issue on Firefox 87.0b5 wayland session under Ubuntu 20.04 by following the info provided in Comment 0.

The issue is fixed and the indicator appeared on the left side of the screen on Firefox 90.0b5 on the same system.

Revision history for this message
Iain Lane (laney) wrote :

Just assigning for tracking - Olivier, please close when you do the upload!

Changed in firefox (Ubuntu Impish):
assignee: nobody → Olivier Tilloy (osomon)
tags: removed: rls-hh-incoming
Revision history for this message
Olivier Tilloy (osomon) wrote :

The upstream fix is in the firefox 90 branch, which is currently in beta phase, and will become stable on 2021-07-13.

Revision history for this message
In , Leonhenrik-plickat (leonhenrik-plickat) wrote :

I wonder if it makes more sense to expose the sharing state and controls via DBus and let the desktop environment handle displaying an indicator.

That would solve this issue entirely. Currently there is no universal way for Wayland clients to directly position views (layer-shell does it but is but non-standardized), but with a DBus interface, the desktop can take of this in a way that fits better into the environment. As an example, the desktop could show the indicator as a new widget visually similar to what Firefox does on non-Wayland desktops, or it could also place it into the status area of the panel.

Revision history for this message
Sebastien Bacher (seb128) wrote :

that's fixed now?

Revision history for this message
Olivier Tilloy (osomon) wrote :

Yes it is.

Changed in firefox (Ubuntu Impish):
status: Confirmed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.