diff --git a/Main.py b/Main.py index 16b6298..b3a121a 100644 --- a/Main.py +++ b/Main.py @@ -39,7 +39,7 @@ def _SetMenuEntry(Enabled: bool) -> None: "[Desktop Entry]\nType=Application\nName=SaraSuite\n" "Comment=Install, update and remove Sara programs\n" f"Exec={_AppImage}\nIcon={_MenuIcon}\nTerminal=false\n" - "Categories=System;\nStartupNotify=true\n" + f"Categories=System;\nStartupNotify=true\nStartupWMClass={AppName}\n" ) @@ -234,4 +234,7 @@ if __name__ == "__main__": from Cli import Run sys.exit(Run(sys.argv[1:])) + # The window's app ID, so the desktop matches it to SaraSuite.desktop + # (icon, name) instead of showing it as Flet's generic "com.appveyor.flet". + os.environ.setdefault("FLET_APP_ID", AppName) ft.run(Main, assets_dir=str(AssetsDir)) diff --git a/Packaging/BuildAppImage.sh b/Packaging/BuildAppImage.sh index a156dfd..ce8ff37 100755 --- a/Packaging/BuildAppImage.sh +++ b/Packaging/BuildAppImage.sh @@ -30,6 +30,7 @@ Exec=SaraSuite Icon=SaraSuite Terminal=false Categories=System; +StartupWMClass=SaraSuite DESKTOP mkdir -p dist diff --git a/Programs/SaraFem/Templates/Launch.sh b/Programs/SaraFem/Templates/Launch.sh index c606b43..ad4b090 100644 --- a/Programs/SaraFem/Templates/Launch.sh +++ b/Programs/SaraFem/Templates/Launch.sh @@ -1,4 +1,7 @@ #!/bin/sh # Written by SaraSuite. Runs from the app folder so Flet finds assets/. +# The window's app ID, so the desktop matches it to {Name}.desktop (icon, name) +# instead of showing every Flet program as "com.appveyor.flet". +export FLET_APP_ID="{Name}" cd "{AppDir}" || exit 1 exec "{Python}" Main.py "$@" diff --git a/Programs/SaraFem/Templates/SaraFem.desktop b/Programs/SaraFem/Templates/SaraFem.desktop index 0b11492..ef68d1d 100644 --- a/Programs/SaraFem/Templates/SaraFem.desktop +++ b/Programs/SaraFem/Templates/SaraFem.desktop @@ -8,3 +8,4 @@ Terminal=false Categories=System;FileManager; MimeType=inode/directory; StartupNotify=true +StartupWMClass={Name} diff --git a/Programs/SaraSort/Templates/Launch.sh b/Programs/SaraSort/Templates/Launch.sh index c606b43..ad4b090 100755 --- a/Programs/SaraSort/Templates/Launch.sh +++ b/Programs/SaraSort/Templates/Launch.sh @@ -1,4 +1,7 @@ #!/bin/sh # Written by SaraSuite. Runs from the app folder so Flet finds assets/. +# The window's app ID, so the desktop matches it to {Name}.desktop (icon, name) +# instead of showing every Flet program as "com.appveyor.flet". +export FLET_APP_ID="{Name}" cd "{AppDir}" || exit 1 exec "{Python}" Main.py "$@" diff --git a/Programs/SaraSort/Templates/SaraSort.desktop b/Programs/SaraSort/Templates/SaraSort.desktop index 079c9a7..876bce1 100644 --- a/Programs/SaraSort/Templates/SaraSort.desktop +++ b/Programs/SaraSort/Templates/SaraSort.desktop @@ -7,3 +7,4 @@ Icon={AppDir}/assets/Icon.png Terminal=false Categories=Utility; StartupNotify=true +StartupWMClass={Name} diff --git a/Programs/SaraTag/Templates/Launch.sh b/Programs/SaraTag/Templates/Launch.sh index c606b43..ad4b090 100644 --- a/Programs/SaraTag/Templates/Launch.sh +++ b/Programs/SaraTag/Templates/Launch.sh @@ -1,4 +1,7 @@ #!/bin/sh # Written by SaraSuite. Runs from the app folder so Flet finds assets/. +# The window's app ID, so the desktop matches it to {Name}.desktop (icon, name) +# instead of showing every Flet program as "com.appveyor.flet". +export FLET_APP_ID="{Name}" cd "{AppDir}" || exit 1 exec "{Python}" Main.py "$@" diff --git a/Programs/SaraTag/Templates/SaraTag.desktop b/Programs/SaraTag/Templates/SaraTag.desktop index afcc970..90399aa 100644 --- a/Programs/SaraTag/Templates/SaraTag.desktop +++ b/Programs/SaraTag/Templates/SaraTag.desktop @@ -7,3 +7,4 @@ Icon={AppDir}/assets/Icon.png Terminal=false Categories=Utility;Graphics; StartupNotify=true +StartupWMClass={Name}