Details
-
Bug
-
Resolution: Done
-
P1: Critical
-
6.3.0
-
None
-
Arch Linux x64, Qt SDK gcc_64, nvidia 470.42, two monitors w/o Xinerama
-
-
731b38e768 (qt/qtbase/dev) 731b38e768 (qt/tqtc-qtbase/dev) 13fa48bdc7 (qt/qtbase/6.3) 13fa48bdc7 (qt/tqtc-qtbase/6.3) 13fa48bdc7 (qt/qtbase/6.3.1)
Description
I have two separate X screens that are not using Xinerama, each screen is on a separate Nvidia GPU, using the proprietary driver:
$ DISPLAY=:0.0 xrandr --listmonitors Monitors: 1 0: +*DP-0 2560/600x1440/340+0+0 DP-0 $ DISPLAY=:0.1 xrandr --listmonitors Monitors: 1 0: +*DVI-D-0 1920/620x1080/340+0+0 DVI-D-0
nvidia-settings shows Screen 0 on the left side and Screen 1 on the right: nvidia-settings
However, Qt 6.3.0 thinks the left display, DP-0, is NOT the primary screen, but 6.2.2 correctly shows it as the primary:
$ ~/Qt6/6.2.2/gcc_64/bin/qtdiag | grep 'Primary:' # 0 "DP-0" Depth: 24 Primary: yes # 1 "DVI-D-0" Depth: 24 Primary: no $ ~/Qt6/6.3.0/gcc_64/bin/qtdiag | grep 'Primary:' # 0 "DVI-D-0" Depth: 24 Primary: yes # 1 "DP-0" Depth: 24 Primary: no
This looks like a regression to me. This causes the application to always start on Screen 1 (the right side screen), even though I am launching it from Screen 0 with the correct DISPLAY value of :0.0 (not :0.1).
Since I am not using Xinerama, windows cannot be freely moved between screens, and I cannot figure out a way to get my application to start or display at all on the correct monitor, which shouldn't be necessary anyways.