From cb07ca7b70eda8387ea154cfb1fea646b8ceb8a9 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Sun, 5 Dec 2021 21:50:09 +0530 Subject: [PATCH] pyqt6: Use QStylePainter for separators In pyqt6 QApplication::style() returns QCommonStyle instead of the proxy calibre style I install using C++. QStylePainter gets around that. --- src/calibre/gui2/flow_toolbar.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/calibre/gui2/flow_toolbar.py b/src/calibre/gui2/flow_toolbar.py index 31c3d384c6..bc60f21004 100644 --- a/src/calibre/gui2/flow_toolbar.py +++ b/src/calibre/gui2/flow_toolbar.py @@ -4,8 +4,8 @@ from qt.core import ( - QPainter, QPoint, QRect, QSize, QSizePolicy, QStyle, QStyleOption, Qt, QToolBar, - QToolButton, QWidget, pyqtSignal + QPoint, QRect, QSize, QSizePolicy, QStyle, QStyleOption, QStylePainter, Qt, + QToolBar, QToolButton, QWidget, pyqtSignal ) @@ -26,8 +26,8 @@ class Separator(QWidget): return QSize(width, int(self.devicePixelRatioF() * self.desired_height)) def paintEvent(self, ev): - p = QPainter(self) - self.style().drawPrimitive(QStyle.PrimitiveElement.PE_IndicatorToolBarSeparator, self.style_option(), p, self) + p = QStylePainter(self) + p.drawPrimitive(QStyle.PrimitiveElement.PE_IndicatorToolBarSeparator, self.style_option()) class Button(QToolButton):