Fix videos on Firefox (#32497)

* Fix videos on Firefox

Videos are using cross-origin requests, and Firefox
blocks them before passing to the service worker if
the element doesn't have the crossorigin attribute to
give CORS support

* React needs camelCase attr names

---------

Co-authored-by: David Baker <dbkr@users.noreply.github.com>
This commit is contained in:
S1m
2026-02-13 13:44:11 +01:00
committed by GitHub
parent 1af3ae70f8
commit 226b260319
2 changed files with 7 additions and 0 deletions

View File

@@ -326,6 +326,10 @@ class MVideoBodyInner extends React.PureComponent<IProps, IState> {
// Disable downloading as it doesn't work with e2ee video,
// users should use the dedicated Download button in the Message Action Bar
controlsList="nodownload"
// The video uses a cross-origin request.
// Firefox explicitly bypasses services workers for crossorigin
// video elements without crossorigin attribute.
crossOrigin="anonymous"
preload={preload}
muted={autoplay}
autoPlay={autoplay}

View File

@@ -13,6 +13,7 @@ exports[`MVideoBody does not crash when given portrait dimensions 1`] = `
class="mx_MVideoBody"
controls=""
controlslist="nodownload"
crossorigin="anonymous"
poster="data:image/png;base64,00"
preload="none"
/>
@@ -37,6 +38,7 @@ exports[`MVideoBody should show poster for encrypted media before downloading it
class="mx_MVideoBody"
controls=""
controlslist="nodownload"
crossorigin="anonymous"
poster="https://server/_matrix/media/v3/download/server/encrypted-poster"
preload="none"
title="alt for a test video"
@@ -62,6 +64,7 @@ exports[`MVideoBody with video previews/thumbnails disabled should download vide
class="mx_MVideoBody"
controls=""
controlslist="nodownload"
crossorigin="anonymous"
poster="https://server/_matrix/media/v3/download/server/encrypted-poster"
preload="none"
title="alt for a test video"