]> glassweightruler.freedombox.rocks Git - waydroid.git/blobdiff - tools/services/user_manager.py
tools: Remove unused requests import
[waydroid.git] / tools / services / user_manager.py
index 41fea837418233020a4fc3a851526a535d37c624..98b7d28aea39849bc638f0722e53dda8683b6d48 100644 (file)
@@ -8,7 +8,7 @@ from tools.interfaces import IUserMonitor
 from tools.interfaces import IPlatform
 
 
-def start(args):
+def start(args, unlocked_cb=None):
     def makeDesktopFile(appInfo):
         showApp = False
         for cat in appInfo["categories"]:
@@ -33,19 +33,22 @@ def start(args):
             os.chmod(desktop_file_path, 0o755)
             return 0
 
-    def makeWaydroidDesktopFile():
+    def makeWaydroidDesktopFile(hide):
         desktop_file_path = args.host_user + \
             "/.local/share/applications/Waydroid.desktop"
-        if not os.path.exists(desktop_file_path):
-            lines = ["[Desktop Entry]", "Type=Application"]
-            lines.append("Name=Waydroid")
-            lines.append("Exec=waydroid show-full-ui")
-            lines.append("Icon=" + tools.config.tools_src + "/data/AppIcon.png")
-            desktop_file = open(desktop_file_path, "w")
-            for line in lines:
-                desktop_file.write(line + "\n")
-            desktop_file.close()
-            os.chmod(desktop_file_path, 0o755)
+        if os.path.isfile(desktop_file_path):
+            os.remove(desktop_file_path)
+        lines = ["[Desktop Entry]", "Type=Application"]
+        lines.append("Name=Waydroid")
+        lines.append("Exec=waydroid show-full-ui")
+        if hide:
+            lines.append("NoDisplay=true")
+        lines.append("Icon=" + tools.config.tools_src + "/data/AppIcon.png")
+        desktop_file = open(desktop_file_path, "w")
+        for line in lines:
+            desktop_file.write(line + "\n")
+        desktop_file.close()
+        os.chmod(desktop_file_path, 0o755)
 
     def userUnlocked(uid):
         logging.info("Android with user {} is ready".format(uid))
@@ -60,12 +63,11 @@ def start(args):
                 makeDesktopFile(app)
             multiwin = platformService.getprop("persist.waydroid.multi_windows", "false")
             if multiwin == "false":
-                makeWaydroidDesktopFile()
+                makeWaydroidDesktopFile(False)
             else:
-                desktop_file_path = args.host_user + \
-                    "/.local/share/applications/Waydroid.desktop"
-                if os.path.isfile(desktop_file_path):
-                    os.remove(desktop_file_path)
+                makeWaydroidDesktopFile(True)
+        if unlocked_cb:
+            unlocked_cb(args)
 
     def packageStateChanged(mode, packageName, uid):
         platformService = IPlatform.get_service(args)