Skip to content

PyQt5 5.13.2 breaks macOS window textures/content if dark mode is enabled #267

@crwood

Description

@crwood

PyQt 5.13.2 breaks window textures and content in Gridsync, causing windows to appear blank or transparent. The following error messages were observed (which may point to two separate issues):

2019-11-22 17:20:58.416 Gridsync[24524:2438424] *** WARNING: Textured window <QNSPanel: 0x7faf33598830; contentView=NSObject(0x0)> is getting an implicitly transparent titlebar. This will break when linking against newer SDKs. Use NSWindow's -titlebarAppearsTransparent=YES instead.
2019-11-22 17:20:58.471 Gridsync[24524:2438424] It does not make sense to draw an image when [NSGraphicsContext currentContext] is nil.  This is a programming error. Break on void _NSWarnForDrawingImageWithNoCurrentContext(void) to debug.  This will be logged only once.  This may break in the future.

I could not reproduce the issue on macOS Sierra (10.12) or High Sierra (10.13) but, on Mojave, downgrading/pinning PyQt5 to version 5.13.1 seemingly corrects the issue, resulting in window textures rendering correctly. As a result, Gridsync builds should temporarily(?) downgrade/pin the PyQt5 package until the code paths that cause the above two errors can be identified and fixed.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions