Qt6 platform rendering issues on Ubuntu 22.04
-
@JoeCFD Thanks.
I logged in again with XOrg, but unfortunately the problem persists.
@Robert-Hairgrove did you do:
make distclean
qmake
make
run -
@JoeCFD BTW, what is "LXQt"?
-
OK, this must be a bug introduced in 6.5.
I installed Qt versions 6.2.4, 6.3.2, 6.4.3 in addition to 6.5.3 and 6.6.0. Up to 6.4.3, the controls are displayed correctly (enabled=black text, disabled=gray).
Beginning with 6.5.3 and also 6.6.0, the problem arises (everything displays as if enabled, regardless of state).
Looks like I need to file a bug report, but I don't have time today to do it today.
-
OK, this must be a bug introduced in 6.5.
I installed Qt versions 6.2.4, 6.3.2, 6.4.3 in addition to 6.5.3 and 6.6.0. Up to 6.4.3, the controls are displayed correctly (enabled=black text, disabled=gray).
Beginning with 6.5.3 and also 6.6.0, the problem arises (everything displays as if enabled, regardless of state).
Looks like I need to file a bug report, but I don't have time today to do it today.
@Robert-Hairgrove
As before, this is only a suggestion. I wonder whether Qt 6.5+ has introduced some change in default so that it is using Wayland over Xorg? And that might be the cause of the changed look? I came across e.g. Qt 6.5 Adding Wayland Native Interfaceand now set to come with Qt 6.5 is support for a Wayland native interface for application developers wanting to interact directly with Wayland object handles.
Did Qt 6.5 become more preferentially Wayland-y than earlier?
-
@Robert-Hairgrove
As before, this is only a suggestion. I wonder whether Qt 6.5+ has introduced some change in default so that it is using Wayland over Xorg? And that might be the cause of the changed look? I came across e.g. Qt 6.5 Adding Wayland Native Interfaceand now set to come with Qt 6.5 is support for a Wayland native interface for application developers wanting to interact directly with Wayland object handles.
Did Qt 6.5 become more preferentially Wayland-y than earlier?
@JonB I get the same result regardless of whether I log in using Xorg or Wayland, as far as the enabled/disabled bug is concerned.
If I log in with Xorg, Qt seems to load
xcb
, otherwisewayland
is used. I can also specify either platform on the command line; this will change the way some things are displayed, e.g. window border or not, but in every case the bug described above still persists.BTW I also made sure that the
Qt Wayland Compositor
module was included in all of the installations of Qt. I thought not having that installed might have led to the error, but apparently it makes no difference. -
@JonB I get the same result regardless of whether I log in using Xorg or Wayland, as far as the enabled/disabled bug is concerned.
If I log in with Xorg, Qt seems to load
xcb
, otherwisewayland
is used. I can also specify either platform on the command line; this will change the way some things are displayed, e.g. window border or not, but in every case the bug described above still persists.BTW I also made sure that the
Qt Wayland Compositor
module was included in all of the installations of Qt. I thought not having that installed might have led to the error, but apparently it makes no difference.@Robert-Hairgrove said in Qt6 platform rendering issues on Ubuntu 22.04:
this will change the way some things are displayed, e.g. window border or not, but in every case the bug described above still persists.
Ah. So it does make a difference as I suspected, but it does not resolve/alter your particular issue.
-
OK, this must be a bug introduced in 6.5.
I installed Qt versions 6.2.4, 6.3.2, 6.4.3 in addition to 6.5.3 and 6.6.0. Up to 6.4.3, the controls are displayed correctly (enabled=black text, disabled=gray).
Beginning with 6.5.3 and also 6.6.0, the problem arises (everything displays as if enabled, regardless of state).
Looks like I need to file a bug report, but I don't have time today to do it today.
@Robert-Hairgrove said in Qt6 platform rendering issues on Ubuntu 22.04:
OK, this must be a bug introduced in 6.5.
I installed Qt versions 6.2.4, 6.3.2, 6.4.3 in addition to 6.5.3 and 6.6.0. Up to 6.4.3, the controls are displayed correctly (enabled=black text, disabled=gray).
Beginning with 6.5.3 and also 6.6.0, the problem arises (everything displays as if enabled, regardless of state).
Looks like I need to file a bug report, but I don't have time today to do it today.
Looks like you may have found a regression, you should check the bug report system.
-
OK, this must be a bug introduced in 6.5.
I installed Qt versions 6.2.4, 6.3.2, 6.4.3 in addition to 6.5.3 and 6.6.0. Up to 6.4.3, the controls are displayed correctly (enabled=black text, disabled=gray).
Beginning with 6.5.3 and also 6.6.0, the problem arises (everything displays as if enabled, regardless of state).
Looks like I need to file a bug report, but I don't have time today to do it today.
@Robert-Hairgrove I just installed 6.6.0 in Lubuntu 22.04 and my test case runs fine. QLabel is greyed out when it is disabled.
-
@Robert-Hairgrove I just installed 6.6.0 in Lubuntu 22.04 and my test case runs fine. QLabel is greyed out when it is disabled.
@JoeCFD I'm glad ... hiowever, I think Lubuntu is not the same as regular Ubuntu?
-
Bug report filed today:
https://bugreports.qt.io/browse/QTBUG-118468 -
The default application palette seems to be broken in places with Qt 6.5 and higher.
As a workaround, I serialized the working palette into a file using the
testlabel
app, compiling it with Qt 6.4.3. Then I added the resulting binary file to my application resources. When compiling it with a higher Qt version, I merely overwrite the default palette into the app instance.Seems to work OK; now at least I can do some more serious testing.