https://bugs.kde.org/show_bug.cgi?id=430376

            Bug ID: 430376
           Summary: QWidget doesn't correctly open in full screen on
                    specific monitor if told to do so on Wayland
           Product: kwin
           Version: 5.19.5
          Platform: Debian testing
                OS: Linux
            Status: REPORTED
          Severity: normal
          Priority: NOR
         Component: wayland-generic
          Assignee: kwin-bugs-n...@kde.org
          Reporter: m.wegh...@posteo.de
  Target Milestone: ---

Created attachment 134071
  --> https://bugs.kde.org/attachment.cgi?id=134071&action=edit
Sample program to reproduce the issue

SUMMARY

In a dual screen setup, trying to open a QWidget in full screen on a specific
monitor does not work on Wayland, which breaks e.g. LibreOffice Impress
presentation mode.

STEPS TO REPRODUCE
0. use KDE Plasma Wayland with a dual screen setup
1. compile and run the attached sample program "main.cpp" (source code also
given below)
2. run the program

OBSERVED RESULT

Two white/empty widgets open in full screen on the first/same screen.

EXPECTED RESULT

One full screen widget on each  of the two screens.

SOFTWARE/OS VERSIONS

Operating System: Debian GNU/Linux
KDE Plasma Version: 5.19.5
KDE Frameworks Version: 5.74.0
Qt Version: 5.15.1
Kernel Version: 5.9.0-4-amd64
OS Type: 64-bit
Processors: 12 × Intel® Core™ i7-9850H CPU @ 2.60GHz
Memory: 62.4 GiB of RAM
Graphics Processor: Mesa Intel® UHD Graphics 630

ADDITIONAL INFORMATION

* It works as expected when run with env variable 'QT_QPA_PLATFORM=xcb' set,
i.e. using XWayland.
* My setup for testing includes a laptop with an internal screen + an attached
external screen, both with a resolution of 1920x1080.
* This was originally reported as a LibreOffice Impress bug at
https://bugs.documentfoundation.org/show_bug.cgi?id=128214
* The LibreOffice scenario works fine when using LibreOffice with the gtk3
integration ("VCL plugin") on GNOME Wayland, but not when using the gtk3
integration on Plasma Wayland either (tested with LibreOffice from Debian
testing, package version 7.0.3-4+b1).
* Sample program:

#include <QApplication>
#include <QScreen>
#include <QWidget>
#include <QWindow>

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);

    for (QScreen* screen : qApp->screens()) {
        QWidget * widget = new QWidget;
        widget->show();
        QRect screenGeometry = screen->geometry();
        widget->windowHandle()->setScreen(screen);
        widget->move(screenGeometry.topLeft());
        widget->showFullScreen();
    }

    return a.exec();
}

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to