/pyuno/demo/

Weghorn <m.weghorn@posteo.de> qt: Drop now obsolete workaround for Qt < 5.12 2023-10-18T09:00:12+00:00 Michael Weghorn m.weghorn@posteo.de 2023-10-18T06:23:35+00:00 35ea75e9c2be75a70298a3f4e7d703c1d0f9497e This workaround was only applied for Qt < 5.12 and is no longer needed now that support for Qt < 5.15 has been dropped in commit afb4c96d271958ced3175dfc2cf8bb9e8b0a9d3b Author: Michael Weghorn <m.weghorn@posteo.de> Date: Thu Aug 3 21:30:22 2023 +0200 qt: Drop code for Qt < 5.15 Commit originally adding the workaround: commit fe2baf9e84e0ca9aeaa683e37076f57fa3f38dca Author: Jan-Marek Glogowski <jan-marek.glogowski@extern.cib.de> Date: Tue Dec 3 08:32:58 2019 +0100 Qt5 fix missing XCB_ICCCM_WM_HINT_WINDOW_GROUP This is the application level equivalent of the Qt5 fix for bug QTBUG-46626 / commit 0de4b32 ("xcb: fix issue with dialogs hidden by other windows"), which was broken since Qt 5.4 and is just fixed since Qt 5.12. It is needed for some window managers, which don't know about the WM_CLIENT_LEADER property. Both settings are the same, but just the latter is set by older Qt5 releases. This probably isn't a real problem, as GNOME or XFCE would use the gtk VCL plugin, but since I already wrote the code when debugging tdf#129071, there is also no reason to drop it (except: more code, more bugs...). This fix is optional and needs development headers for xcb-icccm, which can actually be compiled into Qt5. If missing configure will just print a warning, since it's a runtime requirement and we explicitly drop the linked Qt version symbol, so the potential build Qt version won't matter. Change-Id: Ifc5a8f8a40ee13779a911efb53e8b8b868614d0b Reviewed-on: https://gerrit.libreoffice.org/84299 Tested-by: Jenkins Reviewed-by: Michael Weghorn <m.weghorn@posteo.de> Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de> Change-Id: I56b708449cf686f787f55256c76673be604d31e4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158102 Tested-by: Jenkins Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
This workaround was only applied for Qt < 5.12 and
is no longer needed now that support for Qt < 5.15 has
been dropped in

    commit afb4c96d271958ced3175dfc2cf8bb9e8b0a9d3b
    Author: Michael Weghorn <m.weghorn@posteo.de>
    Date:   Thu Aug 3 21:30:22 2023 +0200

        qt: Drop code for Qt < 5.15

