Let me say up front that I am a big fan of the Qt framework. I have been working with it continuously since the late 90s. Both of my commercial products (PerfectTablePlan and Hyper Plan) are written on top of Qt. But Qt is quite broken on macOS right now. In fact I struggled to find a version of Qt 5 that supported recent versions of macOS and didn’t have a showstopper bug. I must have wasted a couple of weeks grappling with these issues. I am putting my notes here in the hope that they help someone else.
Here are the 4 bugs in macOS version of Qt that have causing me the most headaches:
|QFontDialog broken (link)||ok||ok||ok||ss||ss|
|QStaticText::size() returns wrong value for rich text
with line breaks
|widgets such as QTableWidget do not repaint correctly (link)||ok||cwa||cwa||cwa||cwa|
|default QComboBox size is incorrect (link)
ok = bug not present.
cwa = bug present, but can workaround.
ss= bug present, making release unusable for me (showstopper).
Consequently Qt 5.11.0 is the only usable release on macOS for me and I have to kludge my way around two quite nasty bugs. While the QStaticText issue is fairly obscure (but important for me), how in the hell did QFontDialog get completely broken without anyone noticing? And then not get fixed for two whole releases?! I also know other developers who are having to stick with earlier versions of Qt due to the bugginess of the recent versions of Qt on macOS. This isn’t good enough.
Thankfully the recent versions of Qt are much more solid on Windows.
** Feb-2019 Update: Qt 5.12.0 seems to be a big improvement. **
** Mar-2019 Update: I had to revert PerfectTablePlan to Qt 5.11.0 because versions built with 5.12.0 and 5.12.1 kept crashing deep in Qt. **
** Sep-2019 Update: I had to revert PerfectTablePlan to Qt 5.11.0 again because versions built with 5.12.4 kept crashing deep in Qt. **
** Oct-2019 Update: Qt 5.12.5 fixes all the bugs above and doesn’t seem to introduce any major new bugs that I care about. **