Skip to content
This repository was archived by the owner on Sep 11, 2024. It is now read-only.

Commit 2e6f616

Browse files
authored
Allow downloads from widgets (#7502)
Notes: Allow downloads from widgets. We are working on a widget that allows the user to download a file (a ICS calendar entry). Right now the sandbox of the widget iframe doesn't allow downloading. Instead, the following error is displayed in the console (for Google Chrome): ``` Download is disallowed. The frame initiating or instantiating the download is sandboxed, but the flag ‘allow-downloads’ is not set. See https://www.chromestatus.com/feature/5706745674465280 for more details. ``` Therefore this PR adds `allow-downloads` to the sandbox capabilities. Steps to reproduce: 1. Create a simple widget with an `index.html` file like, e.g. ``` <a href="index.html" download>Download</a> ``` 2. Host the widget somewhere, add it to the room and open the widget 3. Click on the download button * Without the fix: Nothing happens, there is a warning in the console (see above) * With the fix: The file is downloaded Signed-off-by: Oliver Sand <[email protected]>
1 parent 98e1c31 commit 2e6f616

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

src/components/views/elements/AppTile.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -454,7 +454,7 @@ export default class AppTile extends React.Component<IProps, IState> {
454454
// hosted on the same origin as the client will get the same access as if you clicked
455455
// a link to it.
456456
const sandboxFlags = "allow-forms allow-popups allow-popups-to-escape-sandbox " +
457-
"allow-same-origin allow-scripts allow-presentation";
457+
"allow-same-origin allow-scripts allow-presentation allow-downloads";
458458

459459
// Additional iframe feature pemissions
460460
// (see - https://sites.google.com/a/chromium.org/dev/Home/chromium-security/deprecating-permissions-in-cross-origin-iframes and https://wicg.github.io/feature-policy/)

0 commit comments

Comments
 (0)