Open lampholder opened 3 years ago
I tried looking at this, but unfortunately the latest Safari that can be installed on Ubuntu is the Windows version from 2012, which isn't even able to load Element.
I think we need a developer with a Mac to look at this, anyone in Element Web team available? @dbkr ?
(got access to a Mac)
@lampholder and/or @jryans could you confirm that turning off "Prevent cross-site tracking" makes the widgets show up? Or at least whether for you it was already turned off when seeing this error.
Also would be helpful to know if this was against scalar or scalar-staging.
Once turning that option off, I can load widgets on Safari 13.1.
@jaywink Yes, widgets load for me if I disable "Prevent cross-site tracking" in Safari 14. It was previously enabled (by default) for me. I am testing with scalar-staging via develop.element.io.
From reading the various Safari blog articles, I think we'll need to implement some form of the Storage Access API to resolve this.
(Or else redesign how widgets access cookies etc.)
We might be able to get by here with limited changes if Scalar were to set its access token via HTTP response instead of using document.cookie
. It's hard to say anything with confidence though, as I have yet to find a clear summary of all the changes Safari has made.
If we aren't going to fix this, please can we fail gracefully (i.e. route people to chrome / FF / electron) fairly urgently?
@jryans I assume the "route to chrome / FF / electron" as above is something that would be done on Element side, right?
I don't think Element would be able to see that error happening inside the iframe due to cross-origin issues
Well, I suppose it depends what @ara4n has in mind... We could show a generic warning for all Scalar widgets in Safari saying they are not supported, I suppose?
Widgets added with /addwidget work fine (modulo https://github.com/vector-im/element-web/issues/15404 which seems to stop them working on develop right now).