Edge chromium doesn't run in app mode
Eel version 0.14
Describe the bug hi, i'm trying to open an empty window in eel using edge chromium and it does work but it opens a new tab instead of a window in app mode. does anyone know how to fix this?
To Reproduce run the following code:
import eel
eel.init("web")
eel.start("main.html", mode="edge", app_mode=True)
Expected behavior an edge window should open in app mode instead of a new tab.
Screenshots n/a
Desktop (please complete the following information):
- OS: windows 10
- Browser: edge chromium
- Version: 104.0.1293.54
Additional context n/a
hey so i think i found the problem. apparently in edge.py to launch edge eel runs a method called run() and there it does sps.Popen() with the argument "start microsoft-edge:http://localhost:8000/main.html" and that just opens a new tab in edge. i found this question on stackoverflow where it shows the right command to run in order to open edge as an app to a certain website: https://stackoverflow.com/questions/66748958/how-to-open-website-as-app-in-microsoft-edge-from-cli
can you change the cmd argument at line 9 to take "start msedge --new-window --app=http://localhost:8000/main.html" ?

thank you
also, apparently run() doesn't want to pass any arguments to the cmd variable:

does anyone know how to fix this?
As you pointed out, it looks like a code update is required.
A related design question... is there any reason to preserve the ability to open up content in a new tab (which might suggest a flag or similar is needed)? I can't think of one... does anyone else have a valid use case?
Hey @properchopsticks can you review pull request #612 and confirm that it meets your needs?
So! A few things to cover off here.
-
@properchopsticks - you shouldn't need to wait on a fix from Eel authors to get around this. You can set the mode to 'custom' and then pass the full launch command under
cmdline_args, eg something likecmdline_args="start msedge --new-window --app=https://localhost:8000" -
We should probably still fix the
app_modeoption to work correctly for Edge. init.py:49 suggests this is a Chrome only option so we probably need to update the comment there as well if it can be generally supported for other browsers.
A related design question... is there any reason to preserve the ability to open up content in a new tab (which might suggest a flag or similar is needed)? I can't think of one... does anyone else have a valid use case?
- I think if there is current behaviour in Eel to support opening pages as tabs (including when multiple
start_urls are provided, we shouldn't remove that without a bit more consideration. I'm not sure off the top of my head honestly if this is possible - so we probably need to investigate it first. But if it is, let's not remove or change that functionality without thinking it through. If we do it's a breaking change and should be announced clearly (normally this would mean a major version bump but while we're <1.0.0 we have a bit more leeway).