Bug 1727479 - Qt dialogs showing blank after closing and re-opening
Summary: Qt dialogs showing blank after closing and re-opening
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: qt5-qtbase
Version: 30
Hardware: x86_64
OS: Linux
unspecified
medium
Target Milestone: ---
Assignee: Than Ngo
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2019-07-06 20:25 UTC by Isaac Lightburn
Modified: 2019-07-27 01:39 UTC (History)
6 users (show)

Fixed In Version: qt5-qtbase-5.12.4-3.fc30 qt5-qtbase-5.12.4-4.fc30
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2019-07-27 01:39:38 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)
Screenshot of bugged dialog in Qt Creator (194.26 KB, image/png)
2019-07-06 20:25 UTC, Isaac Lightburn
no flags Details

Description Isaac Lightburn 2019-07-06 20:25:45 UTC
Created attachment 1587965 [details]
Screenshot of bugged dialog in Qt Creator

Description of problem:
Dialogs in Qt applications are coming up blank after opening, dismissing, and re-opening.  Originally thought this was a problem in my software (OpenKJ), but while trying to fix it, noticed that it is also happening in Qt Creator, which I'll give steps to reproduce it in since that's an official package and mine's just in copr.


Version-Release number of selected component (if applicable):
5.12.4-1

How reproducible:
Every time on affected dialogs

Steps to Reproduce:
1. Open a new or existing project in Qt Creator
2. Create a derived class of any Qt class (QWidget for example)
3. Right click on the class name in the header file and click "Insert virtual functions of base classes".  Dialog will appear normally.
4. Close dialog that appears
5 Repeat step 3, dialog will come up blank

Actual results:
Blank dialog

Expected results:
Normal dialog

Additional info:
Was not a problem until I upgraded my machines to Fedora 30.  Verified problem exists on 2 of my machines, both running fully up to date Fedora 30.  Not sure if my Qt packages were fully up to date on Fedora 29 before I upgraded, so unsure whether the problem exists there.

Attaching screenshot from Qt Creator showing bugged dialog.

Comment 1 Isaac Lightburn 2019-07-08 23:13:45 UTC
Noticed that messages like the following are showing up in the journal when the affected dialogs are shown.  Not sure if it's related to the problem or not.

Jul 08 18:08:02 xps org.gnome.Shell.desktop[2176]: Window manager warning: Invalid WM_TRANSIENT_FOR window 0x2800008 specified for 0x280003a.
Jul 08 18:08:06 xps org.gnome.Shell.desktop[2176]: Window manager warning: Invalid WM_TRANSIENT_FOR window 0x2800008 specified for 0x2800043.
Jul 08 18:08:40 xps org.gnome.Shell.desktop[2176]: Window manager warning: Invalid WM_TRANSIENT_FOR window 0x1a00014 specified for 0x1a0e976.

Comment 2 Alexander Borro 2019-07-15 02:49:38 UTC
Hello.

It started happening when Qt got updated to the 5.12.4 build couple of weeks ago, prior to that it was okay, I checked it bug on an older Fedora 30 which was still on 5.12.1 or 2, so I could conveniently test it out before updating. When I updated it to the latest it broke oin the fashion you describe. 

IMO It is quite a serious bug. NOte that All QT apps are affected by it that use persistent dialogs, in any window manager GNOME, KDE etc.

Addiitonal observations:

- Dialogs that actually get destroyed and created new upon reopening behave just fine

- Only Dialogs that use the show/hide method and stay in memory you'll get the black window.  If you resize the window after reopening the window repaints 
  again, a temporary workaround. 

Glad someone spotted it. I was going to file a bug report  but found you already did.

Best Regards ....
Alexander Borro

Comment 3 Alexander Borro 2019-07-15 02:53:09 UTC
Hello.

It started happening when Qt got updated to the 5.12.4 build couple of weeks ago, prior to that it was okay, I checked for the bug on an older Fedora 30 which was still on 5.12.1 or 2, so I could conveniently test it out before updating. When I updated it to the latest it broke in the fashion you describe. 

