There are some features which make a desktop application more appealing to me. One feature required changing browser behavior [1] which wouldn't otherwise be possible.
A WebExtension could work, but has potential to run into the same gatekeeping issue of being removed by Google from their Web Store. With Google having ~70% market share, this wouldn't be a good outcome.
This definitely looks like a convenient feature although it's something I would ideally have added right into Chrome. It is not really related to the streaming/syncing responsibilities of the app. Any site which plays video could benefit from this non-window-resize-fullscreen feature.
Another option could be creating two extensions: one for the video syncing, and one for the non-window-resize-fullscreen. That way if the latter gets rejected it wouldn't affect the former.
Note I'm sure some people definitely prefer the desktop app approach and I wish you all the best getting the approvals you need for that. This is just how I would prefer to use it.
This is sort of a ridiculous hack, but you could probably override Element.prototype.webkitRequestFullscreen, and manually resize the element to take up the whole browseer window rather than entering fullscreen.
At one point I did try this, but it ends up being a much more complex solution. It turns out it's fairly difficult to ensure the element appears above every other element. I was using 'position: fixed' with the maximum z-index value.
A WebExtension could work, but has potential to run into the same gatekeeping issue of being removed by Google from their Web Store. With Google having ~70% market share, this wouldn't be a good outcome.
[1] https://github.com/electron/electron/pull/17203