Path: /ui_components/ui_base_full.py
The UIBaseFull component initializes a full-screen, frameless overlay on all connected displays, providing a black background layer that stays on top of other windows.
Display a consistent background overlay for kiosk applications or digital signage across multiple monitors.
Provide a blackout layer for secure presentations or privacy screens that cover all active displays.
PyQt5 (QtWidgets, QtCore, QtGui)
utilities.util_load_font from the Raven Development Team
Parameter | Type | Description | Default |
---|---|---|---|
None | — | This component does not accept any constructor parameters. | — |
python ui_components/ui_base_full.py
Upon initialization, the component loads the Chakra Petch font, then queries all available screens via QGuiApplication. For each screen, it creates a QMainWindow overlay with no window frame that stays on top and covers the screen’s geometry with a black background. The primary display’s overlay is tracked separately. Calling show() on the instance will display overlays on all screens.
UIBaseFull relies on util_load_font to manage font loading errors. It does not implement its own exception handling around Qt operations; any errors during overlay creation will propagate to the application level.
No elevated permissions are required. The component does not process external input, so input sanitization is not applicable. Overlays remain within the user’s session and do not modify system-level settings.
This component does not emit any log messages. Qt’s internal logging may be enabled separately if needed.
Run unit tests with pytest to verify that the number of overlays matches the detected screens and that the show() method displays them without errors. For manual validation, launch the script and confirm each monitor is covered.
Author: Raven Development Team