diff options
| author | Tarja Sundqvist <tarja.sundqvist@qt.io> | 2025-10-12 23:00:37 +0300 |
|---|---|---|
| committer | Tarja Sundqvist <tarja.sundqvist@qt.io> | 2025-10-12 23:00:37 +0300 |
| commit | 47f0290e0987f9c51f020509f5ecfdd1768ac8b5 (patch) | |
| tree | 4d84d93a417001917c2879ea2726fc07926c7808 | |
| parent | 07803f6b23d2d9f2db7897c5ee4884a3e23191ac (diff) | |
| parent | 958a7c69fff5838a51f1dfed7ef1b2feed22e4b7 (diff) | |
Merge tag 'v6.5.7-lts-lgpl' into 6.56.5
Qt 6.5.7-lts-lgpl release
21 files changed, 151 insertions, 43 deletions
diff --git a/.cmake.conf b/.cmake.conf index 1aa29cee..98c2813e 100644 --- a/.cmake.conf +++ b/.cmake.conf @@ -1,3 +1,3 @@ -set(QT_REPO_MODULE_VERSION "6.5.6") +set(QT_REPO_MODULE_VERSION "6.5.7") set(QT_REPO_MODULE_PRERELEASE_VERSION_SEGMENT "alpha1") set(QT_EXTRA_INTERNAL_TARGET_DEFINES "QT_NO_AS_CONST=1") diff --git a/dependencies.yaml b/dependencies.yaml index 85aae14c..dbb9bf08 100644 --- a/dependencies.yaml +++ b/dependencies.yaml @@ -1,7 +1,7 @@ dependencies: ../tqtc-qtbase: - ref: 5d8e9a8415562ba004b38508d91e1fa0254c17d3 + ref: fc0e66eefe3a08428ca4a6e92c66f37ac126d3c4 required: true ../tqtc-qtdeclarative: - ref: ff0a47c8f267e905113b82c53af2742027f0eca6 + ref: 844f9b9b376838bcb44324984876f8bf99d85d38 required: false diff --git a/src/client/qwaylandscreen.cpp b/src/client/qwaylandscreen.cpp index 15fe0492..2b534752 100644 --- a/src/client/qwaylandscreen.cpp +++ b/src/client/qwaylandscreen.cpp @@ -105,12 +105,19 @@ QString QWaylandScreen::model() const QRect QWaylandScreen::geometry() const { if (zxdg_output_v1::isInitialized()) { - return mXdgGeometry; - } else { - // Scale geometry for QScreen. This makes window and screen - // geometry be in the same coordinate system. - return QRect(mGeometry.topLeft(), mGeometry.size() / mScale); + + // Workaround for Gnome bug + // https://gitlab.gnome.org/GNOME/mutter/-/issues/2631 + // which sends an incorrect xdg geometry + const bool xdgGeometryIsBogus = mScale > 1 && mXdgGeometry.size() == mGeometry.size(); + + if (!xdgGeometryIsBogus) { + return mXdgGeometry; + } } + // Scale geometry for QScreen. This makes window and screen + // geometry be in the same coordinate system. + return QRect(mGeometry.topLeft(), mGeometry.size() / mScale); } int QWaylandScreen::depth() const @@ -163,16 +170,6 @@ QList<QPlatformScreen *> QWaylandScreen::virtualSiblings() const return list; } -QWindow *QWaylandScreen::topLevelAt(const QPoint & pos) const -{ - if (QWaylandWindow::fixedToplevelPositions) { - Q_UNUSED(pos); - return nullptr; - } - - return QPlatformScreen::topLevelAt(pos); -} - Qt::ScreenOrientation QWaylandScreen::orientation() const { return m_orientation; @@ -338,7 +335,7 @@ void QWaylandScreen::zxdg_output_v1_logical_size(int32_t width, int32_t height) void QWaylandScreen::zxdg_output_v1_done() { if (Q_UNLIKELY(mWaylandDisplay->xdgOutputManager()->version() >= 3)) - qWarning(lcQpaWayland) << "zxdg_output_v1.done received on version 3 or newer, this is most likely a bug in the compositor"; + qCWarning(lcQpaWayland) << "zxdg_output_v1.done received on version 3 or newer, this is most likely a bug in the compositor"; mProcessedEvents |= XdgOutputDoneEvent; if (mInitialized) @@ -350,7 +347,7 @@ void QWaylandScreen::zxdg_output_v1_done() void QWaylandScreen::zxdg_output_v1_name(const QString &name) { if (Q_UNLIKELY(mInitialized)) - qWarning(lcQpaWayland) << "zxdg_output_v1.name received after output has been initialized, this is most likely a bug in the compositor"; + qCWarning(lcQpaWayland) << "zxdg_output_v1.name received after output has been initialized, this is most likely a bug in the compositor"; mOutputName = name; mProcessedEvents |= XdgOutputNameEvent; diff --git a/src/client/qwaylandscreen_p.h b/src/client/qwaylandscreen_p.h index fbb4aae1..c0f6f199 100644 --- a/src/client/qwaylandscreen_p.h +++ b/src/client/qwaylandscreen_p.h @@ -62,8 +62,6 @@ public: QDpi logicalDpi() const override; QList<QPlatformScreen *> virtualSiblings() const override; - QWindow *topLevelAt(const QPoint &point) const override; - Qt::ScreenOrientation orientation() const override; int scale() const; qreal devicePixelRatio() const override; diff --git a/src/compositor/CMakeLists.txt b/src/compositor/CMakeLists.txt index 434411d0..bdf09582 100644 --- a/src/compositor/CMakeLists.txt +++ b/src/compositor/CMakeLists.txt @@ -103,7 +103,7 @@ qt_internal_add_resource(WaylandCompositor "compositor" ${compositor_resource_files} ) -qt6_generate_wayland_protocol_server_sources(WaylandCompositor +_qt_internal_generate_wayland_protocol_server_sources(WaylandCompositor FILES ${CMAKE_CURRENT_SOURCE_DIR}/../3rdparty/protocol/idle-inhibit-unstable-v1.xml ${CMAKE_CURRENT_SOURCE_DIR}/../3rdparty/protocol/ivi-application.xml diff --git a/src/compositor/Qt6WaylandCompositorMacros.cmake b/src/compositor/Qt6WaylandCompositorMacros.cmake index 3221f815..3ef0b4e3 100644 --- a/src/compositor/Qt6WaylandCompositorMacros.cmake +++ b/src/compositor/Qt6WaylandCompositorMacros.cmake @@ -1,6 +1,94 @@ # Copyright (C) 2022 The Qt Company Ltd. # SPDX-License-Identifier: BSD-3-Clause +# In order to work with Wayland 1.23, we need to generate Qt sources with private-code. Since +# we cannot change public cmake API in a patch release, we temporarily introduce an internal +# function which passes private-code to waylandscanner. This is a copy of +# qt6_generate_wayland_protocol_server_sources, except for that one argument. +function(_qt_internal_generate_wayland_protocol_server_sources target) + cmake_parse_arguments(arg "" "__QT_INTERNAL_WAYLAND_INCLUDE_DIR" "FILES" ${ARGN}) + if(DEFINED arg_UNPARSED_ARGUMENTS) + message(FATAL_ERROR "Unknown arguments were passed to qt6_generate_wayland_protocol_server_sources: (${arg_UNPARSED_ARGUMENTS}).") + endif() + + get_target_property(target_binary_dir ${target} BINARY_DIR) + + if(NOT TARGET Wayland::Scanner) + message(FATAL_ERROR "Wayland::Scanner target not found. You might be missing the WaylandScanner CMake package.") + endif() + + if(NOT TARGET Qt6::qtwaylandscanner) + message(FATAL_ERROR "qtwaylandscanner executable not found. Most likely there is an issue with your Qt installation.") + endif() + + string(TOUPPER "${target}" module_define_infix) + string(REPLACE "-" "_" module_define_infix "${module_define_infix}") + string(REPLACE "." "_" module_define_infix "${module_define_infix}") + set(build_macro "QT_BUILD_${module_define_infix}_LIB") + + foreach(protocol_file IN LISTS arg_FILES) + get_filename_component(protocol_name "${protocol_file}" NAME_WLE) + + set(waylandscanner_header_output "${target_binary_dir}/wayland-${protocol_name}-server-protocol.h") + set(waylandscanner_code_output "${target_binary_dir}/wayland-${protocol_name}-protocol.c") + set(qtwaylandscanner_header_output "${target_binary_dir}/qwayland-server-${protocol_name}.h") + set(qtwaylandscanner_code_output "${target_binary_dir}/qwayland-server-${protocol_name}.cpp") + + add_custom_command( + OUTPUT "${waylandscanner_header_output}" + #TODO: Maybe put the files in ${CMAKE_CURRENT_BINARY_DIR/wayland_generated instead? + COMMAND Wayland::Scanner --include-core-only server-header < "${protocol_file}" > "${waylandscanner_header_output}" + DEPENDS ${protocol_file} Wayland::Scanner + ) + add_custom_command( + OUTPUT "${waylandscanner_code_output}" + COMMAND Wayland::Scanner --include-core-only private-code < "${protocol_file}" > "${waylandscanner_code_output}" + DEPENDS ${protocol_file} Wayland::Scanner + ) + + set(wayland_include_dir "") + if(arg___QT_INTERNAL_WAYLAND_INCLUDE_DIR) + set(wayland_include_dir "${arg___QT_INTERNAL_WAYLAND_INCLUDE_DIR}") + else() + get_target_property(qt_module ${target} _qt_module_interface_name) + get_target_property(is_for_module "${target}" _qt_module_has_headers) + if (qt_module) + set(wayland_include_dir "Qt${qt_module}/private") + elseif (is_for_module) + set(wayland_include_dir "QtWaylandCompositor/private") + endif() + endif() + + add_custom_command( + OUTPUT "${qtwaylandscanner_header_output}" + COMMAND Qt6::qtwaylandscanner server-header + "${protocol_file}" + --build-macro=${build_macro} + --header-path='${wayland_include_dir}' + > "${qtwaylandscanner_header_output}" + DEPENDS ${protocol_file} Qt6::qtwaylandscanner + ) + + add_custom_command( + OUTPUT "${qtwaylandscanner_code_output}" + COMMAND Qt6::qtwaylandscanner server-code + "${protocol_file}" + --build-macro=${build_macro} + --header-path='${wayland_include_dir}' + > "${qtwaylandscanner_code_output}" + DEPENDS ${protocol_file} Qt6::qtwaylandscanner + ) + + target_sources(${target} PRIVATE + "${waylandscanner_header_output}" + "${waylandscanner_code_output}" + "${qtwaylandscanner_header_output}" + "${qtwaylandscanner_code_output}" + ) + endforeach() + target_include_directories(${target} PRIVATE ${target_binary_dir}) +endfunction() + function(qt6_generate_wayland_protocol_server_sources target) cmake_parse_arguments(arg "" "__QT_INTERNAL_WAYLAND_INCLUDE_DIR" "FILES" ${ARGN}) if(DEFINED arg_UNPARSED_ARGUMENTS) diff --git a/src/compositor/wayland_wrapper/qwlclientbuffer.cpp b/src/compositor/wayland_wrapper/qwlclientbuffer.cpp index 55de6573..becf2631 100644 --- a/src/compositor/wayland_wrapper/qwlclientbuffer.cpp +++ b/src/compositor/wayland_wrapper/qwlclientbuffer.cpp @@ -128,7 +128,7 @@ QOpenGLTexture *SharedMemoryBuffer::toOpenGlTexture(int plane) Q_UNUSED(plane); if (isSharedMemory()) { if (!m_shmTexture) { - m_shmTexture = new QOpenGLTexture(QOpenGLTexture::Target2D); + m_shmTexture.reset(new QOpenGLTexture(QOpenGLTexture::Target2D)); m_shmTexture->create(); } if (m_textureDirty) { @@ -153,7 +153,7 @@ QOpenGLTexture *SharedMemoryBuffer::toOpenGlTexture(int plane) if (isCommitted()) sendRelease(); } - return m_shmTexture; + return m_shmTexture.data(); } return nullptr; } diff --git a/src/compositor/wayland_wrapper/qwlclientbuffer_p.h b/src/compositor/wayland_wrapper/qwlclientbuffer_p.h index 42424387..de424bc4 100644 --- a/src/compositor/wayland_wrapper/qwlclientbuffer_p.h +++ b/src/compositor/wayland_wrapper/qwlclientbuffer_p.h @@ -19,6 +19,7 @@ #include <QtGui/qopengl.h> #include <QImage> #include <QAtomicInt> +#include <QScopedPointer> #include <QtWaylandCompositor/QWaylandSurface> #include <QtWaylandCompositor/QWaylandBufferRef> @@ -107,7 +108,7 @@ public: QOpenGLTexture *toOpenGlTexture(int plane = 0) override; private: - QOpenGLTexture *m_shmTexture = nullptr; + QScopedPointer<QOpenGLTexture> m_shmTexture; #endif }; diff --git a/src/compositor/wayland_wrapper/qwldatadevice.cpp b/src/compositor/wayland_wrapper/qwldatadevice.cpp index 2604bc06..440401d0 100644 --- a/src/compositor/wayland_wrapper/qwldatadevice.cpp +++ b/src/compositor/wayland_wrapper/qwldatadevice.cpp @@ -50,6 +50,9 @@ void DataDevice::sourceDestroyed(DataSource *source) { if (m_selectionSource == source) m_selectionSource = nullptr; + + if (m_dragDataSource == source) + m_dragDataSource = nullptr; } #if QT_CONFIG(draganddrop) @@ -79,9 +82,11 @@ void DataDevice::setDragFocus(QWaylandSurface *focus, const QPointF &localPositi if (m_dragDataSource && !offer) return; - send_enter(resource->handle, serial, focus->resource(), - wl_fixed_from_double(localPosition.x()), wl_fixed_from_double(localPosition.y()), - offer->resource()->handle); + if (offer) { + send_enter(resource->handle, serial, focus->resource(), + wl_fixed_from_double(localPosition.x()), wl_fixed_from_double(localPosition.y()), + offer->resource()->handle); + } m_dragFocus = focus; m_dragFocusResource = resource; @@ -113,7 +118,7 @@ void DataDevice::drop() if (m_dragFocusResource) { send_drop(m_dragFocusResource->handle); setDragFocus(nullptr, QPoint()); - } else { + } else if (m_dragDataSource) { m_dragDataSource->cancel(); } m_dragOrigin = nullptr; @@ -129,6 +134,8 @@ void DataDevice::data_device_start_drag(Resource *resource, struct ::wl_resource { m_dragClient = resource->client(); m_dragDataSource = source ? DataSource::fromResource(source) : nullptr; + if (m_dragDataSource) + m_dragDataSource->setDevice(this); m_dragOrigin = QWaylandSurface::fromResource(origin); QWaylandDrag *drag = m_seat->drag(); setDragIcon(icon ? QWaylandSurface::fromResource(icon) : nullptr); diff --git a/src/compositor/wayland_wrapper/qwldatadevicemanager.cpp b/src/compositor/wayland_wrapper/qwldatadevicemanager.cpp index 04add014..dea68a59 100644 --- a/src/compositor/wayland_wrapper/qwldatadevicemanager.cpp +++ b/src/compositor/wayland_wrapper/qwldatadevicemanager.cpp @@ -59,8 +59,10 @@ void DataDeviceManager::setCurrentSelectionSource(DataSource *source) void DataDeviceManager::sourceDestroyed(DataSource *source) { - if (m_current_selection_source == source) + if (m_current_selection_source == source) { finishReadFromClient(); + m_current_selection_source = nullptr; + } } void DataDeviceManager::retain() @@ -162,6 +164,15 @@ void DataDeviceManager::overrideSelection(const QMimeData &mimeData) m_compositorOwnsSelection = true; + if (m_current_selection_source) { + finishReadFromClient(); + m_current_selection_source->cancel(); + // wl_data_source::cancelled will destroy it and + // it will make m_current_selection_source as nullptr. + // But it will immediately affect the selection here. + m_current_selection_source = nullptr; + } + QWaylandSeat *dev = m_compositor->defaultSeat(); QWaylandSurface *focusSurface = dev->keyboardFocus(); if (focusSurface) @@ -175,7 +186,7 @@ bool DataDeviceManager::offerFromCompositorToClient(wl_resource *clientDataDevic return false; wl_client *client = wl_resource_get_client(clientDataDeviceResource); - //qDebug("compositor offers %d types to %p", m_retainedData.formats().count(), client); + //qDebug("compositor offers %d types to %p", int(m_retainedData.formats().count()), client); struct wl_resource *selectionOffer = wl_resource_create(client, &wl_data_offer_interface, -1, 0); diff --git a/src/hardwareintegration/client/wayland-egl/qwaylandeglwindow.cpp b/src/hardwareintegration/client/wayland-egl/qwaylandeglwindow.cpp index 55efbc19..a3ab97c1 100644 --- a/src/hardwareintegration/client/wayland-egl/qwaylandeglwindow.cpp +++ b/src/hardwareintegration/client/wayland-egl/qwaylandeglwindow.cpp @@ -82,7 +82,8 @@ void QWaylandEglWindow::updateSurface(bool create) } else { QReadLocker locker(&mSurfaceLock); if (m_waylandEglWindow) { - int current_width, current_height; + int current_width = 0; + int current_height = 0; static bool disableResizeCheck = qgetenv("QT_WAYLAND_DISABLE_RESIZECHECK").toInt(); if (!disableResizeCheck) { diff --git a/src/hardwareintegration/client/wayland-egl/qwaylandglcontext.cpp b/src/hardwareintegration/client/wayland-egl/qwaylandglcontext.cpp index 974e3bb2..16615abc 100644 --- a/src/hardwareintegration/client/wayland-egl/qwaylandglcontext.cpp +++ b/src/hardwareintegration/client/wayland-egl/qwaylandglcontext.cpp @@ -230,7 +230,7 @@ QWaylandGLContext::QWaylandGLContext(EGLDisplay eglDisplay, QWaylandDisplay *dis m_supportNonBlockingSwap = supportNonBlockingSwap != 0; } if (!m_supportNonBlockingSwap) { - qWarning(lcQpaWayland) << "Non-blocking swap buffers not supported." + qCWarning(lcQpaWayland) << "Non-blocking swap buffers not supported." << "Subsurface rendering can be affected." << "It may also cause the event loop to freeze in some situations"; } diff --git a/src/imports/compositor-extensions/qtshell/CMakeLists.txt b/src/imports/compositor-extensions/qtshell/CMakeLists.txt index 9b1372a4..2803db07 100644 --- a/src/imports/compositor-extensions/qtshell/CMakeLists.txt +++ b/src/imports/compositor-extensions/qtshell/CMakeLists.txt @@ -29,7 +29,7 @@ qt_internal_add_qml_module(WaylandCompositorQtShell Qt::WaylandCompositorPrivate ) -qt6_generate_wayland_protocol_server_sources(WaylandCompositorQtShell +_qt_internal_generate_wayland_protocol_server_sources(WaylandCompositorQtShell FILES ${CMAKE_CURRENT_SOURCE_DIR}/../../../extensions/qt-shell-unstable-v1.xml ) diff --git a/src/plugins/hardwareintegration/compositor/brcm-egl/CMakeLists.txt b/src/plugins/hardwareintegration/compositor/brcm-egl/CMakeLists.txt index 3f0e1d14..9ebf1926 100644 --- a/src/plugins/hardwareintegration/compositor/brcm-egl/CMakeLists.txt +++ b/src/plugins/hardwareintegration/compositor/brcm-egl/CMakeLists.txt @@ -25,7 +25,7 @@ qt_internal_add_plugin(QWaylandBrcmClientBufferIntegrationPlugin Qt::WaylandCompositorPrivate ) -qt6_generate_wayland_protocol_server_sources(QWaylandBrcmClientBufferIntegrationPlugin +_qt_internal_generate_wayland_protocol_server_sources(QWaylandBrcmClientBufferIntegrationPlugin FILES ${CMAKE_CURRENT_SOURCE_DIR}/../../../../hardwareintegration/compositor/brcm-egl/../../../extensions/brcm.xml ) diff --git a/src/plugins/hardwareintegration/compositor/dmabuf-server/CMakeLists.txt b/src/plugins/hardwareintegration/compositor/dmabuf-server/CMakeLists.txt index a6b48e99..ff96a56c 100644 --- a/src/plugins/hardwareintegration/compositor/dmabuf-server/CMakeLists.txt +++ b/src/plugins/hardwareintegration/compositor/dmabuf-server/CMakeLists.txt @@ -25,9 +25,10 @@ qt_internal_add_plugin(DmaBufServerBufferIntegrationPlugin Wayland::Server ) -qt6_generate_wayland_protocol_server_sources(DmaBufServerBufferIntegrationPlugin +_qt_internal_generate_wayland_protocol_server_sources(DmaBufServerBufferIntegrationPlugin FILES ${CMAKE_CURRENT_SOURCE_DIR}/../../../../hardwareintegration/compositor/dmabuf-server/../../../extensions/qt-dmabuf-server-buffer.xml + ${CMAKE_CURRENT_SOURCE_DIR}/../../../../extensions/server-buffer-extension.xml ) #### Keys ignored in scope 1:.:.:dmabuf-server.pro:<TRUE>: diff --git a/src/plugins/hardwareintegration/compositor/drm-egl-server/CMakeLists.txt b/src/plugins/hardwareintegration/compositor/drm-egl-server/CMakeLists.txt index 7dcd92ec..0425a8cc 100644 --- a/src/plugins/hardwareintegration/compositor/drm-egl-server/CMakeLists.txt +++ b/src/plugins/hardwareintegration/compositor/drm-egl-server/CMakeLists.txt @@ -24,9 +24,10 @@ qt_internal_add_plugin(DrmEglServerBufferIntegrationPlugin Wayland::Server ) -qt6_generate_wayland_protocol_server_sources(DrmEglServerBufferIntegrationPlugin +_qt_internal_generate_wayland_protocol_server_sources(DrmEglServerBufferIntegrationPlugin FILES ${CMAKE_CURRENT_SOURCE_DIR}/../../../../hardwareintegration/compositor/drm-egl-server/../../../extensions/drm-egl-server-buffer.xml + ${CMAKE_CURRENT_SOURCE_DIR}/../../../../extensions/server-buffer-extension.xml ) #### Keys ignored in scope 1:.:.:drm-egl-server.pro:<TRUE>: diff --git a/src/plugins/hardwareintegration/compositor/libhybris-egl-server/CMakeLists.txt b/src/plugins/hardwareintegration/compositor/libhybris-egl-server/CMakeLists.txt index cbd5e374..1ea05305 100644 --- a/src/plugins/hardwareintegration/compositor/libhybris-egl-server/CMakeLists.txt +++ b/src/plugins/hardwareintegration/compositor/libhybris-egl-server/CMakeLists.txt @@ -25,9 +25,10 @@ qt_internal_add_plugin(LibHybrisEglServerBufferIntegrationPlugin Qt::WaylandCompositorPrivate ) -qt6_generate_wayland_protocol_server_sources(LibHybrisEglServerBufferIntegrationPlugin +_qt_internal_generate_wayland_protocol_server_sources(LibHybrisEglServerBufferIntegrationPlugin FILES ${CMAKE_CURRENT_SOURCE_DIR}/../../../../hardwareintegration/compositor/libhybris-egl-server/../../../extensions/libhybris-egl-server-buffer.xml + ${CMAKE_CURRENT_SOURCE_DIR}/../../../../extensions/server-buffer-extension.xml ) #### Keys ignored in scope 1:.:.:libhybris-egl-server.pro:<TRUE>: diff --git a/src/plugins/hardwareintegration/compositor/linux-dmabuf-unstable-v1/CMakeLists.txt b/src/plugins/hardwareintegration/compositor/linux-dmabuf-unstable-v1/CMakeLists.txt index f6141b79..4ddbf73b 100644 --- a/src/plugins/hardwareintegration/compositor/linux-dmabuf-unstable-v1/CMakeLists.txt +++ b/src/plugins/hardwareintegration/compositor/linux-dmabuf-unstable-v1/CMakeLists.txt @@ -26,7 +26,7 @@ qt_internal_add_plugin(QWaylandDmabufClientBufferIntegrationPlugin Qt::WaylandCompositorPrivate ) -qt6_generate_wayland_protocol_server_sources(QWaylandDmabufClientBufferIntegrationPlugin +_qt_internal_generate_wayland_protocol_server_sources(QWaylandDmabufClientBufferIntegrationPlugin FILES ${CMAKE_CURRENT_SOURCE_DIR}/../../../../hardwareintegration/compositor/linux-dmabuf-unstable-v1/../../../3rdparty/protocol/linux-dmabuf-unstable-v1.xml ) diff --git a/src/plugins/hardwareintegration/compositor/shm-emulation-server/CMakeLists.txt b/src/plugins/hardwareintegration/compositor/shm-emulation-server/CMakeLists.txt index e893102a..d7609f75 100644 --- a/src/plugins/hardwareintegration/compositor/shm-emulation-server/CMakeLists.txt +++ b/src/plugins/hardwareintegration/compositor/shm-emulation-server/CMakeLists.txt @@ -23,9 +23,10 @@ qt_internal_add_plugin(ShmServerBufferIntegrationPlugin Wayland::Server ) -qt6_generate_wayland_protocol_server_sources(ShmServerBufferIntegrationPlugin +_qt_internal_generate_wayland_protocol_server_sources(ShmServerBufferIntegrationPlugin FILES ${CMAKE_CURRENT_SOURCE_DIR}/../../../../hardwareintegration/compositor/shm-emulation-server/../../../extensions/shm-emulation-server-buffer.xml + ${CMAKE_CURRENT_SOURCE_DIR}/../../../../extensions/server-buffer-extension.xml ) #### Keys ignored in scope 1:.:.:shm-emulation-server.pro:<TRUE>: diff --git a/src/plugins/hardwareintegration/compositor/vulkan-server/CMakeLists.txt b/src/plugins/hardwareintegration/compositor/vulkan-server/CMakeLists.txt index 123ec852..3815f826 100644 --- a/src/plugins/hardwareintegration/compositor/vulkan-server/CMakeLists.txt +++ b/src/plugins/hardwareintegration/compositor/vulkan-server/CMakeLists.txt @@ -26,9 +26,10 @@ qt_internal_add_plugin(VulkanServerBufferIntegrationPlugin Wayland::Server ) -qt6_generate_wayland_protocol_server_sources(VulkanServerBufferIntegrationPlugin +_qt_internal_generate_wayland_protocol_server_sources(VulkanServerBufferIntegrationPlugin FILES ${CMAKE_CURRENT_SOURCE_DIR}/../../../../hardwareintegration/compositor/vulkan-server/../../../extensions/qt-vulkan-server-buffer-unstable-v1.xml + ${CMAKE_CURRENT_SOURCE_DIR}/../../../../extensions/server-buffer-extension.xml ) #### Keys ignored in scope 1:.:.:vulkan-server.pro:<TRUE>: diff --git a/src/plugins/hardwareintegration/compositor/wayland-eglstream-controller/CMakeLists.txt b/src/plugins/hardwareintegration/compositor/wayland-eglstream-controller/CMakeLists.txt index 39c97bc5..e78867cb 100644 --- a/src/plugins/hardwareintegration/compositor/wayland-eglstream-controller/CMakeLists.txt +++ b/src/plugins/hardwareintegration/compositor/wayland-eglstream-controller/CMakeLists.txt @@ -27,7 +27,7 @@ qt_internal_add_plugin(QWaylandEglStreamClientBufferIntegrationPlugin Wayland::Server ) -qt6_generate_wayland_protocol_server_sources(QWaylandEglStreamClientBufferIntegrationPlugin +_qt_internal_generate_wayland_protocol_server_sources(QWaylandEglStreamClientBufferIntegrationPlugin FILES ${CMAKE_CURRENT_SOURCE_DIR}/../../../../hardwareintegration/compositor/wayland-eglstream-controller/../../../3rdparty/protocol/wl-eglstream-controller.xml ) |
