Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. QML and Qt Quick
  4. "qt.qpa.wayland: Wayland does not support QWindow::requestActivate()"
Forum Updated to NodeBB v4.3 + New Features

"qt.qpa.wayland: Wayland does not support QWindow::requestActivate()"

Scheduled Pinned Locked Moved Unsolved QML and Qt Quick
12 Posts 4 Posters 7.8k Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • JoeCFDJ Offline
    JoeCFDJ Offline
    JoeCFD
    wrote on last edited by JoeCFD
    #1

    My first Yocto project. The message shows up in fullscreen mode only.

    import QtQuick          2.15
    import QtQuick.Controls 2.15
    import QtQuick.Window   2.15
    
    ApplicationWindow
    {
        id: appWindow 
        //width: 640 
        //height: 480     
        visibility: Window.FullScreen
        visible: true
        title: qsTr("Main Window") }
    } 
    

    Qt version 5.15.13. Yocto distribution is the latest. Qt6 is not an option in my project.

    Is this message critical? Checked here out and could not find a solution.

    Googled a bit. The problem seems a Qt bug.

    JonBJ 1 Reply Last reply
    0
    • JoeCFDJ JoeCFD

      My first Yocto project. The message shows up in fullscreen mode only.

      import QtQuick          2.15
      import QtQuick.Controls 2.15
      import QtQuick.Window   2.15
      
      ApplicationWindow
      {
          id: appWindow 
          //width: 640 
          //height: 480     
          visibility: Window.FullScreen
          visible: true
          title: qsTr("Main Window") }
      } 
      

      Qt version 5.15.13. Yocto distribution is the latest. Qt6 is not an option in my project.

      Is this message critical? Checked here out and could not find a solution.

      Googled a bit. The problem seems a Qt bug.

      JonBJ Offline
      JonBJ Offline
      JonB
      wrote on last edited by
      #2

      @JoeCFD
      I know that Wayland (or the compositor or whatever Qt is using) does not allow "activate window". You see that message from Qt wyaland component when you try to do so. I don't know why it shows for you full screen. I'm surprised Wayland lets you go full screen, or even lets you do much that you want.

      I know that under Wayland when you get this message (Qt 5.x) or when it no longer outputs (Qt 6.x). I found the behaviour is so bad that I could not use Qt Creator: on hitting a breakpoint or a faulting signal it can no longer come up front on top of the debugged application window, so you don't even know a breakpoint/signal has been hit. Which I regard as so bad for development that I have had to set QT_QPA_PLATOFROM=xcb for the benefit of all Qt programs.

      If Wayland forbids this sort of thing I think that's terrible.

      JoeCFDJ 1 Reply Last reply
      0
      • JonBJ JonB

        @JoeCFD
        I know that Wayland (or the compositor or whatever Qt is using) does not allow "activate window". You see that message from Qt wyaland component when you try to do so. I don't know why it shows for you full screen. I'm surprised Wayland lets you go full screen, or even lets you do much that you want.

        I know that under Wayland when you get this message (Qt 5.x) or when it no longer outputs (Qt 6.x). I found the behaviour is so bad that I could not use Qt Creator: on hitting a breakpoint or a faulting signal it can no longer come up front on top of the debugged application window, so you don't even know a breakpoint/signal has been hit. Which I regard as so bad for development that I have had to set QT_QPA_PLATOFROM=xcb for the benefit of all Qt programs.

        If Wayland forbids this sort of thing I think that's terrible.

        JoeCFDJ Offline
        JoeCFDJ Offline
        JoeCFD
        wrote on last edited by
        #3

        @JonB I do need full screen. I would like to know if the message is critical. How about reduce the size of main window in debug mode?

        1 Reply Last reply
        0
        • JonBJ Offline
          JonBJ Offline
          JonB
          wrote on last edited by
          #4

          I don't think it's "critical". If things work you don't have to worry anyway.
          Not sure about your last sentence, but if that's for my debugger use that's not what I'm looking for. Only reversion to Xorg behaviour solves. Maybe in the future the wayland limitations will be addressed.

          JoeCFDJ 1 Reply Last reply
          0
          • JonBJ JonB

            I don't think it's "critical". If things work you don't have to worry anyway.
            Not sure about your last sentence, but if that's for my debugger use that's not what I'm looking for. Only reversion to Xorg behaviour solves. Maybe in the future the wayland limitations will be addressed.

            JoeCFDJ Offline
            JoeCFDJ Offline
            JoeCFD
            wrote on last edited by
            #5

            @JonB Hopefully not. But some people did report some crashes. But they did not tell their Qt version and OS. I am unable to debug this app with QtCreator and have to build it in Yocto sdk and copy it into the device for testing. This is not a big app and I can handle it without debugger.

            If I understand your issue correctly, Qt Creator does not show the source code when the execution hits a break point because your app is always on top. Is it possible to reduce window size in order to see source code and break points? Your app may behave differently on Wayland and X11.

            JonBJ 1 Reply Last reply
            0
            • JoeCFDJ JoeCFD

              @JonB Hopefully not. But some people did report some crashes. But they did not tell their Qt version and OS. I am unable to debug this app with QtCreator and have to build it in Yocto sdk and copy it into the device for testing. This is not a big app and I can handle it without debugger.

              If I understand your issue correctly, Qt Creator does not show the source code when the execution hits a break point because your app is always on top. Is it possible to reduce window size in order to see source code and break points? Your app may behave differently on Wayland and X11.

              JonBJ Offline
              JonBJ Offline
              JonB
              wrote on last edited by JonB
              #6

              @JoeCFD
              There is not enough screen room to show debugger + app side by side. If you have two monitors may not bother you, I don't. When hitting a breakpoint or signal debuggers have come up-front over the debuggee since year dot. I regard it as unacceptable not to. Creator used to do it fine. It no longer works under wayland. Unacceptable for me. So I have reverted to Xorg and will give up developing if in the future I have to go wayland and they haven't addressed it.

              JoeCFDJ 1 Reply Last reply
              0
              • JonBJ JonB

                @JoeCFD
                There is not enough screen room to show debugger + app side by side. If you have two monitors may not bother you, I don't. When hitting a breakpoint or signal debuggers have come up-front over the debuggee since year dot. I regard it as unacceptable not to. Creator used to do it fine. It no longer works under wayland. Unacceptable for me. So I have reverted to Xorg and will give up developing if in the future I have to go wayland and they haven't addressed it.

                JoeCFDJ Offline
                JoeCFDJ Offline
                JoeCFD
                wrote on last edited by JoeCFD
                #7

                @JonB I see. It is definitely unacceptable. Wayland has been around for quite some time.

                JonBJ 1 Reply Last reply
                0
                • JoeCFDJ JoeCFD

                  @JonB I see. It is definitely unacceptable. Wayland has been around for quite some time.

                  JonBJ Offline
                  JonBJ Offline
                  JonB
                  wrote on last edited by
                  #8

                  @JoeCFD
                  If it doesn't permit a debugger to up-front itself over a debuggee then to me it's "worthless". I'm not sure, but my limited understanding says that Qt provides a "default compositor" for wayland, and the compositor can implement or not implement things. I believe I am hoping for a "compositor update" from Qt....

                  1 Reply Last reply
                  0
                  • Axel SpoerlA Offline
                    Axel SpoerlA Offline
                    Axel Spoerl
                    Moderators
                    wrote on last edited by
                    #9

                    Two different problems here:

                    1. Window activation / Qt version
                      Wayland support has been improved in Qt 6 and won’t be fixed in Qt 5. If you want to use an outdated version of Qt, you have to accept its shortcomings. Don’t complain.

                    2. Creator on top of debuggee
                      That’s a general issue of all debuggers. You can remote debug though, that’s what I usually do.

                    Software Engineer
                    The Qt Company, Oslo

                    JonBJ 1 Reply Last reply
                    0
                    • Axel SpoerlA Axel Spoerl

                      Two different problems here:

                      1. Window activation / Qt version
                        Wayland support has been improved in Qt 6 and won’t be fixed in Qt 5. If you want to use an outdated version of Qt, you have to accept its shortcomings. Don’t complain.

                      2. Creator on top of debuggee
                        That’s a general issue of all debuggers. You can remote debug though, that’s what I usually do.

                      JonBJ Offline
                      JonBJ Offline
                      JonB
                      wrote on last edited by
                      #10

                      @Axel-Spoerl said in "qt.qpa.wayland: Wayland does not support QWindow::requestActivate()":

                      Creator on top of debuggee
                      That’s a general issue of all debuggers. You can remote debug though, that’s what I usually do.

                      Hi Axel. Is that addressed to my issue? What is "a general issue of all debuggers"? I have used debuggers since the last millennium and they all allow the up-fronting of debugger on top of debuggee when a breakpoint/signal is hit. Creator allows it, and has a setting related to it. And it has worked, and continues to work, for Creator, so long as you use the xcb QPA. The issue is that Wayland, or perhaps the compositor Qt uses, does not allow it.

                      1 Reply Last reply
                      1
                      • S Offline
                        S Offline
                        Scotsgeek
                        wrote on last edited by Scotsgeek
                        #11

                        Qt5 on Debian Testing (Trixie) getting the same message:
                        "qt.qpa.wayland: Wayland does not support QWindow::requestActivate()"

                        On the page:
                        https://wiki.qt.io/Qt_version_history
                        "Complete Wayland support, including the client-side decorations.",
                        Apparently not. Why would you not fully support Wayland even in Qt5.

                        I'm not a Qt developer. Just trying to do some debugging of this message for another developer. He cannot port to Qt6 for now. How many other developers are in the same boat?

                        JonBJ 1 Reply Last reply
                        0
                        • S Scotsgeek

                          Qt5 on Debian Testing (Trixie) getting the same message:
                          "qt.qpa.wayland: Wayland does not support QWindow::requestActivate()"

                          On the page:
                          https://wiki.qt.io/Qt_version_history
                          "Complete Wayland support, including the client-side decorations.",
                          Apparently not. Why would you not fully support Wayland even in Qt5.

                          I'm not a Qt developer. Just trying to do some debugging of this message for another developer. He cannot port to Qt6 for now. How many other developers are in the same boat?

                          JonBJ Offline
                          JonBJ Offline
                          JonB
                          wrote on last edited by JonB
                          #12

                          @Scotsgeek
                          Yes, you get that with Qt5.x, Ubuntu 22, Wayland. Nothing you can do about it. It's just a warning, that should not stop you porting 5 to 6. As it happens with Qt6.x, Ubuntu 24, Wayland that message does not appear (though I don't think that means requestActivate() does anything). Still plenty of Wayland issues outside Qt, for my part I have made Ubuntu desktop revert to Xorg.

                          1 Reply Last reply
                          0

                          • Login

                          • Login or register to search.
                          • First post
                            Last post
                          0
                          • Categories
                          • Recent
                          • Tags
                          • Popular
                          • Users
                          • Groups
                          • Search
                          • Get Qt Extensions
                          • Unsolved