Open Bug 1806815 Opened 2 years ago Updated 15 days ago

The Show Controls option is disabled when seeking or pause+playing a gifv on imgur

Categories

(Web Compatibility :: Site Reports, defect, P3)

Desktop
All

Tracking

(Webcompat Priority:P2, firefox-esr102 affected, firefox108 affected, firefox109 affected, firefox110 affected, firefox111 affected)

ASSIGNED
Webcompat Priority P2
Tracking Status
firefox-esr102 --- affected
firefox108 --- affected
firefox109 --- affected
firefox110 --- affected
firefox111 --- affected

People

(Reporter: ailea, Assigned: ksenia)

References

()

Details

(Keywords: webcompat:site-wait, Whiteboard: [webcompat:needs-knowledgebase][webcompat:sightline])

User Story

platform:windows,mac,linux,android
impact:feature-broken
configuration:general
affects:some

Attachments

(1 file)

Attached video 2022-12-21_13h34_55.mp4

Found in

  • 109.0b5

Affected versions

  • 108.0.1, 109.0b5, 110.0a1 (2022-12-21)

Tested platforms

  • Affected platforms: Win10, Win7, macOS 12, Ubuntu 20

Steps to reproduce

  1. Launch Firefox and open this image: https://i.imgur.com/zvATqgs.gifv in a new tab.
  2. Right-click on the image and select "Show Controls".
  3. Seek the video forward or backward.

Expected result

  • The video controls should not be affected by the video seeking.

Actual result

  • The video controls are disabled when seeking the video. The controls disappear instantly.

Regression range

  • Not a regression, at least not a recent one since I am able to reproduce the issue in Fx 67 as well.

Additional notes

  • The issue is not reproducible in Chrome.
        q = function () {
          l && l.setAttribute('style', 'display: none'),
          g(a) || f() || e() || (j.controls = !1)
        },
        r = function () {
          g(a) || j.controls && !f() && (j.controls = !1)
        };
        j.addEventListener('loadedmetadata', q),
        j.addEventListener('play', q),
        j.addEventListener('playing', q),
        j.addEventListener('playing', r),

This is an excerpt of a prettified version of imgur's JS.

Note in particular that whenever the playing event fires, they run this JS:

          g(a) || j.controls && !f() && (j.controls = !1)

where g(a) looks like this:

    return !!(a && a.isEmbed && a.hasSound)

and f() looks like this:

    return window.location.hash && 't' == window.location.hash.substring(1)

In other words, this turns off j.controls (ie the video's controls property), hiding the controls, if g(a) returns false (it bails out if the video is an embed and has sound, and gifv obviously have no sound), and if the page doesn't have #t in the URL. And indeed, if you try loading https://i.imgur.com/zvATqgs.gifv#t it works fine.

I don't know why imgur does this. I do know why it works on Chrome - they lie if you turn on "Show all controls", and element.controls remains false and has no effect. Webkit (Safari 16.2 on macOS, at least) does the same as us - it reflects the control state into the IDL attribute. It has the same bug when pressing pause and then play again. It also sometimes reproduces with seeking - I'm not sure why it sometimes works and sometimes not. It doesn't look like the spec has anything to say about this.

It would be nice if we could convince imgur not to do this, as I don't see what purpose it serves and it clearly breaks stuff on webkit and gecko. Dennis (when you're back! Not urgent!), do you know if we have contacts with imgur? But if that's somehow not possible (perhaps it's there for compat with other UAs or something?) then we could also explore aligning with Blink and/or codifying more of this in the spec. Jim, can you pass questions around this part of the behaviour to the right media folks? Thanks!

Severity: S3 → --
Component: Video/Audio Controls → Desktop
Flags: needinfo?(jmathies)
Flags: needinfo?(dschubert)
Product: Toolkit → Web Compatibility
Summary: The Show Controls option is disabled when seeking the video using a GIFV format → The Show Controls option is disabled when seeking or pause+playing a gifv on imgur
Flags: needinfo?(jmathies)

We appreciate your report. I was able to reproduce the issue. Following the STRs, the video controls are disappearing/disabled.

Tested with:

Browser / Version: Firefox Release 109.0 (64-bit)/ Firefox Nightly 111.0a1 (2023-01-30) (64-bit) / Chrome Version 109.0.5414.120 (Official Build) (64-bit) /
Operating System: Windows 10 PRO x64

Notes:

  1. Reproducible regardless of the status of ETP.
  2. Reproducible on the latest build of Firefox Nightly and Release.
  3. Works as expected using Chrome.
Assignee: nobody → kberezina
Status: NEW → ASSIGNED

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

Dennis (when you're back! Not urgent!), do you know if we have contacts with imgur?

No established contacts yet, but I reached out to someone on LinkedIn who appears to work on the desktop web version.

Flags: needinfo?(dschubert)
Severity: -- → S4
User Story: (updated)
Priority: -- → P3
Whiteboard: [webcompat:needs-knowledgebase]
Whiteboard: [webcompat:needs-knowledgebase] → [webcompat:needs-knowledgebase][webcompat:sightline]
Webcompat Priority: --- → P2
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: