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

wayland windows don't rescale when display scale changes

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Open
    • Priority: P2: Important
    • Resolution: Unresolved
    • Affects Version/s: 5.13.0
    • Fix Version/s: None
    • Component/s: QPA: Wayland
    • Labels:
      None
    • Environment:
      sway version 1.2-rc1-48-ga085e649 (Sep 15 2019, branch 'master')
    • Platform/s:
      Linux/Wayland

      Description

      A QT5 wayland window properly rescales when it is moved between displays with different scales, but fails to rescale in these display scale change cases:

      • Display is unplugged, sending containing workspace to a different scale display
      • Display is replugged, restoring containing workspace to a different scale display
      • Display scale is changed by user

      The user change case is easy to reproduce with any sway setup:

      Find your display ID

      swaymsg -t get_outputs
      

      Set scale to 1

      swaymsg output eDP-1 scale 1
      

      Open a QT window

      kdialog --sorry "qt doesn't catch scale changes"

      Change display scale

      swaymsg output eDP-1 scale 3
      

      Downstream report:

      https://github.com/qutebrowser/qutebrowser/issues/5026

      Other factors/non-factors:

      • GTK3 applications rescale in these cases.
      • QT_AUTO_SCREEN_SCALE_FACTOR=1 doesn't change behavior
      • happens with both QT_QPA_PLATFORM=wayland and wayland-egl

        Attachments

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

          Activity

            People

            • Assignee:
              johanhelsing Johan Helsing
              Reporter:
              edrex Eric DRECHSEL
            • Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

              • Created:
                Updated:

                Gerrit Reviews

                There are 2 open Gerrit changes