-
Notifications
You must be signed in to change notification settings - Fork 25
Description
I recently stumbled upon a pretty serious regression in Qt 5.15.0 in which restyling a QPushButton (using setStyleSheet()) on macOS will cause that button to fail to emit clicked (and pressed and released) signals, effectively rendering that button useless. Here's a quick example/snippet to demonstrate:
from PyQt5.QtWidgets import QApplication, QPushButton
app = QApplication([])
btn = QPushButton("Click me!")
btn.setStyleSheet("background: green")
btn.clicked.connect(lambda: print("Button was clicked!"))
btn.show()
app.exec_()
Under PyQt5 5.14.2, the clicked signal is properly emitted (and the print function is called, as expected) but will fail silently after updating to 5.15.0.
The issue has been reported upstream (and assigned a "Critical" priority):
https://bugreports.qt.io/browse/QTBUG-84852
https://bugreports.qt.io/browse/QTBUG-84879
Until the bug has been squashed -- and a new version of (Py)Qt has been released with a fix in place -- the Gridsync project should pin/downgrade PyQt5 to version 5.14.2 -- at least on macOS.