From 00b2fee461ae4a51d1c8cc0c5a6b8847e847f742 Mon Sep 17 00:00:00 2001 From: SomberNight Date: Sun, 5 May 2019 02:14:07 +0200 Subject: [PATCH] qt dark style: fix padding of PayToEdit based on Electron-Cash/Electron-Cash@7e69f0e6eaad2679850ad297dcd7fa31a7262a4f see ColinDuquesnoy/QDarkStyleSheet#159 --- electrum/gui/qt/__init__.py | 3 +++ electrum/gui/qt/stylesheet_patcher.py | 18 ++++++++++++++++++ 2 files changed, 21 insertions(+) create mode 100644 electrum/gui/qt/stylesheet_patcher.py diff --git a/electrum/gui/qt/__init__.py b/electrum/gui/qt/__init__.py index 955da5c8c..743a5bc26 100644 --- a/electrum/gui/qt/__init__.py +++ b/electrum/gui/qt/__init__.py @@ -56,6 +56,7 @@ from .installwizard import InstallWizard, WalletAlreadyOpenInMemory from .util import get_default_language, read_QIcon, ColorScheme from .main_window import ElectrumWindow from .network_dialog import NetworkDialog +from .stylesheet_patcher import patch_qt_stylesheet class OpenFileEventFilter(QObject): @@ -132,6 +133,8 @@ class ElectrumGui(Logger): except BaseException as e: use_dark_theme = False self.logger.warning(f'Error setting dark theme: {repr(e)}') + # Apply any necessary stylesheet patches + patch_qt_stylesheet(use_dark_theme=use_dark_theme) # Even if we ourselves don't set the dark theme, # the OS/window manager/etc might set *a dark theme*. # Hence, try to choose colors accordingly: diff --git a/electrum/gui/qt/stylesheet_patcher.py b/electrum/gui/qt/stylesheet_patcher.py new file mode 100644 index 000000000..4699c4cd4 --- /dev/null +++ b/electrum/gui/qt/stylesheet_patcher.py @@ -0,0 +1,18 @@ +"""This is used to patch the QApplication style sheet. +It reads the current stylesheet, appends our modifications and sets the new stylesheet. +""" + +from PyQt5 import QtWidgets + + +def patch_qt_stylesheet(use_dark_theme: bool) -> None: + if not use_dark_theme: + return + + app = QtWidgets.QApplication.instance() + + style_sheet = app.styleSheet() + style_sheet = style_sheet + ''' + QAbstractScrollArea { padding: 0px; } + ''' + app.setStyleSheet(style_sheet)