IMO It is quite a serious bug. Note that All QT apps are affected by it that use persistent dialogs, in any window manager GNOME, KDE etc.

Additional observations:

- Dialogs that actually get destroyed and created new upon reopening behave just fine

- Only Dialogs that use the show/hide method and stay in memory you'll get the black window problem.  If you resize the window after reopening the window repaints 
  again, a temporary workaround. 

Glad someone spotted it. I was going to file a bug report  but found you already did.

Best Regards ....
Alexander Borro

Comment 4 Jan Grulich 2019-07-15 07:50:16 UTC
We probably want to backport this commit https://github.com/qt/qtbase/commit/deac052a40c93633041da058d5c73c9e91aa76c7.

I'll verify whether it helps or not.

Comment 5 Fedora Update System 2019-07-15 11:42:13 UTC
FEDORA-2019-6a476fd9b1 has been submitted as an update to Fedora 30. https://bodhi.fedoraproject.org/updates/FEDORA-2019-6a476fd9b1

Comment 6 Jan Grulich 2019-07-15 11:43:56 UTC
I haven't verified whether it fixes your issue, I would have to logout of my Plasma session and log into Gnome session. Can you check whether the new build makes it work for you?

Comment 7 Isaac Lightburn 2019-07-15 17:00:37 UTC
Doesn't appear to fix it.

[lightburnisaac@xps qt5test]$ rpm -qa qt5-qtbase
qt5-qtbase-5.12.4-3.fc30.x86_64
[lightburnisaac@xps qt5test]$ rpm -qa qt5-qtwayland
qt5-qtwayland-5.12.4-4.fc30.x86_64
[lightburnisaac@xps qt5test]$

Still getting the same behaviour with the above updated packages installed (along with the necessary sub-packages).

Comment 8 Fedora Update System 2019-07-16 00:54:16 UTC
qt5-qtbase-5.12.4-3.fc30, qt5-qtwayland-5.12.4-4.fc30 has been pushed to the Fedora 30 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2019-6a476fd9b1

Comment 9 Fedora Update System 2019-07-18 17:56:17 UTC
qt5-qtbase-5.12.4-3.fc30, qt5-qtwayland-5.12.4-4.fc30 has been pushed to the Fedora 30 stable repository. If problems still persist, please make note of it in this bug report.

Comment 10 Isaac Lightburn 2019-07-18 19:01:10 UTC
Updated packages didn't fix the bug.  Still experiencing the same behaviour as before.

Comment 11 Isaac Lightburn 2019-07-22 14:47:15 UTC
I received a bug report from someone using my software on Ubuntu that sounded almost identical to the problem I'm seeing on fedora.  I haven't loaded up a VM with Ubuntu to validate, but this may be an issue upstream and not specific to the fedora packaged version of Qt so I thought I'd mention it.

Comment 12 Rex Dieter 2019-07-22 17:13:14 UTC
Most likely not fedora specific, but bugs/regressions in at 5.12.4 release

Comment 13 Fedora Update System 2019-07-23 07:11:09 UTC
FEDORA-2019-dd122cc792 has been submitted as an update to Fedora 30. https://bodhi.fedoraproject.org/updates/FEDORA-2019-dd122cc792

Comment 14 Jan Grulich 2019-07-23 07:12:52 UTC
Ups, I seem to pushed older version of qt5-qtbase to updates then I intended. Can you try with qt5-qtbase-0:5.12.4-4.fc30.x86_64?

Comment 15 Fedora Update System 2019-07-24 01:41:57 UTC
qt5-qtbase-5.12.4-4.fc30 has been pushed to the Fedora 30 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2019-dd122cc792

Comment 16 Fedora Update System 2019-07-27 01:39:38 UTC
qt5-qtbase-5.12.4-4.fc30 has been pushed to the Fedora 30 stable repository. If problems still persist, please make note of it in this bug report.


Note You need to log in before you can comment on or make changes to this bug.