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

QtQuick.Controls ComboBox popup shows at incorrect position when its containing window is on second monitor of a multi-monitor setup

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • P3: Somewhat important
    • 5.6.0
    • 5.5.0, 5.5.1
    • Quick: Controls 1
    • Windows 7 x64 SP1
      Qt 5.5.0 (msvc2013, official package), also reproduced on current 5.5.1 branch from sept 18th.
      Desktop OpenGL (on latest official NVIDIA driver)
      Two 1920x1080 monitors attached to same graphics card
    • 10d311d9d244c3a6855dd654dcf9af4bbc7044b2 (qtbase/5.6, 16.11.2015, 5.6)

    Description

      When a QtQuick.Control ComboBox's popup menu is made visible while its containing window was made visible on the second visitor of a multi-monitor setup, the popup menu is shown at the incorrect position (at the rightmost edge of the 1st monitor).

      The attached screenshot shows the issue.

      I've attached a minimal example showing the issue. It is simply a qml file containing

      import QtQuick 2.5
      import QtQuick.Window 2.2
      import QtQuick.Controls 1.4
      
      Window {
      	visible: true
      
      	ComboBox {
      		model: ["One", "Two", "Three"]
      	}
      }
      

      Just make sure that the Window appears on the second visitor when initially shown, then click on the combobox to reproduce the issue.

      It appears that any of the following 'fixes' the issue:

      • Moving the Window after it was initially shown (but before opening the combobox)
      • Opening the combobox a second time

      Also note the warning:

      QSGThreadedRenderLoop: expose event received for window QQuickWindowQmlImpl(0x45804835b0) with invalid geometry: QRect(4000,200 264x160) on QScreen(0x45f8d75e30, name=\\.\DISPLAY1)
      

      Attachments

        1. comboboxtest.png
          comboboxtest.png
          220 kB
        2. gallery.zip
          118 kB
        3. qtbug48379_log.txt
          23 kB
        4. qtbug48379_qtbase_diag.diff
          3 kB
        5. qtbug48379_qtquickcontrols_diag.diff
          0.8 kB
        6. qtbug48379.zip
          1 kB

        Issue Links

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

          Activity

            People

              kleint Friedemann Kleint
              acossette Alexandre Cossette-Pacheco
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Gerrit Reviews

                  There are no open Gerrit changes