Details
-
Bug
-
Resolution: Done
-
P2: Important
-
5.0.0, 5.1.0 , 5.2.0, 5.3.0 Alpha
-
None
-
Linux X11 -xcb-xlib and -no-xcb-xlib
-
24ac9f518d382dc1a780f4eb80e5703637e557d2
Description
On a dual nVidia (proprietary driver) system the requested screen DISPLAY=:0.1 is ignored and it always comes up on DISPLAY=:0.0 which means unless the application is specifically coded to query the available screens and select it, no Qt5 program will display to the second screen.
First problem, if configured with --no-xcb-xlib m_primaryScreen isn't set, so it can't go to a specific screen. Solution, parse and update using the requested screen number :0.1 in DISPLAY.
Testing of Xephyr and two ATI systems have XCB_NONE specified for the primary output. The system using nVidia card has the primary output specified, but the output that matches that number isn't connected so it's ignored. Once a window comes up on the wrong screen, it can't be moved to the requested screen. Solution, the first connected output on the correct screen is selected as the primary output, if a later output is an exact match that one will be used instead. This way the window will be created on the correct screen, even if it isn't on the exact output the server has in mind.