Details
-
Bug
-
Resolution: Done
-
P1: Critical
-
5.10.0, 5.11.0 RC 1
-
None
-
Windows 10. Qt 5.10.0 MSVC 2017 64 bit.
qtdiag output see in attachments
-
67c66c4ea4fbc11ee5547095117ef8930b3ab950
Description
You must have the system with NVidia Optimus Technology (details below).
Steps to reproduce the bug.
- Unarchive qtbug68329_guibug.zip, you will see main.cpp and bug.pro files in it
- Use "x64 Native Tools Command Prompt for VS 2017"
- Run these commands in command prompt:
qmake
nmake
- Go to "release" subfolder
- Place Qt5Core, Qt5Gui, Qt5Widgets dlls near *.exe file
- Run exe file using context menu in Windows Explorer: Run with graphics processor -> High-performance NVidia processor
- You will see small window with black area and button "Next Page".
- Click on "Next Page" button. You will see Line Edit widget with "Experiment" word.
- Try to enter some text to it. You will not see any changes in UI.
- Try to resize window. You will see distorted window.
This bug is reproduced only on specific systems which uses NVidia Optimus Technology. There are plenty
PC laptops with two graphics cards: Intel Integrated and NVidia. These laptops allows the user to choose
which graphics card will be used in the application.
Example of such systems:
Acer Aspire V3-772G
You can see list of NVidia GPUs which used in such systems here:
https://www.geforce.com/hardware/technology/optimus/supported-gpus?field_gpu_type_value=All
We believe that this bug will be reproduce on all systems with NVidia Optimus.
You must have latest Intel and NVidia graphics drivers to be installed.
To check whether your system have NVidia Optimus
- Go to NVidia Control Panel (right-click on Desktop, choose appropriate menu item)
- Check Desktop->Add "Run with graphics processor" to Context Menu
- Select appropriate exe file in Windows Explorer, right-click and you can choose Run with graphics processor -> High-performance NVidia processor
Details of the application:
Application creates one QMainWindow and adds one Central Widget to it.
Central Widget has vertical layout and two subwidgets: QStackedWidget and QPushButton with text "Next Page".
QStackedWidget has two pages. One page is QOpenGLWidget, other page is QLineEdit with text "Experiment".
"Next Page" button has lambda connected to "clicked" signal which cycles pages in the stacked widget.
Observations:
- If you use any other neutral widget instead of QOpenGLWidget
then bug will not reproduce and you will see correct GUI behavior on second page.
- If you use QOpenGLWindow instead of QOpenGLWidget
then bug will not reproduce and you will see correct GUI behavior on second page.
- If you run exe with Integrated graphics instead of High-performance
then bug will not reproduce and you will see correct GUI behavior on second page.
We tried other combinations, but for now only combination of QStackedWidget and QOpenGLWidget produces this bug.
We consider this bug is severe because PC laptops with NVidia Optimus have very huge market.
Attachments
Issue Links
- is duplicated by
-
QTBUG-67955 Windows/NVidia: GUI does not repaint when application is mix of QQuickWidget/QWidget
- Closed
-
QTBUG-68883 GUI does not update when QOpenGLWidget is hidden w/ NVidia GTX/Quadro graphic cards.
- Closed
- relates to
-
QTBUG-67955 Windows/NVidia: GUI does not repaint when application is mix of QQuickWidget/QWidget
- Closed