From 0290d4cdbd55b05dd06f373242c5676f40a4962c Mon Sep 17 00:00:00 2001 From: Tobias Sterbak Date: Tue, 26 Dec 2023 09:54:36 +0000 Subject: [PATCH 1/2] Scale right column to window size --- openandroidinstaller/openandroidinstaller.py | 4 +-- openandroidinstaller/views/base.py | 38 ++++++++++---------- 2 files changed, 22 insertions(+), 20 deletions(-) diff --git a/openandroidinstaller/openandroidinstaller.py b/openandroidinstaller/openandroidinstaller.py index da9ada00..1a26f882 100644 --- a/openandroidinstaller/openandroidinstaller.py +++ b/openandroidinstaller/openandroidinstaller.py @@ -72,7 +72,7 @@ def __init__(self, state: AppState): super().__init__() self.state = state # create the main columns - self.view = Column(expand=True, width=1200) + self.view = Column(expand=True) # , width=1200) # create default starter views welcome_view = WelcomeView( @@ -216,7 +216,7 @@ def log_version_infos(bin_path): ] try: logger.info(f"Heimdall version: {hdversion[1].strip()}") - except: + except IndexError: logger.info(f"Issue with heimdall: {hdversion}") diff --git a/openandroidinstaller/views/base.py b/openandroidinstaller/views/base.py index e40dd31b..584ee0e9 100644 --- a/openandroidinstaller/views/base.py +++ b/openandroidinstaller/views/base.py @@ -15,13 +15,7 @@ from app_state import AppState -from flet import ( - Column, - Image, - Row, - UserControl, - VerticalDivider, -) +from flet import Column, Container, Image, Row, UserControl, VerticalDivider, margin class BaseView(UserControl): @@ -30,27 +24,35 @@ def __init__(self, state: AppState, image: str = "placeholder.png"): self.state = state # configs - self.column_width = 600 + # self.column_width = 600 # right part of the display, add content here. - self.right_view_header = Column(width=self.column_width, height=120, spacing=30) + self.right_view_header = Column( + spacing=30 + ) # , width=self.column_width, height=120) self.right_view = Column( - alignment="center", width=self.column_width, height=650, scroll="adaptive" + alignment="center", + scroll="adaptive", # , width=self.column_width, height=650 ) # left part of the display: used for displaying the images self.left_view = Column( - width=self.column_width, + # width=self.column_width, controls=[Image(src=f"/imgs/{image}", height=600)], expand=True, horizontal_alignment="center", ) # main view row - self.view = Row( - [ - self.left_view, - VerticalDivider(), - Column(expand=True, controls=[self.right_view_header, self.right_view]), - ], - alignment="spaceEvenly", + self.view = Container( + content=Row( + [ + self.left_view, + VerticalDivider(), + Column( + expand=True, controls=[self.right_view_header, self.right_view] + ), + ], + alignment="spaceEvenly", + ), + margin=margin.only(left=10, top=0, right=50, bottom=5), ) def clear( From 2bb71a6e3d2b4f4959838aed317ed3a536009998 Mon Sep 17 00:00:00 2001 From: Tobias Sterbak Date: Sun, 14 Jan 2024 21:38:22 +0000 Subject: [PATCH 2/2] Improve scaling by using responsive rows for toggle switches and mutliline checkboxes --- openandroidinstaller/views/requirements_view.py | 2 +- openandroidinstaller/views/start_view.py | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/openandroidinstaller/views/requirements_view.py b/openandroidinstaller/views/requirements_view.py index 05f7f2e8..0954f052 100644 --- a/openandroidinstaller/views/requirements_view.py +++ b/openandroidinstaller/views/requirements_view.py @@ -139,7 +139,7 @@ def build(self): required_android_version = self.state.config.requirements.get("android") if required_android_version: android_checkbox = Checkbox( - label="The required android version is installed. (Or I know the risk of continuing)", + label="The required android version is installed.\n(Or I know the risk of continuing)", on_change=self.enable_continue_button, ) android_version_check = Card( diff --git a/openandroidinstaller/views/start_view.py b/openandroidinstaller/views/start_view.py index f7333429..8a752bf3 100644 --- a/openandroidinstaller/views/start_view.py +++ b/openandroidinstaller/views/start_view.py @@ -26,6 +26,7 @@ OutlinedButton, FilledButton, Row, + ResponsiveRow, TextButton, colors, icons, @@ -106,6 +107,7 @@ def check_bootloader_unlocked(e): disabled=True, inactive_thumb_color=colors.YELLOW, active_color=colors.GREEN, + col={"xl": 6}, ) # toggleswitch to allow skipping flashing recovery @@ -119,6 +121,7 @@ def check_recovery_already_flashed(e): disabled=True, inactive_thumb_color=colors.YELLOW, active_color=colors.GREEN, + col={"xl": 6}, ) # inform the user about the device detection @@ -202,7 +205,7 @@ def build(self): alignment="center", ), Divider(), - Row([self.bootloader_switch, self.recovery_switch]), + ResponsiveRow([self.bootloader_switch, self.recovery_switch]), ] ) return self.view