[Edited by @thisandagain]
Remove block logic for Vivaldi as it is Chromium based and should work with Scratch 3.0. The Scratch Team will not officially support Vivaldi, but (for now) there is no reason to explicitly block it (unlike Opera Mini, Internet Explorer, and Silk which we know have breaking bugs).
Also update text in the modal to read:
We are very sorry, but Scratch does not support this browser. We recommend trying a supported browser such as Google Chrome, Mozilla Firefox, Microsoft Edge, or Apple Safari.
The warning for unsupported browsers claims that users on Vivaldi or Silk should switch to "a newer browser" such as Chrome or Firefox. This is an inaccurate description because Vivaldi was released in 2015 and Silk was released in 2011, while Chrome was released in 2008 and Firefox in 2002.
Isn't Vivaldi Chromium based?
@WorldLanguages Yes. Another reason why it seems strange to block it, especially it works perfectly if one removes the block using Inspect Element in Vivaldi.
Vivaldi must be a fork of an old version of Chromium that has not had its UserAgent string updated. However, since the release date was in 2015, it should work properly regardless of this message, providing the Blink version it uses was up to date at the time. Some very old engines (pre-2013) may not work properly with the new APIs that scratch uses.
Vivaldi and Opera (at least) are both based on Chromium, and are both (mostly) up to date. Neither of them are forks of Chromium. They use the up to date version of Chromium as engine, and they "just" develop the UI over it.
There is no reasons why those browsers are blocked.
Even the commit blocking Vivaldi doesn't give an explanation (cb8f14568f4448abe4f91e6490aedf5dc8715caa)
To correct it, I think editing https://github.com/LLK/scratch-gui/blob/bdfd22543f520e204ec15f46cf9f33e0fdc20ed3/src/lib/supported-browser.js#L9 would suffice (and of course the text associated to it in scratch-gui/src/components/browser-modal/browser-modal.jsx)
https://scratch.mit.edu/discuss/topic/323208/
Additional thoughts on this from the forum. It seems that Vivaldi is properly functioning, and is a recent version of Chromium.
It might be a good idea to support it if this is the case. I'll try to download it and test it out.
I'm inclined to agree. I think there is a difference between "we don't officially support Vivaldi" and "we know that this browser doesn't work (e.g. Opera Mini, Silk, and Internet Explorer) so we are going to block it". I'm open to a PR that removes Vivaldi from the block logic.
Sorry we were a little too aggressive with this initially. It's pretty hard to support a wide range of browsers and we don't have the bandwidth to add Vivaldi to our testing process, but I'm happy to let it through the block with the understanding that it is not officially supported by our team.
I have updated the initial issue description by @python-megapixel to reflect what we would accept in a PR.
/cc @rschamp @chrisgarrity
Looks good. There were people on the beta forums quite confused with this.
Most helpful comment
Vivaldi and Opera (at least) are both based on Chromium, and are both (mostly) up to date. Neither of them are forks of Chromium. They use the up to date version of Chromium as engine, and they "just" develop the UI over it.
There is no reasons why those browsers are blocked.
Even the commit blocking Vivaldi doesn't give an explanation (cb8f14568f4448abe4f91e6490aedf5dc8715caa)
To correct it, I think editing https://github.com/LLK/scratch-gui/blob/bdfd22543f520e204ec15f46cf9f33e0fdc20ed3/src/lib/supported-browser.js#L9 would suffice (and of course the text associated to it in scratch-gui/src/components/browser-modal/browser-modal.jsx)