ok-script 0.0.14__tar.gz → 0.0.16__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {ok-script-0.0.14 → ok-script-0.0.16}/PKG-INFO +1 -1
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/OK.py +46 -49
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/capture/adb/DeviceManager.py +5 -1
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/gui/Communicate.py +0 -1
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/gui/debug/Screenshot.py +2 -1
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/gui/resources.py +335 -321
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/gui/tasks/LabelAndSwitchButton.py +2 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/gui/tasks/ModifyListDialog.py +1 -1
- ok-script-0.0.16/ok/gui/tasks/TaskCard.py +159 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/gui/util/InitWorker.py +0 -2
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/task/BaseTask.py +3 -1
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/task/TaskExecutor.py +11 -7
- {ok-script-0.0.14 → ok-script-0.0.16}/ok_script.egg-info/PKG-INFO +1 -1
- {ok-script-0.0.14 → ok-script-0.0.16}/setup.py +1 -1
- ok-script-0.0.14/ok/gui/tasks/TaskCard.py +0 -97
- {ok-script-0.0.14 → ok-script-0.0.16}/README.md +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/__init__.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/capture/BaseCaptureMethod.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/capture/HwndWindow.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/capture/__init__.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/capture/adb/ADBCaptureMethod.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/capture/adb/__init__.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/capture/adb/bin/__init__.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/capture/adb/targets.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/capture/adb/vbox.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/capture/windows/WindowsGraphicsCaptureMethod.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/capture/windows/__init__.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/capture/windows/d3d11.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/capture/windows/utils.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/capture/windows/window.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/color/Color.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/color/__init__.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/config/Config.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/config/InfoDict.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/config/__init__.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/feature/Box.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/feature/Feature.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/feature/FeatureSet.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/feature/FindFeature.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/feature/__init__.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/gui/App.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/gui/MainWindow.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/gui/TabTitles.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/gui/__init__.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/gui/about/AboutTab.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/gui/about/__init__.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/gui/common/OKIcon.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/gui/common/__init__.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/gui/common/config.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/gui/common/style_sheet.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/gui/debug/AspectRatioWidget.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/gui/debug/DebugTab.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/gui/debug/FrameWidget.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/gui/debug/InfoWidget.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/gui/debug/LoggerWidget.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/gui/debug/__init__.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/gui/i18n/__init__.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/gui/i18n/path.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/gui/i18n/update.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/gui/icon/__init__.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/gui/icon/icon.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/gui/overlay/OverlayWindow.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/gui/overlay/__init__.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/gui/qss/__init__.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/gui/settings/SettingTab.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/gui/settings/__init__.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/gui/start/SelectCaptureListView.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/gui/start/SelectHwndWindow.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/gui/start/StartCard.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/gui/start/StartTab.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/gui/start/__init__.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/gui/tasks/ConfigItemFactory.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/gui/tasks/ConfigLabelAndWidget.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/gui/tasks/LabelAndDoubleSpinBox.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/gui/tasks/LabelAndLineEdit.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/gui/tasks/LabelAndList.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/gui/tasks/LabelAndSpinBox.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/gui/tasks/LabelAndWidget.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/gui/tasks/ModifyListItem.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/gui/tasks/OneTimeTaskTab.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/gui/tasks/StartButton.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/gui/tasks/TaskOpButton.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/gui/tasks/TooltipTableWidget.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/gui/tasks/TriggerTaskTab.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/gui/tasks/__init__.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/gui/util/Alert.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/gui/util/__init__.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/gui/widget/Card.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/gui/widget/FramelessDialog.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/gui/widget/ListTableWidgetItem.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/gui/widget/NumericTableWidgetItem.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/gui/widget/StatusBar.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/gui/widget/Tab.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/gui/widget/TabWidget.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/gui/widget/UpdateConfigWidgetItem.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/gui/widget/YesNonWidgetItem.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/gui/widget/__init__.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/interaction/ADBInteraction.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/interaction/BaseInteraction.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/interaction/Win32Interaction.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/interaction/__init__.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/logging/Logger.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/logging/__init__.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/ocr/OCR.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/ocr/__init__.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/predict/__init__.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/predict/predict.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/rotypes/Windows/Foundation/Collections.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/rotypes/Windows/Foundation/__init__.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/rotypes/Windows/Globalization/__init__.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/rotypes/Windows/Graphics/Capture/__init__.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/rotypes/Windows/Graphics/DirectX/Direct3D11/__init__.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/rotypes/Windows/Graphics/DirectX/__init__.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/rotypes/Windows/Graphics/Imaging/__init__.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/rotypes/Windows/Graphics/__init__.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/rotypes/Windows/Media/Ocr/__init__.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/rotypes/Windows/Media/__init__.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/rotypes/Windows/Security/Cryptography/__init__.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/rotypes/Windows/Security/__init__.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/rotypes/Windows/Storage/Streams/__init__.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/rotypes/Windows/Storage/__init__.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/rotypes/Windows/__init__.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/rotypes/__init__.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/rotypes/delegate.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/rotypes/export.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/rotypes/idldsl.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/rotypes/inspectable.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/rotypes/roapi.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/rotypes/types.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/rotypes/winstring.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/save/BlackBarProcessor.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/save/PostProcessor.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/save/SaveByInterval.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/save/SaveByKeyPress.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/save/SaveMethodBase.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/save/__init__.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/scene/FeatureScene.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/scene/Scene.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/scene/__init__.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/stats/StreamStats.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/stats/__init__.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/task/ExecutorOperation.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/task/OneTimeTask.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/task/TriggerTask.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/task/__init__.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/util/__init__.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/util/json.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/util/list.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/util/path.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/util/thread.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/util/win32_process.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok/util/yaml.py +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok_script.egg-info/SOURCES.txt +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok_script.egg-info/dependency_links.txt +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok_script.egg-info/requires.txt +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/ok_script.egg-info/top_level.txt +0 -0
- {ok-script-0.0.14 → ok-script-0.0.16}/setup.cfg +0 -0
|
@@ -28,75 +28,73 @@ class OK:
|
|
|
28
28
|
ok.gui.ok = self
|
|
29
29
|
self.debug = config.get("debug", False)
|
|
30
30
|
self.exit_event = threading.Event()
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
31
|
+
try:
|
|
32
|
+
self.config = config
|
|
33
|
+
self.init_device_manager()
|
|
34
|
+
from ok.gui.debug.Screenshot import Screenshot
|
|
35
|
+
self.screenshot = Screenshot()
|
|
36
|
+
if config.get("use_gui"):
|
|
37
|
+
from ok.gui.App import App
|
|
38
|
+
self.app = App(config, self.exit_event)
|
|
39
|
+
ok.gui.app = self.app
|
|
40
|
+
else:
|
|
41
|
+
self.device_manager.set_preferred_device()
|
|
42
|
+
self.device_manager.start()
|
|
43
|
+
self.do_init()
|
|
44
|
+
except Exception as e:
|
|
45
|
+
self.exit_event.set()
|
|
46
|
+
raise e
|
|
43
47
|
|
|
44
48
|
def start(self):
|
|
45
|
-
|
|
46
|
-
self.
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
else:
|
|
50
|
-
self.task_executor.start()
|
|
51
|
-
if self.config.get("debug"):
|
|
52
|
-
self.app = QApplication(sys.argv)
|
|
53
|
-
from ok.gui.overlay.OverlayWindow import OverlayWindow
|
|
54
|
-
self.overlay_window = OverlayWindow(ok.gui.device_manager.hwnd)
|
|
49
|
+
try:
|
|
50
|
+
if self.config.get("use_gui"):
|
|
51
|
+
self.do_init()
|
|
52
|
+
self.app.show_main_window()
|
|
55
53
|
self.app.exec()
|
|
56
54
|
else:
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
55
|
+
self.task_executor.start()
|
|
56
|
+
if self.config.get("debug"):
|
|
57
|
+
self.app = QApplication(sys.argv)
|
|
58
|
+
from ok.gui.overlay.OverlayWindow import OverlayWindow
|
|
59
|
+
self.overlay_window = OverlayWindow(ok.gui.device_manager.hwnd)
|
|
60
|
+
self.app.exec()
|
|
61
|
+
else:
|
|
62
|
+
try:
|
|
63
|
+
# Starting the task in a separate thread (optional)
|
|
64
|
+
# This allows the main thread to remain responsive to keyboard interrupts
|
|
65
|
+
task_thread = threading.Thread(target=self.wait_task)
|
|
66
|
+
task_thread.start()
|
|
67
|
+
|
|
68
|
+
# Wait for the task thread to end (which it won't, in this case, without an interrupt)
|
|
69
|
+
task_thread.join()
|
|
70
|
+
except KeyboardInterrupt:
|
|
71
|
+
self.exit_event.set()
|
|
72
|
+
logger.info("Keyboard interrupt received, exiting script.")
|
|
73
|
+
finally:
|
|
74
|
+
# Clean-up code goes here (if any)
|
|
75
|
+
# This block ensures that the script terminates gracefully,
|
|
76
|
+
# releasing resources or performing necessary clean-up operations.
|
|
77
|
+
logger.info("Script has terminated.")
|
|
78
|
+
except Exception as e:
|
|
79
|
+
logger.error("start error", e)
|
|
80
|
+
self.exit_event.set()
|
|
78
81
|
|
|
79
82
|
def do_init(self):
|
|
80
83
|
logger.info(f"initializing {self.__class__.__name__}, config: {self.config}")
|
|
81
84
|
if self.config.get('ocr'):
|
|
82
|
-
self.init_message("RapidOCR init Start")
|
|
83
85
|
from rapidocr_onnxruntime import RapidOCR
|
|
84
86
|
self.ocr = RapidOCR()
|
|
85
|
-
self.init_message("RapidOCR init Complete")
|
|
86
87
|
|
|
87
88
|
config_logger(self.config)
|
|
88
89
|
|
|
89
90
|
if self.config.get('coco_feature_folder') is not None:
|
|
90
|
-
self.init_message("FeatureSet init Start")
|
|
91
91
|
coco_feature_folder = self.config.get('coco_feature_folder')
|
|
92
92
|
from ok.feature.FeatureSet import FeatureSet
|
|
93
93
|
self.feature_set = FeatureSet(coco_feature_folder,
|
|
94
94
|
default_horizontal_variance=self.config.get('default_horizontal_variance', 0),
|
|
95
95
|
default_vertical_variance=self.config.get('default_vertical_variance', 0),
|
|
96
96
|
default_threshold=self.config.get('default_threshold', 0))
|
|
97
|
-
self.init_message("FeatureSet init Complete")
|
|
98
97
|
|
|
99
|
-
self.init_message("TaskExecutor init Start")
|
|
100
98
|
from ok.task.TaskExecutor import TaskExecutor
|
|
101
99
|
self.task_executor = TaskExecutor(self.device_manager, exit_event=self.exit_event,
|
|
102
100
|
onetime_tasks=self.config.get('onetime_tasks', []),
|
|
@@ -104,7 +102,6 @@ class OK:
|
|
|
104
102
|
scenes=self.config['scenes'],
|
|
105
103
|
feature_set=self.feature_set,
|
|
106
104
|
ocr=self.ocr, config_folder=self.config.get("config_folder") or "config")
|
|
107
|
-
self.init_message("TaskExecutor init Done")
|
|
108
105
|
|
|
109
106
|
if self.app:
|
|
110
107
|
ok.gui.executor = self.task_executor
|
|
@@ -126,9 +126,9 @@ class DeviceManager:
|
|
|
126
126
|
if imei not in adb_connected and self.device_dict[imei]['device'] == 'adb':
|
|
127
127
|
self.device_dict[imei]['connected'] = False
|
|
128
128
|
|
|
129
|
-
communicate.adb_devices.emit(True)
|
|
130
129
|
self.config.save_file()
|
|
131
130
|
self.start()
|
|
131
|
+
communicate.adb_devices.emit(True)
|
|
132
132
|
logger.debug(f'refresh {self.device_dict}')
|
|
133
133
|
|
|
134
134
|
def set_preferred_device(self, imei=None):
|
|
@@ -144,6 +144,7 @@ class DeviceManager:
|
|
|
144
144
|
self.config.save_file()
|
|
145
145
|
logger.debug(f'preferred device: {preferred}')
|
|
146
146
|
self.start()
|
|
147
|
+
return preferred
|
|
147
148
|
|
|
148
149
|
def get_preferred_device(self):
|
|
149
150
|
imei = self.config.get("preferred")
|
|
@@ -178,7 +179,10 @@ class DeviceManager:
|
|
|
178
179
|
def start(self):
|
|
179
180
|
preferred = self.get_preferred_device()
|
|
180
181
|
if preferred is None:
|
|
182
|
+
if self.device_dict:
|
|
183
|
+
self.set_preferred_device()
|
|
181
184
|
return
|
|
185
|
+
|
|
182
186
|
if preferred['device'] == 'windows':
|
|
183
187
|
self.ensure_hwnd(self.hwnd_title, self.exe_name)
|
|
184
188
|
if not isinstance(self.capture_method, WindowsGraphicsCaptureMethod):
|
|
@@ -12,7 +12,6 @@ class Communicate(QObject):
|
|
|
12
12
|
task_info = Signal()
|
|
13
13
|
window = Signal(bool, int, int, int, int, int, int, float)
|
|
14
14
|
loading_progress = Signal(str)
|
|
15
|
-
init = Signal(bool, str)
|
|
16
15
|
notification = Signal(str, str)
|
|
17
16
|
executor_paused: Signal = Signal(bool)
|
|
18
17
|
screenshot = Signal(np.ndarray, str)
|