feat: Add window title configuration and update related components and tests

This commit is contained in:
claudi 2026-01-30 11:28:23 +01:00
parent c621e63a8d
commit 8e97f85c64
8 changed files with 13 additions and 1 deletions

View file

@ -20,3 +20,4 @@ ALLOWED_URLS=
# UI # UI
WINDOW_WIDTH=1024 WINDOW_WIDTH=1024
WINDOW_HEIGHT=768 WINDOW_HEIGHT=768
# WINDOW_TITLE= (leave empty to use: "{APP_NAME} v{APP_VERSION}")

View file

@ -31,6 +31,7 @@ class Config:
webapp_url: URL to load in embedded web application webapp_url: URL to load in embedded web application
window_width: Initial window width in pixels window_width: Initial window width in pixels
window_height: Initial window height in pixels window_height: Initial window height in pixels
window_title: Main window title (default: "{app_name} v{app_version}")
enable_logging: Whether to write logs to file enable_logging: Whether to write logs to file
Raises: Raises:
@ -46,6 +47,7 @@ class Config:
webapp_url: str webapp_url: str
window_width: int window_width: int
window_height: int window_height: int
window_title: str
enable_logging: bool enable_logging: bool
@classmethod @classmethod
@ -82,6 +84,9 @@ class Config:
webapp_url = os.getenv("WEBAPP_URL", "file:///./webapp/index.html") webapp_url = os.getenv("WEBAPP_URL", "file:///./webapp/index.html")
window_width = int(os.getenv("WINDOW_WIDTH", "1024")) window_width = int(os.getenv("WINDOW_WIDTH", "1024"))
window_height = int(os.getenv("WINDOW_HEIGHT", "768")) window_height = int(os.getenv("WINDOW_HEIGHT", "768"))
# Window title defaults to app_name + version if not specified
default_title = f"{app_name} v{app_version}"
window_title = os.getenv("WINDOW_TITLE", default_title)
enable_logging = os.getenv("ENABLE_LOGGING", "true").lower() == "true" enable_logging = os.getenv("ENABLE_LOGGING", "true").lower() == "true"
# Validate log level # Validate log level
@ -145,6 +150,7 @@ class Config:
webapp_url=webapp_url, webapp_url=webapp_url,
window_width=window_width, window_width=window_width,
window_height=window_height, window_height=window_height,
window_title=window_title,
enable_logging=enable_logging, enable_logging=enable_logging,
) )

View file

@ -245,7 +245,7 @@ class MainWindow(QMainWindow):
self._is_manual_check = False # Track if this is a manual check (for UI feedback) self._is_manual_check = False # Track if this is a manual check (for UI feedback)
# Set window properties # Set window properties
self.setWindowTitle(f"{config.app_name} v{config.app_version}") self.setWindowTitle(config.window_title)
self.setGeometry( self.setGeometry(
100, 100,
100, 100,

View file

@ -24,6 +24,7 @@ def config(tmp_path):
webapp_url="file:///./webapp/index.html", webapp_url="file:///./webapp/index.html",
window_width=800, window_width=800,
window_height=600, window_height=600,
window_title="Test WebDrop v0.0.1",
enable_logging=False, enable_logging=False,
) )

View file

@ -246,6 +246,7 @@ class TestConfigExporter:
webapp_url="http://localhost:8080", webapp_url="http://localhost:8080",
window_width=800, window_width=800,
window_height=600, window_height=600,
window_title="WebDrop Bridge v1.0.0",
enable_logging=True, enable_logging=True,
) )

View file

@ -32,6 +32,7 @@ def sample_config(tmp_path):
webapp_url=str(webapp_file), webapp_url=str(webapp_file),
window_width=800, window_width=800,
window_height=600, window_height=600,
window_title="Test WebDrop v1.0.0",
enable_logging=False, enable_logging=False,
) )
return config return config

View file

@ -22,6 +22,7 @@ def sample_config(tmp_path):
webapp_url="http://localhost:8080", webapp_url="http://localhost:8080",
window_width=800, window_width=800,
window_height=600, window_height=600,
window_title="WebDrop Bridge v1.0.0",
enable_logging=True, enable_logging=True,
) )

View file

@ -22,6 +22,7 @@ def sample_config(tmp_path):
webapp_url="file:///./webapp/index.html", webapp_url="file:///./webapp/index.html",
window_width=800, window_width=800,
window_height=600, window_height=600,
window_title="Test WebDrop v1.0.0",
enable_logging=False, enable_logging=False,
) )