diff --git a/comictaggerlib/gui.py b/comictaggerlib/gui.py
index ccd33aa..9c77ba5 100644
--- a/comictaggerlib/gui.py
+++ b/comictaggerlib/gui.py
@@ -63,6 +63,14 @@ try:
qt_exception_hook = UncaughtHook()
from comictaggerlib.taggerwindow import TaggerWindow
+ try:
+ # needed here to initialize QWebEngine
+ from PyQt5.QtWebEngineWidgets import QWebEngineView # noqa: F401
+
+ qt_webengine_available = True
+ except ImportError:
+ qt_webengine_available = False
+
class Application(QtWidgets.QApplication):
openFileRequest = QtCore.pyqtSignal(QtCore.QUrl, name="openfileRequest")
diff --git a/comictaggerlib/issueselectionwindow.py b/comictaggerlib/issueselectionwindow.py
index 4e673e7..b70fa6c 100644
--- a/comictaggerlib/issueselectionwindow.py
+++ b/comictaggerlib/issueselectionwindow.py
@@ -23,7 +23,7 @@ from comicapi.issuestring import IssueString
from comictaggerlib.coverimagewidget import CoverImageWidget
from comictaggerlib.ctsettings import ct_ns
from comictaggerlib.ui import ui_path
-from comictaggerlib.ui.qtutils import reduce_widget_font_size
+from comictaggerlib.ui.qtutils import new_web_view, reduce_widget_font_size
from comictalker.comictalker import ComicTalker, TalkerError
from comictalker.resulttypes import ComicIssue
@@ -58,6 +58,19 @@ class IssueSelectionWindow(QtWidgets.QDialog):
gridlayout.addWidget(self.coverWidget)
gridlayout.setContentsMargins(0, 0, 0, 0)
+ self.teDescription: QtWidgets.QWidget
+ webengine = new_web_view(self)
+ if webengine:
+ self.teDescription.hide()
+ self.teDescription.deleteLater()
+ # I don't know how to replace teDescription, this is the result of teDescription.height() once rendered
+ webengine.resize(webengine.width(), 141)
+ self.splitter.addWidget(webengine)
+ self.teDescription = webengine
+ logger.info("successfully loaded QWebEngineView")
+ else:
+ logger.info("failed to open QWebEngineView")
+
reduce_widget_font_size(self.twList)
reduce_widget_font_size(self.teDescription, 1)
@@ -189,6 +202,13 @@ class IssueSelectionWindow(QtWidgets.QDialog):
def cell_double_clicked(self, r: int, c: int) -> None:
self.accept()
+ def set_description(self, widget: QtWidgets.QWidget, text: str) -> None:
+ if isinstance(widget, QtWidgets.QTextEdit):
+ widget.setText(text.replace("", "").replace("", "").replace("