Closed Bug 1844503 Opened 3 years ago Closed 1 year ago

This browser is not supported. on nicochannel.jp

Categories

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

Desktop
Windows 10

Tracking

(Webcompat Priority:P2, Webcompat Score:2, firefox117 wontfix, firefox124 wontfix, firefox134 wontfix, firefox137 wontfix, firefox138 verified, firefox139 fixed)

VERIFIED FIXED
138 Branch
Webcompat Priority P2
Webcompat Score 2
Tracking Status
firefox117 --- wontfix
firefox124 --- wontfix
firefox134 --- wontfix
firefox137 --- wontfix
firefox138 --- verified
firefox139 --- fixed

People

(Reporter: alice0775, Assigned: twisniewski)

References

(Depends on 1 open bug, )

Details

(Keywords: webcompat:needs-contact, webcompat:site-report, webcompat:sitepatch-applied)

User Story

platform:windows,mac,linux,android
impact:blocked
configuration:general
affects:all
branch:release
user-impact-score:200

Attachments

(3 files)

Steps to reproduce:

  1. Open https://nicochannel.jp/akb48-17ken/video/smUiezG3kjGCs2smvZr2ndNV w/o logged in.

Actual results:
このブラウザはサポートされていません。 in Japanese, This browser is not supported. in English. Unable to play video.

Expected results:
There is no such incompatibility.

Component: Untriaged → Desktop
Product: Firefox → Web Compatibility

Verified this issue and it's still reproducible on Firefox 124 with extensions.webcompat.perform_injections set to false.

Note: This issue has been investigated on https://github.com/webcompat/web-bugs/issues/124463

Depends on: 1849058
Whiteboard: [webcompat:needs-knowledgebase]
Whiteboard: [webcompat:needs-knowledgebase]
Severity: -- → S2
User Story: (updated)
Priority: P3 → P1
Assignee: nobody → twisniewski
Status: NEW → ASSIGNED
Pushed by twisniewski@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/3195e1620f15 add a UA override for nicochannel-like sites, and update the related JS picture-in-picture API intervention; r=denschub,webcompat-reviewers
Status: ASSIGNED → RESOLVED
Closed: 1 year ago
Resolution: --- → FIXED

This should have been left open, pardon the bugspam.

Status: RESOLVED → REOPENED
Resolution: FIXED → ---

For little background information, affected are all sites which use the sheeta website software, developed by DWANGO, the company behind niconico and nicochannel+. There are many more sites affected than the ones already added to the useragent overwrite list and their number is increasing.
Today I discovered, that the fixes currently applied (UA fix + window.PictureInPictureWindow injection) aren't enough anymore, the sheeta sites stopped working again. Although I couldn't figure out what changed yet.

I've tried for hours but couldn't figure out what changed in the sheeta react apps, that it stopped working (also tested with latest nightly).

Webcompat Priority: --- → P3

I've also just put some time into this, but it's unclear what they're using to detect the UA. It seems unrelated to navigator.userAgent, navigator.userAgentData, or sec-ch-ua type headers, or other stuff which Chrome Mask spoofs, as I've tested with all of those enabled (including navigator.userAgentData.getHighEntropyValues()) to no avail. It also doesn't seem to be ETP, as disabling it doesn't help.

The only real clue I have so far is that Chrome manages to get to this code in their VideoDescription JS, while Firefox does not:

    e.useEffect( () => {
        l(se({
            contentCode: d,
            type: H.VOD
        })).then(ne).then( () => {
            t("ALLOWED")
        }
        ).catch(g => {
            t(Pe(g))
        }
        )
    }

However, it's unclear why Firefox isn't getting there, as the stack traces are pretty cryptic. I'll have to take another look when I have more time.

User Story: (updated)
Webcompat Priority: P3 → P2
Webcompat Score: --- → 6
Priority: P1 → P2
See Also: → 1948817

Thanks to :emilio for noticing that they have slightly changed their detection for the picture-in-picture API!

I'll update our intervention for these sites in bug 1948817 while adding qlover.jp to the list.

Here is an issue where more affected sites and detection methods are listed, together with the suggestion to use this Google search to find all sites utilizing sheeta.

Thanks! I'll investigate those links ASAP.

Webcompat Score: 6 → 3

Just FYI, the fix for the list of sites we were already fixing has landed in time for Firefox 137 in bug 1948817. I'll investigate adding more sites to the list ASAP.

I can confirm, that by installing the latest webcompat@mozilla.org.xpi version, the issue has been fixed! 🥳
To combat not yet supported sites, I previously used an userscript as a workaround:

// ==UserScript==
// @name PictureInPictureWindow compatibility Fix
// @namespace Violentmonkey Scripts
// @grant none
// ==/UserScript==
window.PictureInPictureWindow = class PictureInPictureWindow{}

This was based on this webcompat code:

Object.defineProperty(window.wrappedJSObject, "PictureInPictureWindow", {
  value: exportFunction(function () {
    return class {};
  }, window),
 });

Now I wanted to integrate the new fix as well, but I couldn't figure out how to convert this webcompat code:

Object.defineProperty(Document.wrappedJSObject.prototype, "pictureInPictureElement", {
   get: exportFunction(function () {
     return null;
   }, window),
   set: exportFunction(function () {}, window),
 });

Into a userscript (I've tried adding this before, to no avail Document.prototype.pictureInPictureElement = function () {})

Maybe someone can help me out, but for now all sites I'm mostly using are working again 👌

:FaySmash, I suspect that this should suffice:

Document.prototype.pictureInPictureElement = null;

It's hard to tell if spoofing these APIs on all sites might cause issues, though. Sites might add extra (and non-functioning) picture in picture buttons on their video players, for instance.

Pushed by twisniewski@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/e4cb3e75dcde add 16 more sites to our nicochannel intervention; r=denschub,webcompat-reviewers
Status: REOPENED → RESOLVED
Closed: 1 year ago1 year ago
Resolution: --- → FIXED
Target Milestone: --- → 138 Branch

Reopening. This should have been left open for tracking purposes.

Keywords: leave-open
Status: RESOLVED → REOPENED
Resolution: FIXED → ---
Webcompat Score: 3 → 2

It seems as though they are no longer blocking Firefox, and don't have the issue with not detecting picture-in-picture APIs, so we should be able to remove our intervention.

Keywords: leave-open
Pushed by twisniewski@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/3a6d0d114f88 1948817 - remove webcompat interventions for nicochannel sites; r=denschub,webcompat-reviewers
Status: REOPENED → RESOLVED
Closed: 1 year ago1 year ago
Resolution: --- → FIXED

The patch landed in nightly and beta is affected.
:twisniewski, is this bug important enough to require an uplift?

  • If yes, please nominate the patch for beta approval.
  • If no, please set status-firefox138 to wontfix.

For more information, please visit BugBot documentation.

Flags: needinfo?(twisniewski)
Flags: needinfo?(twisniewski)

Verified, the issue no longer reproduces with the RC build (regardless of the intervention status).

Tested with:

Browser / Version: Firefox 138.0-candidate build 1
Operating System: Windows 10

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

Attachment

General

Created:
Updated:
Size: