diff --git a/src/seedsigner/gui/renderer.py b/src/seedsigner/gui/renderer.py index 9ec58daf..d0e2381d 100644 --- a/src/seedsigner/gui/renderer.py +++ b/src/seedsigner/gui/renderer.py @@ -20,6 +20,11 @@ class Renderer(ConfigurableSingleton): lock = Lock() + @property + def is_screenshot_generator(self) -> bool: + return False + + @classmethod def configure_instance(cls): # Instantiate the one and only Renderer instance diff --git a/src/seedsigner/views/screensaver.py b/src/seedsigner/views/screensaver.py index d607f6ef..8b2970da 100644 --- a/src/seedsigner/views/screensaver.py +++ b/src/seedsigner/views/screensaver.py @@ -43,21 +43,18 @@ class LogoScreen(BaseScreen): @dataclass class OpeningSplashView(View): - is_screenshot_renderer: bool = False force_partner_logos: bool|None = None def run(self): self.run_screen( OpeningSplashScreen, - is_screenshot_renderer=self.is_screenshot_renderer, force_partner_logos=self.force_partner_logos ) class OpeningSplashScreen(LogoScreen): - def __init__(self, is_screenshot_renderer=False, force_partner_logos=None): - self.is_screenshot_renderer = is_screenshot_renderer + def __init__(self, force_partner_logos=None): self.force_partner_logos = force_partner_logos super().__init__() @@ -85,7 +82,7 @@ class OpeningSplashScreen(LogoScreen): logo_offset_y = 0 background = Image.new("RGBA", size=self.logo.size, color="black") - if not self.is_screenshot_renderer: + if not self.renderer.is_screenshot_generator: # Fade in alpha for i in range(250, -1, -25): self.logo.putalpha(255 - i) @@ -108,11 +105,11 @@ class OpeningSplashScreen(LogoScreen): version_y = int(self.canvas_height/2) + int(logo_height/2) + logo_offset_y + GUIConstants.COMPONENT_PADDING self.renderer.draw.text(xy=(version_x, version_y), text=version, font=font, fill=GUIConstants.ACCENT_COLOR, anchor="mt") - if not self.is_screenshot_renderer: + if not self.renderer.is_screenshot_generator: self.renderer.show_image() if show_partner_logos: - if not self.is_screenshot_renderer: + if not self.renderer.is_screenshot_generator: # Hold on the version num for a moment time.sleep(1) @@ -136,7 +133,7 @@ class OpeningSplashScreen(LogoScreen): self.renderer.show_image() - if not self.is_screenshot_renderer: + if not self.renderer.is_screenshot_generator: # Hold on the splash screen for a moment time.sleep(2) diff --git a/tests/screenshot_generator/generator.py b/tests/screenshot_generator/generator.py index 91018eaa..196e25cb 100644 --- a/tests/screenshot_generator/generator.py +++ b/tests/screenshot_generator/generator.py @@ -262,8 +262,8 @@ def generate_screenshots(locale): screenshot_sections = { "Main Menu Views": [ - ScreenshotConfig(OpeningSplashView, dict(is_screenshot_renderer=True, force_partner_logos=True)), - ScreenshotConfig(OpeningSplashView, dict(is_screenshot_renderer=True, force_partner_logos=False), screenshot_name="OpeningSplashView_no_partner_logos"), + ScreenshotConfig(OpeningSplashView, dict(force_partner_logos=True)), + ScreenshotConfig(OpeningSplashView, dict(force_partner_logos=False), screenshot_name="OpeningSplashView_no_partner_logos"), ScreenshotConfig(MainMenuView), ScreenshotConfig(MainMenuView, screenshot_name='MainMenuView_SDCardStateChangeToast_removed', toast_thread=SDCardStateChangeToastManagerThread(action=MicroSD.ACTION__REMOVED, activation_delay=0, duration=0)), ScreenshotConfig(MainMenuView, screenshot_name='MainMenuView_SDCardStateChangeToast_inserted', toast_thread=SDCardStateChangeToastManagerThread(action=MicroSD.ACTION__INSERTED, activation_delay=0, duration=0)), diff --git a/tests/screenshot_generator/utils.py b/tests/screenshot_generator/utils.py index d1618318..56bfb917 100644 --- a/tests/screenshot_generator/utils.py +++ b/tests/screenshot_generator/utils.py @@ -22,6 +22,10 @@ class ScreenshotRenderer(Renderer): screenshot_path: str = None screenshot_filename: str = None + @property + def is_screenshot_generator(self) -> bool: + return True + @classmethod def configure_instance(cls): # Instantiate the one and only Renderer instance