From 8a16be748b593affd4456f39eb314674033190fe Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alexis=20M=C3=A9taireau?= Date: Mon, 2 Sep 2024 09:35:35 +0200 Subject: [PATCH] FIXUP: Change the error message and use `setPlainText` --- dangerzone/gui/main_window.py | 20 +++++++++----------- 1 file changed, 9 insertions(+), 11 deletions(-) diff --git a/dangerzone/gui/main_window.py b/dangerzone/gui/main_window.py index 7a4882fd8..007d7b248 100644 --- a/dangerzone/gui/main_window.py +++ b/dangerzone/gui/main_window.py @@ -10,20 +10,19 @@ # FIXME: See https://github.com/freedomofpress/dangerzone/issues/320 for more details. if typing.TYPE_CHECKING: from PySide2 import QtCore, QtGui, QtSvg, QtWidgets - from PySide2.QtWidgets import QAction, QTextEdit from PySide2.QtCore import Qt + from PySide2.QtWidgets import QAction, QTextEdit else: try: from PySide6 import QtCore, QtGui, QtSvg, QtWidgets + from PySide6.QtCore import Qt from PySide6.QtGui import QAction from PySide6.QtWidgets import QTextEdit - from PySide6.QtCore import Qt except ImportError: from PySide2 import QtCore, QtGui, QtSvg, QtWidgets from PySide2.QtWidgets import QAction, QTextEdit from PySide2.QtCore import Qt - from .. import errors from ..document import SAFE_EXTENSION, Document from ..isolation_provider.container import Container, NoContainerTechException @@ -442,7 +441,8 @@ def __init__(self, dangerzone: DangerzoneGui) -> None: # Error self.error_text = QTextEdit() self.error_text.setReadOnly(True) - self.error_text.setStyleSheet(""" + self.error_text.setStyleSheet( + """ QTextEdit { font-family: Consolas, Monospace; font-size: 12px; @@ -450,7 +450,8 @@ def __init__(self, dangerzone: DangerzoneGui) -> None: color: #000; padding: 10px; } - """) + """ + ) self.error_text.setVisible(False) # Enable copying self.error_text.setTextInteractionFlags(Qt.TextSelectableByMouse) @@ -522,16 +523,13 @@ def state_change(self, state: str, error: str) -> None: self.buttons.show() elif state == "not_running": if platform.system() == "Linux": + # "not_running" here means that the `podman image ls` command failed. message = ( "Dangerzone requires Podman

" - "Podman is installed but isn't running.
" - "It could mean that it is not configured properly." + "Podman is installed but cannot run properly. See errors below" ) if error: - message += "

The following error was caught when trying to run podman image list" - - code_snippet = f"
{error.decode()}
" - self.error_text.setHtml(code_snippet) + self.error_text.setPlainText(error.decode()) self.error_text.setVisible(True) self.label.setText(message)