Skip to content

Commit de811a6

Browse files
committed
Queue one-time tasks in click order
1 parent 2b17030 commit de811a6

18 files changed

Lines changed: 11895 additions & 11665 deletions

ok/gui/StartController.py

Lines changed: 18 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,15 @@ def __init__(self, app_config, exit_event):
2121
self.start_timeout = app_config.get('start_timeout', 60)
2222
self.start_exe = (app_config.get('windows') or {}).get('start_exe', True)
2323

24+
@staticmethod
25+
def _mark_task_enabled(task):
26+
if not task.enabled:
27+
task._enabled = True
28+
task.info_clear()
29+
task.executor.enqueue_onetime_task(task)
30+
logger.info(f"enabled task {task}")
31+
communicate.task.emit(task)
32+
2433
def start(self, task=None, exit_after=False):
2534
self.handler.post(lambda: self.do_start(task, exit_after))
2635

@@ -40,6 +49,14 @@ def do_start(self, task=None, exit_after=False):
4049
task.unpause()
4150
communicate.starting_emulator.emit(True, None, 0)
4251
return True
52+
53+
if task and og.executor.current_task and og.executor.current_task != task:
54+
logger.info(f"queue task while another task is running {task}")
55+
if exit_after:
56+
task.exit_after_task = True
57+
self._mark_task_enabled(task)
58+
communicate.starting_emulator.emit(True, None, 0)
59+
return True
4360
except Exception as e:
4461
logger.error(f'do_start resume exception: {e}', e)
4562
communicate.starting_emulator.emit(True, self.tr(f'Start failed: {e}'), 0)
@@ -76,7 +93,7 @@ def add_task_to_enable(enable_task):
7693
task.exit_after_task = True
7794

7895
for task in tasks_to_enable:
79-
task._enabled = True
96+
self._mark_task_enabled(task)
8097

8198
og.executor.start()
8299
communicate.starting_emulator.emit(True, None, 0)

ok/gui/i18n/en_US.qm

169 Bytes
Binary file not shown.

ok/gui/i18n/en_US.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -932,6 +932,10 @@
932932
<source>Resume</source>
933933
<translation>Resume</translation>
934934
</message>
935+
<message>
936+
<source>Waiting for {task_name} task to be completed</source>
937+
<translation>Waiting for {task_name} task to be completed</translation>
938+
</message>
935939
</context>
936940
<context>
937941
<name>TaskOpButton</name>

ok/gui/i18n/es_ES.qm

177 Bytes
Binary file not shown.

ok/gui/i18n/es_ES.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -930,6 +930,10 @@
930930
<source>Resume</source>
931931
<translation>Reanudar</translation>
932932
</message>
933+
<message>
934+
<source>Waiting for {task_name} task to be completed</source>
935+
<translation>Esperando a que se complete la tarea {task_name}</translation>
936+
</message>
933937
</context>
934938
<context>
935939
<name>TaskOpButton</name>

ok/gui/i18n/ja_JP.qm

125 Bytes
Binary file not shown.

ok/gui/i18n/ja_JP.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -922,6 +922,10 @@
922922
<source>Resume</source>
923923
<translation>再開</translation>
924924
</message>
925+
<message>
926+
<source>Waiting for {task_name} task to be completed</source>
927+
<translation>{task_name} タスクの完了を待機中</translation>
928+
</message>
925929
</context>
926930
<context>
927931
<name>TaskOpButton</name>

ok/gui/i18n/ko_KR.qm

125 Bytes
Binary file not shown.

ok/gui/i18n/ko_KR.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -931,6 +931,10 @@
931931
<source>Resume</source>
932932
<translation>재개</translation>
933933
</message>
934+
<message>
935+
<source>Waiting for {task_name} task to be completed</source>
936+
<translation>{task_name} 작업 완료 대기 중</translation>
937+
</message>
934938
</context>
935939
<context>
936940
<name>TaskOpButton</name>

ok/gui/i18n/zh_CN.qm

119 Bytes
Binary file not shown.

0 commit comments

Comments
 (0)