Commit originally adding the workaround:

    commit fe2baf9e84e0ca9aeaa683e37076f57fa3f38dca
    Author: Jan-Marek Glogowski <jan-marek.glogowski@extern.cib.de>
    Date:   Tue Dec 3 08:32:58 2019 +0100

        Qt5 fix missing XCB_ICCCM_WM_HINT_WINDOW_GROUP

        This is the application level equivalent of the Qt5 fix for bug
        QTBUG-46626 / commit 0de4b32 ("xcb: fix issue with dialogs hidden
        by other windows"), which was broken since Qt 5.4 and is just
        fixed since Qt 5.12.

        It is needed for some window managers, which don't know about the
        WM_CLIENT_LEADER property. Both settings are the same, but just
        the latter is set by older Qt5 releases. This probably isn't a
        real problem, as GNOME or XFCE would use the gtk VCL plugin, but
        since I already wrote the code when debugging tdf#129071, there
        is also no reason to drop it (except: more code, more bugs...).

        This fix is optional and needs development headers for xcb-icccm,
        which can actually be compiled into Qt5. If missing configure will
        just print a warning, since it's a runtime requirement and we
        explicitly drop the linked Qt version symbol, so the potential
        build Qt version won't matter.

        Change-Id: Ifc5a8f8a40ee13779a911efb53e8b8b868614d0b
        Reviewed-on: https://gerrit.libreoffice.org/84299
        Tested-by: Jenkins
        Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
        Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>

Change-Id: I56b708449cf686f787f55256c76673be604d31e4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/158102
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
qt: Fix qt6 build after fbc61e06584ff8e6d9240f8b67be8dc28ecab5b9 2022-06-19T00:09:29+00:00 Michael Weghorn m.weghorn@posteo.de 2022-06-18T19:11:28+00:00 e4d23c27288b99c3ed3cfa332ff308b31c01f97d Failed like this: In file included from /home/michi/development/git/libreoffice/vcl/qt6/QtX11Support.cxx:10: /home/michi/development/git/libreoffice/vcl/qt6/../qt5/QtX11Support.cxx:15:10: fatal error: QtX11Extras/QX11Info: No such file or directory 15 | #include <QtX11Extras/QX11Info> | ^~~~~~~~~~~~~~~~~~~~~~ compilation terminated. make[1]: *** [/home/michi/development/git/libreoffice/solenv/gbuild/LinkTarget.mk:334: /home/michi/development/git/libreoffice/workdir/CxxObject/vcl/qt6/QtX11Support.o] Error 1 make[1]: *** Waiting for unfinished jobs.... In file included from /home/michi/development/git/libreoffice/vcl/qt6/QtFrame.cxx:10: /home/michi/development/git/libreoffice/vcl/qt6/../qt5/QtFrame.cxx: In member function ‘virtual void QtFrame::StartPresentation(bool)’: /home/michi/development/git/libreoffice/vcl/qt6/../qt5/QtFrame.cxx:746:5: error: ‘m_ScreenSaverInhibitor’ was not declared in this scope 746 | m_ScreenSaverInhibitor.inhibit(bStart, u"presentation", bIsX11, aRootWindow, aDisplay); | ^~~~~~~~~~~~~~~~~~~~~~ make[1]: *** [/home/michi/development/git/libreoffice/solenv/gbuild/LinkTarget.mk:334: /home/michi/development/git/libreoffice/workdir/CxxObject/vcl/qt6/QtFrame.o] Error 1 make: *** [Makefile:288: build] Error 2 As mentioned in [1], `QX11Info` has been removed in Qt 6. The `ScreenSaverInhibitor` related code (except for the `QX11Info` part) can be used for Qt 6 as well, so adapt the checks in the header accordingly. [1] https://www.qt.io/blog/qt-extras-modules-in-qt-6 Co-authored-by: Jan-Marek Glogowski <glogow@fbihome.de> Change-Id: Ifd546b4f4210aaf7f09ebaa8c36d2a031763d492 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136091 Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de> Tested-by: Jenkins Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Failed like this:

    In file included from /home/michi/development/git/libreoffice/vcl/qt6/QtX11Support.cxx:10:
    /home/michi/development/git/libreoffice/vcl/qt6/../qt5/QtX11Support.cxx:15:10: fatal error: QtX11Extras/QX11Info: No such file or directory
       15 | #include <QtX11Extras/QX11Info>
          |          ^~~~~~~~~~~~~~~~~~~~~~
    compilation terminated.
    make[1]: *** [/home/michi/development/git/libreoffice/solenv/gbuild/LinkTarget.mk:334: /home/michi/development/git/libreoffice/workdir/CxxObject/vcl/qt6/QtX11Support.o] Error 1
    make[1]: *** Waiting for unfinished jobs....
    In file included from /home/michi/development/git/libreoffice/vcl/qt6/QtFrame.cxx:10:
    /home/michi/development/git/libreoffice/vcl/qt6/../qt5/QtFrame.cxx: In member function ‘virtual void QtFrame::StartPresentation(bool)’:
    /home/michi/development/git/libreoffice/vcl/qt6/../qt5/QtFrame.cxx:746:5: error: ‘m_ScreenSaverInhibitor’ was not declared in this scope
      746 |     m_ScreenSaverInhibitor.inhibit(bStart, u"presentation", bIsX11, aRootWindow, aDisplay);
          |     ^~~~~~~~~~~~~~~~~~~~~~
    make[1]: *** [/home/michi/development/git/libreoffice/solenv/gbuild/LinkTarget.mk:334: /home/michi/development/git/libreoffice/workdir/CxxObject/vcl/qt6/QtFrame.o] Error 1
    make: *** [Makefile:288: build] Error 2

As mentioned in [1], `QX11Info` has been removed in Qt 6.

The `ScreenSaverInhibitor` related code (except for the `QX11Info` part)
can be used for Qt 6 as well, so adapt the checks in
the header accordingly.

[1] https://www.qt.io/blog/qt-extras-modules-in-qt-6

Co-authored-by: Jan-Marek Glogowski <glogow@fbihome.de>

Change-Id: Ifd546b4f4210aaf7f09ebaa8c36d2a031763d492
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136091
Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Qt move most X11 specifics into QtX11Support 2022-06-18T10:18:19+00:00 Jan-Marek Glogowski glogow@fbihome.de 2022-06-15T21:34:01+00:00 fbc61e06584ff8e6d9240f8b67be8dc28ecab5b9 Just some refactoring. Change-Id: I5b2ef531778d4d43d2fdc32fe7da59edffa3c02e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136061 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
Just some refactoring.

Change-Id: I5b2ef531778d4d43d2fdc32fe7da59edffa3c02e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136061
Tested-by: Jenkins
Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>