Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-68329

[REG 5.10.0->5.11.0rc] Windows: GUI renders incorrectly when using PC system with NVidia Optimus Technology.

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • P1: Critical
    • 5.12
    • 5.10.0, 5.11.0 RC 1
    • GUI: OpenGL, QPA: Windows
    • 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

        1. attach_qtdiagAcerAspireV3772G.txt
          7 kB
        2. qtbug68329_guibug.zip
          1 kB
        3. screenshot-0.jpg
          screenshot-0.jpg
          83 kB
        4. screenshot-1.jpg
          screenshot-1.jpg
          30 kB
        5. screenshot-2.jpg
          screenshot-2.jpg
          31 kB
        6. screenshot-3.jpg
          screenshot-3.jpg
          32 kB
        7. screenshot-4.jpg
          screenshot-4.jpg
          57 kB
        8. screenshot-5.jpg
          screenshot-5.jpg
          156 kB

        Issue Links

          For Gerrit Dashboard: QTBUG-68329
          # Subject Branch Project Status CR V

          Activity

            People

              lagocs Laszlo Agocs
              jenny Jenny Hertz
              Votes:
              1 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Gerrit Reviews

                  There are no open Gerrit changes