]> glassweightruler.freedombox.rocks Git - waydroid.git/commitdiff
actions: Start session by lunching apps
authorErfan Abdi <erfangplus@gmail.com>
Sat, 4 Sep 2021 02:45:10 +0000 (07:15 +0430)
committerErfan Abdi <erfangplus@gmail.com>
Sat, 4 Sep 2021 15:47:35 +0000 (20:17 +0430)
tools/actions/app_manager.py
tools/actions/session_manager.py
tools/services/user_manager.py

index fc5c224f0ab42fedd96e8fe13988d9ef594194d7..46d0818e094d936344f1a8237f64bf1e860c760c 100644 (file)
@@ -77,7 +77,8 @@ def launch(args):
             logging.error("WayDroid container is {}".format(
                 session_cfg["session"]["state"]))
     else:
-        logging.error("WayDroid session is stopped")
+        logging.error("Starting waydroid session")
+        tools.actions.session_manager.start(args, launch)
 
 def list(args):
     if os.path.exists(tools.config.session_defaults["config_path"]):
@@ -128,4 +129,5 @@ def showFullUI(args):
             logging.error("WayDroid container is {}".format(
                 session_cfg["session"]["state"]))
     else:
-        logging.error("WayDroid session is stopped")
+        logging.error("Starting waydroid session")
+        tools.actions.session_manager.start(args, showFullUI)
index 6d24ca9e71e9e43dbee2f78bf60ee239de3f6add..0262c1a9456d70390a4fdcf54e0dad052113e237 100644 (file)
@@ -9,7 +9,7 @@ import tools.config
 from tools import services
 
 
-def start(args):
+def start(args, unlocked_cb=None):
     def signal_handler(sig, frame):
         stop(args)
         sys.exit(0)
@@ -38,8 +38,10 @@ def start(args):
         session_cfg = tools.config.load_session()
         if container_state != session_cfg["session"]["state"]:
             if session_cfg["session"]["state"] == "RUNNING":
-                services.user_manager.start(args)
+                services.user_manager.start(args, unlocked_cb)
                 services.clipboard_manager.start(args)
+                if unlocked_cb:
+                    unlocked_cb = None
             elif session_cfg["session"]["state"] == "STOPPED":
                 services.user_manager.stop(args)
                 services.clipboard_manager.stop(args)
index 4e7455b5996e1f73f456e5a46a061dae238c3b32..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"]:
@@ -66,6 +66,8 @@ def start(args):
                 makeWaydroidDesktopFile(False)
             else:
                 makeWaydroidDesktopFile(True)
+        if unlocked_cb:
+            unlocked_cb(args)
 
     def packageStateChanged(mode, packageName, uid):
         platformService = IPlatform.get_service(args)