[Interest] Qt Quick, WindowState and ScreenOrientation

Benjamin TERRIER b.terrier at gmail.com
Tue Feb 14 17:23:44 CET 2017


2017-02-14 16:39 GMT+01:00 Benjamin TERRIER <b.terrier at gmail.com>:
> Hi,
>
> I've got some issue with orientation of full screen windows in Qt Quick.
>
> My environment:
> - Windows 10 64 bits
> - Qt 5.7 and 5.8
> - 2 screens:
>   1. 1680x1050 (landscape)
>   2. 480x800 (portrait)
>
> What I want to do:
> Show a Qt app fullscreen on the screen number 2.
>
> What I did:
> Starting with Qt Quick Controls 2 application template from Qt
> Creator, I simply added "visibility: ApplicationWindow.FullScreen".
> The application is shown full screen on screen 2, but it is in landscape.
>
>
> I've run some tests:
> - Windowed Qt Quick application is correctly displayed (ie portrait).
> - Full screen Qt Widgets application are correctly displayed.
> - Window.contentOrientation does not seem to have any effect.
> - Looked at "Screen.orientation", "Screen.primaryOrientation" and
> "Screen.width".
>   For windowed Qt Quick app I've got Qt::PortraitOrientation,
> Qt::PortraitOrientation and 800.
>   However, for fullscreen Qt Quick app I've got
> Qt::LandscapeOrientation, Qt::LandscapeOrientation and 1050 (!!! It
> looks like the window does not know the current screen).
>
> Does anyone know if this is a known bug or if there is a solution ?
>
> Thanks
>
> Benjamin Terrier

Quick update.

I've tried to force the screen using QWindow::setScreen from C++.
It does change the values of "Screen.orientation",
"Screen.primaryOrientation" and
"Screen.width" to their correct values(1, 1 and 800) but does not
change the orientation.

I've noticed that the mouse areas (i.e the TabBar) are placed where
they would be if the display was correct, but interacting with it
leads to visual artifacts.

Then, I've force angle (Qt_OPENGL=angle) and it works but I've still
wrong values for "Screen.orientation", "Screen.primaryOrientation" and
"Screen.width".

Finally I've tested on another computer. The issue is not present.
I would conclude that this is a bug linked to Intel HD Graphics 4600
chips, see QTBUG-49866 (https://bugreports.qt.io/browse/QTBUG-49866).



More information about the Interest mailing list