Closed Bug 1633272 Opened 6 years ago Closed 6 years ago

Spurious can't access property "removeAttribute", controlsOverlay is null PictureInPictureChild.jsm:725 error

Categories

(Toolkit :: Video/Audio Controls, defect, P3)

75 Branch
defect

Tracking

()

VERIFIED FIXED
mozilla79
Tracking Status
firefox79 --- verified

People

(Reporter: connorlamb, Assigned: Gijs)

References

Details

Attachments

(3 files)

User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:75.0) Gecko/20100101 Firefox/75.0

Steps to reproduce:

Go to any video. The picture in picture icon will come up, and click this. Picture in Picture will not trigger.

Actual results:

The picture in picture icon will come up, and when clicked, will disappear. Moving the mouse allows the icon to come up, and expand to the left, but does not trigger Picture-in-Picture.

Expected results:

A picture in picture window should have opened with the video playing in it.

Bugbug thinks this bug should belong to this component, but please revert this change in case of error.

Component: Untriaged → Video/Audio Controls
Product: Firefox → Toolkit

Any errors appear in the browser console (not the regular console, the browser one - use ctrl-shift-j to open) when you click the icon and it doesn't do anything?

Can you give an example video you're testing with?

Does the same problem happen for you in a separate, clean profile for testing ( https://support.mozilla.org/en-US/kb/profile-manager-create-and-remove-firefox-profiles ) ?

Flags: needinfo?(connorlamb)

(In reply to :Gijs (he/him) from comment #2)

Any errors appear in the browser console (not the regular console, the browser one - use ctrl-shift-j to open) when you click the icon and it doesn't do anything?

Can you give an example video you're testing with?

Does the same problem happen for you in a separate, clean profile for testing ( https://support.mozilla.org/en-US/kb/profile-manager-create-and-remove-firefox-profiles ) ?

Yes. The error "TypeError: playerWin is null PictureInPicture.jsm:143:11" shows up in both my profile and a clean profile.

Flags: needinfo?(connorlamb)

Mike, I think this is related to bug 1631303 - though I'm unclear on why the patch there never landed? That said, the problem went away for me after a restart, and given it reproduces here in a clean profile, perhaps there's a deeper issue.

Reporter: I'm a little puzzled. On a clean profile, the first time you click the button, you see that error immediately? As noted earlier, can you provide an example video where you see this? If you have a clean profile and try youtube, for instance, does it work there?

Anything unusual about your environment that might warrant mentioning?

Flags: needinfo?(mconley)
Flags: needinfo?(connorlamb)
See Also: → 1631303

Thanks for reminding me about bug 1631303 - I'd let it slip. Cleaned up the patch and queued it for landing.

Flags: needinfo?(mconley)

(In reply to :Gijs (he/him) from comment #4)

Mike, I think this is related to bug 1631303 - though I'm unclear on why the patch there never landed? That said, the problem went away for me after a restart, and given it reproduces here in a clean profile, perhaps there's a deeper issue.

Reporter: I'm a little puzzled. On a clean profile, the first time you click the button, you see that error immediately? As noted earlier, can you provide an example video where you see this? If you have a clean profile and try youtube, for instance, does it work there?

Anything unusual about your environment that might warrant mentioning?

The problem persists with a restart and a clean profile. Exists on all video sites, including youtube and vimeo. Nothing unusual about my environment. Running Windows 10 Home x64, a Ryzen CPU, 16 GB RAM. Extensions include uBlock Origin, DuckDuckGo Privacy, HTTPS everywhere, privacy badger, iCloud, Disconnect, and Firefox Private network. Disabling all has no effect.

Could you try a Nightly build from https://nightly.mozilla.org/ which now has the fix from bug 1631303, and confirm if you see the same problem there, and if so, what if any errors show up in the browser console there?

(In reply to :Gijs (he/him) from comment #7)

Could you try a Nightly build from https://nightly.mozilla.org/ which now has the fix from bug 1631303, and confirm if you see the same problem there, and if so, what if any errors show up in the browser console there?

Picture in Picture works, but the following error shows up:
can't access property "removeAttribute", controlsOverlay is null PictureInPictureChild.jsm:725
onMouseOverVideo resource://gre/actors/PictureInPictureChild.jsm:725
checkLastMouseMove resource://gre/actors/PictureInPictureChild.jsm:659
mousemoveDeferredTask resource://gre/actors/PictureInPictureChild.jsm:390
_runTask resource://gre/modules/DeferredTask.jsm:333
_timerCallback resource://gre/modules/DeferredTask.jsm:305
_timerCallback resource://gre/modules/DeferredTask.jsm:324
callback resource://gre/modules/DeferredTask.jsm:179
(Async: ChromeUtils::IdleDispatch handler)
_startIdleDispatch resource://gre/modules/DeferredTask.jsm:192
callback resource://gre/modules/DeferredTask.jsm:173

Flags: needinfo?(connorlamb)

Mike, any ideas as to how controlsOverlay could be null at https://searchfox.org/mozilla-central/rev/158bac3df3a1890da55bdb6ffdaf9a7ffc0bfb0a/toolkit/actors/PictureInPictureChild.jsm#695, given that the shadowRoot does exist? I'm a bit puzzled...

Flags: needinfo?(mconley)

Because this bug's Severity has not been changed from the default since it was filed, and it's Priority is -- (non,) indicating it has has not been previously triaged, the bug's Severity is being updated to -- (default, untriaged.)

Severity: normal → --

(In reply to :Gijs (he/him) from comment #9)

Mike, any ideas as to how controlsOverlay could be null at https://searchfox.org/mozilla-central/rev/158bac3df3a1890da55bdb6ffdaf9a7ffc0bfb0a/toolkit/actors/PictureInPictureChild.jsm#695, given that the shadowRoot does exist? I'm a bit puzzled...

That's... very unusual. Perhaps the UAWidget is in the process of still being set up? Or in the process of being torn down? That's all I can think of.

Since the original issue appears to have been fixed by bug 1631303, I'm going to transmute this bug to be about the spurious error.

Severity: -- → S4
Flags: needinfo?(mconley)
Priority: -- → P3
Summary: Picture in Picture won't launch/doesn't work → Spurious can't access property "removeAttribute", controlsOverlay is null PictureInPictureChild.jsm:725 error
Attached image firefox_RInHGZhKPb.png
Attached video NHu4n6Yyf6.mp4

How to reproduce the bug.

Flags: needinfo?(gijskruitbosch+bugs)

STR:

  1. Open https://www.w3.org/2010/05/video/mediaevents.html
  2. Open the video in PiP mode

AR:
When the mouse enters or exits the video, the error will be thrown.

I can also reproduce.

Status: UNCONFIRMED → NEW
Ever confirmed: true
Assignee: nobody → gijskruitbosch+bugs
Status: NEW → ASSIGNED
Flags: needinfo?(gijskruitbosch+bugs)
Pushed by gijskruitbosch@gmail.com: https://hg.mozilla.org/integration/autoland/rev/145ee8235a45 do not track the PiP popped-out video in the Picture in Picture Toggle actor child, r=mconley
Status: ASSIGNED → RESOLVED
Closed: 6 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla79

I have managed to reproduce this bug using the steps from comment 14, on an affected Nightly build from 2020-04-26.

The issue is verified as fixed on Beta 79.0b3 (20200703001609) across platforms: Windows 10 x64, macOS 10.15 and Ubuntu 18.04 x64.

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

Attachment

General

Creator:
Created:
Updated:
Size: