mirror of
https://github.com/TheFunny/ArisuAutoSweeper
synced 2026-10-10 07:02:06 +00:00
fix: share screenshot_method_override across tasks
This commit is contained in:
@@ -95,12 +95,6 @@ class Device(Screenshot, Control, AppControl):
|
||||
self.screenshot_interval_set()
|
||||
self.method_check()
|
||||
|
||||
# AAS only, use nemu_ipc if available
|
||||
available = self.nemu_ipc_available()
|
||||
logger.attr('nemu_ipc_available', available)
|
||||
if available:
|
||||
self.config.override(Emulator_ScreenshotMethod='nemu_ipc')
|
||||
|
||||
# Auto-select the fastest screenshot method
|
||||
if not self.config.is_template_config and self.config.Emulator_ScreenshotMethod == 'auto':
|
||||
self.run_simple_screenshot_benchmark()
|
||||
|
||||
@@ -42,6 +42,15 @@ class Screenshot(Adb, WSA, DroidCast, AScreenCap, Scrcpy, NemuIpc):
|
||||
'nemu_ipc': self.screenshot_nemu_ipc,
|
||||
}
|
||||
|
||||
@cached_property
|
||||
def screenshot_method_override(self) -> str:
|
||||
# AAS only, use nemu_ipc if available
|
||||
available = self.nemu_ipc_available()
|
||||
logger.attr('nemu_ipc_available', available)
|
||||
if available:
|
||||
return 'nemu_ipc'
|
||||
return ''
|
||||
|
||||
def screenshot(self):
|
||||
"""
|
||||
Returns:
|
||||
@@ -51,10 +60,12 @@ class Screenshot(Adb, WSA, DroidCast, AScreenCap, Scrcpy, NemuIpc):
|
||||
self._screenshot_interval.reset()
|
||||
|
||||
for _ in range(2):
|
||||
method = self.screenshot_methods.get(
|
||||
self.config.Emulator_ScreenshotMethod,
|
||||
self.screenshot_adb
|
||||
)
|
||||
if self.screenshot_method_override:
|
||||
method = self.screenshot_method_override
|
||||
else:
|
||||
method = self.config.Emulator_ScreenshotMethod
|
||||
method = self.screenshot_methods.get(method, self.screenshot_adb)
|
||||
|
||||
self.image = method()
|
||||
|
||||
# if self.config.Emulator_ScreenshotDedithering:
|
||||
|
||||
Reference in New Issue
Block a user