X-Git-Url: https://glassweightruler.freedombox.rocks/gitweb/waydroid.git/blobdiff_plain/677710ab36bba687b04268704bd92b37638854d0..80555aba69dd568aa989edea8480487e87d80aac:/tools/actions/session_manager.py diff --git a/tools/actions/session_manager.py b/tools/actions/session_manager.py index 6d24ca9..e1a0ba0 100644 --- a/tools/actions/session_manager.py +++ b/tools/actions/session_manager.py @@ -5,11 +5,12 @@ import os import time import signal import sys +import shutil 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) @@ -20,6 +21,13 @@ def start(args): cfg = tools.config.load_session() waydroid_data = cfg["session"]["waydroid_data"] + #TODO: Drop me + old_user_waydroid = cfg["session"]["host_user"] + "/waydroid" + if os.path.isdir(old_user_waydroid): + if not os.path.isdir(waydroid_data): + shutil.move(old_user_waydroid, cfg["session"]["xdg_data_home"]) + else: + shutil.rmtree(old_user_waydroid, ignore_errors=True) if not os.path.isdir(waydroid_data): os.makedirs(waydroid_data) dpi = tools.helpers.props.host_get(args, "ro.sf.lcd_density") @@ -38,8 +46,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)